IP Library Granted Patent US 11,244,340
Granted Patent B1
US 11,244,340 · App. 15/875,202 · Granted Feb 8, 2022

Method and system for using machine learning techniques to identify and recommend relevant offers

Inventors: Yao H. Morin (San Diego, CA); James Jennings (San Diego, CA); Christian A. Rodriguez (Palo Alto, CA); Lei Pei (Sunnyvale, CA); Jyotiswarup Pai Raiturkar (Bellandur, IN)
Assignee: Intuit Inc.
G06Q30/0224G06K9/6256G06K9/6269G06N5/025G06N5/04G06N20/00G06Q30/0201G06Q30/0202G06Q30/0211
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,244,340
App. No.
15/875,202
Granted
Feb 8, 2022
Kind
B1
Abstract

User data from users/consumers is transformed into machine learning training data including historical offer attribute model training data, historical offer performance model training data, and user attribute model training data associated with two or more users/consumers, and, in some cases, millions, tens of millions, or hundreds of millions or more, users/consumers. The machine learning training data is then used to train one or more offer/attribute matching models in an offline training environment. A given current user's data and current offer data are then provided as input data to the offer/attribute matching models in an online runtime/execution environment to identify current offers predicted to have a threshold level of user interest. Recommendation data representing these offers is then provided to the user and the current user's actions with respect to the recommended offers is monitored and used as online training data.

Claims (72)

1. A method performed by one or more processors of a system for using machine learning techniques to generate recommended offers, the method comprising:

providing a user feature engineering module including a user attribute data extraction engine;

providing an offer feature engineering module including an offer attribute and performance data extraction engine;

providing an offer management module including an offer attribute extraction engine;

providing a rule generation module including one or more attribute matching models;

obtaining historical data associated with a number of system users of the system, the historical data including at least one of demographic data or clickstream data associated with the number of system users, the historical data further including historical offer data and historical offer performance data associated with one or more historical offers made to the number of system users;

transforming the historical data into model training data including at least one of demographic model training data or clickstream model training data for the number of system users, the model training data further including historical offer model training data and historical offer performance model training data associated with the one or more historical offers made to the number of system users;

providing at least one of the demographic model training data or the clickstream model training data to the user attribute data extraction engine of the user feature engineering module;

generating, based on the user attribute data extraction engine processing the at least one demographic model training data or clickstream model training data, user attribute model training data representing one or more user attributes associated with each of the number of system users;

providing the historical offer model training data and historical offer performance model training data to the offer attribute and performance data extraction engine of the offer feature engineering module;

generating, based on the offer attribute and performance data extraction engine processing the historical offer model training data and historical offer performance model training data, historical offer attribute model training data representing one or more historical offer attributes associated with each of the one or more historical offers;

for each respective system user of the number of system users and each of the one or more historical offers, correlating the user attributes associated with the respective system user with the one or more historical offer attributes and historical offer performance model training data associated with each historical offer of the one or more historical offers made to the respective system user;

generating, based on the correlating, correlated training data including user attribute model training data, historical offer attribute model training data, and historical offer performance model training data;

training the one or more attribute matching models to predict user interest in an offer based at least in part on the correlated training data and one or more user interest prediction algorithms;

obtaining current user's data associated with a given current user, the current user's data including at least one of the given current user's demographic data or the given current user's clickstream data;

providing at least a portion of the current user's data to the user attribute data extraction engine of the user feature engineering module;

generating, based on the user attribute data extraction engine processing the at least portion of the current user's data, current user's attribute data representing one or more current user's attributes associated with the given current user;

providing a current offer attribute data extraction module including a current offer attribute data extraction engine;

obtaining current offer attribute data representing attributes of one or more current offers;

providing the current offer data to the current offer attribute data extraction engine of the current offer attribute data extraction module;

generating, based on the current offer attribute data extraction engine processing the current offer data, current offer attribute data representing one or more current offer attributes associated with the one or more current offers;

providing the current user's attribute data and the current offer attribute data to the trained one or more user interest prediction algorithms of the one or more attribute matching models;

generating, with the trained one or more user interest prediction algorithms, current user's interest prediction data representing, for each respective offer of the one or more current offers, a predicted interest level for the given current user, the predicted interest level indicating a predicted level of interest that the given current user has in the respective offer;

correlating the current user's interest prediction data for each of the one or more current offers represented in the current offer data to the respective offer of the one or more current offers to which the current user's interest prediction data applies;

defining a threshold interest level and generating threshold predicted current user's interest level data representing the defined threshold interest level;

for each respective offer of the one or more current offers, comparing the predicted interest level corresponding to the respective offer with the defined threshold interest level;

generating offer recommendation data representing one or more current offers recommended for the given current user based on collecting portions of the current offer data associated with the current offers of the one or more current offers having an associated predicted interest level greater than the defined threshold interest level;

generating one or more recommended offers for the given current user based on the offer recommendation data; and

providing the one or more recommended offers to the given current user.

2. The method of claim 1 , further comprising:

monitoring the given current user's interaction with the one or more current offers;

generating current offer performance data for each of the one or more current offers;

providing the current user's attribute data, the current offer attribute data for each of the one or more current offers represented in the offer recommendation data, and current offer performance data for each of the one or more current offers represented in the offer recommendation data to the one or more attribute matching models as online model training data; and

modifying, based on the one or more attribute matching models processing the current user's attribute data, the current offer attribute data for each of the one or more current offers represented in the offer recommendation data, and current offer performance data for each of the one or more current offers represented in the offer recommendation data, the one or more user interest prediction algorithms.

3. The method of claim 1 , wherein the number of system users includes at least one of hundreds of system users, thousands of system users, tens of thousands of system users, hundreds of thousands of system users, millions of system users, tens of millions of system users, hundreds of millions of system users, or more than hundreds of millions of system users.

4. A system comprising:

one or more processors; and

at least one memory coupled to the one or more processors and storing instructions that, when executed by the one or more processors, cause the system to perform operations including:

providing a user feature engineering module including a user attribute data extraction engine;

providing an offer feature engineering module including an offer attribute and performance data extraction engine;

providing an offer management module including an offer attribute extraction engine;

providing a rule generation module including one or more attribute matching models;

obtaining historical data associated with a number of system users of the system, the historical data including at least one of demographic data or clickstream data associated with the number of system users, the historical data further including historical offer data and historical offer performance data associated with one or more historical offers made to the number of system users;

transforming the historical data into model training data including at least one of demographic model training data or clickstream model training data for the number of system users, the model training data further including historical offer model training data and historical offer performance model training data associated with the one or more historical offers made to the number of system users;

providing at least one of the demographic model training data or the clickstream model training data to the user attribute data extraction engine of the user feature engineering module;

generating, based on the user attribute data extraction engine processing the at least one demographic model training data or clickstream model training data, user attribute model training data representing one or more user attributes associated with each of the number of system users;

providing the historical offer model training data and historical offer performance model training data to the offer attribute and performance data extraction engine of the offer feature engineering module;

generating, based on the offer attribute and performance data extraction engine processing the historical offer model training data and historical offer performance model training data, historical offer attribute model training data representing one or more historical offer attributes associated with each of the one or more historical offers;

for each respective system user of the number of system users and each of the one or more historical offers, correlating the user attributes associated with the respective system user with the one or more historical offer attributes and historical offer performance model training data associated with each historical offer of the one or more historical offers made to the respective system user;

generating, based on the correlating, correlated training data including user attribute model training data, historical offer attribute model training data, and historical offer performance model training data;

training the one or more attribute matching models to predict user interest in an offer based at least in part on the correlated training data and one or more user interest prediction algorithms;

obtaining current user's data associated with a given current user, the current user's data including at least one of the given current user's demographic data or the given current user's clickstream data;

providing at least a portion of the current user's data to the user attribute data extraction engine of the user feature engineering module;

generating, based on the user attribute data extraction engine processing the at least portion of the current user's data, current user's attribute data representing one or more current user's attributes associated with the given current user;

providing a current offer attribute data extraction module including a current offer attribute data extraction engine;

obtaining current offer attribute data representing attributes of one or more current offers;

providing the current offer data to the current offer attribute data extraction engine of the current offer attribute data extraction module;

generating, based on the current offer attribute data extraction engine processing the current offer data, current offer attribute data representing one or more current offer attributes associated with the one or more current offers;

providing the current user's attribute data and the current offer attribute data to the trained one or more user interest prediction algorithms of the one or more attribute matching models;

generating, with the trained one or more user interest prediction algorithms, current user's interest prediction data representing, for each respective offer of the one or more current offers, a predicted interest level for the given current user, the predicted interest level indicating a predicted level of interest that the given current user has in the respective offer;

correlating the current user's interest prediction data for each of the one or more current offers represented in the current offer data to the respective offer of the one or more current offers to which the current user's interest prediction data applies;

defining a threshold interest level and generating threshold predicted current user's interest level data representing the defined threshold interest level;

for each respective offer of the one or more current offers, comparing the predicted interest level corresponding to the respective offer with the defined threshold interest level;

generating offer recommendation data representing one or more current offers recommended for the given current user based on collecting portions of the current offer data associated with the current offers of the one or more current offers having an associated predicted interest level greater than the defined threshold interest level;

generating one or more recommended offers for the given current user based on the offer recommendation data; and

providing the one or more recommended offers to the given current user.

5. The system of claim 4 , wherein execution of the instructions causes the system to perform operations further including:

monitoring the given current user's interaction with the one or more current offers;

generating current offer performance data for each of the one or more current offers;

providing the current user's attribute data, the current offer attribute data for each of the one or more current offers represented in the offer recommendation data, and current offer performance data for each of the one or more current offers represented in the offer recommendation data to the one or more attribute matching models as online model training data; and

modifying, based on the one or more attribute matching models processing the current user's attribute data, the current offer attribute data for each of the one or more current offers represented in the offer recommendation data, and current offer performance data for each of the one or more current offers represented in the offer recommendation data, the one or more user interest prediction algorithms.

6. The system of claim 4 , wherein the number of system users includes at least one of hundreds of system users, thousands of system users, tens of thousands of system users, hundreds of thousands of system users, millions of system users, tens of millions of system users, hundreds of millions of system users, or more than hundreds of millions of system users.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 19, 2018
From: MORIN, YAO H.; JENNINGS, JAMES; RODRIGUEZ, CHRISTIAN A.; PEI, LEI; RAITURKAR, JYOTISWARUP PAI
To: INTUIT INC.
Reel/Frame 044665/0930 →
Cited By (9)
US 12,321,834 US 12,346,942 US 12,393,482 US 12,423,721 US 12,455,982 US 12,518,198 US 12,548,041 US 12,586,109 US 12,613,998