IP Library Granted Patent US 10,872,386
Granted Patent B2
US 10,872,386 · App. 15/380,768 · Granted Dec 22, 2020

Predictive segmentation of customers

Inventors: Adrian Albert (San Francisco, CA); Mehdi Maasoumy Haghighi (Redwood City, CA)
Assignee: C3.ai, Inc.
G06Q50/06G06N5/003G06N5/022G06N7/005G06N20/20G06Q10/06375
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,872,386
App. No.
15/380,768
Granted
Dec 22, 2020
Kind
B2
Abstract

A computer system receives customer records listing customer attributes and an adoption status of the customer, such as whether the customer has enrolled in a particular energy efficiency program. An initial set of patterns are identified among the customer records, such as according to a decision tree. The initial set is pruned to obtain a set of patterns that meet minimum support and effectiveness and maximum overlap requirements. The patterns are assigned to segments according to an optimization algorithm that seeks to maximize the minimum effectiveness of each segment, where the effectiveness indicates a number of customers matching the pattern of each segment that have positive adoption status. The optimization algorithm may be a bisection algorithm that evaluates a linear-fractional integer program (LFIP-F) to iteratively approach an optimal distribution of patterns.

Claims (40)

1. A computer-implemented method for customer segmentation, comprising:

accessing a customer record for each of a plurality of customers, wherein each customer record comprises a plurality of types of data, and wherein the plurality of types of data comprise at least resource consumption data;

determining, for each of the plurality of customers and based on the customer records, a customer adoption status;

generating an initial pattern set by traversing a decision tree, wherein each node of the decision tree defines a threshold data value or a range of data values for one of the plurality of types of data in the customer records;

pruning the initial pattern set by removing patterns that are either ineffective or duplicative;

assigning remaining patterns that have not been removed by the pruning to segments using an algorithm that iteratively maximizes a minimum effectiveness of the segments, wherein the effectiveness of a segment is a measure of a number of customer records that match the patterns assigned to the segment that have a positive adoption status, and wherein a customer record that matches multiple of the remaining patterns is assigned a weight that indicates a fractional coverage of each of the multiple patterns; and

using the segments for targeted customer engagement, by selectively formulating and transmitting advertisements to only the customers matching the patterns of a corresponding segment, in order to increase marketing effectiveness.

2. The method of claim 1 , wherein each pattern defines a subset of customer records that match the pattern.

3. The method of claim 1 , wherein removing a pattern that is duplicative comprises removing a pattern that defines a subset of customer records that has a threshold level of overlap with a subset of customer records defined by an other pattern.

4. The method of claim 3 , wherein the threshold level of overlap is between about 60 percent and about 75 percent.

5. The method of claim 3 , wherein the removed pattern has a lower effectiveness than the other pattern.

6. The method of claim 1 , wherein the effectiveness of a pattern is an empirical probability that customer records that match the pattern have a positive adoption status.

7. The method of claim 1 , further comprising:

removing patterns that do not have a threshold number of customer records that match the pattern.

8. The method of claim 7 , wherein the threshold number of customer records is between about 100 and about 1000.

9. The method of claim 1 , wherein removing patterns that are ineffective comprises removing patterns that do not have a threshold number of customer records (i) that match the pattern and (ii) have a positive adoption status.

10. The method of claim 1 , wherein each pattern comprises a conjunction of two or more rules.

11. The method of claim 10 , wherein the customer records that match each pattern satisfy the two or more rules of the pattern.

12. The method of claim 1 , wherein the plurality of types of data further comprise socio-demographic data describing each of the plurality of customers.

13. The method of claim 12 , wherein the sociodemographic data comprises income data.

14. The method of claim 12 , wherein the socio-demographic data comprises education data.

15. The method of claim 1 , wherein the plurality of types of data further comprises physical residence attributes.

16. The method of claim 1 , wherein the customer adoption status is an adoption status of an energy efficiency program.

17. The method of claim 1 , wherein the advertisements include elements to which the customers in the segments are responsive.

18. The method of claim 1 , wherein the segments comprise pre-defined partitions of the plurality of customers hypothesized to be homogenous with respect to one or more attributes.

19. The method of claim 1 , wherein the algorithm is a bisection algorithm configured to evaluate a linear-fractional function.

20. One or more non-transitory computer storage media storing instructions that are operable, when executed by one or more computers, to cause the one or more computers to perform operations comprising:

accessing a customer record for each of a plurality of customers, wherein each customer record comprises a plurality of types of data, and wherein the plurality of types of data comprise at least resource consumption data;

determining, for each of the plurality of customers and based on the customer records, a customer adoption status;

generating an initial pattern set by traversing a decision tree, wherein each node of the decision tree defines a threshold data value or a range of data values for one of the plurality of types of data in the customer records;

pruning the initial pattern set by removing patterns that are either ineffective or duplicative;

assigning remaining patterns that have not been removed by the pruning to segments using an algorithm that iteratively maximizes a minimum effectiveness of the segments, wherein the effectiveness of a segment is a measure of a number of customer records that match the patterns assigned to the segment that have a positive adoption status, and wherein a customer record that matches multiple of the remaining patterns is assigned a weight that indicates a fractional coverage of each of the multiple patterns; and

using the segments for targeted customer engagement, by selectively formulating and transmitting advertisements to only the customers matching the patterns of a corresponding segment, in order to increase marketing effectiveness.

21. A system comprising one or more computers 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 computer to perform operations comprising:

accessing a customer record for each of a plurality of customers, wherein each customer record comprises a plurality of types of data, and wherein the plurality of types of data comprise at least resource consumption data;

determining, for each of the plurality of customers and based on the customer records, a customer adoption status;

generating an initial pattern set by traversing a decision tree, wherein each node of the decision tree defines a threshold data value or a range of data values for one of the plurality of types of data in the customer records;

pruning the initial pattern set by removing patterns that are either ineffective or duplicative;

assigning remaining patterns that have not been removed by the pruning to segments using an algorithm that iteratively maximizes a minimum effectiveness of the segments, wherein the effectiveness of a segment is a measure of a number of customer records that match the patterns assigned to the segment that have a positive adoption status, and wherein a customer record that matches multiple of the remaining patterns is assigned a weight that indicates a fractional coverage of each of the multiple patterns; and

using the segments for targeted customer engagement, by selectively formulating and transmitting advertisements to only the customers matching the patterns of a corresponding segment, in order to increase marketing effectiveness.

Assignments (5)
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY DATA, FIRST INVENTOR INCORRECT SPELLING OF MEDHI MAASOUMY HAGHIGHI PREVIOUSLY RECORDED ON REEL 054084 FRAME 0415. ASSIGNOR(S) HEREBY CONFIRMS THE THE CORRECT SPELLING IS MEHDI MAASOUMY HAGHIGHI. Recorded Dec 2, 2020
From: HAGHIGHI, MEHDI MAASOUMY; ALBERT, ADRIAN
To: C3.AI, INC.
Reel/Frame 054574/0454 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY PREVIOUSLY RECORDED AT REEL: 040637 FRAME: 0694. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Oct 14, 2020
From: HAGHIGHI, MEDHI MAASOUMY; ALBERT, ADRIAN
To: C3.AI, INC.
Reel/Frame 054084/0415 →
CHANGE OF NAME Recorded Sep 4, 2019
From: C3 IOT, INC.
To: C3.AI, INC.
Reel/Frame 050274/0154 →
CHANGE OF NAME Recorded Nov 29, 2017
From: C3, INC.
To: C3 IOT, INC.
Reel/Frame 044551/0461 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 15, 2016
From: ALBERT, ADRIAN; MAASOUMY, MEHDI HAGHIGHI
To: C3, INC.
Reel/Frame 040637/0694 →
Continuity (2)
Provisional Application 62269793 · Dec 18, 2015
Related Publication 20170178256A1 · Jun 22, 2017