IP Library Granted Patent US 12682320
Granted Patent B2
US 12682320 · App. 18/752,234 · Granted Jul 14, 2026

Latent intent clustering in high latent spaces

Inventors: Leandro Bianchini (Porto Alegre, BR); Renata Palazzo (Porto Alegre, BR); Israel Oliveira (Porto Alegre, BR); Allan Barcelos (Porto Alegre, BR); Fernanda Tosca (Porto Alegre, BR)
Assignee: ADP, Inc.
G06Q10/10G06F16/285G06N5/04G06N20/00G06V30/418H04L67/01
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 12682320
App. No.
18/752,234
Granted
Jul 14, 2026
Kind
B2
Abstract

A method of latent intent clustering is provided. The method comprises encoding identified features in a number of electronic user reports in a database. A binary matrix is created, wherein each row of the binary matric represents a different report and each column represents a different available feature. A 1 is placed in each cell of the matrix that matches a feature present in a user report. Cosine similarities are calculated for the user reports, and a similarity matrix is created, wherein each row and column of the binary matrix represents a different report, and wherein the cosine similarities of the reports are placed in corresponding cells of the matrix. The reports are clustered according to the cosine similarities. Features common to reports in each cluster are identified, and an intent of each report cluster is labeled according to the common features.

Claims (95)

1 . A system, comprising:

one or more processors, coupled with memory, to:

encode a plurality of features selected from a plurality of digital records to form a plurality of binary vectors, wherein each of the plurality of binary vectors is associated with a respective digital record of the plurality of digital records;

construct a first matrix using the plurality of binary vectors, wherein each row of the first matrix represents a digital record and each column of the first matrix represents at least one of the plurality of features;

apply a vector-based function to the first matrix to compute a metric indicative of an association between each pair of binary vectors;

construct a second matrix based on application of the vector-based function, wherein each entry of the second matrix comprises a respective metric associated with a corresponding pair of binary vectors;

compute, for each binary vector, a corresponding average metric based on entries in the second matrix that include each binary vector;

determine that the metric associated with a respective entry in the second matrix exceeds the corresponding average metric for one or both of the binary vectors associated with the respective entry;

group, responsive to the determination that the metric exceeds the corresponding average metric, the plurality of digital records into a plurality of clusters;

determine a label for each cluster of the plurality of clusters based on one or more features common to digital records in a respective cluster;

responsive to receiving input corresponding to a new digital record, identify at least one cluster from the plurality of clusters having a label that corresponds to one or more features of the new digital record;

generate one or more suggested features for the new digital record based on the at least one cluster; and

transmit, to a computing device, data to cause the computing device to present, via an output device coupled with the computing device, the one or more suggested features for the new digital record.

2 . The system of claim 1 , wherein the vector-based function comprises a cosine similarity function, wherein the metric indicative of the association between each pair of binary vectors comprises a cosine similarity value, and wherein to compute each corresponding average metric, the one or more processors further:

access entries of the second matrix that correspond to pairs that include each binary vector;

compute an average cosine similarity value for each binary vector based on the cosine similarity value of each accessed entry; and

store the average cosine similarity value as the corresponding average metric for each binary vector.

3 . The system of claim 1 , wherein to encode the plurality of features, the one or more processors further:

extract, for each digital record of the plurality of digital records, a title, a description, one or more filter expressions, and one or more custom fields;

decompose the one or more filter expressions and the one or more custom fields into one or more decomposed values; and

apply one-hot encoding to the title, the description, and the one or more decomposed values.

4 . The system of claim 1 , wherein the input corresponding to the new digital record includes one or more features associated with the new digital record, and wherein the one or more processors further:

compare the one or more features to labels for the plurality of clusters;

identify one or more clusters having a label that corresponds to the one or more features; and

select the at least one cluster from the one or more clusters based on a similarity between the one or more features of the new digital record and features common to the digital records in the at least one cluster.

5 . The system of claim 1 , wherein the input corresponding to the new digital record is received from a client device, and wherein the one or more processors further:

transmit, via a network, the one or more suggested features for inclusion in the new digital record to be displayed on the client device.

6 . The system of claim 1 , wherein each label of the plurality of clusters comprises an intent associated with a respective cluster, and the one or more processors are further to:

identify clusters having an intent that matches the one or more features of the new digital record; and

rank the clusters based on a degree of match with the one or more features.

7 . The system of claim 1 , wherein determining the one or more features common to the digital records in the respective cluster comprises:

analyzing fields associated with the digital records included in the at least one cluster; and

identifying at least one field occurring in multiple digital records of the at least one cluster.

8 . The system of claim 1 , wherein to generate the one or more suggested features, the one or more processors are further to:

identify at least one feature included in the digital records in the at least one cluster that is not included in the new digital record; and

select the one or more suggested features from among the at least one feature.

9 . The system of claim 1 , wherein to identify the at least one cluster from the plurality of clusters, the one or more processors further:

identify at least two clusters having labels that correspond to the one or more features of the new digital record;

determine a similarity score between the new digital record and digital records in each of the at least two clusters; and

select the at least one cluster having the digital records with a highest similarity score.

10 . A method, comprising:

encoding, by one or more processors, coupled with memory, a plurality of features selected from a plurality of digital records to form a plurality of binary vectors, wherein each of the plurality of binary vectors is associated with a respective digital record of the plurality of digital records;

constructing, by the one or more processors, a first matrix using the plurality of binary vectors, wherein each row of the first matrix represents a digital record and each column of the first matrix represents at least one of the plurality of features;

applying, by the one or more processors, a vector-based function to the first matrix to compute a metric indicative of an association between each pair of binary vectors;

constructing, by the one or more processors, a second matrix based on application of the vector-based function, wherein each entry of the second matrix comprises a respective metric associated with a corresponding pair of binary vectors;

computing, by the one or more processors, for each binary vector, a corresponding average metric based on entries in the second matrix that include each binary vector;

determining, by the one or more processors, that the metric associated with a respective entry in the second matrix exceeds the corresponding average metric for one or both of the binary vectors associated with the respective entry;

grouping, by the one or more processors, responsive to the determination that the metric exceeds the corresponding average metric, the plurality of digital records into a plurality of clusters;

determining, by the one or more processors, a label for each cluster of the plurality of clusters based on one or more features common to digital records in a respective cluster;

responsive to receiving input corresponding to a new digital record, identifying, by the one or more processors, a cluster from the plurality of clusters having a label that corresponds to one or more features of the new digital record;

generating, by the one or more processors, one or more suggested features for the new digital record based on the at least one cluster; and

transmitting, by the one or more processors, to a computing device, data to cause the computing device to present, via an output device coupled with the computing device, the one or more suggested features for the new digital record.

11 . The method of claim 10 , wherein the vector-based function comprises a cosine similarity function, wherein the metric indicative of the association between each pair of binary vectors comprises a cosine similarity value, and wherein computing each corresponding average metric comprises:

accessing, by the one or more processors, entries of the second matrix that correspond to pairs that include each binary vector;

computing, by the one or more processors, an average cosine similarity value for each binary vector based on the cosine similarity value of each accessed entry; and

storing, by the one or more processors, the average cosine similarity value as the corresponding average metric for each binary vector.

12 . The method of claim 10 , wherein encoding the plurality of features comprises:

extracting, by the one or more processors, for each digital record of the plurality of digital records, a title, a description, one or more filter expressions, and one or more custom fields;

decomposing, by the one or more processors, the one or more filter expressions and the one or more custom fields into one or more decomposed values; and

applying, by the one or more processors, one-hot encoding to the title, the description, and the one or more decomposed values.

13 . The method of claim 10 , wherein the input corresponding to the new digital record includes one or more features associated with the new digital record, and wherein the method further comprises:

comparing, by the one or more processors, the one or more features to labels for the plurality of clusters;

identifying, by the one or more processors, one or more clusters having a label that corresponds to the one or more features; and

selecting, by the one or more processors, the at least one cluster from the one or more clusters based on a similarity between the one or more features of the new digital record and features common to the digital records in the at least one cluster.

14 . The method of claim 10 , wherein the input corresponding to the new digital record is received from a client device, and wherein the method further comprises:

transmitting, by the one or more processors, via a network, the one or more suggested features for inclusion in the new digital record to be displayed on the client device.

15 . The method of claim 10 , wherein each label of the plurality of clusters comprises an intent associated with a respective cluster, and the method further comprising:

identify at least two clusters having an intent that matches the one or more features of the new digital record; and

rank the at least two clusters based on a degree of match with the one or more features.

16 . The method of claim 10 , wherein determining the one or more features common to the digital records in a respective cluster comprises:

analyzing fields associated with the digital records included in the at least one cluster; and

identifying at least one field occurring in multiple digital records of the at least one cluster.

17 . The method of claim 10 , wherein generating the one or more suggested features comprises:

identifying, by the one or more processors, at least one feature included in digital records in the at least one cluster that are not included in the new digital record; and

selecting, by the one or more processors, the one or more suggested features from among the at least one feature.

18 . The method of claim 10 , wherein identifying the at least one cluster from the plurality of clusters comprises:

identifying, by the one or more processors, at least two clusters having labels that correspond to the one or more features of the new digital record;

determining, by the one or more processors, a similarity score between the new digital record and digital records in each of the at least two clusters; and

selecting, by the one or more processors, the at least one cluster having the digital records with a highest similarity score.

19 . A non-transitory computer-readable storage medium (CRM) having one or more instructions stored thereon, the one or more instructions executable by one or more processors to:

encode a plurality of features selected from a plurality of digital records to form a plurality of binary vectors, wherein each of the plurality of binary vectors is associated with a respective digital record of the plurality of digital records;

construct a first matrix using the plurality of binary vectors, wherein each row of the first matrix represents a digital record and each column of the first matrix represents at least one of the plurality of features;

apply a vector-based function to the first matrix to compute a metric indicative of an association between each pair of binary vectors;

construct a second matrix based on application of the vector-based function, wherein each entry of the second matrix comprises a respective metric associated with a corresponding pair of binary vectors;

compute, for each binary vector, a corresponding average metric based on entries in the second matrix that include each binary vector;

determine that the metric associated with a respective entry in the second matrix exceeds the corresponding average metric for one or both of the binary vectors associated with the respective entry;

group, responsive to the determination that the metric exceeds the corresponding average metric, the plurality of digital records into a plurality of clusters;

determine a label for each cluster of the plurality of clusters based on one or more features common to digital records in a respective cluster;

responsive to receiving input corresponding to a new digital record, identify at least one cluster from the plurality of clusters having a label that corresponds to one or more features of the new digital record;

generate one or more suggested features for the new digital record based on the at least one cluster; and

transmit, to a computing device, data to cause the computing device to present, on an output device coupled with the computing device, the one or more suggested features for the new digital record.

20 . The non-transitory CRM of claim 19 , wherein the vector-based function comprises a cosine similarity function, wherein the metric indicative of the association between each pair of binary vectors comprises a cosine similarity value, and wherein to compute each corresponding average metric, the one or more instructions are further executable by the one or more processors to:

access entries of the second matrix that correspond to pairs that include each binary vector;

compute an average cosine similarity value for each binary vector based on the cosine similarity value of each accessed entry; and

store the average cosine similarity value as the corresponding average metric for each binary vector.