Architectures for natural language processing
Abstract
Systems are presented for generating a natural language model. The system may comprise a database module, an application program interface (API) module, a background processing module, and an applications module, each stored on the at least one memory and executable by the at least one processor. The system may be configured to generate the natural language model by: ingesting training data, generating a hierarchical data structure, selecting a plurality of documents among the training data to be annotated, generating an annotation prompt for each document configured to elicit an annotation about said document, receiving the annotation based on the annotation prompt, and generating the natural language model using an adaptive machine learning process configured to determine patterns among the annotations for how the documents in the training data are to be subdivided according to the at least two topical nodes of the hierarchical data structure.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A system for generating a natural language model, the system comprising:
at least one memory and at least one processor communicatively coupled to the at least one memory; and a database module, an application program interface (API) module, a background processing module, and an applications module, each stored on the at least one memory and executable by the at least one processor; the API module configured to ingest training data representative of documents to be analyzed by the natural language model and to store the training data in the database module; the background processing module configured to:
generate a hierarchical data structure, the hierarchical data structure comprising at least two topical nodes, wherein the at least two topical nodes represent partitions organized by two or more topical themes among the topical content of the training data within which the training data is to be subdivided into;
select among the training data a plurality of documents to be annotated;
generate at least one annotation prompt for each document among the plurality of documents to be annotated, said annotation prompt configured to elicit an annotation about said document indicating which node among the at least two topical nodes of the hierarchal data structure said document is to be classified into;
the application module configured to cause display of the at least one annotation prompt for each document among the plurality of documents to be annotated; the API module further configured to receive for each document among the plurality of documents to be annotated, the annotation in response to the displayed annotation prompt; and the background processing module further configured to generate the natural language model using an adaptive machine learning process configured to determine, among the received annotations, patterns for how the documents in the training data are to be subdivided according to the at least two topical nodes of the hierarchical data structure.
2 . The system of claim 1 , wherein the background processing module is further configured to test performance of the natural language model using a subset of the documents among the training data that received annotations.
3 . The system of claim 2 , wherein the background processing module is further configured to:
compute a performance metric of the natural language model, based on results of the testing; and determine whether the natural language model satisfies at least one performance criterion based on the computed performance metric.
4 . The system of claim 3 , wherein the background processing module is further configured to:
performing one or more optimization techniques configured to improve performance of the natural language platform, in response to determining that the natural language platform fails to satisfy the at least one performance criterion based on the computed performance metric.
5 . The system of claim 4 , wherein the one or more optimization techniques comprises at least one of: a feature selection process, a padding and rebalancing process of the natural language model, a pruning process of the natural language model, a feature discovery process, a smoothing process of the natural language model, or a model interpolation process.
6 . The system of claim 3 , wherein the background processing module is further configured to:
determine that the natural language platform fails to satisfy the at least one performance criterion based on the computed performance metric; in response to said determining:
identify a topical node among the two or more topical nodes of the hierarchal data structure that the natural language model fails to accurately categorize documents into;
select a second plurality of documents to be annotated, the second plurality comprising documents associated with said topical node that the natural language model failed to accurately categorize documents into; and
generate a second set of at least one annotation prompt for each document among the second plurality of documents to be annotated, said annotation prompt among the second set configured to elicit an annotation about said document to improve the natural language model in accurately categorizing documents into said topical node;
wherein the applications module is further configured to cause display of the second set of the at least one annotation prompt for each document among the second plurality of documents to be annotated; wherein the API module is further configured to receive for each document among the second plurality of documents to be annotated, a second set of annotations in response to the second set of displayed annotation prompts; and wherein the background processing module is further configured to generate a refined natural language model using the adaptive machine learning process and based on the hierarchical data structure, the training data and the second set of annotations.
7 . The system of claim 1 , wherein generating the hierarchical data structure comprises:
performing a topic modeling process configured to identify two or more topics among the content of the training data that is configured to define the two or more topical nodes of the hierarchical data structure.
8 . The system of claim 1 , wherein the background processing module is further configured to access one or more rules configured to instruct the natural language model how to categorize one or more documents into the two or more nodes of the hierarchical data structure.
9 . The system of claim 8 , wherein generating the hierarchical data structure comprises:
conducting a rules generation process configured to evaluate logical consistency among the one or more rules.
10 . The system of claim 1 , wherein generating the hierarchical data structure comprises:
generating at least one annotation prompt for each topical node among the two or more topical nodes in the hierarchical data structure, said annotation prompt configured to elicit an annotation about said topical node indicating a level of accuracy of placement of the node within the hierarchical data structure; causing display of the at least one annotation prompt for each topical node; and receiving for each topical node, the annotation in response to the displayed annotation prompt.
11 . The system of claim 10 , wherein the background processing module is further configured to evaluate performance of the hierarchical data structure based on the annotations.
12 . The system of claim 11 , wherein the background processing module is further configured to determine that the hierarchical data structure fails to satisfy at least one performance criterion in response to the evaluating; and
modify a logical relationship among the two or more topical nodes based on the annotations and in response to determining that the data structure fails to satisfy the at least one performance criterion.
13 . The system of claim 9 , wherein the API module is further configured to receive a training guideline based on the annotations to the nodes, the training guideline configured to provide instructions to an annotator for answering one or more annotation prompts for each document among the plurality of documents to be annotated.
14 . The system of claim 1 , wherein the hierarchical data structure comprises at least a third topical node and a fourth topical node, wherein the third and fourth topical nodes both represent sub-partitions within the topical theme of the first node and organized by a third and fourth topical theme, respectively, among the topical content of the training data within which the training data is to be subdivided into.
15 . A method for generating a natural language platform system configured to generate a natural language model, the method comprising:
deriving from an analogous natural language platform system, parameters configured to optimize performance of said analogous system to generate an analogous natural language model configured to analyze similar but not identical documents as the natural language model; interpolating said parameters to be optimized for documents to be analyzed by the natural language model; and implementing the interpolated parameters in the natural language platform system such that the interpolated parameters are configured to generate the natural language model.
16 . A system for generating natural language models, the system comprising:
a full service natural language platform geographically located at a remote host location and configured to:
receive training data through a network connection;
train a natural language model based on the received training data; and
generate predictions about untested data using the natural language model; and
a connector module geographically located at a local client host location and communicatively coupled to the full service natural language platform through the network connection and configured to: access the training data stored in a client data store at the local client host location; format the training data in a uniform manner; transmit the training data to the full service natural language platform through the network connection; receive the predictions about the untested data; and store the predictions about the untested data in a memory at the local client host location.
17 . The system of claim 16 , further comprising a text extraction module communicatively coupled to the connector module and configured to attach to the client data store and extract textual data for use as the training data.
18 . The system of claim 16 , wherein the full service natural language platform is further configured to:
generate a hierarchical data structure, the hierarchical data structure comprising at least two topical nodes, wherein the at least two topical nodes represent partitions organized by two or more topical themes among the topical content of the training data within which the training data is to be subdivided into;
select among the training data a plurality of documents to be annotated; and
generate at least one annotation prompt for each document among the plurality of documents to be annotated, said annotation prompt configured to elicit an annotation about said document indicating which node among the at least two topical nodes of the hierarchal data structure said document is to be classified into.
19 . The system of claim 18 , wherein the full service natural language platform is further configured to:
cause display of the at least one annotation prompt for each document among the plurality of documents to be annotated; receive for each document among the plurality of documents to be annotated, the annotation in response to the displayed annotation prompt; and generate the natural language model using an adaptive machine learning process configured to determine, among the received annotations, patterns for how the documents in the training data are to be subdivided according to the at least two topical nodes of the hierarchical data structure.
20 . The system of claim 19 , wherein the full service natural language platform is further configured to:
test performance of the natural language model using a subset of the documents among the training data that received annotations; compute a performance metric of the natural language model, based on results of the testing; determine that the natural language platform fails to satisfy the at least one performance criterion based on the computed performance metric; in response to said determining: identify a topical node among the two or more topical nodes of the hierarchal data structure that the natural language model fails to accurately categorize documents into; select a second plurality of documents to be annotated, the second plurality comprising documents associated with said topical node that the natural language model failed to accurately categorize documents into; generate a second set of at least one annotation prompt for each document among the second plurality of documents to be annotated, said annotation prompt among the second set configured to elicit an annotation about said document to improve the natural language model in accurately categorizing documents into said topical node; cause display of the second set of the at least one annotation prompt for each document among the second plurality of documents to be annotated; receive for each document among the second plurality of documents to be annotated, a second set of annotations in response to the second set of displayed annotation prompts; and generate a refined natural language model using the adaptive machine learning process and based on the hierarchical data structure, the training data and the second set of annotations.Join the waitlist — get patent alerts
Track US2020034737A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.