IP Library Granted Patent US 10,861,054
Granted Patent B2
US 10,861,054 · App. 16/524,938 · Granted Dec 8, 2020

Heuristic customer clustering

Inventors: Burcu Aydin (Mountain View, CA); Michael Tamir (San Jose, CA)
Assignee: TRANSFORM SR BRANDS LLC
G06Q30/0269G06Q30/0242
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,861,054
App. No.
16/524,938
Granted
Dec 8, 2020
Kind
B2
Abstract

Methods and apparatus are disclosed regarding an e-commerce system that places customers into a plurality of clusters and tailors services provided to a customer based on the cluster in which the customer is placed. In one embodiment, the e-commerce system defines the clusters based on purchase history data for customers having sufficient purchase history data. The e-commerce system then places customers without sufficient purchase history data into one of the defined clusters based on demographic data for the customer and demographic data for the customers in the cluster.

Claims (59)

1. A method for clustering customers using a computing device having limited memory capacity, the method comprising:

splitting the customers into a first group comprising first customers who have conducted greater than a predetermined number of transactions and a second group comprising second customers who have not conducted greater than the predetermined number of transactions;

generating, based on transaction data of the first customers, a matrix that relates first customers to purchased products;

applying principal component analysis to the matrix to obtain a reduced matrix for the first customers;

generating, in accordance with a clustering large applications (CLARA) algorithm, a plurality of sample sets of the reduced matrix;

applying a partitioning around medoids (PAM) clustering algorithm to each of the plurality of sample sets to obtain a plurality of medoid sets comprising a medoid set per sample set;

clustering the first customers into a plurality of clusters based upon a medoid set of the plurality of medoid sets; and

placing each second customer into a cluster of the plurality of clusters based on demographic data for the respective second customer and demographic data for the first customers placed in each respective cluster.

2. The method of claim 1 , further comprising validating the plurality of clusters prior to placing each second customer into a cluster.

3. The method of claim 1 , further comprising recalibrating a quantity of dimensions of the reduced matrix until cluster validation determines the plurality of clusters are a valid clustering of the first customers.

4. The method of claim 1 , further comprising recalibrating a quantity of clusters used by the clustering until cluster validation determines the plurality of clusters are a valid clustering of the first customers.

5. The method of claim 1 , further comprising:

generating silhouette numbers for the first customers; and

determining, based on the silhouette numbers for the first customers, that the plurality of clusters are a valid clustering of the first customers.

6. The method of claim 1 , further comprising:

calculating, for each medoid set, a sum of distances to a nearest medoid of the medoid set; and

defining the clusters of the plurality of clusters based on the medoid set that has a smallest sum of distances.

7. The method of claim 1 , further comprising:

calculating, for each medoid set, a sum of Euclidean distances to a nearest medoid of the medoid set; and

defining the plurality of clusters based on the medoid set that has a smallest sum of Euclidean distances.

8. A non-transitory computer-readable medium, comprising a plurality of instructions, that in response to being executed, result in a computing device:

splitting customers into a first group comprising first customers who have conducted greater than a predetermined number of transactions and a second group comprising second customers who have not conducted greater than the predetermined number of transactions;

generating, based on transaction data of the first customers, a matrix that relates the first customers to purchased products;

applying principal component analysis to the matrix to obtain a reduced matrix for the first customers;

generating, in accordance with a clustering large applications (CLARA) algorithm, a plurality of sample sets of the reduced matrix;

applying a partitioning around medoids (PAM) clustering algorithm to each of the plurality of sample sets to obtain a plurality of medoid sets comprising a medoid set per sample set;

clustering the first customers into a plurality of clusters based upon a medoid set of the plurality of medoid sets; and

placing each second customer into a cluster of the plurality of clusters based on demographic data for the respective second customer and demographic data for the first customers placed in the respective cluster.

9. The non-transitory computer-readable medium of claim 8 , further comprising instructions that result in the computing device validating the plurality of clusters prior to the placing each second customer into a cluster.

10. The non-transitory computer-readable medium of claim 8 , further comprising instructions that result in the computing device recalibrating a quantity of dimensions of the reduced matrix until cluster validation determines the plurality of clusters are a valid clustering of the first customers.

11. The non-transitory computer-readable medium of claim 8 , further comprising instructions that result in the computing device recalibrating a quantity of clusters used by the clustering until cluster validation determines the plurality of clusters are a valid clustering of the first customers.

12. The non-transitory computer-readable medium of claim 8 , further comprising instructions that result in the computing device:

generating silhouette numbers for the first customers; and

determining, based on the silhouette numbers for the first customers, that the plurality of clusters are a valid clustering of the first customers.

13. The non-transitory computer-readable medium of claim 8 , further comprising instructions that result in the computing device:

calculating, for each medoid set, a sum of distances to a nearest medoid of the medoid set; and

defining the plurality of clusters based on the medoid set that has a smallest sum of distances.

14. A computing device, comprising

an electronic database comprising demographic data and transaction data for customers; and

a processor configured to:

split the customers into a first group comprising first customers who have conducted greater than a predetermined number of transactions and a second group comprising second customers who have not conducted greater than the predetermined number of transactions;

generate, based on the transaction data of the first customers, a matrix that relates the first customers to purchased products;

apply principal component analysis to the matrix to obtain a reduced matrix for the first customers;

generate, in accordance with a clustering large applications (CLARA) algorithm, a plurality of sample sets of the reduced matrix;

apply a partitioning around medoids (PAM) clustering algorithm to each of the plurality of sample sets to obtain a plurality of medoid sets comprising a medoid set per sample set;

cluster the first customers into a plurality of clusters based upon a medoid set of the plurality of medoid sets; and

place each second customer into a cluster of the plurality of clusters based demographic data for the respective second customer and demographic data for the first customers placed in the respective cluster.

15. The computing device of claim 14 , wherein the processor is further configured to validate the plurality of clusters prior to placing each second customer into a cluster.

16. The computing device of claim 14 , wherein the processor is further configured to recalibrate a quantity of dimensions of the reduced matrix until cluster validation determines the plurality of clusters are a valid clustering of the first customers.

17. The computing device of claim 14 , wherein the processor is further configured to recalibrate a quantity of clusters used by the clustering until cluster validation determines the plurality of clusters are a valid clustering of the first customers.

18. The computing device of claim 14 , wherein the processor is further configured to:

generate silhouette numbers for the first customers; and

determine, based on the silhouette numbers for the first customers, that the plurality of clusters are a valid clustering of the first customers.

19. The computing device of claim 14 , wherein the processor is further configured to:

calculate, for each medoid set, a sum of distances to a nearest medoid of the medoid set; and

define the clusters of the plurality of clusters based on the medoid set that has a smallest sum of distances.

20. The computing device of claim 14 , wherein the processor is further configured to:

calculate, for each medoid set, a sum of Euclidean distances to a nearest medoid of the medoid set; and

define the plurality of clusters based on the medoid set that has a smallest sum of Euclidean distances.

Assignments (5)
SECURITY INTEREST Recorded May 7, 2021
From: TRANSFORM SR BRANDS LLC
To: CANTOR FITZGERALD SECURITIES
Reel/Frame 056179/0863 →
SECURITY INTEREST Recorded May 15, 2020
From: TRANSFORM SR BRANDS LLC
To: JPP, LLC
Reel/Frame 053467/0062 →
RELEASE OF SECURITY INTEREST Recorded Mar 17, 2020
From: CANTOR FITZGERALD SECURITIES
To: TRANSFORM SR BRANDS LLC
Reel/Frame 052184/0782 →
SECURITY INTEREST Recorded Sep 20, 2019
From: TRANSFORM SR BRANDS LLC
To: CANTOR FITZGERALD SECURITIES
Reel/Frame 050451/0309 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 29, 2019
From: SEARS BRANDS, L.L.C.
To: TRANSFORM SR BRANDS LLC
Reel/Frame 049895/0132 →