IP Library Granted Patent US 11,347,733
Granted Patent B2
US 11,347,733 · App. 16/536,169 · Granted May 31, 2022

System and method for transforming unstructured numerical information into a structured format

Inventor: Joy Mustafi (Telangana, IN)
Assignee: salesforce.com, inc.
G06F16/24522G06F16/285G06F40/205G06F40/289G06N3/02G06N5/04G06V30/413
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 11,347,733
App. No.
16/536,169
Granted
May 31, 2022
Kind
B2
Abstract

Embodiments described herein automatically classifies numerical expressions from a textual document and designates a context to understand each numerical expression. Specifically, numerical expressions from a textual context are classified as nominal or cardinal. For cardinal numerical expressions that carry a quantitative meaning, inference terms are determined from the textual context to associate with the cardinal numerical expressions. The numerical expressions are then translated to a format of a numerical value and stored with metadata indicating the unit scale or the meaning of the numerical value.

Claims (84)

1. A system for transforming unstructured numerical expressions from a text document to structured data entries, the system comprising:

a communication interface that receives the textual document having one or more numerical expressions;

a memory containing machine readable medium storing machine executable code; and

one or more processors coupled to the memory and configurable to execute the machine executable code to cause the one or more processors to:

extract a numerical expression from the textual document;

classify the numerical expression as nominal or cardinal;

when the numerical expression is classified as cardinal:

divide the numerical expression into a numerical portion and a non-numerical portion;

determine, from a text where the numerical expression is extracted from, one or more inference terms indicative of a meaning of the non-numerical portion;

translate the non-numerical portion into a unit term based on the one or more inference terms;

reformat the numerical portion of the numerical expression using the unit term; and

store the reformatted numerical expression and the metadata associated with the reformatted numerical expression, with the one or more inference terms in a relational database.

2. The system of claim 1 , wherein the one or more processors is configurable to execute the machine executable code to classify the numerical expression as nominal or cardinal by:

extracting a set of words containing the numerical expression from the textual document;

determining a probability that the set of words fit into a nominal expression pattern; and

determining whether the numerical expression is nominal based on the determined probability.

3. The system of claim 2 , wherein the nominal expression pattern includes any of an index, a bullet point, a reference number, a section number, an abbreviation, a telephone number, or an address number.

4. The system of claim 1 , wherein one or more processors is configurable to execute the machine executable code to determine, from a text where the numerical expression is extracted from, one or more inference terms indicative of a meaning of the non-numerical portion by:

extracting a set of words from the text, the set of words containing the numerical expression;

classifying each word from the set of words as containing or not containing quantitative meaning; and

determining, based on sentence structure analysis and the classified words that contain quantitative meaning, the one or more inference terms indicative of the meaning of the non-numerical portion.

5. The system of claim 4 , wherein the one or more processors is configurable to execute the machine executable code further to:

retrieving a neural network trained by historically used numerical expressions and inference terms; and

determining the one or more inference terms via the neural network.

6. The system of claim 5 , wherein the one or more processors is configurable to execute the machine executable code to translate the non-numerical portion into a unit term based on the one or more inference terms by:

querying a unit scale database based on the one or more inference terms; and

obtaining, from the querying, the unit term.

7. The system of claim 4 , wherein the one or more processors is configurable to execute the machine executable code to store the reformatted numerical expression with the one or more inference terms in a relational table by:

determining a header name based on the classified words that contain quantitative meaning and the one or more inference terms;

storing the reformatted numerical expression under the header name in a tabular form; and

associating the one or more inference terms with the reformatted numerical expression in the tabular form.

8. The system of claim 1 , wherein the one or more processors is further configurable to execute the machine executable code to:

extract metadata relating to the numerical expression from the textual document;

organize the metadata into a metadata format; and

store the metadata with the reformatted numerical expression in the relational table.

9. The system of claim 1 , wherein the one or more processors is configurable to execute the machine executable code further to:

receive a natural language query; and

identify related numerical expressions and associated inference terms pertaining to the natural language query.

10. The system of claim 9 , wherein the one or more processors is configurable to execute the machine executable code further to:

determine an operation type relating to the natural language query and the identified related numerical expressions and associated inference terms;

perform an operation of the operation type over the identified related numerical expressions;

obtain a numerical result from the operation; and

present the numerical result in a natural language format.

11. A method for transforming unstructured numerical expressions from a text document to structured data entries, the method comprising:

receiving, via a communication interface, the textual document having one or more numerical expressions;

extracting, via a processor, a numerical expression from the textual document;

classifying the numerical expression as nominal or cardinal;

when the numerical expression is classified as cardinal:

dividing the numerical expression into a numerical portion and a non-numerical portion;

determining, from a text where the numerical expression is extracted from, one or more inference terms indicative of a meaning of the non-numerical portion;

translating the non-numerical portion into a unit term based on the one or more inference terms;

reformatting the numerical portion of the numerical expression using the unit term; and

storing the reformatted numerical expression and the metadata associated with the reformatted numerical expression, with the one or more inference terms in a relational database.

12. The method of claim 11 , wherein the classifying the numerical expression as nominal or cardinal comprises:

extracting a set of words containing the numerical expression from the textual document;

determining a probability that the set of words fit into a nominal expression pattern; and

determining whether the numerical expression is nominal based on the determined probability.

13. The method of claim 12 , wherein the nominal expression pattern includes any of an index, a bullet point, a reference number, a section number, an abbreviation, a telephone number, or an address number.

14. The method of claim 11 , wherein the determining, from a text where the numerical expression is extracted from, one or more inference terms indicative of a meaning of the non-numerical portion comprises:

extracting a set of words from the text, the set of words containing the numerical expression;

classifying each word from the set of words as containing or not containing quantitative meaning; and

determining, based on sentence structure analysis and the classified words that contain quantitative meaning, the one or more inference terms indicative of the meaning of the non-numerical portion.

15. The method of claim 14 , further comprising:

retrieving a neural network trained by historically used numerical expressions and inference terms; and

determining the one or more inference terms via the neural network.

16. The method of claim 15 , wherein the translating the non-numerical portion into a unit term based on the one or more inference terms comprises:

querying a unit scale database based on the one or more inference terms; and

obtaining, from the querying, the unit term.

17. The method of claim 14 , wherein the storing the reformatted numerical expression with the one or more inference terms in the relational table comprises:

determining a header name based on the classified words that contain quantitative meaning and the one or more inference terms;

storing the reformatted numerical expression under the header name in a tabular form; and

associating the one or more inference terms with the reformatted numerical expression in the tabular form.

18. The method of claim 11 , further comprising:

extracting metadata relating to the numerical expression from the textual document;

organizing the metadata into a metadata format; and

storing the metadata with the reformatted numerical expression in the relational table.

19. The method of claim 11 , further comprising:

receiving a natural language query; and

identifying related numerical expressions and associated inference terms pertaining to the natural language query.

20. The method of claim 19 , further comprising:

determining an operation type relating to the natural language query and the identified related numerical expressions and associated inference terms;

performing an operation of the operation type over the identified related numerical expressions;

obtaining a numerical result from the operation; and

presenting the numerical result in a natural language format.

Assignments (2)
CHANGE OF NAME Recorded Dec 18, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 069717/0427 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 12, 2019
From: MUSTAFI, JOY
To: SALESFORCE.COM, INC.
Reel/Frame 050023/0967 →
Continuity (1)
Related Publication 20210042307A1 · Feb 11, 2021