System and method for automatic learning of functions
AssigneeIntuit Inc.
InventorsCem Unsal, Saikat Mukherjee, Roger Charles Meike
Life of this patent
Estimating the term…
Abstract
A method and system learn functions to be associated with data fields of forms to be incorporated into an electronic document preparation system. The functions are essentially sets of operations required to calculate the data field. The method and system receive form data related to a data field that expects data values resulting from performing specific operations. The method and system utilize machine learning and training set data to generate, test, and evaluate candidate functions to determine acceptable functions.
Claims20
A method performed by one or more processors of a system, the method comprising:
- receiving form data having a first data field for which a function needs to be determined;
- receiving training set data including a plurality of data values relating to the first data field;
- generating, for the first data field, two or more distinct candidate functions using a machine learning process based on genetic programming, wherein each of the two or more distinct candidate functions has one or more operators;
- generating, for each of the two or more distinct candidate functions, test data by applying the respective distinct candidate function to at least a portion of the training set data;
- generating matching data indicating how closely the test data matches at least a portion of the training set data;
- and
- for at least two candidate functions having the most desirable fitness function results among the original candidate functions:
- splitting a first candidate function and a second candidate function into at least first and second component pieces using the machine learning process, wherein each component piece includes one or more operators of the corresponding original candidate function;
- forming a new candidate function using the machine learning process by assembling at least the first component piece from the first candidate function with at least a portion of the second candidate function;
- iterating between at least the splitting and assembling operations until test data of at least one of the new candidate functions matches the training set data within a predefined margin of error;
- and
- incorporating at least one of the new candidate functions into an electronic document preparation system.
A non-transitory computer-readable storage medium comprising instructions that, when executed by one or more processors of a system, cause the system to perform operations comprising:
- receiving form data having a first data field for which a function needs to be determined;
- receiving training set data including a plurality of data values relating to the first data field;
- generating, for the first data field, two or more distinct candidate functions using a machine learning process based on genetic programming, wherein each of the two or more distinct candidate functions has one or more operators;
- generating, for each of the two or more distinct candidate functions, test data by applying the respective distinct candidate function to at least a portion of the training set data;
- generating matching data indicating how closely the test data matches at least a portion of the training set data;
- and
- for at least two candidate functions having the most desirable fitness function results among the original candidate functions:
- splitting a first candidate function and a second candidate function into at least first and second component pieces using the machine learning process, wherein each component piece includes one or more operators of the corresponding original candidate function;
- forming a new candidate function using the machine learning process by assembling at least the first component piece from the first candidate function with at least a portion of the second candidate function;
- iterating between at least the splitting and assembling operations until test data of at least one of the new candidate functions matches the training set data within a predefined margin of error;
- and
- incorporating at least one of the new candidate functions into an electronic document management system.
A system comprising:
- at least one processor;
- and
- at least one memory storing instructions that, when executed by the at least one processor, cause the system to:
- receive, with an interface module, form data having a first data field for which a function needs to be determined;
- receive, with a data acquisition module, training set data including a plurality of data values relating to the first data field;
- generate, for the first data field, two or more distinct candidate functions using a machine learning module based on genetic programming, wherein each of the two or more distinct candidate functions has one or more operators;
- generate, for each of the two or more distinct candidate functions, test data by applying the candidate function to at least a portion of the training set data using the machine learning module;
- generate matching data indicating how closely the test data matches at least a portion of the training set data using the machine learning module;
- and
- for at least two candidate functions having the most desirable fitness function results among the original candidate functions:
- split a first candidate function and a second candidate function into at least first and second component pieces using the machine learning module, wherein each component piece includes one or more operators of the corresponding original candidate function;
- form a new candidate function using the machine learning module by assembling at least the first component piece from the first candidate function with at least a portion of the second candidate function;
- iterate, using the machine learning module, between at least the splitting and assembling operations until test data of at least one of the new candidate functions matches the training set data within a predefined margin of error;
- and
- incorporate, using the machine learning module, at least one of the new candidate functions into an electronic document management system.
Dependencies are inferred from the claim text.