IP Library Granted Patent US 11,016,996
Granted Patent B2
US 11,016,996 · App. 16/418,267 · Granted May 25, 2021

Dynamic clustering for streaming data

Inventors: Matthew DeLand (San Francisco, CA); Chander J. Iyer (Troy, NY)
Assignee: Groupon, Inc.
G06F16/285G06F16/283
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,016,996
App. No.
16/418,267
Granted
May 25, 2021
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 (41)

1. An apparatus comprising: at least one processor, and at least one memory for storing instructions that, when executed by the at least one processor, cause the apparatus to;

for each data point of a multi-dimensional stream of data points, the multi-dimensional stream of data points representing objects of a core group of clusters of objects, each data point respectively representing an instance of a first dimension describing a feature of an object within the objects, wherein the core group of clusters of objects is generated based at least in part on a tuning parameter,

add an object described by the data point to a first cluster of objects within the core group of clusters of objects 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 the adding the object, wherein the updating the properties of the first duster of objects comprises calculating a first standard deviation of the first duster of objects for the first dimension; and

in response to receiving a request via a network for core duster information, determine whether to update the core group of dusters using the updated properties of the first duster of objects, wherein the determining whether to update the core group of dusters comprises

comparing the first standard deviation to a minimum standard deviation for the first dimension; and

updating the core group of dusters of objects based on the comparison and the tuning parameter.

2. The apparatus of claim 1 , wherein each object is represented by a corresponding instance of a multi-dimensional feature vector including a first dimension.

3. The apparatus of claim 2 , wherein the core group of clusters of objects is clustered based on the first dimension.

4. The apparatus of claim 1 , wherein the first dimension comprises a geographical feature of an object.

5. The apparatus of claim 4 , wherein the geographical feature is represented by latitude and longitude data.

6. The apparatus of claim 1 , wherein the memory stores instructions that, with the at least one processor, cause the apparatus to:

in an instance in which the first standard deviation of the first cluster of objects for the first dimension is greater than the minimum standard deviation for the first dimension, split the first cluster of objects by dividing the first cluster of objects into a second cluster of objects and a third cluster of objects.

7. The apparatus of claim 1 , wherein the tuning parameter is one or more of a minimum number of data points to form a core cluster, a minimum number of neighborhood points for merging into core clusters, or a clustering density.

8. The apparatus of claim 1 , wherein the first dimension is associated with a taxonomy hierarchy.

9. The apparatus of claim 1 , wherein the first dimension comprises a category.

10. The apparatus of claim 9 , wherein the category is associated with a taxonomy hierarchy.

11. The apparatus of claim 10 , wherein the taxonomy hierarchy comprises a plurality of hierarchies.

12. The apparatus of claim 9 , wherein the category comprises a business type category.

13. A computer program product comprising a non-transitory computer readable medium storing instructions that, when executed by a processor, cause an apparatus to:

for each data point of a multi-dimensional stream of data points, the multi-dimensional stream of data points representing objects of a core group of clusters of objects, each data point respectively representing an instance of a first dimension describing a feature of an object within the objects, wherein the core group of clusters of objects is generated based at least in part on a tuning parameter,

add an object described by the data point to a first cluster of objects within the core group of clusters of objects 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 the adding the object, wherein the updating the properties of the first duster of objects comprises calculating a first standard deviation of the first duster of objects for the first dimension; and

in response to receiving a request via a network for core duster information, determine whether to update the core group of dusters using the updated properties of the first duster of objects, wherein the determining whether to update the core group of dusters comprises

comparing the first standard deviation to a minimum standard deviation for the first dimension; and

updating the core group of clusters of objects based on the comparison and the tuning parameter.

14. The computer program product of claim 13 , wherein each object is represented by a corresponding instance of a multi-dimensional feature vector including a first dimension.

15. The computer program product of claim 14 , wherein the core group of clusters of objects is clustered based on the first dimension.

16. The non transitory computer program product of claim 13 , wherein the tuning parameter is one or more of a minimum number of data points to form a core cluster, a minimum number of neighborhood points for merging into core clusters, or a clustering density.

17. The computer program product of claim 13 , wherein the first dimension is associated with a taxonomy hierarchy.

18. The computer program product of claim 13 , wherein the first dimension comprises one or more of a category or a geographical feature of an object.

19. The computer program product of claim 18 , wherein the geographical feature is represented by latitude and longitude data.

20. The computer program product of claim 17 , wherein the category comprises a business type category.

21. The computer program product of claim 17 , wherein the taxonomy hierarchy comprises a plurality of hierarchies.

22. A computer implemented method, comprising:

for each data point of a multi-dimensional stream of data points, the multi-dimensional stream of data points representing objects of a core group of clusters of objects, each data point respectively representing an instance of a first dimension describing a feature of an object within the objects, wherein the core group of clusters of objects is generated based at least in part on a tuning parameter,

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

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

in response to receiving a request via a network for core cluster information, determining, by the 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 to a minimum standard deviation for the first dimension; and

updating the core group of clusters of objects based on the comparison and the tuning parameter.

Assignments (6)
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 →
CORRECTIVE ASSIGNMENT TO CORRECT THE SECOND INVENTOR'S NAME TO READ CHANDER J. IYER PREVIOUSLY RECORDED ON REEL 051165 FRAME 0412. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Apr 21, 2021
From: DELAND, MATTHEW; IYER, CHANDER J.
To: GROUPON, INC.
Reel/Frame 055996/0217 →
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 Dec 3, 2019
From: DELAND, MATTHEW; IYER, CHANDLER J.
To: GROUPON, INC.
Reel/Frame 051165/0412 →