IP Library Granted Patent US 9,224,101
Granted Patent B1
US 9,224,101 · App. 13/480,315 · Granted Dec 29, 2015

Incremental model training for advertisement targeting using real-time streaming data and model redistribution

Inventor: Gaurav Chandalia (Sunnyvale, CA)
Assignee: Quantcast Corporation
G06N99/005G06K9/6256G06N5/02
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 9,224,101
App. No.
13/480,315
Granted
Dec 29, 2015
Kind
B1
Abstract

Incremental model training for advertisement targeting is performed using streaming data. A model for targeting advertisements of an advertising campaign is initialized. A data stream including data corresponding to converters and data corresponding to non-converters is received. The model is then applied to the data corresponding to the converter and data corresponding to the non-converter (or other ratio of converter to non-converters) to obtain a predicted score for each. The predicted score is compared to the observed score (e.g., an observed score of 1 for a converter, and 0 for a non-converter). The difference between the predicted and observed scores is computed, and the model is incrementally updated based on this difference. Models can optionally be built separately on multiple modeling servers that are geographically dispersed in order to support bidding on advertising opportunities in a real-time bidding environment.

Claims (61)

1. A computer-implemented method of incrementally training a model for targeting advertisements, the method comprising:

initializing a model at a first modeling server;

receiving a real-time data stream of data corresponding to converters and data corresponding to non-converters at the first modeling server;

responsive to receiving a signal of conversion corresponding to a single converter, pairing the converter and a randomly sampled non-converter and performing for the single converter and the non-converter:

applying the model to data corresponding to the converter to obtain a predicted score for the converter;

applying the model to data corresponding to the non-converter to obtain a predicted score for the non-converter;

comparing the predicted score for the converter to an observed score for the converter to compute a first difference;

comparing the predicted score for the non-converter to an observed score for the non-converter to compute a second difference;

updating the model at the first modeling server based on the first and second differences;

periodically combining the updated model with at least one other model from at least a second modeling server; and

redistributing the combined model to at least the first and second modeling servers.

2. The method of claim 1 , further comprising sampling data corresponding to converters and data corresponding to non-converters.

3. The method of claim 2 , wherein sampling comprises downsampling data corresponding to non-converters.

4. The method of claim 1 , wherein initializing a model comprises receiving a preformed model comprising a feature set and a respective weight for each feature in the feature set.

5. The method of claim 1 , wherein at least the applying, comparing, and updating steps are performed by a plurality of modeling servers concurrently on data corresponding to different converters.

6. The method of claim 1 , wherein combining the updated model with at least one other model from at least a second modeling server comprises taking a weighted average of the models based on respective amounts of converters recently incorporated into each model.

7. The method of claim 1 , further comprising penalizing infrequently observed features to reduce a feature set in the model.

8. The method of claim 1 , further comprising discarding the data corresponding to the converter and data corresponding to the at least one non-converter.

9. A non-transitory computer readable storage medium executing computer program instructions for incrementally training a model for targeting advertisements, the computer program instructions comprising instructions for:

initializing a model at a first modeling server;

receiving a real-time data stream of data corresponding to converters and data corresponding to non-converters at the first modeling server;

responsive to receiving a signal of conversion corresponding to a single converter, pairing the converter and a randomly sampled non-converter and performing for the single converter and the non-converter:

applying the model to data corresponding to the converter to obtain a predicted score for the converter;

applying the model to data corresponding to the non-converter to obtain a predicted score for the non-converter;

comparing the predicted score for the converter to an observed score for the converter to compute a first difference;

comparing the predicted score for the non-converter to an observed score for the non-converter to compute a second difference;

updating the model at the first modeling server based on the first and second differences;

periodically combining the updated model with at least one other model from at least a second modeling server; and

redistributing the combined model to at least the second modeling server.

10. The medium of claim 9 , further comprising instructions for sampling data corresponding to converters and data corresponding to non-converters.

11. The medium of claim 10 , wherein sampling comprises downsampling data corresponding to non-converters.

12. The medium of claim 9 , wherein initializing a model comprises receiving a preformed model comprising a feature set and a respective weight for each feature in the feature set.

13. The medium of claim 9 , further comprising instructions for penalizing infrequently observed features to reduce a feature set in the model.

14. The medium of claim 9 , further comprising instructions for discarding the data corresponding to the converter and data corresponding to the at least one non-converter.

15. A system comprising:

a processor;

a computer readable storage medium storing processor-executable computer program instructions for incrementally training a model for targeting advertisements, the instructions comprising instructions for:

initializing a model at a first modeling server;

receiving a real-time data stream of data corresponding to converters and data corresponding to non-converters at the first modeling server;

responsive to receiving a signal of conversion corresponding to a single converter, pairing the converter and a randomly sampled non-converter and performing for the single converter and the non-converter:

applying the model to data corresponding to the converter to obtain a predicted score for the converter;

applying the model to data corresponding to the non-converter to obtain a predicted score for the non-converter;

comparing the predicted score for the converter to an observed score for the converter to compute a first difference;

comparing the predicted score for the non-converter to an observed score for the non-converter to compute a second difference;

updating the model at the first modeling server based on the first and second differences;

periodically combining the updated model with at least one other model from at least a second modeling server; and

redistributing the combined model to at least the second modeling server.

16. The system of claim 15 , wherein the medium further comprises instructions for sampling data corresponding to converters and data corresponding to non-converters.

17. The system of claim 16 , wherein sampling comprises downsampling data corresponding to non-converters.

18. The system of claim 15 , wherein initializing a model comprises receiving a preformed model comprising a feature set and a respective weight for each feature in the feature set.

19. The system of claim 15 comprising a plurality of modeling servers, each modeling server comprising a processor and a computer readable storage medium storing processor-executable computer program instructions for incrementally training a model for targeting advertisements, the instructions comprising instructions for:

initializing a model at a respective modeling server;

receiving a real-time data stream of data corresponding to converters and data corresponding to non-converters at the respective modeling server;

responsive to receiving a signal of conversion corresponding to a single converter, pairing the converter and a randomly sampled non-converter and performing for the single converter and the non-converter:

applying the model to data corresponding to the converter to obtain a predicted score for the converter;

applying the model to data corresponding to the non-converter to obtain a predicted score for the non-converter;

comparing the predicted score for the converter to an observed score for the converter to compute a first difference;

comparing the predicted score for the non-converter to an observed score for the non-converter to compute a second difference; and

updating the model based on the first and second differences.

20. The system of claim 15 , wherein the medium further comprises instructions for penalizing infrequently observed features to reduce a feature set in the model.

21. The system of claim 15 , wherein the medium further comprises instructions for discarding the data corresponding to the converter and data corresponding to the at least one non-converter.

Assignments (13)
RELEASE OF SECURITY INTEREST Recorded Jun 21, 2024
From: BANK OF AMERICA, N.A.
To: QUANTCAST CORPORATION
Reel/Frame 067807/0017 →
SECURITY INTEREST Recorded Jun 18, 2024
From: QUANTCAST CORPORATION
To: CRYSTAL FINANCIAL LLC D/B/A SLR CREDIT SOLUTIONS
Reel/Frame 067777/0613 →
SECURITY INTEREST Recorded Dec 5, 2022
From: QUANTCAST CORPORATION
To: VENTURE LENDING & LEASING IX, INC.; WTI FUND X, INC.
Reel/Frame 062066/0265 →
SECURITY INTEREST Recorded Sep 30, 2021
From: QUANTCAST CORPORATION
To: BANK OF AMERICA, N.A., AS AGENT
Reel/Frame 057677/0297 →
RELEASE OF SECURITY INTEREST Recorded Sep 30, 2021
From: WELLS FARGO BANK, NATIONAL ASSOCIATION
To: QUANTCST CORPORATION
Reel/Frame 057678/0832 →
RELEASE OF SECURITY INTEREST Recorded May 6, 2021
From: VENTURE LENDING & LEASING VI, INC.; VENTURE LENDING & LEASING VII, INC.
To: QUANTCAST CORPORATION
Reel/Frame 056159/0702 →
RELEASE OF SECURITY INTEREST Recorded Mar 15, 2021
From: TRIPLEPOINT VENTURE GROWTH BDC CORP.
To: QUANTCAST CORPORATION
Reel/Frame 055599/0282 →
SECURITY INTEREST Recorded Aug 7, 2018
From: QUANTCAST CORPORATION
To: TRIPLEPOINT VENTURE GROWTH BDC CORP.
Reel/Frame 046733/0305 →
FIRST AMENDMENT TO PATENT SECURITY AGREEMENT Recorded Nov 14, 2016
From: QUANTCAST CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 040614/0906 →
PATENT SECURITY AGREEMENT Recorded Jun 26, 2015
From: QUANTCAST CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 036020/0721 →
SECURITY AGREEMENT Recorded Oct 18, 2013
From: QUANTCAST CORPORATION
To: VENTURE LENDING & LEASING VI, INC.; VENTURE LENDING & LEASING VII, INC.
Reel/Frame 031438/0474 →
SECURITY AGREEMENT Recorded Jul 10, 2013
From: QUANTCAST CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 030772/0488 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 27, 2012
From: CHANDALIA, GAURAV
To: QUANTCAST CORPORATION
Reel/Frame 028455/0118 →