US 11,861,538 B1
Optimization techniques for content presentation strategies
Patrick Ye, Seattle, WA (US); Jim C Huang, Seattle, WA (US); Xuan Wu, Bothell, WA (US); and Noor-E-Gagan Singh, Redmond, WA (US)
Assigned to Amazon Technologies, Inc., Seattle, WA (US)
Filed by Amazon Technologies, Inc., Seattle, WA (US)
Filed on Sep. 23, 2020, as Appl. No. 17/030,135.
Int. Cl. G06Q 10/0637 (2023.01); G06Q 10/04 (2023.01); G06Q 10/0639 (2023.01); G06Q 30/0251 (2023.01); G06Q 30/0204 (2023.01)
CPC G06Q 10/0637 (2013.01) [G06Q 10/04 (2013.01); G06Q 10/0639 (2013.01); G06Q 30/0205 (2013.01); G06Q 30/0269 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A system, comprising:
one or more computing devices comprising respective processors and memory that implement a machine learning system, wherein the one or more computing devices include instructions that upon execution on or across the one or more computing devices cause the machine learning system to:
obtain, via one or more programmatic interfaces, values of a plurality of attributes of a first objective associated with a first offering set comprising one or more network-accessible offerings of an organization, wherein the values indicate at least (a) one or more types of desired user actions with respect to one or more web sites of the organization, (b) one or more channels for presentation of content associated with the first objective, and (c) one or more offering set-specific metrics associated the one or more types of desired user actions;
provide a machine-readable representation of the first objective to one or more registered strategy generators;
obtain, from the one or more registered strategy generators, a plurality of user selection strategies for the first objective, including at least one user selection strategy generated using a machine learning algorithm to which the machine-readable representation is provided as input, wherein a user selection strategy of the plurality of user selection strategies assigns respective selection probabilities of receiving at least some content associated with the first offering set to individual users of a user population;
identify, based at least in part on an analysis of a repository of records of one or more respective objectives associated with one or more previous offering sets, an initial subset of candidate user selection strategies from the plurality of user selection strategies;
provision one or more compute resources to perform a machine learning process with respect to a first sub-sample of the user population;
execute the machine learning process using the one or more compute resources, wherein the execution of the machine learning process includes a plurality of optimization iterations using at least the initial subset of candidate user selection strategies, wherein an individual optimization iteration includes to:
compute respective aggregated selection probabilities for individual users of the first sub-sample based at least in part on (a) per-strategy selection probabilities for the individual users, obtained from individual ones of the candidate user selection strategies and (b) respective weights assigned to the candidate user selection strategies;
send, to one or more content presentation computers over one or more networks, based at least in art on the aggregated selection probabilities, one or more content presentation requests of at least some content associated with the first offering set, wherein the content presentation computers are configured to present content according to the one or more content presentation requests to at least some users of the first sub-sample via a channel of the one or more channels;
receive, from the one or more contention presentation computers and over the one or more networks, one or more feedback metrics associated with presentation of the content over a selected time interval, including (a) at least one offering set-specific metric of the one or more offering set-specific metrics and (b) at least one resource usage metric associated with the presentation of the content; and
update at least some weights of the respective weights, based at least in part on (a) analysis of the one or more feedback metrics and (b) an exploration-exploitation tradeoff parameter that controls the machine learning process;
terminate the machine learning process when an optimization termination criterion of the machine learning process is met, wherein the termination criterion is based at least in part on a specified amount of compute resources consumed by the machine learning process;
cause, in accordance with a set of weights updated by the machine learning process, at least some content associated with the first offering set to be presented to at least some users of the user population which were not in the first sub-sample; and
add one or more records of the first objective to the repository of records, wherein the one or more records are used to select candidate user selection strategies for later offering sets and reduce time and resources used to optimize presentation of the later offering sets.