IP Library Granted Patent US 10,614,157
Granted Patent B1
US 10,614,157 · App. 16/410,023 · Granted Apr 7, 2020

Systems, methods, and computer program products for slot normalization of text data

Inventors: Daniel E. Simonson (Arlington, VA); Jonathan Herr (Washington, DC); Joey T. Avant (Arlington, VA); Garen P. Riedel (Brooklyn, NY); Daniel P. Broderick (Arlington, VA)
Assignee: BLACKBOILER, LLC
G06F17/24G06F3/0482G06F16/2379G06F16/93G06F17/212G06F17/278
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 10,614,157
App. No.
16/410,023
Granted
Apr 7, 2020
Kind
B1
Abstract

Methods, systems, and computer program products are provided for customization and insertion of a clause into an electronic document under analysis (DUA). The method includes the steps of receiving and electronic DUA, automatically detecting a slot type in the received DUA, assigning a DUA slot value to the detected slot type, and automatically updating one or more clauses in a clause library using the DUA slot value, wherein the updating includes inserting the DUA slot value into each slot in the one or more clauses having a slot type matching the detected slot type.

Claims (74)

1. A computer-implemented method comprising:

receiving a training corpus comprising a plurality of documents, wherein each of the documents comprises one or more slot types;

normalizing each of the one or more slot types in the plurality of documents in the training corpus with a representation of a respective slot type;

obtaining a document under analysis (DUA);

automatically detecting a slot type in the DUA;

normalizing the detected slot type in the DUA with a representation of the detected slot type in the DUA; and,

determining, using the training corpus and the normalized detected slot type in the DUA, an edit operation to apply to the DUA.

2. The method of claim 1 , further comprising:

assigning a DUA slot value to the detected slot type in the DUA.

3. The method of claim 2 , further comprising:

applying the determined edit operation to the DUA; and,

replacing the representation of the detected slot type in the DUA with the assigned DUA slot value.

4. The method of claim 2 , the method further comprising:

automatically updating one or more clauses in a clause library using the DUA slot value, wherein the updating comprises inserting the DUA slot value into each slot in the one or more clauses having a slot type matching the detected slot type.

5. The method of claim 4 , further comprising:

displaying the DUA on a graphical user interface;

displaying the updated one or more clauses on the graphical user interface;

receiving an indication that a user has selected one of the displayed updated one or more clauses; and

inserting into the DUA the selected updated clause.

6. The method of claim 5 , further comprising:

displaying the detected slot type and the assigned DUA slot value in the graphical user interface.

7. The method of claim 6 , further comprising:

receiving an instruction to modify the DUA slot value from a user; and,

automatically updating the one or more clauses in the clause library using the modified DUA slot value.

8. The method of claim 5 , wherein the graphical user interface comprises a first area for displaying the DUA and a second area for displaying the updated one or more clauses, wherein the step of inserting into the DUA the selected updated clause comprises:

inserting the selected updated clause at a location of a cursor in the DUA displayed in the first area of the graphical user interface.

9. The method of claim 1 , wherein automatically detecting a slot type in the DUA further comprises:

extracting a chain from the DUA;

affixing one or more slot types to the extracted chain, wherein the affixing results in a set of permutations, each permutation comprising one of the one or more slot types and the extracted chain;

submitting each of the permutations to a scoring function; and,

associating one of the slot types to the extracted chain based on a value output from the scoring function.

10. The method of claim 1 , further comprising:

receiving a set of annotations, the annotations comprising a surface form of each of the one or more slot types for each corresponding document in the training corpus.

11. The method of claim 1 , further comprising:

tokenizing the DUA into one or more statements-under-analysis (SUAs);

obtaining from the training corpus a candidate original text;

obtaining from the training corpus a candidate final text associated with the candidate original text; and,

determining the edit operation by aligning the SUA with at least one of the candidate original text and the candidate final text.

12. A non-transitory computer readable medium storing instructions configured to cause a computer to perform the method of claim 1 .

13. A system comprising:

a processor;

a non-transitory computer readable memory coupled to the processor, wherein the processor is configured to:

receive a training corpus comprising a plurality of documents, wherein each of the documents comprises one or more slot types;

normalize each of the one or more slot types in the plurality of documents in the training corpus with a representation of a respective slot type;

obtain a document under analysis (DUA);

automatically detect a slot type in the DUA;

normalize the detected slot type in the DUA with a representation of the detected slot type in the DUA; and

determine, using the training corpus and the normalized detected slot type in the DUA, an edit operation to apply to the DUA.

14. The system of claim 13 , wherein the processor is further configured to:

assign a DUA slot value to the detected slot type in the DUA.

15. The system of claim 14 , wherein the processor is further configured to:

apply the determined edit operation to the DUA; and,

replace the representation of the detected slot type in the DUA with the assigned DUA slot value.

16. The system of claim 14 , wherein the processor is further configured to:

automatically update one or more clauses in a clause library using the DUA slot value, wherein the update comprises an insertion of the DUA slot value into each slot in the one or more clauses having a slot type matching the detected slot type.

17. The system of claim 16 , further comprising:

a display device coupled to the processor,

wherein the processor is further configured to:

display the DUA on a graphical user interface of the display device;

display the updated one or more clauses on the graphical user interface;

receive an indication that a user has selected one of the displayed updated one or more clauses; and

insert into the DUA the selected updated clause.

18. The system of claim 13 , wherein the processor is further configured to:

extract a chain from the DUA;

affix one or more slot types to the extracted chain, wherein the affixation results in a set of permutations, each permutation comprising one of the one or more slot types and the extracted chain;

submit each of the permutations to a scoring function; and,

associate one of the slot types to the extracted chain based on a value output from the scoring function.

19. The system of claim 13 , wherein the processor is further configured to:

receive a set of annotations, the annotations comprising a surface form of each of the one or more slot types for each corresponding document in the training corpus.

20. The system of claim 13 , wherein the processor is further configured to:

tokenize the DUA into one or more statements-under-analysis (SUAs);

obtain from the training corpus a candidate original text;

obtain from the training corpus a candidate final text associated with the candidate original text; and,

determine the edit operation by aligning the SUA with at least one of the candidate original text and the candidate final text.

Assignments (2)
MERGER Recorded Jun 22, 2020
From: BB CONVERSION CORP.
To: BLACKBOILER, INC.
Reel/Frame 053000/0033 →
CHANGE OF NAME Recorded Jun 18, 2020
From: BLACKBOILER, LLC
To: BB CONVERSION CORP.
Reel/Frame 052979/0573 →
Continuity (2)
Continuation 16197769 · Nov 21, 2018
Continuation 16170628 · Oct 25, 2018
Cited By (1)
US 12,333,959