IP Library Granted Patent US 11,586,684
Granted Patent B2
US 11,586,684 · App. 16/566,076 · Granted Feb 21, 2023

Serving multiple content items responsive to a single request

Inventors: Matthew Strecker Burriesci (Half Moon Bay, CA); David Kent German (Cambridge, MA); Mathieu Gagne (Somerville, MA); Michael Kleber (Newton, MA); Jonathan Frank Guarino (Cambridge, MA); Guy Maor (Mountain View, CA)
Assignee: GOOGLE LLC
G06F16/951
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,586,684
App. No.
16/566,076
Granted
Feb 21, 2023
Kind
B2
Abstract

When a client device loads a resource, a request for a first content item for a first content item slot is transmitted to a content item selection system. The content item selection system uses a predictive model to determine a predicted content item slot based on a document object model position of the first content item slot and a URL of the resource or a publisher identifier. Parameters for the predicted content item slot are used to select a subsequent content item for the predicted content item slot. The first content item and the subsequent content item are transmitted to the client device responsive to the request. The subsequent content item includes metadata indicative of the parameters of the predicted content item slot to be matched to a subsequent content item slot of the resource.

Claims (48)

1. A method, implemented by using one or more processors, comprising:

receiving a request for a content item for a content item slot of a resource, the request including one or more parameters for the content item slot and a parameter indicating the request is for one or more serialized content items;

selecting the content item based on the one or more parameters for the content item slot;

predicting a first subsequent content item slot of a plurality of subsequent content item slots using a predictive model trained by a machine learning algorithm, wherein the predictive model determines a probability of co-occurrence of the first subsequent content item slot and the content item slot based on a position of the content item slot;

in response to the parameter indicating the request for one or more serialized content items, determining the predicted first subsequent content item slot;

in response to determining the predicted first subsequent content item slot, determining one or more parameters for the predicted first subsequent content item slot;

selecting a first subsequent content item for the predicted first subsequent content item slot based on the determined one or more parameters for the predicted first subsequent content item slot; and

transmitting (i) data to effect presentation of the selected content item, (ii) data to effect presentation of the first subsequent content item for the predicted first subsequent content item slot, and (iii) metadata associated with the first subsequent content item, wherein the metadata comprises the one or more parameters for the predicted first subsequent content item slot.

2. The method of claim 1 , comprising modifying a data table associated with the predictive model using Bayesian estimation, wherein the data table comprises (i) an indexing value, (ii) data associated with the content item slot, and (iii) data associated with the predicted first subsequent item slot, wherein the indexing value is based on a uniform resource locator (URL) for the resource.

3. The method of claim 1 , comprising modifying a data table associated with the predictive model using Bayesian estimation, wherein the data table comprises (i) an indexing value, (ii) data associated with the content item slot, and (iii) data associated with the predicted first subsequent item slot, wherein the indexing value is based on a publisher identifier for the resource.

4. The method of claim 1 , wherein the selecting the content item and the selecting the first subsequent content item are performed in parallel.

5. The method of claim 1 , further comprising:

modifying a data table associated with the predictive model using Bayesian estimation, wherein the data table comprises (i) an indexing value, (ii) data associated with the content item slot, and (iii) data associated with the predicted first subsequent item slot;

determining a predicted second subsequent content item slot based on the modified data table;

in response to determining the predicted second subsequent content item slot based on the modified data table, determining one or more parameters for the predicted second subsequent content item; and

selecting a second subsequent content item for the predicted second subsequent content item slot based on the determined one or more parameters for the predicted second subsequent content item slot.

6. The method of claim 5 , wherein the selecting the content item, the selecting the first subsequent content item, and the selecting the second subsequent content item are performed in parallel.

7. The method of claim 1 , wherein the content item and the first subsequent content item are from the same third-party.

8. A system comprising:

one or more processors; and

one or more storage devices storing instructions that, when executed by the one or more processors, cause the one or more processors to perform operations comprising:

receiving a request for a content item for a content item slot of a resource, the request including one or more parameters for the content item slot and a parameter indicating the request is for one or more serialized content items;

selecting the content item based on the one or more parameters for the content item slot;

predicting a first subsequent content item slot of a plurality of subsequent content item slots using a predictive model trained by a machine learning algorithm, wherein the predictive model determines a probability of co-occurrence of the first subsequent content item slot and the content item slot based on a position of the content item slot;

in response to the parameter indicating the request is for one or more serialized content items, determining the predicted first subsequent content item slot;

in response to determining the predicted first subsequent content item slot, determining one or more parameters for the predicted first subsequent content item slot;

selecting a first subsequent content item for the predicted first subsequent content item slot based on the determined one or more parameters for the predicted first subsequent content item slot; and

transmitting (i) data to effect presentation of the selected content item, (ii) data to effect presentation of the first subsequent content item for the predicted first subsequent content item slot, and (iii) metadata associated with the first subsequent content item, wherein the metadata comprises the one or more parameters for the predicted first subsequent content item slot.

9. The system of claim 8 , wherein the one or more storage devices store instructions that, when executed by the one or more processors, cause the one or more processors to perform operations further comprising:

generating an ephemeral state frame for the resource; and

storing the data to effect presentation of the first subsequent content item for the predicted first subsequent content item slot and the metadata associated with the first subsequent content item in the ephemeral state frame.

10. The system of claim 9 , wherein the ephemeral state frame is a HyperText Markup Language (HTML) iframe.

11. The system of claim 9 , wherein the ephemeral state frame is generated responsive to execution of a script of the resource.

12. The system of claim 8 , wherein the one or more storage devices store instructions that, when executed by the one or more processors, cause the one or more processors to perform operations further comprising:

determining a configuration file is included with data for the resource, the configuration file including a parameter indicating a second subsequent content item is to be returned responsive to the request for the content item,

determining the second subsequent content item has not been received; and

in response to determining the second subsequent content item has not been received, waiting a predetermined threshold period of time before transmitting a separate request for the second subsequent content item.

13. A non-transitory computer readable storage device storing instructions that, when executed by one or more processors, cause the one or more processors to perform operations comprising:

receiving a request for a content item for a content item slot of a resource, the request including one or more parameters for the content item slot and a parameter indicating the request is for one or more serialized content items;

selecting the content item based on the one or more parameters for the content item slot;

predicting a first subsequent content item slot of a plurality of subsequent content item slots using a predictive model trained by a machine learning algorithm, wherein the predictive model determines a probability of co-occurrence of the first subsequent content item slot and the content item slot based on a position of the content item slot;

in response to the parameter indicating the request is for one or more serialized content items, determining the predicted first subsequent content item slot;

in response to determining the predicted first subsequent content item slot, determining one or more parameters for the predicted first subsequent content item slot;

selecting a first subsequent content item for the predicted first subsequent content item slot based on the determined one or more parameters for the predicted first subsequent content item slot; and

transmitting (i) data to effect presentation of the selected content item, (ii) data to effect presentation of the first subsequent content item for the predicted first subsequent content item slot, and (iii) metadata associated with the first subsequent content item, wherein the metadata comprises the one or more parameters for the predicted first subsequent content item slot.

14. The non-transitory computer readable storage device of claim 13 , the operations comprising modifying a data table associated with the predictive model using Bayesian estimation, wherein the data table comprises (i) an indexing value, (ii) data associated with the content item slot, and (iii) data associated with the predicted first subsequent item slot, wherein the indexing value is based on a uniform resource locator (URL) for the resource.

15. The non-transitory computer readable storage device of claim 13 , the operations comprising modifying a data table associated with the predictive model using Bayesian estimation, wherein the data table comprises (i) an indexing value, (ii) data associated with the content item slot, and (iii) data associated with the predicted first subsequent item slot, wherein the indexing value is based on a publisher identifier for the resource.

16. The non-transitory computer readable storage device of claim 13 , wherein the selecting the content item and the selecting the first subsequent content item are performed in parallel.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 6, 2022
From: BURRIESCI, MATTHEW STRECKER; GERMAN, DAVID KENT; GAGNE, MATHIEU; KLEBER, MICHAEL; GUARINO, JONATHAN FRANK; MAOR, GUY
To: GOOGLE INC.
Reel/Frame 059836/0750 →
CHANGE OF NAME Recorded May 6, 2022
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 059861/0032 →
Continuity (3)
Continuation 15014807 · Feb 3, 2016
Provisional Application 62273020 · Dec 30, 2015
Related Publication 20200004793A1 · Jan 2, 2020