IP Library › Granted Patent US 11,688,393
Granted Patent B2
US 11,688,393 · App. 17/565,717 · Granted Jun 27, 2023

Machine learning to propose actions in response to natural language questions

Inventors: Shlomi Medalion (Lod, IL); Alexander Zhicharevich (Hod Hasharon, IL); Yair Horesh (Kfar Sava, IL); Oren Sar Shalom (Nes Ziona, IL); Elik Sror (Hod Hasharon, IL); Adi Shalev (Herzliya, IL)
Assignee: INTUIT INC
G10L15/1815G06N3/045G06N3/08G10L15/063G10L15/16G10L15/197G10L15/22G10L2015/223
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,688,393
App. No.
17/565,717
Granted
Jun 27, 2023
Kind
B2
Abstract

A method including embedding, by a trained issue MLM (machine learning model), a new natural language issue statement into an issue vector. An inner product of the issue vector with an actions matrix is calculated. The actions matrix includes centroid-vectors calculated using a clustering method from a second output of a trained action MLM which embedded prior actions expressed in natural language action statements taken as a result of prior natural issue statements. Calculating the inner product results in probabilities associated with the prior actions. Each of the probabilities represents a corresponding estimate that a corresponding prior action is relevant to the issue vector. A list of proposed actions relevant to the issue vector is generated by comparing the probabilities to a threshold value and selecting a subset of the prior actions with corresponding probabilities above the threshold. The list of proposed actions is transmitted to a user device.

Claims (75)

1. A method of using a trained issue machine learning model (MLM), comprising:

embedding, by the trained issue MLM, a new natural language issue statement into an issue vector, wherein the trained issue MLM is trained using a plurality of prior natural language issue statements associated with ones of a plurality of prior natural language action statements;

receiving an output of a trained action MLM which embedded the plurality of prior natural language action statements by embedding a plurality of prior actions expressed in the prior natural language action statements,

wherein the trained action MLM and the trained issue MLM were trained concurrently by providing an inner product of a first output of the trained action MLM and a second output of the trained issue MLM to a sigmoid gate, using a third output of the sigmoid gate to generate a loss function, and using the loss function to train both the trained issue MLM and the trained action MLM;

calculating, using a clustering method, an actions matrix from the output of the trained action MLM, wherein the actions matrix comprises a plurality of centroid vectors;

calculating an inner product of the issue vector with the actions matrix,

wherein calculating the inner product results in a plurality of probabilities associated with the plurality of prior actions, and

wherein each of the plurality of probabilities represents a corresponding estimate that a corresponding prior action is relevant to the issue vector;

generating a list of proposed actions relevant to the issue vector by comparing the plurality of probabilities to a threshold value and selecting a subset of the plurality of prior actions with corresponding probabilities above the threshold value; and

transmitting, to a user device, the list of proposed actions.

2. The method of claim 1 , further comprising:

receiving a call from a user via a call service; and

performing speech recognition to convert words spoken by the user into the new natural language issue statement.

3. The method of claim 1 , further comprising generating the actions matrix by:

clustering individual call summaries of prior calls stored as an actions vector into a plurality of centroid vectors.

4. The method of claim 3 , wherein generating the actions matrix further comprises:

storing the plurality of centroid vectors as the actions matrix, wherein each row of the actions matrix corresponds to one of a plurality of available actions expressed in natural language.

5. The method of claim 1 , wherein calculating the inner product forms a result comprising the plurality of probabilities associated with the plurality of prior actions, and wherein the method further comprises:

prior to generating the list of proposed actions, applying a sigmoid gate function to the result to form a modified result having modified probabilities, and

wherein the modified probabilities are compared to the threshold value when generating the list of proposed actions.

6. The method of claim 5 , further comprising:

displaying, on a display device, additional detail regarding an action selected from the list of proposed actions.

7. The method of claim 1 , further comprising:

ordering the list of proposed actions from highest probability to lowest probability.

8. The method of claim 1 , wherein:

embedding the new natural language issue statement into the issue vector embeds the new natural language issue statement into a first vector space; and

the prior natural language issue statements are embedded in the first vector space.

9. The method of claim 8 , wherein the trained issue MLM is trained to embed new natural language issue statements into a new vector in the first vector space.

10. The method of claim 8 , wherein:

the prior natural language action statements comprise call summaries; and

the trained action MLM is trained to encode the call summaries in the first vector space.

11. The method of claim 10 , wherein:

the plurality of centroid vectors represent clusters of multiple individual call summaries.

12. The method of claim 11 , wherein:

each row of the actions matrix corresponds to one of a plurality of available actions expressed in natural language.

13. A system comprising:

a data repository storing:

a new natural language issue statement,

a trained issue machine learning model (MLM), wherein the trained issue MLM is trained using a plurality of prior natural language issue statements associated with ones of a plurality of prior natural language action statements,

an issue vector comprising an embedded version of the new natural language issue statement,

an actions matrix comprising a plurality of centroid vectors calculated using a clustering method from a second output of a trained action MLM applied to a plurality of prior actions taken as a result of prior natural language issue statements,

wherein the trained action MLM and the trained issue MLM were trained concurrently by providing an inner product of a first output of the trained action MLM and a second output of the trained issue MLM to a sigmoid gate, using a third output of the sigmoid gate to generate a loss function, and using the loss function to train both the trained issue MLM and the trained action MLM,

a plurality of probabilities associated with the plurality of prior actions, wherein each of the plurality of probabilities represents a corresponding estimate that a corresponding prior action is relevant to the issue vector,

a threshold value,

a subset of the plurality of prior actions having probabilities above the threshold value, and

a list of proposed actions relevant to the issue vector;

a machine learning execution engine, wherein the machine learning execution engine is configured to:

embed, by the trained issue MLM, the new natural language issue statement into the issue vector,

receiving an output of a trained action MLM which embedded the plurality of prior natural language action statements by embedding a plurality of prior actions expressed in the prior natural language action statements,

calculating, using a clustering method, an actions matrix from the output of the trained action MLM, wherein the actions matrix comprises a plurality of centroid vectors, and

calculate an inner product of the issue vector and the actions matrix to form the plurality of probabilities; and

an action selection engine executable by a processor to:

compare the plurality of probabilities to the threshold value,

select the subset of the plurality of prior actions with corresponding probabilities above the threshold value, wherein selecting the subset forms a list of proposed actions, and

transmit the list of proposed actions to a user device.

14. The system of claim 13 , wherein the data repository further stores individual call summaries of prior calls stored as an actions vector, and wherein the system further comprises:

an actions matrix generator configured to:

cluster the individual call summaries into a plurality of centroid vectors, and store the plurality of centroid vectors as the actions matrix, wherein each row of the actions matrix corresponds to one of a plurality of available actions expressed in natural language.

15. The system of claim 13 , further comprising:

a speech recognition engine configured to:

receive a call from a user via a call service, and convert speech of the user into the new natural language issue statement.

16. The system of claim 13 , wherein the trained issue MLM comprises a deep learning neural network.

17. The system of claim 13 , further comprising:

the user device, wherein the user device is remote from the data repository, the machine learning execution engine, and the action selection engine.

18. The system of claim 17 , further comprising:

a display device operably connected to the user device, wherein the display device is configured to display the list of proposed actions; and

a user input device operably connected to the user device, wherein the user input device is configured to receive user input comprising a selection of one of the list of proposed actions.

19. The system of claim 13 , wherein:

the machine learning execution engine, in being configured to embed the new natural language issue statement into the issue vector, is configured to embed the new natural language issue statement into a first vector space;

the prior natural language issue statements are embedded in the first vector space; and

the trained issue MLM is trained to embed new natural language issue statements into a new vector in the first vector space.

20. The system of claim 19 , wherein:

the prior natural language action statements comprise call summaries;

the trained action MLM is trained to encode the call summaries in the first vector space; and

the plurality of centroid vectors represent clusters of multiple individual call summaries.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 9, 2023
From: MEDALION, SHLOMI; ZHICHAREVICH, ALEXANDER; HORESH, YAIR; SHALOM, OREN SAR; SROR, ELIK; SHALEV, ADI
To: INTUIT INC.
Reel/Frame 063586/0355 →
Continuity (2)
Division 16805660 · Feb 28, 2020
Related Publication 20220172712A1 · Jun 2, 2022
Cited By (1)
US 12,670,149