IP Library Granted Patent US 11,061,954
Granted Patent B2
US 11,061,954 · App. 16/138,514 · Granted Jul 13, 2021

Intent classification system

Inventors: Zachary Alexander (Berkeley, CA); Naren M. Chittar (Saratoga, CA); Alampallam R. Ramachandran (Bellevue, WA); Anuprit Kale (Oakland, CA); Tiffany Deiandra McKenzie (San Francisco, CA); Sitaram Asur (San Clara, CA); Jacob Nathaniel Huffman (Oakland, CA)
Assignee: salesforce.com, inc.
G06F16/355G06F16/3347G06F16/358G06F16/61
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,061,954
App. No.
16/138,514
Granted
Jul 13, 2021
Kind
B2
Abstract

A data processing system analyzes a corpus of conversation data collected at an interactive conversation service to train an intent classification model. The intent classification model generates vectors based on the corpus of conversation data. A set of intents is selected and an intent seed input for each intent of the set of intents is input into the model to generate an intent vector corresponding to each intent. Vectors based on user inputs are generated and compared to the intent vectors to determine the intent.

Claims (86)

1. A method for intent classification, comprising:

generating, using a word embedding function, an intent classification model including a plurality of input vectors corresponding to a corpus of unclassified conversation data received at an interactive conversation agent, wherein generating the intent classification model includes:

selecting a user input from the corpus of unclassified conversation data as a context for a context-response pair for a set of context-response pairs;

selecting an agent input from the corpus of unclassified conversation data as a response for the context-response pair;

assigning a first value to a label corresponding to the context-response pair if the user input and the agent input are selected from a same conversation session of the corpus of unclassified conversation data;

assigning a second value to the label corresponding to the context-response pair if the user input and the agent input are selected from different conversation sessions of the corpus of unclassified conversation data; and

training the intent classification model on the set of context-response pairs;

receiving a set of intent categories and an intent seed input for each intent category in the set of intent categories;

generating, using the word embedding function and the intent classification model, an intent vector corresponding to each intent category in the set of intent categories, wherein the intent vector generated for each intent category is based at least in part on the intent seed input corresponding to the respective intent category;

receiving a conversation input comprising a text string at an instance of the interactive conversation agent;

generating, using the word embedding function and the intent classification model, a conversation input vector based on the conversation input;

calculating similarity scores between the conversation input vector and each intent vector corresponding to each intent category; and

identifying an intent category of the set of intent categories corresponding to the intent vector having a highest similarity score with the conversation input vector.

2. The method of claim 1 , wherein training the intent classification model on the set of context-response pairs further comprises:

generating a context vector for each context of the set of context-response pairs;

generating a response vector for each response of the set of context-response pairs;

calculating a similarity score for each context-response pair of the set of context-response pairs by comparing the context vector and the response vector of each context-response pair; and

determining a loss for each context-response pair of the set of context-response pairs based at least on the similarity score and the label corresponding to each context-response pair of the set of context-response pairs.

3. The method of claim 1 , further comprising:

receiving an additional intent category and additional seed input corresponding to the additional intent category; and

generating, using the word embedding function and the intent classification model, an additional intent vector based on the additional seed input.

4. The method of claim 3 , further comprising:

receiving an additional conversation input at the interactive conversation agent;

generating, using the word embedding function and the intent classification model, an additional conversation input vector;

calculating similarity scores between the additional conversation input vector and each intent vector corresponding to each intent category and the additional intent vector corresponding to the additional intent category; and

identifying an intent category of the set of intent categories and the additional intent category corresponding to the intent vector or the additional intent vector having a highest similarity score with the additional conversation input vector.

5. The method of claim 1 , further comprising:

displaying the plurality of input vectors of the intent classification model on a user interface of a user device.

6. The method of claim 5 , wherein displaying the plurality of input vectors of the intent classification model further comprises:

projecting high dimensional input vectors into two-dimensional vectors;

plotting the two-dimensional vectors on a graph; and

displaying the graph at the user interface of the user device.

7. The method of claim 1 , wherein the set of intent categories includes order status, return status, return issue, product issue, return label, or a combination thereof.

8. The method of claim 1 , wherein the intent seed input is based on an input received at the interactive conversation agent.

9. The method of claim 1 , wherein determining the highest similarity score further comprises:

identifying the intent vector based on a nearest neighbor technique.

10. The method of claim 1 , further comprising:

receiving audio data comprising voice data at the interactive conversation agent; and

converting the audio data into the conversation input comprising the text string.

11. An apparatus for intent classification, comprising: a processor, memory in electronic communication with the processor; and instructions stored in the memory and executable by the processor to cause the apparatus to:

generate, using a word embedding function, an intent classification model including a plurality of input vectors corresponding to a corpus of unclassified conversation data received at an interactive conversation agent, wherein the instructions to generate the intent classification model include instructions executable by the processor to cause the apparatus to:

select a user input from the corpus of unclassified conversation data as a context for a context-response pair for a set of context-response pairs;

select an agent input from the corpus of unclassified conversation data as a response for the context-response pair;

assign a first value to a label corresponding to the context-response pair if the user input and the agent input are selected from a same conversation session of the corpus of unclassified conversation data;

assign a second value to the label corresponding to the context-response pair if the user input and the agent input are selected from different conversation sessions of the corpus of unclassified conversation data; and

train the intent classification model on the set of context-response pairs;

receive a set of intent categories and an intent seed input for each intent category in the set of intent categories;

generate, using the word embedding function and the intent classification model, an intent vector corresponding to each intent category in the set of intent categories, wherein the intent vector generated for each intent category is based at least in part on the intent seed input corresponding to the respective intent category;

receive a conversation input comprising a text string at an instance of the interactive conversation agent;

generate, using the word embedding function and the intent classification model, a conversation input vector based on the conversation input;

calculate similarity scores between the conversation input vector and each intent vector corresponding to each intent category; and

identify an intent category of the set of intent categories corresponding to the intent vector having a highest similarity score with the conversation input vector.

12. The apparatus of claim 11 , wherein the instructions to train the intent classification model on the set of context-response pairs further are executable by the processor to cause the apparatus to:

generate a context vector for each context of the set of context-response pairs;

generate a response vector for each response of the set of context-response pairs;

calculate a similarity score for each context-response pair of the set of context-response pairs by comparing the context vector and the response vector of each context-response pair; and

determine a loss for each context-response pair of the set of context-response pairs based at least on the similarity score and the label corresponding to each context-response pair of the set of context-response pairs.

13. The apparatus of claim 11 , wherein the instructions are further executable by the processor to cause the apparatus to:

receive an additional intent category and additional seed input corresponding to the additional intent category; and

generate, using the word embedding function and the intent classification model, an additional intent vector based on the additional seed input.

14. A non-transitory computer-readable medium storing code for intent classification, the code comprising instructions executable by a processor to:

generate, using a word embedding function, an intent classification model including a plurality of input vectors corresponding to a corpus of unclassified conversation data received at an interactive conversation agent, wherein the instructions to generate the intent classification model include instructions executable by the processor to:

select a user input from the corpus of unclassified conversation data as a context for a context-response pair for a set of context-response pairs;

select an agent input from the corpus of unclassified conversation data as a response for the context-response pair;

assign a first value to a label corresponding to the context-response pair if the user input and the agent input are selected from a same conversation session of the corpus of unclassified conversation data;

assign a second value to the label corresponding to the context-response pair if the user input and the agent input are selected from different conversation sessions of the corpus of unclassified conversation data; and

train the intent classification model on the set of context-response pairs;

receive a set of intent categories and an intent seed input for each intent category in the set of intent categories;

generate, using the word embedding function and the intent classification model, an intent vector corresponding to each intent category in the set of intent categories, wherein the intent vector generated for each intent category is based at least in part on the intent seed input corresponding to the respective intent category;

receive a conversation input comprising a text string at an instance of the interactive conversation agent;

generate, using the word embedding function and the intent classification model, a conversation input vector based on the conversation input;

calculate similarity scores between the conversation input vector and each intent vector corresponding to each intent category; and

identify an intent category of the set of intent categories corresponding to the intent vector having a highest similarity score with the conversation input vector.

15. The non-transitory computer-readable medium of claim 14 , wherein the instructions to train the intent classification model on the set of context-response pairs further are executable to:

generate a context vector for each context of the set of context-response pairs;

generate a response vector for each response of the set of context-response pairs;

calculate a similarity score for each context-response pair of the set of context-response pairs by comparing the context vector and the response vector of each context-response pair; and

determine a loss for each context-response pair of the set of context-response pairs based at least on the similarity score and the label corresponding to each context-response pair of the set of context-response pairs.

16. The non-transitory computer-readable medium of claim 14 , wherein the instructions are further executable to:

receive an additional intent category and additional seed input corresponding to the additional intent category; and

generate, using the word embedding function and the intent classification model, an additional intent vector based on the additional seed input.

17. The non-transitory computer-readable medium of claim 16 , wherein the instructions are further executable to:

receive an additional conversation input at the interactive conversation agent;

generate, using the word embedding function and the intent classification model, an additional conversation input vector;

calculate similarity scores between the additional conversation input vector and each intent vector corresponding to each intent category and the additional intent vector corresponding to the additional intent category; and

identify an intent category of the set of intent categories and the additional intent category corresponding to the intent vector or the additional intent vector having a highest similarity score with the additional conversation input vector.

Assignments (2)
CHANGE OF NAME Recorded Dec 18, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 069717/0378 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 17, 2018
From: ALEXANDER, ZACHARY; CHITTAR, NAREN M.; RAMACHANDRAN, ALAMPALLAM R.; KALE, ANUPRIT; MCKENZIE, TIFFANY DEIANDRA; ASUR, SITARAM; HUFFMAN, JACOB NATHANIEL
To: SALESFORCE.COM, INC.
Reel/Frame 047795/0967 →
Continuity (1)
Related Publication 20200097563A1 · Mar 26, 2020
Cited By (2)
US 12,524,610 US 12,541,496