IP Library Granted Patent US 12,230,248
Granted Patent B2
US 12,230,248 · App. 17/545,555 · Granted Feb 18, 2025

Unsupervised clustering of intents for natural language understanding

Inventors: Prakash Chandra (Fremont, CA); Santosh Gupta (San Jose, CA); Ajay Nandanwar (Campbell, CA); Sanjay Verma (Atherton, CA); Devendra Vidhani (Pleasanton, CA)
Assignee: PwC Product Sales LLC
G10L15/063G06N3/045G06N3/088G10L25/30
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 12,230,248
App. No.
17/545,555
Granted
Feb 18, 2025
Kind
B2
Abstract

The present disclosure relates generally to natural language understanding. An exemplary computer-enabled method comprises: receiving first utterance data corresponding to a first plurality of intents; identifying a first plurality of intent clusters using an unsupervised machine-learning algorithm, wherein each intent cluster of the first plurality of intent clusters comprises a respective subset of the first plurality of intents; training, based on the first utterance data, an intent cluster classification model, wherein the intent cluster classification model is configured to receive a user utterance and identify an intent cluster of the first plurality of intent clusters; and training, based on the first utterance data, an intent classification model for each intent cluster of the first plurality of intent clusters to obtain a plurality of intent classification models, wherein each intent classification model is configured to receive the user utterance and identify an intent from the respective intent cluster.

Claims (54)

1. A computer-enabled method for providing a natural-language-processing system, the method comprising:

receiving first utterance data corresponding to a first plurality of intents;

identifying, based on the first utterance data, a first plurality of intent clusters using an unsupervised machine-learning algorithm, wherein each intent cluster of the first plurality of intent clusters comprises a respective subset of the first plurality of intents;

training, based on the first utterance data, an intent cluster classification model, wherein the intent cluster classification model is configured to receive a user utterance and identify an intent cluster of the first plurality of intent clusters; and

training, based on the first utterance data, an intent classification model for each intent cluster of the first plurality of intent clusters to obtain a plurality of intent classification models, wherein each intent classification model is configured to receive the user utterance and identify an intent from the respective intent cluster.

2. The method of claim 1 , wherein the first utterance data comprises a plurality of utterances associated with the first plurality of intents.

3. The method of claim 1 , further comprising obtaining a first training dataset by performing embedding of the first utterance data.

4. The method of claim 1 , wherein the unsupervised machine-learning algorithm is a cosine similarity clustering algorithm.

5. The method of claim 1 , wherein the plurality of intent classification models comprises a first type of machine-learning model and a second type of machine-learning model.

6. The method of claim 1 , further comprising:

receiving second utterance data corresponding to a second plurality of intents; and

identifying, based on the first utterance data and the second utterance data, a second plurality of intent clusters using the unsupervised machine-learning algorithm, wherein each intent cluster of the second plurality of intent clusters comprises a subset of the first plurality and second plurality of intents.

7. The method of claim 6 , further comprising:

retraining, based on the first utterance data and the second utterance data, the intent cluster classification model.

8. The method of claim 6 , further comprising:

retraining, based on the first utterance data and the second utterance data, an intent classification model of the plurality of intent classification models.

9. The method of claim 6 , further comprising:

training, based on the first utterance data and the second utterance data, a new intent classification model not included in the plurality of intent classification models.

10. A method of performing natural-language understanding, comprising:

receiving a user utterance;

inputting the user utterance to an intent cluster classification model to obtain a pre-defined intent cluster of a plurality of pre-defined intent clusters,

wherein the plurality of pre-defined intent clusters are automatically identified using an unsupervised machine-learning algorithm based on a set of utterance data, wherein the plurality of pre-defined intent clusters are automatically identified by generating a plurality of embedding vectors based on the set of utterance data, and clustering the plurality of embedding vectors;

inputting the user utterance to an intent classification model corresponding to the obtained pre-defined intent cluster to obtain an intent associated with the user utterance.

11. The method of claim 10 , wherein the user utterance is an input to a conversational bot.

12. The method of claim 10 , wherein the unsupervised machine-learning algorithm is a cosine similarity clustering algorithm.

13. The method of claim 10 , further comprising: generating a response to the user utterance based on the intent.

14. The method of claim 10 , wherein the intent classification model is a neural network model.

15. The method of claim 10 , wherein the set of utterance data comprises a first utterance data and a second utterance data, and wherein the unsupervised machine-learning algorithm is trained using the first utterance data and retrained using the second utterance data.

16. A non-transitory computer-readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by one or more processors of an electronic device, cause the electronic device to:

receive first utterance data corresponding to a first plurality of intents;

identify, based on the first utterance data, a first plurality of intent clusters using an unsupervised machine-learning algorithm, wherein each intent cluster of the first plurality of intent clusters comprises a respective subset of the first plurality of intents;

train, based on the first utterance data, an intent cluster classification model, wherein the intent cluster classification model is configured to receive a user utterance and identify an intent cluster of the first plurality of intent clusters; and

train, based on the first utterance data, an intent classification model for each intent cluster of the first plurality of intent clusters to obtain a plurality of intent classification models, wherein each intent classification model is configured to receive the user utterance and identify an intent from the respective intent cluster.

17. A non-transitory computer-readable storage medium storing one or more programs, the one or more programs comprising instructions, which when executed by one or more processors of an electronic device, cause the electronic device to:

receive a user utterance;

input the user utterance to an intent cluster classification model to obtain a pre-defined intent cluster of a plurality of pre-defined intent clusters,

wherein the plurality of pre-defined intent clusters are automatically identified using an unsupervised machine-learning algorithm based on a set of utterance data, wherein the plurality of pre-defined intent clusters are automatically identified by generating a plurality of embedding vectors based on the set of utterance data, and clustering the plurality of embedding vectors;

input the user utterance to an intent classification model corresponding to the obtained pre-defined intent cluster to obtain an intent associated with the user utterance.

18. An electronic device, comprising:

one or more processors;

a memory; and

one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs including instructions for:

receiving first utterance data corresponding to a first plurality of intents;

identifying, based on the first utterance data, a first plurality of intent clusters using an unsupervised machine-learning algorithm, wherein each intent cluster of the first plurality of intent clusters comprises a respective subset of the first plurality of intents;

training, based on the first utterance data, an intent cluster classification model, wherein the intent cluster classification model is configured to receive a user utterance and identify an intent cluster of the first plurality of intent clusters; and

training, based on the first utterance data, an intent classification model for each intent cluster of the first plurality of intent clusters to obtain a plurality of intent classification models, wherein each intent classification model is configured to receive the user utterance and identify an intent from the respective intent cluster.

19. An electronic device, comprising:

one or more processors;

a memory; and

one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors, the one or more programs including instructions for:

receiving a user utterance;

inputting the user utterance to an intent cluster classification model to obtain a pre-defined intent cluster of a plurality of pre-defined intent clusters,

wherein the plurality of pre-defined intent clusters are automatically identified using an unsupervised machine-learning algorithm based on a set of utterance data, wherein the plurality of pre-defined intent clusters are automatcially identified by generating a plurality of embedding vectors based on the set of utterance data, and clustering the plurality of embedding vectors;

inputting the user utterance to an intent classification model corresponding to the obtained pre-defined intent cluster to obtain an intent associated with the user utterance.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 24, 2024
From: VIDHANI, DEVENDRA
To: PRICEWATERHOUSECOOPERS LLP
Reel/Frame 069675/0105 →
EMPLOYMENT AGREEMENTS Recorded Dec 24, 2024
From: GUPTA, SANTOSH; NANDANWAR, AJAY; VERMA, SANJAY
To: PRICEWATERHOUSECOOPERS LLP
Reel/Frame 070689/0254 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2023
From: PRICEWATERHOUSECOOPERS LLP
To: PWC PRODUCT SALES LLC
Reel/Frame 065532/0034 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2023
From: CHANDRA, PRAKASH
To: PRICEWATERHOUSECOOPERS LLP
Reel/Frame 064128/0772 →
Continuity (2)
Provisional Application 63131515 · Dec 29, 2020
Related Publication 20220208177A1 · Jun 30, 2022
References Cited (5)
US 20210233149A1 · Korpeoglu · 2021 [cited by examiner]
US 20210295203A1 · Liao · 2021 [cited by examiner]
US 20210399999A1 · Soiaporn · 2021 [cited by examiner]
US 20220094648A1 · Le · 2022 [cited by examiner]
Cer et al. (Apr. 12, 2018). “Universal Sentence Encoder,” doi:arxiv:1803.11175v2; 7 pages. [cited by applicant]
Cited By (1)
US 12,482,454