IP Library Granted Patent US 12,229,801
Granted Patent B2
US 12,229,801 · App. 18/103,107 · Granted Feb 18, 2025

System and method for automatically providing relevant digital advertisements

Inventors: Fanglida Yan (Milpitas, CA); Tanay Kumar Saha (San Jose, CA); Musen Wen (Mountain View, CA)
Assignee: Walmart Apollo, LLC
G06Q30/0256G06Q30/0201G06Q30/0275
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 12,229,801
App. No.
18/103,107
Granted
Feb 18, 2025
Kind
B2
Abstract

Systems and methods for automatically determining and providing digital advertisements with ensured relevancy to a search query are disclosed. In some embodiments, based on historical user session data, a query is determined to be a head query, torso query, or tail query. For each sponsored item, a relevance score is generated to represent a degree of relevancy between the sponsored item and the query, and it is determined whether the sponsored item is eligible to be recommended in response to the query based on: (a) comparing the relevance score to a first threshold when the query is a head or torso query, or (b) comparing the relevance score to a second threshold when the query is a tail query. Based on all sponsored items that are eligible to be recommended, a ranked list of recommended items is generated for display based on an auction mechanism.

Claims (129)

1. A system, comprising:

a processor; and

a non-transitory memory storing instructions that, when executed, cause the processor to:

receive, from a computing device, a search request identifying a query and seeking items to be displayed on a webpage of a website to a user;

determine whether the query is a head query, a torso query, or a tail query, based on historical user session data of users of the website, wherein the historical user session data incorporates query traffic data associated with the query of one or more of item impressions, item clicks, items added to an online shopping cart, items purchased in an order, conversions, click-through rates, advertisements viewed, or advertisements clicked;

for each displayable item of a plurality of displayable items associated with the website:

generate a relevance score representing a degree of relevancy between the displayable item and the query;

identify a product type (PT) for the displayable item;

determine whether a query-PT threshold specific to the query and the PT exists in an editorial database;

responsive to determining that the query-PT threshold exists in the editorial database, select the query-PT threshold, wherein the query-PT threshold in the editorial database is pre-determined based on generated labels associated with the query and the PT;

responsive to determining that the query-PT threshold exists outside the editorial database, select the query-PT threshold from a model database, wherein the query-PT threshold in the model database is pre-determined based on a machine learning model and historical user engagement data for the query and the PT;

identify one or more of the plurality of displayable items that are eligible to be recommended in response to the query based at least in part on:

(a) comparing the relevance score to a first threshold when the query is determined to be one of the head query or the torso query,

(b) comparing the relevance score to a second threshold when the query is determined to be the tail query,

(c) in response to selecting the query-PT threshold from the editorial database, comparing the relevance score to the query-PT threshold of the editorial database, and

(d) in response to selecting the query-PT threshold from the model database, comparing the relevance score to the query-PT threshold of the model database;

generate, from the one or more of the plurality of displayable items that are eligible to be recommended, a ranked list of recommended items using an auction mechanism; and

transmit, to the computing device, the ranked list of recommended items in response to the search request.

2. The system of claim 1 , wherein:

the query is determined to be the head query when a number of user clicks collected responsive to items displayed for the query during a past time period is beyond a first percentile;

the query is determined to be the tail query when the number of user clicks collected responsive to the items displayed for the query during the past time period is below a second percentile that is lower than the first percentile;

the query is determined to be the torso query when the number of user clicks collected responsive to the items displayed for the query during the past time period is below the first percentile and above the second percentile; and

each of the first percentile and the second percentile is determined based on user click data of different queries submitted to the website during the past time period.

3. The system of claim 1 , wherein whether the displayable item is eligible to be recommended is determined based on:

when the query-PT threshold exists in the editorial database,

determining the displayable item is eligible to be recommended in response to the query when the relevance score is beyond the query-PT threshold, and

determining the displayable item is ineligible to be recommended in response to the query when the relevance score is not beyond the query-PT threshold.

4. The system of claim 3 , wherein whether the displayable item is eligible to be recommended is determined further based on:

when the query-PT threshold exists in the model database,

determining that the displayable item is eligible to be recommended in response to the query when the relevance score is beyond the query-PT threshold, and

determining that the displayable item is ineligible to be recommended in response to the query when the relevance score is not beyond the query-PT threshold.

5. The system of claim 3 , wherein whether the displayable item is eligible to be recommended is determined further based on:

when the query-PT threshold exists outside the editorial database and when the query is the tail query,

determining whether a PT level threshold specific to the PT exists in a PT level database, wherein the PT level threshold is pre-determined based on a percentile analysis of a distribution of relevance scores of items in the PT; and

when the PT level threshold exists in the PT level database,

determining that the displayable item is eligible to be recommended in response to the query when the relevance score is beyond the PT level threshold, and

determining that the displayable item is ineligible to be recommended in response to the query when the relevance score is not beyond the PT level threshold.

6. The system of claim 5 , wherein whether the displayable item is eligible to be recommended is determined further based on:

when the PT level threshold does not exist in the PT level database and when the query is the tail query,

identifying a product category for the displayable item;

determining whether a category level threshold specific to the product category exists in a category level database, wherein the category level threshold is pre-determined based on a percentile analysis of a distribution of relevance scores of items in the product category; and

when the category level threshold exists in the category level database,

determining that the displayable item is eligible to be recommended in response to the query when the relevance score is beyond the category level threshold, and

determining that the displayable item is ineligible to be recommended in response to the query when the relevance score is not beyond the category level threshold.

7. The system of claim 6 , wherein whether the displayable item is eligible to be recommended is determined further based on:

when the category level threshold does not exist in the category level database and when the query is the tail query,

identifying a service business unit (SBU) for the displayable item;

identifying a SBU level threshold specific to the SBU in a SBU level database, wherein the SBU level threshold is pre-determined based on a percentile analysis of a distribution of relevance scores of items in the SBU;

determining that the displayable item is eligible to be recommended in response to the query when the relevance score is beyond the SBU level threshold; and

determining that the displayable item is ineligible to be recommended in response to the query when the relevance score is not beyond the SBU level threshold.

8. The system of claim 1 , wherein:

the relevance score is generated by applying at least one trained machine learning model to the displayable item and the query.

9. The system of claim 1 , wherein at least one of the first threshold and the second threshold is determined based on:

computing an F 1 score based on a harmonic mean of a precision value and a recall value, wherein

the precision value represents a relevancy of recommended displayable items to the query, and

the recall value represents a filling rate of displayable items in the webpage.

10. A computer-implemented method, comprising:

receiving, from a computing device, a search request identifying a query and seeking items to be displayed on a webpage of a website to a user;

determining whether the query is a head query, a torso query, or a tail query, based on historical user session data of users of the website, wherein the historical user session data incorporates query traffic data associated with the query of one or more of item impressions, item clicks, items added to an online shopping cart, items purchased in an order, conversions, click-through rates, advertisements viewed, or advertisements clicked;

for each displayable item of a plurality of displayable items associated with the website:

generating a relevance score representing a degree of relevancy between the displayable item and the query;

identifying a product type (PT) for the displayable item;

determining whether a query-PT threshold specific to the query and the PT exists in an editorial database;

responsive to determining that the query-PT threshold exists in the editorial database, selecting the query-PT threshold, wherein the query-PT threshold in the editorial database is pre-determined based on generated labels associated with the query and the PT;

responsive to determining that the query-PT threshold exists outside the editorial database, selecting the query-PT threshold from a model database, wherein the query-PT threshold in the model database is pre-determined based on a machine learning model and historical user engagement data for the query and the PT;

identifying one or more of the plurality of displayable items that are eligible to be recommended in response to the query based at least in part on:

(a) comparing the relevance score to a first threshold when the query is determined to be one of the head query or the torso query,

(b) comparing the relevance score to a second threshold when the query is determined to be the tail query,

(c) in response to selecting the query-PT threshold from the editorial database, comparing the relevance score to the query-PT threshold of the editorial database, and

(d) in response to selecting the query-PT threshold from the model database, comparing the relevance score to the query-PT threshold of the model database;

generating, from the one or more of the plurality of displayable items that are eligible to be recommended, a ranked list of recommended items using an auction mechanism; and

transmitting, to the computing device, the ranked list of recommended items in response to the search request.

11. The computer-implemented method of claim 10 , wherein:

the query is determined to be the head query when a number of user clicks collected responsive to items displayed for the query during a past time period is beyond a first percentile;

the query is determined to be the tail query when the number of user clicks collected responsive to the items displayed for the query during the past time period is below a second percentile that is lower than the first percentile;

the query is determined to be the torso query when the number of user clicks collected responsive to the items displayed for the query during the past time period is below the first percentile and above the second percentile; and

each of the first percentile and the second percentile is determined based on user click data of different queries submitted to the website during the past time period.

12. The computer-implemented method of claim 10 , wherein determining whether the displayable item is eligible to be recommended comprises:

when the query-PT threshold exists in the editorial database,

determining the displayable item is eligible to be recommended in response to the query when the relevance score is beyond the first-query-PT threshold, and

determining the displayable item is ineligible to be recommended in response to the query when the relevance score is not beyond the query-PT threshold.

13. The computer-implemented method of claim 12 , wherein determining whether the displayable item is eligible to be recommended further comprises:

when the query-PT threshold exists in the model database,

determining the displayable item is eligible to be recommended in response to the query when the relevance score is beyond the query-PT threshold, and

determining the displayable item is ineligible to be recommended in response to the query when the relevance score is not beyond the query-PT threshold.

14. The computer-implemented method of claim 12 , wherein determining whether the displayable item is eligible to be recommended further comprises:

when the query-PT threshold exists outside the editorial database and when the query is the tail query,

determining whether a PT level threshold specific to the PT exists in a PT level database, wherein the PT level threshold is pre-determined based on a percentile analysis of a distribution of relevance scores of items in the PT; and

when the PT level threshold exists in the PT level database,

determining the displayable item is eligible to be recommended in response to the query when the relevance score is beyond the PT level threshold, and

determining the displayable item is ineligible to be recommended in response to the query when the relevance score is not beyond the PT level threshold.

15. The computer-implemented method of claim 14 , wherein determining whether the displayable item is eligible to be recommended further comprises:

when the PT level threshold does not exist in the PT level database and when the query is a tail query,

identifying a product category for the displayable item;

determining whether a category level threshold specific to the product category exists in a category level database, wherein the category level threshold is pre-determined based on a percentile analysis of a distribution of relevance scores of items in the product category; and

when the category level threshold exists in the category level database,

determining the displayable item is eligible to be recommended in response to the query when the relevance score is beyond the category level threshold, and

determining the displayable item is ineligible to be recommended in response to the query when the relevance score is not beyond the category level threshold.

16. The computer-implemented method of claim 15 , wherein determining whether the displayable item is eligible to be recommended further comprises:

when the category level threshold does not exist in the category level database and when the query is a tail query,

identifying a service business unit (SBU) for the displayable item;

identifying a SBU level threshold specific to the SBU in a SBU level database, wherein the SBU level threshold is pre-determined based on a percentile analysis of a distribution of relevance scores of items in the SBU;

determining the displayable item is eligible to be recommended in response to the query when the relevance score is beyond the SBU level threshold; and

determining the displayable item is ineligible to be recommended in response to the query when the relevance score is not beyond the SBU level threshold.

17. A non-transitory computer readable medium having instructions stored thereon, wherein the instructions, when executed by at least one processor, cause at least one device to perform operations comprising:

receiving, from a computing device, a search request identifying a query and seeking items to be displayed on a webpage of a website to a user;

determining whether the query is a head query, a torso query, or a tail query, based on historical user session data of users of the website, wherein the historical user session data incorporates query traffic data, associated with the query of one or more of item impressions item clicks, items added to an online shopping cart, items purchased in an order, conversions, click-through rates, advertisements viewed, or advertisements clicked;

for each displayable item of a plurality of displayable items associated with the website:

generating a relevance score representing a degree of relevancy between the displayable item and the query;

identifying a product type (PT) for the displayable item;

determining whether a query-PT threshold specific to the query and the PT exists in an editorial database;

responsive to determining that the query-PT threshold exists in the editorial database, selecting the query-PT threshold, wherein the query-PT threshold in the editorial database is pre-determined based on generated labels associated with the query and the PT;

responsive to determining that the query-PT threshold exists outside the editorial database, selecting the query-PT threshold from a model database, wherein the query-PT threshold in the model database is pre-determined based on a machine learning model and historical user engagement data for the query and the PT;

identifying one or more of the plurality of displayable items that are eligible to be recommended in response to the query based at least in part on:

(a) comparing the relevance score to a first threshold when the query is determined to be one of the head query or the torso query,

(b) comparing the relevance score to a second threshold when the query is determined to be the tail query,

(c) in response to selecting the query-PT threshold from the editorial database, comparing the relevance score to the query-PT threshold of the editorial database, and

(d) in response to selecting the query-PT threshold from the model database, comparing the relevance score to the query-PT threshold of the model database;

generating, from the one or more of the plurality of displayable items that are eligible to be recommended, a ranked list of recommended items using an auction mechanism; and

transmitting, to the computing device, the ranked list of recommended items in response to the search request.

18. The non-transitory computer readable medium of claim 17 , wherein:

the query is determined to be the head query when a number of user clicks collected responsive to items displayed for the query during a past time period is beyond a first percentile;

the query is determined to be the tail query when the number of user clicks collected responsive to the items displayed for the query during the past time period is below a second percentile that is lower than the first percentile;

the query is determined to be the torso query when the number of user clicks collected responsive to the items displayed for the query during the past time period is below the first percentile and above the second percentile; and

each of the first percentile and the second percentile is determined based on user click data of different queries submitted to the website during the past time period.

19. The non-transitory computer readable medium of claim 17 , wherein:

the relevance score is generated by applying at least one trained machine learning model to the displayable item and the query.

20. The non-transitory computer readable medium of claim 17 , wherein at least one of the first threshold and the second threshold is determined based on:

computing an F 1 score based on a harmonic mean of a precision value and a recall value, wherein the precision value represents a relevancy of recommended displayable items to the query, and the recall value represents a filling rate of displayable items in the webpage.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 7, 2024
From: YAN, FANGLIDA; SAHA, TANAY KUMAR; WEN, MUSEN
To: WALMART APOLLO, LLC
Reel/Frame 069188/0422 →
Continuity (1)
Related Publication 20240257182A1 · Aug 1, 2024
References Cited (48)
US 7698331B2 · Carson, Jr. et al. · 2010 [cited by applicant]
US 8078617B1 · Neveitt et al. · 2011 [cited by applicant]
US 8352499B2 · Bharat et al. · 2013 [cited by applicant]
US 8671093B2 · Chapelle et al. · 2014 [cited by applicant]
US 9367606B1 · Lu et al. · 2016 [cited by applicant]
US 9817902B2 · Rezaei · 2017 [cited by applicant]
US 9830353B1 · Dalmia · 2017 [cited by examiner]
US 10296956B2 · Shi et al. · 2019 [cited by applicant]
US 10409821B2 · Kulkarni et al. · 2019 [cited by applicant]
US 10642905B2 · Gusev et al. · 2020 [cited by applicant]
US 11562292B2 · Safronov et al. · 2023 [cited by applicant]
US 20040093327A1 · Anderson et al. · 2004 [cited by applicant]
US 20070192300A1 · Reuther et al. · 2007 [cited by applicant]
US 20080104061A1 · Rezaei · 2008 [cited by applicant]
US 20090070310A1 · Srivastava et al. · 2009 [cited by applicant]
US 20090150214A1 · Mohan · 2009 [cited by examiner]
US 20090265290A1 · Ciaramita et al. · 2009 [cited by applicant]
US 20100076949A1 · Zoeter et al. · 2010 [cited by applicant]
US 20100161605A1 · Gabrilovich · 2010 [cited by examiner]
US 20100174710A1 · Carson, Jr. et al. · 2010 [cited by applicant]
US 20100198857A1 · Metzler · 2010 [cited by examiner]
US 20100250335A1 · Cetin et al. · 2010 [cited by applicant]
US 20110270672A1 · Hillard et al. · 2011 [cited by applicant]
US 20120166277A1 · Gnanamani · 2012 [cited by examiner]
US 20130226690A1 · Gross · 2013 [cited by applicant]
US 20140122243A1 · Ramer et al. · 2014 [cited by applicant]
US 20140180825A1 · Ramer et al. · 2014 [cited by applicant]
US 20150186938A1 · Zhang · 2015 [cited by examiner]
US 20160019588A1 · Wagg et al. · 2016 [cited by applicant]
US 20160078480A1 · Gross · 2016 [cited by applicant]
US 20160162574A1 · Gorodilov · 2016 [cited by applicant]
US 20160217180A1 · Rais-Ghasem et al. · 2016 [cited by applicant]
US 20160335678A1 · Kota · 2016 [cited by examiner]
US 20180075150A1 · Rezaei · 2018 [cited by applicant]
US 20180095967A1 · Kota · 2018 [cited by applicant]
US 20190087504A1 · Lu et al. · 2019 [cited by applicant]
US 20190205474A1 · Pawar et al. · 2019 [cited by applicant]
US 20200210891A1 · Safronov et al. · 2020 [cited by applicant]
US 20210349954A1 · Renders · 2021 [cited by examiner]
US 20220350811A1 · Reuther et al. · 2022 [cited by applicant]
US 20240112281A1 · Liang et al. · 2024 [cited by applicant]
KR 100932318B1 · 2009 [cited by applicant]
WO 2022039749A1 · 2022 [cited by applicant]
WO WO2022064265A1 · 2022 [cited by examiner]
Google Ads, “Ad Rank,” https://support.google.com/google-ads/answer/1752122?hl=en, Downloaded from Internet Feb. 1, 2023, 3 pages. [cited by applicant]
Microsoft Bing Blogs, “Intelligent Product Search and Recommendations for Fashion Retail,” https://blogs.bing.com/search-quality-insights/2019-01/Intelligent-Product-Search-and-Recommendations-for-Fashion-Retail, Jan. 3… [cited by applicant]
D. Charles et al., “Multi-Score Position Auctions,” Proceedings of the Ninth ACM International Conference on Web Search and Data Mining, Feb. 22-25, 2016, 10 pages. [cited by applicant]
A. Maes, “Why Your Sponsored Product Ads are ‘Ineligible’,” Sep. 26, 2019, 12 pages. [cited by applicant]