CROSS-REFERENCE TO RELATED APPLICATIONS

There is no cross-reference is presented at this time.

BACKGROUND

When responding to requirements specified in certain documents, it is paramount to ensure compliance with the requirements. Traditional techniques for ensuring compliance involve multiple humans performing a manual review of each requirement's response. For example, for government contract review of Request for Proposals (RFPs), a color coded review methodology can be used, where each color is associated with a separate portion of the review of the response to the RFP. Unfortunately, for these and similar types of reviews for requirement-specifying documents, numerous individuals are needed to perform the review, which slows down the review process and inherently injects a reviewer's bias into their review of the document. Additionally, manual review of the document can still lead to a reviewer failing to identify when responses to important requirements being missed,

SUMMARY

The following is a non-exhaustive listing of some aspects of the present techniques. These and other aspects are described in the following disclosure.

Some aspects include a process that includes: obtaining a first document and a second document each comprising a plurality of sections, wherein each section of the first document comprises at least one sentence including a predefined keyword, and wherein each section of the second document comprises one or more sentences; identifying, using a first natural language processing (NLP) model, each instance of the predefined keyword in each section of the first document; for each section of the plurality of sections of the first document: extracting, using the first NLP model, first text data representing first text tokens of the at least one sentence including the predefined keyword; generating, using a second NLP model, based on the first text data, a feature vector representing each of the first text tokens of the at least one sentence including the predefined keyword to obtain a first set of textual feature vectors; for each section of the plurality of sections of the second document: extracting, using the first NLP model, second text data representing second text tokens of each of the one or more sentences of a given section of the second document; generating, using the second NLP model, based on the second text data, a feature vector representing each of the second text tokens of the given section of the second document to obtain a second set of textual feature vectors; determining, based on a term frequency-inverse document frequency (TF-IDF) analysis of each section of the first document and the second document, a set of text tokens from the first text tokens and the second text tokens that occur most frequently in the first document and the second document; selecting a set of feature vectors from the first set of textual feature vectors and the second set of textual feature vectors, wherein each feature vector selected corresponds to a text token from the set of text tokens; determining a text token similarity score between each text token from the set of text tokens, wherein determining the text token similarity score comprises computing, using a third NLP model, a first distance in a first feature space between each feature vector from the selected set of feature vectors; generating, for each section of the plurality of sections, a section text token score based on the text token similarity score for each text token of the set of text tokens included in a given section; determining, for each section of the plurality of sections, whether the section text token score satisfies a first threshold condition, the first threshold condition being satisfied for a section text token score that is greater than or equal to a threshold text token score; and generating and storing a data flag with each section of the plurality of sections of the second document having a respective threshold text token score failing to satisfy the first threshold condition.

Some aspects include a tangible, non-transitory, machine-readable medium storing instructions that when executed by a data processing apparatus cause the data processing apparatus to perform operations including the above-mentioned process.

Some aspects include a system, including: one or more processors; and memory storing instructions that when executed by the processors cause the processors to effectuate operations of the above-mentioned process.

