IP Library › Granted Patent US 11,086,857
Granted Patent B1
US 11,086,857 · App. 15/980,475 · Granted Aug 10, 2021

Method and system for semantic search with a data management system

Inventors: Hrishikesh V. Ganu (Bangalore, IN); Aminish Sharma (Bangalore, IN)
Assignee: Intuit Inc.
G06F16/243G06F16/2457G06F16/24522G06F40/295G06F40/30G06Q40/12
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,086,857
App. No.
15/980,475
Filed
May 15, 2018
Granted
Aug 10, 2021
Kind
B1
Art Unit
2159
USPC
707/771
Abstract

A method and system provides assistance to users of a data management system. The method and system trains an analysis model with a machine learning process to generate sub-word embeddings corresponding to vectorized representations of portions of a search term entered by a user. The method and system generates augmented query data based on the sub-word embeddings. The method and system provides assistance to the user based on the augmented query data.

Claims (46)

1. A method for generating accurate search results, the method performed by one or more processors of a system and comprising:

training, with a machine learning process, an analysis model to generate sub-word embeddings based on search terms received from system users;

receiving, from a system user, a query including a plurality of search terms;

identifying at least one term of the plurality of search terms not included in a keyword database of the system;

separating the at least one term into a plurality of word segments each having a same length;

using the trained analysis model to generate, for each respective word segment of the plurality of word segment, a sub-word embedding corresponding to a vector representative of the respective word segment;

combining each of the corresponding vectors for the generated sub-word embeddings into a single vector representative of the at least one term;

identifying, in the keyword database, one or more additional terms related to the at least one term based on the single vector;

generating search results for the query based at least in part on the one or more additional terms; and

outputting the search results to the system user.

2. The method of claim 1 , wherein generating the search results data includes identifying, in an assistance documents database, one or more assistance documents likely to be relevant to the query.

3. The method of claim 1 , wherein identifying the one or more additional terms is based on a vector clustering process.

4. The method of claim 1 , wherein identifying the one or more additional terms is based on a vector clustering algorithm.

5. The method of claim 1 , wherein identifying the one or more additional terms includes referencing the keyword database.

6. The method of claim 1 , wherein generating the search results is based on the keyword database.

7. The method of claim 1 , wherein each sub-model of a plurality of system sub-models performs a different portion of the machine learning process.

8. The method of claim 1 , wherein the analysis model is a Continuous Bag of Words model.

9. The method of claim 1 , wherein the system is a financial management system.

10. The method of claim 1 , further comprising:

calculating at least one of a Euclidian distance or a Hamming distance between the single vector and one or more vectors previously generated by the system.

11. The method of claim 1 , further comprising:

generating a hash map based on search terms included in the keyword database.

12. A system for generating accurate search results, the system comprising:

one or more processors; and

at least one memory coupled to the one or more processors and storing instructions that, when executed by the one or more processors, cause the system to perform operations including:

training, with a machine learning process, an analysis model to generate sub-word embeddings based on search terms received from system users;

receiving, from a system user, a query including a plurality of search terms;

identifying at least one term of the plurality of search terms not included in a keyword database of the system;

separating the at least one term into a plurality of word segments each having a same length;

using the trained analysis model to generate, for each respective word segment of the plurality of word segments, a sub-word embedding corresponding to a vector representative of the respective word segment;

combining each of the corresponding vectors for the generated sub-word embeddings into a single vector representative of the at least one term;

identifying, in the keyword database, one or more additional terms related to the at least one term based on the single vector;

generating search results for the query based at least in part on the one or more additional terms; and

outputting the search results to the system user.

13. The system of claim 12 , wherein generating the search results data includes identifying, in an assistance documents database, one or more assistance documents likely to be relevant to the query.

14. The system of claim 12 , wherein identifying the one or more additional terms is based on a vector clustering process.

15. The system of claim 12 , wherein identifying the one or more additional terms is based on a vector clustering algorithm.

16. The system of claim 12 , wherein identifying the one or more additional terms includes referencing the keyword database.

17. The system of claim 12 , wherein generating the search results is based on the keyword database.

18. The system of claim 12 , wherein each sub-model of a plurality of system sub-models performs a different portion of the machine learning process.

19. The system of claim 12 , wherein the analysis model is a Continuous Bag of Words model.

20. The system of claim 12 , wherein the system is a financial management system.

21. The system of claim 12 , wherein execution of the instructions causes the system to perform operations further including:

calculating at least one of a Euclidian distance or a Hamming distance between the single vector and one or more vectors previously generated by the system.

22. The system of claim 12 , wherein execution of the instructions causes the system to perform operations further including:

generating a hash map based on search terms included in the keyword database.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 24, 2018
From: GANU, HRISHIKESH V.; SHARMA, AMINISH
To: INTUIT INC.
Reel/Frame 045893/0475 →
Cited By (2)
US 12,210,816 US 12,488,011