IP Library Granted Patent US 10,339,163
Granted Patent B2
US 10,339,163 · App. 15/815,299 · Granted Jul 2, 2019

Dynamic clustering for streaming data

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 10,339,163
App. No.
15/815,299
Granted
Jul 2, 2019
Kind
B2
Abstract

In general, embodiments of the present invention provide systems, methods and computer readable media for modeling multi-dimensional, dynamically evolving data using dynamic clustering. In one aspect, a method includes receiving a core group of clusters of objects, each object being represented by a corresponding instance of a multi-dimensional feature vector including a dimension k; receiving a stream of data points representing a group of objects, each data point respectively representing an instance of dimension k describing a feature of an object within the group of objects; and, for each data point, adding an object described by the data point to a first cluster of objects within the core group of clusters; updating properties of the first cluster of objects in response to adding the object; and determining whether to update the core group of clusters using the updated properties of the first cluster of objects.

Claims (46)

1. A computer-implemented method, comprising:

receiving, by a server computer during a particular time window, a multi-dimensional stream of data points representing objects of a core group of clusters of objects, each data point of the multi-dimensional stream of data points respectively representing an instance of a dimension k describing a feature of an object within the objects wherein the core group of clusters of objects is generated based in part on at least a tuning parameter, wherein k is a number; and

for said each data point of the multi-dimensional stream of data points,

adding, by the server computer, an object described by the data point to a first cluster of objects within the core group of clusters in response to classifying the object as belonging to the first cluster of objects;

updating, by the server computer, properties of the first cluster of objects in response to adding the object, wherein the updating the properties includes calculating a first standard deviation of the dimension k for the first cluster of objects; and

in response to receiving a request via a network for core cluster information, determining, by the server computer, whether to update the core group of clusters using the updated properties of the first cluster of objects, wherein the determining whether to update the core group of clusters comprises comparing the first standard deviation of the dimension k to a minimum standard deviation of the dimension k and updating the core group of clusters of objects based on the tuning parameter.

2. The method of claim 1 , wherein the core group of clusters of objects represents objects belonging to a taxonomy hierarchy.

3. The method of claim 2 , wherein the taxonomy hierarchy is one of business type category and services category.

4. The method of claim 3 , wherein each taxonomy hierarchy comprises a plurality of hierarchies.

5. The method of claim 4 , wherein a similarity function is used to determine a number of hierarchies associated with taxonomy hierarchy.

6. The method of claim 2 , further comprising generating an updated hierarchical model core group of clusters of objects.

7. The method of claim 6 , wherein generating an updated hierarchical model core group of clusters of objects comprises merging the clusters of the core group of clusters using a tuning parameter.

8. The method of claim 6 , wherein generating an updated hierarchical model core group of clusters of objects comprises merging the clusters of the core group of clusters using a cluster purity measure.

9. A system, comprising:

one or more computers, each computer comprises at least one processor and one or more storage devices storing instructions that are operable, when executed by the one or more computers, to cause the one or more computers to:

receive, during a particular time window, a multi-dimensional stream of data points representing objects of a core group of clusters of objects, each data point of the multi-dimensional stream of data points respectively representing an instance of a dimension k describing a feature of an object within the objects wherein the core group of clusters of objects is generated based in part on at least a tuning parameter, wherein k is a number; and

for said each data point of the multi-dimensional stream of data points,

add an object described by the data point to a first cluster of objects within the core group of clusters in response to classifying the object as belonging to the first cluster of objects;

update properties of the first cluster of objects in response to adding the object, wherein the updating the properties includes calculating a first standard deviation of the dimension k for the first cluster of objects; and

in response to receiving a request via a network for core cluster information, determine, whether to update the core group of clusters using the updated properties of the first cluster of objects, wherein the determining whether to update the core group of clusters comprises comparing the first standard deviation of the dimension k to a minimum standard deviation of the dimension k and updating the core group of clusters of objects based on the tuning parameter.

10. The system of claim 9 , wherein determining whether to update the core group of clusters comprises:

comparing the first standard deviation of clustering dimension k to a minimum standard deviation of dimension k;

in an instance in which the first standard deviation of dimension k is greater than the minimum standard deviation of dimension k,

splitting the first cluster of objects by dividing the first cluster of objects into a second cluster of objects and a third cluster of objects;

in an instance in which the first standard deviation of dimension k is less than or equal to the minimum standard deviation of dimension k,

selecting a fourth cluster of objects that is closest to the first cluster of objects within the core group of clusters of objects;

calculating a combined standard deviation of dimension k for the combined first cluster of objects and fourth cluster of objects; and

in an instance in which the combined standard deviation of dimension k is less than or equal to the minimum standard deviation of dimension k,

generating a fifth cluster of objects within the core group of clusters by merging the first cluster of objects and the fourth cluster of objects.

11. The system of claim 9 , further caused to:

in response to receiving a request for core cluster information, updating the core group of clusters based on the tuning parameter representing clustering density.

12. The system of claim 11 ,

wherein each object of the objects is represented by a corresponding instance of a multi-dimensional feature vector including the dimension k, wherein the core group of clusters of objects is clustered based on the dimension k.

13. The system of claim 9 , wherein the tuning parameter is one of a minimum number of data points to form a core cluster or a minimum number of neighborhood points for merging into core clusters.

14. The system of claim 9 , wherein the tuning parameter represents one or more of clustering density, clustering distance, and a clustering standard deviation.

15. The system of claim 9 , wherein the core group of clusters of objects represents objects belonging to a taxonomy hierarchy.

16. The system of claim 15 , wherein the taxonomy hierarchy comprises a plurality of hierarchies.

17. The system of claim 16 , wherein a similarity function is used to determine a number of hierarchies associated with taxonomy hierarchy.

18. The system of claim 15 , further caused to generate an updated hierarchical model core group of clusters of objects.

19. The system of claim 18 , wherein generating an updated hierarchical model core group of clusters of objects comprises merging the clusters of the core group of clusters using one of a tuning parameter or a cluster purity measure.

20. A computer program product, stored on a non-transitory computer readable medium, comprising instructions that when executed on one or more computers cause the one or more computers to:

receive, during a particular time window, a multi-dimensional stream of data points representing objects of a core group of clusters of objects, each data point of the multi-dimensional stream of data points respectively representing an instance of a dimension k describing a feature of an object within the objects wherein the core group of clusters of objects is generated based in part on at least a tuning parameter, wherein k is a number; and

for said each data point of the multi-dimensional stream of data points,

add an object described by the data point to a first cluster of objects within the core group of clusters in response to classifying the object as belonging to the first cluster of objects;

update properties of the first cluster of objects in response to adding the object, wherein the updating the properties includes calculating a first standard deviation of the dimension k for the first cluster of objects; and

in response to receiving a request via a network for core cluster information, determine, whether to update the core group of clusters using the updated properties of the first cluster of objects, wherein the determining whether to update the core group of clusters comprises comparing the first standard deviation of the dimension k to a minimum standard deviation of the dimension k and updating the core group of clusters of objects based on the tuning parameter.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 12, 2024
From: GROUPON, INC.
To: BYTEDANCE INC.
Reel/Frame 068833/0811 →
RELEASE OF SECURITY INTEREST Recorded Feb 26, 2024
From: JPMORGAN CHASE BANK, N.A.
To: GROUPON, INC.; LIVINGSOCIAL, LLC (F/K/A LIVINGSOCIAL, INC.)
Reel/Frame 066676/0001 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN INTELLECTUAL PROPERTY RIGHTS Recorded Feb 26, 2024
From: JPMORGAN CHASE BANK, N.A.
To: GROUPON, INC.; LIVINGSOCIAL, LLC (F/K/A LIVINGSOCIAL, INC.)
Reel/Frame 066676/0251 →
SECURITY INTEREST Recorded Jul 23, 2020
From: GROUPON, INC.; LIVINGSOCIAL, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 053294/0495 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 28, 2018
From: DELAND, MATTHEW; IYER, CHANDER J.
To: GROUPON, INC.
Reel/Frame 046230/0977 →