IP Library › Granted Patent US 8,860,727
Granted Patent B2
US 8,860,727 · App. 13/211,048 · Granted Oct 14, 2014

Computer systems and methods for automatic generation of models for a dataset

Inventors: Andrew C. Beers (San Francisco, CA); Matthew W. Eldridge (Seattle, WA); Patrick M. Hanrahan (Portola Valley, CA); Jonathan E. Taylor (Stanford, CA)
Assignee: Tableau Software, Inc.
G06F17/30592G06F17/30554
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,860,727
App. No.
13/211,048
Granted
Oct 14, 2014
Kind
B2
Abstract

A method of automatically generating models from a dataset includes multiple steps. First, a description of a view of a dataset is provided. The description includes multiple fields associated with the dataset. Next, a set of properties is determined for each of the multiple fields. Finally, the description is automatically translated into one or more models based on the respective properties of the multiple fields and a set of predefined heuristics.

Claims (60)

1. A method of automatically generating statistical models for a dataset, comprising:

at a computer system having one or more processors and memory storing programs executed by the one or more processors:

receiving a user description of a graphical view of a dataset, wherein the user description specifies a relationship between a first field and a second field of the dataset;

rendering a graphical visualization of the relationship between the first field and the second field of the dataset using data values associated with the first and second fields in the graphical view of the dataset;

receiving a user instruction to render a statistical model on top of the graphical visualization of the relationship between the first field and the second field of the dataset using data values associated with the first and second fields in the graphical view of the dataset;

in response to the user instruction:

determining a set of data properties for each of the first and second fields; and

determining whether there is a mathematical formula describing the relationship between the first field and the second field of the dataset in accordance with the respective set of data properties; and

when there is a mathematical formula describing the relationship between the first field and the second field of the dataset:

generating one or more statistical models of the dataset in accordance with the mathematical formula and the data values associated with the first and second fields in the dataset; and

rendering at least one graphical representation of the one or more statistical models on top of the graphical visualization of the relationship between the first field and the second field of the dataset in the graphical view of the dataset.

2. The method of claim 1 , wherein the first and second fields are partitioned into a plurality of sets, each set associated with a respective region of the graphical view including row, column, page, and an encoding area.

3. The method of claim 1 , wherein the data properties of each field include a field type selected from the group consisting of categorical and quantitative and a data type selected from the group consisting of integer, real, Boolean, and time.

4. The method of claim 1 , further comprising generating the one or more statistical models in accordance with predefined heuristics for modeling a relationship between the first field and the second field, wherein the predefined heuristics include: selecting one of the two fields from the user description as an independent variable and the other of the two fields as a response variable of the one or more statistical models.

5. The method of claim 1 , wherein each of the one or more statistical models has a model type including linear, polynomial, exponential, logarithmic, and transcendental.

6. The method of claim 1 , further comprising rendering the graphical view of the dataset in accordance with the user description.

7. The method of claim 1 , wherein generating one or more statistical models further includes comparing the data properties of the first field and the data properties of the second field to determine the one or more statistical models.

8. The method of claim 1 , further comprising:

generating a plurality of candidate models using the description, each model having a specific model type and a set of parameters;

automatically selecting from the plurality of models one having a simpler model type and fewer parameters according to predefined criteria.

9. The method of claim 1 , wherein the user description is generated by a user dragging and dropping the first and second fields into respective field containers of a graphical user interface.

10. The method of claim 1 , wherein the user description is generated by a user selecting the first and second fields as fields of interest through a graphical user interface.

11. The method of claim 1 , wherein the user description is generated by a user entering a text string including the first and second fields as fields of interest through a graphical user interface.

12. A computer system, comprising:

memory;

one or more processors; and

at least one program stored in the memory, wherein the at least one program, when executed by the one or more processors, causes the computer system to:

receive a user description of a graphical view of a dataset, wherein the user description specifies a relationship between a first field and a second field of the dataset;

render a graphical visualization of the relationship between the first field and the second field of the dataset using data values associated with the first and second fields in the graphical view of the dataset;

receive a user instruction to render a statistical model on top of the graphical visualization of the relationship between the first field and the second field of the dataset using data values associated with the first and second fields in the graphical view of the dataset:

in response to the user instruction:

determine a set of data properties for each of the first and second fields; and

determine whether there is a mathematical formula describing the relationship between the first field and the second field of the dataset in accordance with the respective set of data properties; and

when there is a mathematical formula describing the relationship between the first field and the second field of the dataset:

generate one or more statistical models of the dataset in accordance with the mathematical formula and the data values associated with the first and second fields in the dataset; and

render at least one graphical representation of the one or more statistical models on top of the graphical visualization of the relationship between the first field and the second field of the dataset in the graphical view of the dataset.

13. The computer system of claim 12 , further comprising instructions for generating the one or more statistical models in accordance with predefined heuristics for modeling a relationship between the first field and the second field, wherein the predefined heuristics include: instructions for selecting one of the two fields from the user description as an independent variable and the other of the two fields as a response variable of the one or more statistical models.

14. The computer system of claim 12 , wherein each of the one or more statistical models has a model type including linear, polynomial, exponential, logarithmic, and transcendental.

15. The computer system of claim 12 , further comprising instructions for rendering the graphical view of the dataset in accordance with the user description.

16. The computer system of claim 12 , further comprising instructions for comparing the data properties of the first field and the data properties of the second field to determine the one or more statistical models.

17. The computer system of claim 12 , further comprising:

instructions for generating a plurality of candidate models using the description, each model having a specific model type and a set of parameters;

instructions for automatically selecting from the plurality of models one having a simpler model type and fewer parameters according to predefined criteria.

18. A non-transitory computer readable storage medium storing a computer program product that includes one or more programs configured for execution by a computer system that includes one or more processors and memory, the one or more programs comprising instructions that, if executed by the computer system, cause the computer system to:

receive a user description of a graphical view of a dataset, wherein the user description specifies a relationship between a first field and a second field of the dataset;

render a graphical visualization of the relationship between the first field and the second field of the dataset using data values associated with the first and second fields in the graphical view of the dataset;

receive a user instruction to render a statistical model on top of the graphical visualization of the relationship between the first field and the second field of the dataset using data values associated with the first and second fields in the graphical view of the dataset;

in response to the user instruction:

determine a set of data properties for each of the first and second fields; and

determine whether there is a mathematical formula describing the relationship between the first field and the second field of the dataset in accordance with the respective set of data properties; and

when there is a mathematical formula describing the relationship between the first field and the second field of the dataset:

generate one or more statistical models of the dataset in accordance with the mathematical formula and the data values associated with the first and second fields in the dataset; and

render at least one graphical representation of the one or more statistical models on top of the graphical visualization of the relationship between the first field and the second field of the dataset in the graphical view of the dataset.

19. The computer program product of claim 18 , further comprising instructions for generating the one or more statistical models in accordance with predefined heuristics for modeling a relationship between the first field and the second field, wherein the predefined heuristics include: instructions for selecting one of the two fields from the user description as an independent variable and the other of the two fields as a response variable of the one or more statistical models.

20. The computer program product of claim 18 , wherein each of the one or more statistical models has a model type including linear, polynomial, exponential, logarithmic, and transcendental.

21. The computer program product of claim 18 , further comprising instructions for rendering the graphical view of the dataset in accordance with the user description.

22. The computer program product of claim 18 , further comprising instructions for comparing the data properties of the first field and the data properties of the second field to determine the one or more statistical models.

23. The computer program product of claim 18 , further comprising:

instructions for generating a plurality of candidate models using the description, each model having a specific model type and a set of parameters;

instructions for automatically selecting from the plurality of models one having a simpler model type and fewer parameters according to predefined criteria.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 11, 2013
From: BEERS, ANDREW C.; ELDRIDGE, MATTHEW W.; HANRAHAN, PATRICK M.; TAYLOR, JONATHAN E.
To: TABLEAU SOFTWARE INC.
Reel/Frame 031392/0109 →
Continuity (3)
Continuation 11787761 · Apr 17, 2007
Provisional Application 60793701 · Apr 19, 2006
Related Publication 20110302110A1 · Dec 8, 2011