IP Library › Granted Patent US 10,810,378
Granted Patent B2
US 10,810,378 · App. 16/170,585 · Granted Oct 20, 2020

Method and system for decoding user intent from natural language queries

Inventors: Igor Podgorny (San Diego, CA); Faraz Sharafi (San Diego, CA); Matthew Cannon (San Diego, CA); Vitor Carvalho (San Diego, CA)
Assignee: Intuit Inc.
G06F40/30G06F16/24575G06N3/08H04L67/22
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,810,378
App. No.
16/170,585
Granted
Oct 20, 2020
Kind
B2
Abstract

A method for decoding a natural language user query involves obtaining the user query submitted by a user, segmenting the user query into words, generating a character embedding for each of the words, and generating a word embedding for each of the words. The method further involves obtaining a clickstream from tracked clicks of the user, generating a clickstream embedding from the clickstream, and for each of the words, generating a unified feature representation based on the character embedding and the word embedding for each of the words, and the clickstream embedding. The method also involves decoding the unified feature representations to obtain a decoded user query, and processing the user query using the decoded user query.

Claims (78)

1. A method for decoding a natural language user query, the method comprising:

obtaining the user query submitted by a user of a software application;

segmenting the user query into a plurality of words;

generating a character embedding for each word of the plurality of words;

generating a word embedding for each word of the plurality of words;

obtaining a clickstream from tracked clicks of the user,

wherein the clickstream captures one or more interactions of the user with the software application occurring within a time interval prior to the submission of the user query;

generating a clickstream embedding from the clickstream;

for each of the words, generating a unified feature representation based on:

the character embedding and the word embedding for each of the words; and

the clickstream embedding;

decoding the unified feature representations to obtain a decoded user query; and

processing the user query using the decoded user query.

2. The method of claim 1 , further comprising:

obtaining metadata based on the clicks of the user;

generating a metadata embedding from the metadata; and

generating the unified feature representation using the metadata.

3. The method of claim 1 , wherein generating the unified feature representation comprises:

weighting the character embedding, the word embedding, and the clickstream embedding to maximize an information gain for obtaining the decoded user query; and

combining the weighted character embedding, the weighted word embedding and the weighted clickstream to form the unified feature representation.

4. The method of claim 3 ,

wherein a weighting matrix is used to weight the character embedding, the word embedding, and the clickstream embedding, and

wherein the weighting matrix is trained using historical data to maximize the information gain.

5. The method of claim 1 , wherein the unified feature representation comprises an aggregate knowledge based on the character embedding, the word embedding and the clickstream embedding.

6. The method of claim 1 , wherein obtaining the decoded user query from the unified feature representation comprises sequential processing of the unified feature representation for each of the words by a recurrent neural network.

7. The method of claim 6 , wherein the sequential processing is performed in a forward direction and in a backward direction.

8. The method of claim 1 , wherein generating the character embedding comprises obtaining a vector representation of the word using machine learning based on a corpus that includes non-normalized text.

9. The method of claim 1 , wherein processing the user query comprises:

using the decoded user query as input to a search ranker; and

obtaining, from the search ranker, a search result based on the decoded user query.

10. The method of claim 1 , further comprising:

selecting, by a search ranker orchestrator, from a plurality of search rankers, a search ranker expected to maximize a quality of a search result; and

obtaining, the search result using the selected search ranker, based on the decoded user query.

11. A system for decoding a natural language query, the system comprising:

a computer processor; and

an application back-end executing on the computer processor configured to:

obtain the user query submitted by a user of a software application;

segment the user query into a plurality of words;

generate a character embedding for each word of the plurality of words;

generate a word embedding for each word of the plurality of words;

obtain a clickstream from tracked clicks of the user,

wherein the clickstream captures one or more interactions of the user with the software application occurring within a time interval prior to the submission of the user query;

generate a clickstream embedding from the clickstream;

a query decoder configured to:

for each of the words, generate a unified feature representation based on:

the character embedding and the word embedding for each of the words; and

the clickstream embedding;

decode the unified feature representations to obtain a decoded user query; and

a query response engine configured to process the user query using the decoded user query.

12. The system of claim 11 , wherein generating the unified feature representation comprises:

weighting the character embedding, the word embedding, and the clickstream embedding to maximize an information gain for obtaining the decoded user query; and

combining the weighted character embedding, the weighted word embedding and the weighted clickstream to form the unified feature representation.

13. The system of claim 12 ,

wherein a weighting matrix is used to weight the character embedding, the word embedding, and the clickstream embedding, and

wherein the weighting matrix is trained using historical data to maximize the information gain.

14. The system of claim 11 , wherein obtaining the decoded user query from the unified feature representation comprises sequential processing of the unified feature representation for each of the words by a recurrent neural network.

15. The system of claim 11 , wherein generating the character embedding comprises obtaining a vector representation of the word using machine learning based on a corpus that includes non-normalized text.

16. A non-transitory computer readable medium comprising computer readable program code for decoding a natural language query, the computer readable program code causing a computer system to:

obtain the user query submitted by a user of a software application;

segment the user query into a plurality of words;

generate a character embedding for each word of the plurality of words;

generate a word embedding for each word of the plurality of words;

obtain a clickstream from tracked clicks of the user,

wherein the clickstream captures one or more interactions of the user with the software application occurring within a time interval prior to the submission of the user query;

generate a clickstream embedding from the clickstream;

for each of the words, generate a unified feature representation based on:

the character embedding and the word embedding for each of the words; and

the clickstream embedding;

decode the unified feature representations to obtain a decoded user query; and

process the user query using the decoded user query.

17. The non-transitory computer readable medium of claim 16 , wherein generating the unified feature representation comprises:

weighting the character embedding, the word embedding, and the clickstream embedding to maximize an information gain for obtaining the decoded user query; and

combining the weighted character embedding, the weighted word embedding and the weighted clickstream to form the unified feature representation.

18. The non-transitory computer readable medium of claim 17 ,

wherein a weighting matrix is used to weight the character embedding, the word embedding, and the clickstream embedding, and

wherein the weighting matrix is trained using historical data to maximize the information gain.

19. The non-transitory computer readable medium of claim 16 , wherein obtaining the decoded user query from the unified feature representation comprises sequential processing of the unified feature representation for each of the words by a recurrent neural network.

20. The non-transitory computer readable medium of claim 16 , wherein generating the character embedding comprises obtaining a vector representation of the word using machine learning based on a corpus that includes non-normalized text.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2018
From: PODGORNY, IGOR; SHARAFI, FARAZ; CANNON, MATTHEW; CARVALHO, VITOR
To: INTUIT INC.
Reel/Frame 047327/0191 →
Continuity (1)
Related Publication 20200134019A1 · Apr 30, 2020