IP Library Granted Patent US 10,552,541
Granted Patent B1
US 10,552,541 · App. 16/113,390 · Granted Feb 4, 2020

Processing natural language queries based on machine learning

Inventors: Brian S. Dreher (San Jose, CA); Henry H. Chen (Austin, TX); Sheng Hua Bao (San Jose, CA); William S. Spangler (San Martin, CA)
Assignee: International Business Machines Corporation
G06F17/2785G06F17/2795G06N20/00
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,552,541
App. No.
16/113,390
Granted
Feb 4, 2020
Kind
B1
Abstract

According to an embodiment of the present invention, a natural language query including an ambiguous entity is received from a user. A meaning of the ambiguous entity is determined based on an extracted language context of the natural language query. The determined meaning, extracted language context, and contextual information of the user is applied to a machine learning model to determine a plurality of computer applications from amongst multiple computer applications to process the natural language query. The determined applications are executed to produce results for the natural language query tailored to an interest of the user in accordance with the contextual information.

Claims (48)

1. A method, in a data processing system comprising at least one processor and at least one memory, the at least one memory comprising instructions executed by the at least one processor to cause the at least one processor to select an application to launch on the data processing system, the method comprising:

receiving a natural language query including an ambiguous entity from a user;

retrieving contextual information of the user based on an identification of the user;

determining a meaning of the ambiguous entity based on an extracted language context of the natural language query;

applying the determined meaning, extracted language context, and the contextual information of the user to a machine learning model to determine a plurality of computer applications from amongst multiple computer applications to process the natural language query, wherein the multiple computer applications include search engines for different data sources, visualization applications to provide different types of visualizations, and query refinement tools; and

executing the determined computer applications to produce results for the natural language query tailored to an interest of the user in accordance with the contextual information, wherein the determined computer applications include one or more of the search engines to search data sources with data pertaining to the contextual information of the user and a visualization application to provide a visualization in accordance with the results.

2. The method of claim 1 , further including:

constructing queries based on requirements of the determined computer applications in combination with one or more of the meaning of the ambiguous entity, the extracted language context, and the contextual information of the user; and

submitting the queries to the determined computer applications.

3. The method of claim 1 , further including:

determining a synonym of the ambiguous entity, wherein the extracted language context includes the synonym.

4. The method of claim 3 , wherein:

the ambiguous entity includes a name of a gene; and

the determining a synonym includes determining the synonym to include one or more of a protein expressed by the gene and a medical condition associated with one or more of the gene and the protein.

5. The method of claim 1 , further including training the machine learning model to determine the computer applications to process the natural language query.

6. The method of claim 1 , wherein the contextual information includes an indication of an application currently in use by the user.

7. The method of claim 2 , wherein each constructed query includes a JavaScript Object Notation (JSON) object.

8. A computer program product comprising a computer readable medium encoded with instructions that, when executed by a processor, cause the processor to:

receive a natural language query including an ambiguous entity from a user;

retrieve contextual information of the user based on an identification of the user;

determine a meaning of the ambiguous entity based on an extracted language context of the natural language query;

apply the determined meaning, extracted language context, and the contextual information of the user to a machine learning model to determine a plurality of computer applications from amongst multiple computer applications to process the natural language query, wherein the multiple computer applications include search engines for different data sources, visualization applications to provide different types of visualizations, and query refinement tools; and

execute the determined computer applications to produce results for the natural language query tailored to an interest of the user in accordance with the contextual information, wherein the determined computer applications include one or more of the search engines to search data sources with data pertaining to the contextual information of the user and a visualization application to provide a visualization in accordance with the results.

9. The computer program product of claim 8 , further including instructions to cause the processor to:

construct queries based on requirements of the determined computer applications in combination with one or more of the meaning of the ambiguous entity, the extracted language context, and the contextual information of the user; and

submit the queries to the determined computer applications.

10. The computer program product of claim 8 , further including instructions to cause the processor to:

determine a synonym of the ambiguous entity, wherein the extracted language context includes the synonym.

11. The computer program product of claim 10 , wherein the ambiguous entity includes a name of a gene, and wherein the instructions further cause the processor to:

determine the synonym to include one or more of a protein expressed by the gene and a medical condition associated with one or more of the gene and the protein.

12. The computer program product of claim 8 , further including instructions to cause the processor to:

train the machine learning model to determine the computer applications.

13. The computer program product of claim 8 , wherein the contextual information includes an indication of an application currently in use by the user.

14. The computer program product of claim 9 , wherein each constructed query includes a JavaScript Object Notation (JSON) object.

15. An apparatus, comprising, a processor and memory configured to:

receive a natural language query including an ambiguous entity from a user;

retrieve contextual information of the user based on an identification of the user;

determine a meaning of the ambiguous entity based on an extracted language context of the natural language query;

apply the determined meaning, extracted language context, and the contextual information of the user to a machine learning model to determine a plurality of computer applications from amongst multiple computer applications to process the natural language query, wherein the multiple computer applications include search engines for different data sources, visualization applications to provide different types of visualizations, and query refinement tools; and

execute the determined computer applications to produce results for the natural language query tailored to an interest of the user in accordance with the contextual information, wherein the determined computer applications include one or more of the search engines to search data sources with data pertaining to the contextual information of the user and a visualization application to provide a visualization in accordance with the results.

16. The apparatus of claim 15 , wherein the processor and memory are further configured to:

construct queries based on requirements of the determined computer applications in combination with one or more of the meaning of the ambiguous entity, the extracted language context, and the contextual information of the user; and

submit the queries to the determined computer applications.

17. The apparatus of claim 15 , wherein the processor and memory are further configured to:

determine a synonym of the ambiguous entity, wherein the extracted language context includes the synonym.

18. The apparatus of claim 17 , wherein the ambiguous entity includes a name of a gene, and wherein the processor and memory are further configured to determine the synonym to include one or more of a protein expressed by the gene and a medical condition associated with one or more of the gene and the protein.

19. The apparatus of claim 15 , wherein the processor and memory are further configured to train the machine learning model to determine the computer applications.

20. The apparatus of claim 16 , wherein each constructed query includes a JavaScript Object Notation (JSON) object.

Assignments (3)
SECURITY INTEREST Recorded Oct 1, 2025
From: MERATIVE US L.P.; MERGE HEALTHCARE INCORPORATED
To: TCG SENIOR FUNDING L.L.C., AS COLLATERAL AGENT
Reel/Frame 072808/0442 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 21, 2022
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: MERATIVE US L.P.
Reel/Frame 061496/0752 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 27, 2018
From: DREHER, BRIAN S.; CHEN, HENRY H.; BAO, SHENG HUA; SPANGLER, WILLIAM S.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 046712/0738 →
Cited By (4)
US 12,373,685 US 12,436,925 US 12,468,756 US 12,547,845