IP Library Granted Patent US 10,943,241
Granted Patent B2
US 10,943,241 · App. 16/102,470 · Granted Mar 9, 2021

System, method and computer program product for selecting internet-based advertising

Inventors: Vikas Jha (Hillsborough, CA); Vassilis Argyrus Papavassiliou (Oakland, CA); Rajeev Bector (Saratoga, CA); Vishal Goenka (San Mateo, CA); Sailendra Padala (San Mateo, CA)
Assignee: Google LLC
G06Q30/02G06Q30/0245G06Q30/0247G06Q30/0254G06Q30/0274
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,943,241
App. No.
16/102,470
Granted
Mar 9, 2021
Kind
B2
Abstract

Embodiments of a system method and computer program product for selecting an advertisement and presenting it to a user are described. Products and services offered by various merchants are read using a merchant specific catalog and stored in a common format. Categories for such products and services are normalized and virtual categories are created using various product attributes. Visual creatives, termed as ad-templates are created to control the visual and interactive aspects of the ad, including ad-size, color, as well as product attributes that are displayed in the ad. Ad-templates may be constrained to specific products or product categories. A learning algorithm uses an adaptive sampling process to sample various products, product categories and ad-templates independently for different learning units such as individual users, groups of users determined by some demographics, individual web pages and groups of web pages grouped using various similarity criteria. The performance of the ad is measured using various learning statistics, such as the click-through-rate, conversion rate, etc. The learning algorithm uses the learning statistics to optimize the return for the advertiser by favoring the products or categories that perform better on one or more specified criteria.

Claims (45)

1. A method for dynamically generating content items based on parameters associated with client devices, the method comprising:

receiving, by one or more processors, from a client device and subsequent to the client device accessing a page via a browser or an application executing on the client device, a request for content for presentation within a content slot on the page, the page including instructions, which when executed by the client device, causes the client device to transmit the request for content;

maintaining, by the one or more processors, for a content provider, a data structure including a feed identifying a plurality of products, the feed including data corresponding to each product of the plurality of products;

responsive to receiving the request for content for presentation within the content slot on the page,

determining, by the one or more processors, from the request for content, a plurality of parameters corresponding to the request for content, the plurality of parameters including a first identifier associated with the client device and a second identifier of the page;

providing, by the one or more processors, the first identifier and the second identifier as inputs to a template selection model for selecting a content item template from a plurality of candidate content item templates, the template selection model modelling a probability distribution of an objective function based on the plurality of parameters, each candidate content item template used to i) generate a content item and ii) identify a category of products;

selecting, by the one or more processors, based on an output of the template selection model, from the plurality of candidate content item templates, the content item template to use for generating the content item for presentation within the content slot on the page;

selecting, by the one or more processors, using the content item template, to generate the content item, data corresponding to the one or more products of the plurality of products; and

generating, by the one or more processors, using the content item template, the content item by including the data of the one or more products in the content item, the content item template identifying a location within the content item to insert an image of the one or more products; and

transmitting, by the one or more processors, in response to the request for content, the generated content item to the client device for presentation within the content slot on the page.

2. The method of claim 1 , wherein generating further comprises generating, by the one or more processors, using the content item template, a plurality of content items by including the data of the one or more products in the plurality of content items, the content item template identifying a plurality of locations within the plurality of content items to insert a plurality of images of the one or more products.

3. The method of claim 1 , further comprising receiving, by the one or more processors responsive to presentation of the content item within the content slot on the page, data indicative of a plurality of interaction outcomes, each interaction outcome representing an interaction event with the content item by the client device, the content item including the image of the one or more products.

4. The method of claim 1 , wherein the probability distribution refers to a first probability distribution of the objective function, the first probability distribution representing interaction performance probabilities for a first performance metric of the one or more products, the probability distribution of the objective function modelled using data indicative of a plurality of interaction outcomes, each interaction outcome representing an interaction event with the content item by the client device, the content item including the image of the one or more products.

5. The method of claim 4 , further comprising modelling, by the template selection model, a second probability distribution representing interaction performance probabilities for a second performance metric of the one or more products, and the second probability distribution modelled using the data indicative of the plurality of interaction outcomes.

6. The method of claim 5 , further comprising selecting, by the one or more processors, the content item template from the plurality of candidate content item templates and the data corresponding to the one or more products using the first probability distribution and the second probability distribution.

7. The method of claim 6 , further comprising retrieving, by the one or more processors from a catalog database, a plurality of data fields associated with the selected content item template and the selected data corresponding to the one or more products, the catalog database including data fields transformed from a first schema specific to the content provider to a second schema defining attributes for real time generation of the content item.

8. The method of claim 7 , further comprising:

generating, by the one or more processors, a second content item using the retrieved data fields for presentation within a second content slot on the page; and

transmitting, by the one or more processors, the generated second content item for presentation within a second content slot on the page.

9. A system comprising:

a processing subsystem; and

a memory subsystem storing instructions that cause the processing subsystem to perform operations comprising:

receiving, from a client device and subsequent to the client device accessing a page via a browser or an application executing on the client device, a request for content for presentation within a content slot on the page, the page including instructions, which when executed by the client device, causes the client device to transmit the request for content;

maintaining, for a content provider, a data structure including a feed identifying a plurality of products, the feed including data corresponding to each product of the plurality of products;

responsive to receiving the request for content for presentation within the content slot on the page,

determining, from the request for content, a plurality of parameters corresponding to the request for content, the plurality of parameters including a first identifier associated with the client device and a second identifier of the page;

providing the first identifier and the second identifier as inputs to a template selection model for selecting a content item template from a plurality of candidate content item templates, the template selection model modelling a probability distribution of an objective function based on the plurality of parameters, each candidate content item template used to i) generate a content item and ii) identify a category of products;

selecting, based on an output of the template selection model, from the plurality of candidate content item templates, the content item template to use for generating the content item for presentation within the content slot on the page;

selecting, using the content item template, for insertion in to generate the content item, data corresponding to the one or more products of the plurality of products; and

generating, by the one or more processors, using the content item template, the content item by including the data of the one or more products in the content item, the content item template identifying a location within the content item to insert an image of the one or more products; and

transmitting, in response to the request for content, the generated content item to the client device for presentation within the content slot on the page.

10. The system of claim 9 , wherein the memory subsystem stores instructions that cause the processing subsystem to perform operations comprising:

generating, using the content item template, a plurality of content items by including the data of the one or more products in the plurality of content items, the content item template identifying a plurality of locations within the plurality of content items to insert a plurality of images of the one or more products.

11. The system of claim 9 , wherein the memory subsystem stores instructions that cause the processing subsystem to perform operations comprising:

receiving, responsive to presentation of the content item within the content slot on the page, data indicative of a plurality of interaction outcomes, each interaction outcome representing an interaction event with the content item by the client device, the content item including the image of the one or more products.

12. The system of claim 9 , wherein the probability distribution refers to a first probability distribution of the objective function, the first probability distribution representing interaction performance probabilities for a first performance metric of the one or more products, the probability distribution of the objective function modelled using data indicative of a plurality of interaction outcomes, each interaction outcome representing an interaction event with the content item by the client device, the content item including the image of the one or more products.

13. The system of claim 12 , wherein the memory subsystem stores instructions that cause the template selection model of the processing subsystem to perform operations comprising:

modelling a second probability distribution representing interaction performance probabilities for a second performance metric of the one or more products, and the second probability distribution modelled using the data indicative of the plurality of interaction outcomes.

14. The system of claim 13 , wherein the memory subsystem stores instructions that cause the processing subsystem to perform operations comprising:

selecting the content item template from the plurality of candidate content item templates and the data corresponding to the one or more products using the first probability distribution and the second probability distribution.

15. The system of claim 14 , wherein the memory subsystem stores instructions that cause the processing subsystem to perform operations comprising:

retrieving, from a catalog database, a plurality of data fields associated with the selected content item template and the selected data corresponding to the one or more products, the catalog database including data fields transformed from a first schema specific to the content provider to a second schema defining attributes for real time generation of the content item.

16. The system of claim 15 , wherein the memory subsystem stores instructions that cause the processing subsystem to perform operations comprising:

generating a second content item using the retrieved data fields for presentation within a second content slot on the page; and

transmitting the generated second content item for presentation within a second content slot on the page.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2021
From: JHA, VIKAS; PAPAVASSILIOU, VASSILIS ARGYUS; BECTOR, RAJEEV; GOENKA, VISHAL; PADALA, SAILENDRA
To: TERACENT COPRORATION
Reel/Frame 055047/0776 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 27, 2021
From: TERACENT CORPORATION
To: GOOGLE INC.
Reel/Frame 055047/0905 →
CHANGE OF NAME Recorded Jan 27, 2021
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 055136/0877 →
Continuity (3)
Continuation 11624618 · Jan 18, 2007
Provisional Application 60760325 · Jan 18, 2006
Related Publication 20180365707A1 · Dec 20, 2018
Cited By (2)
US 12,250,196 US 12,718,260