IP Library Granted Patent US 11,573,957
Granted Patent B2
US 11,573,957 · App. 16/866,034 · Granted Feb 7, 2023

Natural language processing engine for translating questions into executable database queries

Inventors: Jichuan Zeng (Hong Kong, CN); Xi Lin (Palo Alto, CA); Chu Hong Hoi (Singapore, SG)
Assignee: Salesforce.com, Inc.
G06F16/243G06F16/24524G06F40/284G06F40/47
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,573,957
App. No.
16/866,034
Granted
Feb 7, 2023
Kind
B2
Abstract

A system and method for translating questions into database queries are provided. A text to database query system receives a natural language question and a structure in a database. Question tokens are generated from the question and query tokens are generated from the structure in the database. The question tokens and query tokens are concatenated into a sentence and a sentence token is added to the sentence. A BERT network generates question hidden states for the question tokens, query hidden states for the query tokens, and a classifier hidden state for the sentence token. A translatability predictor network determines if the question is translatable or untranslatable. A decoder converts a translatable question into an executable query. A confusion span predictor network identifies a confusion span in the untranslatable question that causes the question to be untranslatable. An auto-correction module to auto-correct the tokens in the confusion span.

Claims (61)

1. A method comprising:

receiving a natural language question and a structure in a database;

concatenating a sentence that includes question tokens from the natural language question, query tokens from the structure in the database, and a sentence token;

generating, using a table aware bidirectional encoder representations from transformers (BERT) network, question hidden states for the question tokens, query hidden states for the query tokens and a classification hidden state for the sentence token;

determining, using a translatability predictor network and the classification hidden state, that the natural language question is untranslatable;

and

determining, using a confusion span predictor network, a confusion span that identifies at least one question token in the question tokens that causes the natural language question to be untranslatable given the structure in the database.

2. The method of claim 1 , further comprising:

substituting in the sentence the at least one question token that is in the confusion span with at least one mask token;

determining, using a masked language model (MLM) BERT network and the sentence with the at least one mask token, at least one token candidate from the structure in the database;

substituting the at least one mask token in the sentence with the at least one token candidate; and

translating, using the table aware BERT network the sentence into an executable query.

3. The method of claim 1 , wherein the structure in the database includes a database schema and at least one table name.

4. The method of claim 1 , wherein the query tokens are separated using a separation token.

5. The method of claim 1 , further comprising:

concatenating the sentence token to the sentence before a first question token in the question tokens.

6. The method of claim 1 , further comprising:

training at least one of a table aware BERT network, the translatability predictor network, or the confusion span predictor network using a dataset that includes pairs, each pair including a translatable or untranslatable natural language question and corresponding structure in the database.

7. The method of claim 6 , further comprising:

generating the untranslatable natural language question in the dataset by randomly substituting one of the question tokens in the natural language question in a pair from the pairs with another token that has a similar meaning as the one question token.

8. The method of claim 6 , further comprising:

generating the untranslatable natural language question in the dataset by randomly removing one of the question tokens in the translatable natural language question in a pair from the pairs.

9. The method of claim 6 , further comprising:

generating the untranslatable natural language question by removing one of table names from a structure in the database that corresponds to the translatable natural language question in a pair.

10. A text to database query translating system, the system comprising:

a memory;

at least one processor coupled to the memory and configured to:

receive a natural language question and a structure in a database;

concatenate a sentence that includes question tokens from the natural language question, query tokens from the structure in the database, and a sentence token;

generate, using a table aware bidirectional encoder representations from transformers (BERT) neural network, question hidden states for the question tokens, query hidden states for the query tokens and a classification hidden state for the sentence token;

determine, using a translatability predictor network and the classification hidden state, that the natural language question is untranslatable; and

determine, using a confusion span predictor network, a confusion span that identifies at least one question token in the question tokens that causes the natural language question to be untranslatable given the structure in the database.

11. The text to database query translating system of claim 10 , wherein the processor is further configured to:

substitute in the sentence the at least one question token that is in the confusion span with at least one mask token;

determine, using a masked language model (MLM) BERT network and the sentence with the at least one mask token, at least one token candidate from the structure in the database;

substitute the at least one mask token in the sentence with the at least one token candidate; and

translate, using the table aware BERT network the sentence into an executable query.

12. The text to database query translating system of claim 10 , wherein the structure in the database includes a database schema.

13. The text to database query translating system of claim 10 , wherein the query tokens are separated using a separation token.

14. The text to database query translating system of claim 10 , wherein the processor is further configured to:

concatenate the sentence token to the sentence prior to a first question token in the question tokens.

15. The text to database query translating system of claim 10 , wherein the processor is further configured to:

train at least one of a table aware BERT network, the translatability predictor network, or the confusion span predictor network using a dataset that includes pairs, each pair including a translatable or untranslatable natural language question and corresponding structure in the database.

16. The text to database query translating system of claim 15 , wherein the processor is further configured to:

generate the untranslatable natural language question in the dataset by randomly substituting one of the question tokens in the natural language question in a pair in the pairs with another token that has a similar meaning as the one question token.

17. The text to database query translating system of claim 15 , wherein the processor is further configured to:

generate the untranslatable natural language question in the dataset by randomly removing one of the question tokens in the natural language question in a pair of the pairs.

18. The text to database query translating system of claim 15 , wherein the processor is further configured to:

generating the untranslatable natural language question by removing one of table names from a structure in the database that corresponds to the translatable natural language question in a pair.

19. A non-transitory machine-readable medium having stored thereon machine-readable instructions executable to cause a machine to perform operations that process a natural language, the operations comprising:

receiving a natural language question and a structure in a database

concatenating a sentence that includes question tokens from the natural language question, query tokens from the structure in the database, and a sentence token;

generating, using a table aware bidirectional encoder representations from transformers (BERT) network, question hidden states for the question tokens, query hidden states for the query tokens and a classification hidden state for the sentence token;

determining, using a translatability predictor network and the classification hidden state, that the natural language question is translatable or untranslatable;

if the natural language question is determined to be translatable, translating, using a decoder network, the natural language question into an executable query; and

if the natural language question is determined to be untranslatable, determining, using a confusion span predictor network, a confusion span that identifies at least one question token in the question tokens that causes the natural language question to be untranslatable given the structure in the database.

20. The non-transitory machine-readable medium of claim 19 , wherein the machine is further configured to perform the operations comprising:

substituting in the sentence the at least one question token that is in the confusion span with at least one mask token;

determining, using a masked language model (MLM) BERT network and the sentence with the at least one mask token, at least one token candidate from the structure in the database;

substituting the at least one mask token in the sentence with the at least one token candidate; and

translating, using the table aware BERT network the sentence into the executable query.

Assignments (2)
CHANGE OF NAME Recorded Dec 18, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 069717/0480 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 4, 2020
From: ZENG, JICHUAN; LIN, XI; HOI, CHU HONG
To: SALESFORCE.COM, INC.
Reel/Frame 052563/0784 →
Continuity (2)
Provisional Application 62945833 · Dec 9, 2019
Related Publication 20210173829A1 · Jun 10, 2021
Cited By (1)
US 12,217,838