Conversational programming interface

US9959868B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-9959868-B1
Application numberUS-201715454764-A
CountryUS
Kind codeB1
Filing dateMar 9, 2017
Priority dateMar 9, 2017
Publication dateMay 1, 2018
Grant dateMay 1, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Domain specific programming is facilitated through the use of a conversational interface using natural language commands from the user and natural language cues to the user. The natural language conversation provides the actual program and thus can be saved and edited for future use.

First claim

Opening claim text (preview).

What we claim is: 1. A computerized user interface for data analysis comprising an electronic computer including: a processor; electronic memory communicating with the processor and holding a program-generating program and a set of multi-instruction program components; and a user interface communicating with the processor; wherein the processor executes the program-generating program to: (a) generate a conversation comprised of: (i) natural language phrases input by a user using the user interface and designating a data set for analysis and one or more analysis tools to be used in the analysis; and (ii) natural language phrases output by the computer using the user interface in response to the natural language phrases input by the user and providing the user with guidance for additional natural language phrases input by the user; (b) record the conversation; and (c) execute the conversation by mapping the natural language phrases input by the user and the additional natural language phrases input by the user to corresponding multi-instruction program components to create a data analysis program implementing analysis of the one or more analysis tools on the data set; and executing the data analysis program to output that analysis to the user interface. 2. The computerized user interface of claim 1 wherein the program-generating program further displays the conversation contemporaneously with generation of the data analysis program. 3. The computerized user interface of claim 2 wherein the processor further executes the program-generating program to perform the steps of: (d) storing and recall the conversation; and (e) editing the recalled conversation before repeating step (c). 4. The computerized user interface of claim 3 wherein the recalled conversation is displayed and the editing is guided by identifying portions of the conversation on the display and editing those portions through an addition of new natural language phrases input by the user. 5. The computerized user interface for data analysis of claim 4 wherein the editing of the recalled conversation allows removal of existing natural language phrases and an addition of further natural language phrases at a variety of points within the conversation and wherein the removal of a given existing natural language phrase from the conversation causes a removal of a corresponding multi-instruction program component during execution of the conversation and wherein the addition of a given further natural language phrase to the conversation causes an addition of a corresponding multi-instruction program component during the execution of the conversation. 6. The computerized user interface of claim 1 wherein the program-generating program further executes to include a step of receiving commands from the user to edit the data analysis program before executing the data analysis program at step (c). 7. The computerized user interface of claim 1 wherein the program-generating program further includes a predefined multi-state template designating steps for a workflow, the multi-state template defining states associated with predefined possible natural language phrases output by the computer and state transitions associated with predefined possible natural language phrases input by the user. 8. The computerized user interface of claim 7 wherein the natural language phrases output by the computer provide hints with respect to possible state transitions of the predefined multi-state template for a given current state of the multi-state template. 9. The computerized user interface of claim 7 wherein the predefined possible natural language phrases input by the user are each associated with a corresponding multi-instruction program component. 10. The computerized user interface of claim 7 wherein the multi-state template is composed of modules each providing multiple states and selected from the group consisting of states related to: data loading, data cleaning, data analysis, model selection, and visualization of analysis. 11. The computerized interface of claim 10 wherein the modules provide for standardized interfaces so that a given module of the multi-state template can be replaced by a different module. 12. The computerized user interface for data analysis of claim 1 wherein the natural language phrases input the u ad the natural language phrases output by the computer conform to standard spoken language grammar and syntax. 13. The computerized user interface for data analysis of claim 1 wherein the multi-instruction program components are human readable instructions and a non-natural language computer language. 14. A method of computerized data analysis employing an electronic computer having a processor; and electronic memory communicating with the processor and holding a program-generating program and a set of multi-instruction program components; and a user interface communicating with the processor, the method comprising: (a) generating a conversation comprised of: (i) natural language phrases input by a user using the user interface and designating one or more data sets for analysis and one or more analysis tools to be used in the analysis; and (ii) natural language phrases output by the computer using the user interface in response to the natural language phrases input by the user and providing the user with guidance for additional natural language phrases input by the user, (b) recording the conversation; and (c) executing the conversation by mapping the natural language phrases input by the user and the additional natural language phrases input by the user to corresponding multi-instruction program components to create a data analysis program implementing analysis of the one or more analysis tools on the data set; and executing the data analysis program to output that analysis to the user interface. 15. The method of claim 14 including the step of displaying the conversation contemporaneously with generation of the data analysis program. 16. The method of claim 15 including the step of: (d) storing and recall the conversation; and (e) edit the recalling conversation before repeating step (c). 17. The method of claim 16 wherein the recalled conversation is displayed and the editing is guided by identifying portions of the conversation on the display and editing those portions through an addition of new natural language phrases input by the user.

Assignees

Inventors

Classifications

  • Discourse or dialogue representation · CPC title

  • Phrasal analysis, e.g. finite state techniques or chunking · CPC title

  • G06F8/30Primary

    Creation or generation of source code · CPC title

  • G06F40/56Primary

    Natural language generation · CPC title

  • Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9959868B1 cover?
Domain specific programming is facilitated through the use of a conversational interface using natural language commands from the user and natural language cues to the user. The natural language conversation provides the actual program and thus can be saved and edited for future use.
Who is the assignee on this patent?
Wisconsin Alumni Res Found
What technology area does this patent fall under?
Primary CPC classification G06F8/30. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 01 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 6 related publications on this page (citations in our corpus or others sharing the same primary CPC).