IP Library Granted Patent US 12,608,414
Granted Patent B2
US 12,608,414 · App. 17/950,067 · Granted Apr 21, 2026

Recursive agglomerative clustering of time-structured communications

Inventors: Viacheslav Seledkin (Moscow, RU); David Yan (Portola Valley, CA); Marina Chilingaryan (Menlo Park, CA)
Assignee: Visier Solutions Inc.
G06F16/358G06F16/3347G06F16/93
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,608,414
App. No.
17/950,067
Granted
Apr 21, 2026
Kind
B2
Abstract

An example method of document cluster labeling comprises: selecting a current document cluster of a plurality of document clusters (e.g., the current document cluster can have documents organized using a DBSCAN or OPTICS algorithm); initializing a label associated with the current document cluster; selecting a term from a list of terms comprised by the document cluster; appending the term to the label associated with the current document cluster; responsive to determining that the label is found in a label dictionary, iteratively selecting a next term from the list of terms comprised by the document cluster and appending the next term to the label associated with the current document cluster; responsive to failing to locate the label in the label dictionary, inserting the label into the label dictionary; and associating the label with the current document cluster.

Claims (52)

1 . A method of document cluster labeling, the method comprising:

selecting, by a processing device, a current document cluster of a plurality of document clusters, wherein the current document cluster includes documents organized according to a predefined algorithm based on respective distances between vectorized representations of the respective documents within the current document cluster;

based on a vector representing the current document cluster, identifying a sorted list of terms associated with the current document cluster, wherein respective terms of the sorted list of terms are weighted according to a Term Frequency-Inverse Document Frequency (TF-IDF) weighting scheme;

initializing a label associated with the current document cluster;

automatically selecting a first term from the list of terms comprised by the documents of the document cluster, based on respective weightings of the terms according to the term frequency-inverse document frequency (TF-IDF) weighting scheme;

automatically appending the term to the label associated with the current document cluster;

responsive to determining that the label is found in a label dictionary, (i) iteratively selecting one or more next terms from the list of terms comprised by the document cluster based on the respective weightings of the terms according to the TF-IDF weighting scheme and (ii) automatically appending each of the next terms to the label associated with the current document cluster;

responsive to failing to locate the label in the label dictionary, inserting the label into the label dictionary; and

associating the label with the current document cluster.

2 . The method of claim 1 , further comprising sorting the plurality of document clusters by a number of documents comprised by a respective document cluster.

3 . The method of claim 1 , further comprising sorting the list of terms by a respective term weight.

4 . The method of claim 1 , further comprising excluding, from the list of terms, a term comprising at least part of an entity name.

5 . The method of claim 1 , further comprising visually representing, via a graphical user interface, one or more clusters of the plurality of document clusters in a visual association with respective labels.

6 . The method of claim 1 , wherein the plurality of document clusters comprises a plurality of electronic mail messages.

7 . The method of claim 1 , wherein the plurality of document clusters comprises a plurality of documents represented by respective vectors in a hyperspace of document features.

8 . A system, comprising:

a memory; and

a processor coupled to the memory, wherein the processor is configured to:

select a current document cluster of a plurality of document clusters, wherein the current document cluster includes documents organized according to a predefined algorithm based on respective distances between vectorized representations of the respective documents within the current document cluster;

based on a vector representing the current document cluster, identify a sorted list of terms associated with the current document cluster, wherein respective terms of the sorted list of terms are weighted according to a Term Frequency-Inverse Document Frequency (TF-IDF) weighting scheme;

initialize a label associated with the current document cluster;

automatically select a first term from the list of terms comprised by the documents of the document cluster, based on respective weightings of the terms according to the term frequency-inverse document frequency (TF-IDF) weighting scheme;

automatically append the term to the label associated with the current document cluster;

responsive to determining that the label is found in a label dictionary, (i) iteratively select one or more next terms from the list of terms comprised by the document cluster based on the respective weightings of the terms according to the TF-IDF weighting scheme and (ii) automatically append each of the next terms to the label associated with the current document cluster;

responsive to failing to locate the label in the label dictionary, insert the label into the label dictionary; and

associate the label with the current document cluster.

9 . The system of claim 8 , wherein the processor is further configured to sort the plurality of document clusters by a number of documents comprised by a respective document cluster.

10 . The system of claim 8 , wherein the processor is further configured to sort the list of terms by a respective term weight.

11 . The system of claim 8 , wherein the processor is further configured to exclude, from the list of terms, a term comprising at least part of an entity name.

12 . The system of claim 8 , wherein the processor is further configured to visually represent, via a graphical user interface, one or more clusters of the plurality of document clusters in a visual association with respective labels.

13 . The system of claim 8 , wherein the plurality of document clusters comprises a plurality of electronic mail messages.

14 . The system of claim 8 , wherein the plurality of document clusters comprises a plurality of documents represented by respective vectors in a hyperspace of document features.

15 . A non-transitory, computer-readable storage medium comprising executable instructions that, when executed by a computer system, cause the computer system to:

select a current document cluster of a plurality of document clusters, wherein the current document cluster includes documents organized according to a predefined algorithm based on respective distances between vectorized representations of the respective documents within the current document cluster;

based on a vector representing the current document cluster, identify a sorted list of terms associated with the current document cluster, wherein respective terms of the sorted list of terms are weighted according to a Term Frequency-Inverse Document Frequency (TF-IDF) weighting scheme;

initialize a label associated with the current document cluster;

automatically select a first term from the list of terms comprised by the documents of the document cluster, based on respective weightings of the terms according to the term frequency-inverse document frequency (TF-IDF) weighting scheme;

automatically append the term to the label associated with the current document cluster;

responsive to determining that the label is found in a label dictionary, (i) iteratively select one or more next terms from the list of terms comprised by the document cluster based on the respective weightings of the terms according to the TF-IDF weighting scheme and (ii) automatically append each of the next terms to the label associated with the current document cluster;

responsive to failing to locate the label in the label dictionary, insert the label into the label dictionary; and

associate the label with the current document cluster.

16 . The non-transitory, computer-readable storage medium of claim 15 , further comprising executable instructions that, when executed by the computer system, cause the computer system to sort the plurality of document clusters by a number of documents comprised by a respective document cluster.

17 . The non-transitory, computer-readable storage medium of claim 15 , further comprising executable instructions that, when executed by the computer system, cause the computer system to sort the list of terms by a respective term weight.

18 . The non-transitory, computer-readable storage medium of claim 15 , further comprising executable instructions that, when executed by the computer system, cause the computer system to exclude, from the list of terms, a term comprising at least part of an entity name.

19 . The non-transitory, computer-readable storage medium of claim 15 , further comprising executable instructions that, when executed by the computer system, cause the computer system to visually represent, via a graphical user interface, one or more clusters of the plurality of document clusters in a visual association with respective labels.

20 . The non-transitory, computer-readable storage medium of claim 15 , wherein the plurality of document clusters comprises a plurality of electronic mail messages.

21 . The method of claim 1 , wherein:

the current document cluster is grouped based on a generating vectors for each respective document of the current document cluster including (i) a time-sensitive factor and (ii) a content-sensitive factor, and

the weighting of the terms according to the TF-IDF weighting scheme is based on the content-sensitive factor.

22 . The method of claim 1 , wherein:

the predefined algorithm comprises a DBSCAN algorithm such that (i) each document within the current document cluster satisfies a nearby-neighbor threshold and (ii) each document within the current document cluster is connected to each other document within the current document cluster via a path that is contained completely within the current document cluster and that passes through a core of the current document cluster; or

the predefined algorithm comprises an OPTICS algorithm such that each document within the current document cluster is linearly ordered with respect to each other document within the current document cluster based on a spatial distance between each of the documents within the current document cluster.

Continuity (9)
Continuation In Part 17384972 · Jul 26, 2021
Division 15972952 · May 7, 2018
Continuation In Part 16902937 · Jun 16, 2020
Continuation In Part 16030598 · Jul 9, 2018
Provisional Application 62504390 · May 10, 2017
Provisional Application 62863031 · Jun 18, 2019
Provisional Application 62530798 · Jul 10, 2017
Provisional Application 62552625 · Aug 31, 2017
Related Publication 20230078263A1 · Mar 16, 2023
References Cited (57)
US 6185551B1 · Birrell · 2001 [cited by examiner]
US 6442545B1 · Feldman · 2002 [cited by examiner]
US 7117432B1 · Shanahan · 2006 [cited by examiner]
US 8095411B2 · Beringer et al. · 2012 [cited by applicant]
US 8583747B2 · Buchheit · 2013 [cited by examiner]
US 9002848B1 · Peng · 2015 [cited by examiner]
US 9319367B2 · Zeng et al. · 2016 [cited by applicant]
US 9356790B2 · Zambetti et al. · 2016 [cited by applicant]
US 9620108B2 · Sak et al. · 2017 [cited by applicant]
US 10083176B1 · Desai et al. · 2018 [cited by applicant]
US 10356243B2 · Sanghavi et al. · 2019 [cited by applicant]
US 10361981B2 · Bennett et al. · 2019 [cited by applicant]
US 20030061200A1 · Hubert · 2003 [cited by examiner]
US 20070198977A1 · Abernethy et al. · 2007 [cited by applicant]
US 20100107165A1 · Koskimies et al. · 2010 [cited by applicant]
US 20100174670A1 · Malik · 2010 [cited by examiner]
US 20110087668A1 · Thomas et al. · 2011 [cited by applicant]
US 20110093464A1 · Cvet et al. · 2011 [cited by applicant]
US 20110145823A1 · Rowe et al. · 2011 [cited by applicant]
US 20120239650A1 · Kim · 2012 [cited by examiner]
US 20130060772A1 · Clark et al. · 2013 [cited by applicant]
US 20140015855A1 · Denney · 2014 [cited by examiner]
US 20140037214A1 · Deolalikar et al. · 2014 [cited by applicant]
US 20140164036A1 · Prieto · 2014 [cited by applicant]
US 20150039705A1 · Kursun · 2015 [cited by applicant]
US 20150120680A1 · Alonso et al. · 2015 [cited by applicant]
US 20160012058A1 · Franceschini et al. · 2016 [cited by applicant]
US 20160103885A1 · Lee · 2016 [cited by examiner]
US 20160182417A1 · Cordes et al. · 2016 [cited by applicant]
US 20160247110A1 · Sinha · 2016 [cited by applicant]
US 20160315900A1 · Rowny et al. · 2016 [cited by applicant]
US 20160323138A1 · Wun et al. · 2016 [cited by applicant]
US 20160335572A1 · Bennett et al. · 2016 [cited by applicant]
US 20170093615A1 · Chandrashekar et al. · 2017 [cited by applicant]
US 20170132019A1 · Karashchuk et al. · 2017 [cited by applicant]
US 20170161692A1 · Miller et al. · 2017 [cited by applicant]
US 20170178056A1 · Huo et al. · 2017 [cited by applicant]
US 20180005289A1 · Angell et al. · 2018 [cited by applicant]
US 20180024968A1 · Clinchant et al. · 2018 [cited by applicant]
US 20180097753A1 · Gill et al. · 2018 [cited by applicant]
US 20180114198A1 · Ghotbi et al. · 2018 [cited by applicant]
US 20180152407A1 · Oni · 2018 [cited by applicant]
US 20180276294A1 · Takemoto · 2018 [cited by applicant]
US 20190012629A1 · Yan · 2019 [cited by applicant]
US 20190014070A1 · Mertvetsov et al. · 2019 [cited by applicant]
EP 2682052A2 · 2014 [cited by applicant]
JP 5688754B2 · 2015 [cited by applicant]
NO 2015136120 · 2015 [cited by applicant]
WO WO2005045564A2 · 2005 [cited by examiner]
WO WO2016186834A1 · 2016 [cited by applicant]
WO WO2017112914A2 · 2017 [cited by applicant]
Ankerst, M., Breunig, M. M., Kriegel, H. P., & Sander, J. (Jun. 1999). OPTICS: ordering points to identify the :Austering structure. In ACM Sigmod record (vol. 28, No. 2, pp. 49-60). ACM. [cited by applicant]
Ester, M., Kriegel, H. P., Sander, J., & Xu, X. (Aug. 1996). A density-based algorithm for discovering clusters in arge spatial databases with noise. In Kdd (vol. 96, No. 34, pp. 226-231). [cited by applicant]
Smiti, Abir and Elouedi, Zied, CINTI 2015, 16th IEEE International Symposium on Computational Intelligence and Informatics, “Dynamic DBSCAN-GM Clustering Algorithm”, Nov. 19-21, 2015, 6 pages. [cited by applicant]
Salton, G., Wong, A., & Yang, C. S. (1975). A vector space model for automatic indexing. Communications of the ACM, 18(11), 613-620. [cited by applicant]
Uora, “What is max pooling in convolutional neural networks?” ttps://www.guora.com/What-is-max-pooling-in-convolutional-neural-networks, 6 pages, [retrieved from Internet: Aug. 2, 2021]. [cited by applicant]
Yianilos, P. N. (Jan. 1993). Data structures and algorithms for nearest neighbor search in general metric spaces. n SODA (vol. 93, No. 194, pp. 311-321). [cited by applicant]