Smart Pacing for Effective Online Ad Campaign Optimization Jian Xu, - - PowerPoint PPT Presentation

smart pacing for effective online ad campaign optimization
SMART_READER_LITE
LIVE PREVIEW

Smart Pacing for Effective Online Ad Campaign Optimization Jian Xu, - - PowerPoint PPT Presentation

Smart Pacing for Effective Online Ad Campaign Optimization Jian Xu, Kuang-chih Lee, Wentong Li, Hang Qi, and Quan Lu Yahoo Inc. August 26, 2015 Jian Xu et al. (Yahoo Inc.) Smart Pacing August 26, 2015 1 / 17 Overview Background 1 Pacing


slide-1
SLIDE 1

Smart Pacing for Effective Online Ad Campaign Optimization

Jian Xu, Kuang-chih Lee, Wentong Li, Hang Qi, and Quan Lu

Yahoo Inc.

August 26, 2015

Jian Xu et al. (Yahoo Inc.) Smart Pacing August 26, 2015 1 / 17

slide-2
SLIDE 2

Overview

1

Background Pacing as a campaign optimization problem

2

Smart Pacing Motivation Our approach - models and algorithms

3

Evaluations Real ad campaigns Simulations

4

System Implementation

Jian Xu et al. (Yahoo Inc.) Smart Pacing August 26, 2015 2 / 17

slide-3
SLIDE 3

Background

Budget pacing helps advertisers to define and execute how their budget is spent over the time. Why budget pacing? Reach a wider range of audience, Build synergy with other marketing campaigns, Avoid premature campaign stop, overspending, and/or spending fluctuations. Budget pacing plan examples:

  • (a) Even pacing
  • (b) Traffic-based pacing

Jian Xu et al. (Yahoo Inc.) Smart Pacing August 26, 2015 3 / 17

slide-4
SLIDE 4

Background (cont.)

Two streams of strategies for budget pacing: Bid modification: bid price is altered to influence bid win-rate so that budget spending can be controlled, Probabilistic throttling: ad request is bid with some probability (pacing rate).

  • (c) Bid modification
  • (d) Probabilistic throttling

Jian Xu et al. (Yahoo Inc.) Smart Pacing August 26, 2015 4 / 17

slide-5
SLIDE 5

Background: Pacing as a campaign optimization problem

Campaign optimization objectives: Reach the delivery and performance goals

Branding campaigns: spend out budget to reach an extensive audience. In the meanwhile, make campaign performance (e.g., in terms of eCPC

  • r eCPA) as good as possible;

Performance campaigns: meet performance goal (e.g., eCPC no more than $5). In the meanwhile, spend as much budget as possible.

Execute the budget pacing plan Reduce creative serving cost

Question

Can we achieve campaign optimization through smart pacing control?

Jian Xu et al. (Yahoo Inc.) Smart Pacing August 26, 2015 5 / 17

slide-6
SLIDE 6

Background: Pacing as a campaign optimization problem (cont.)

Problem def. 1

Smart pacing for ad campaigns without specific performance goals: determining the values of ri so that min

ri

P s.t. C = B, Ω(C, B) ≤ ǫ (1)

Problem def. 2

Smart pacing for ad campaigns with specific performance goals: determining the values of ri so that min

ri

Ω(C, B) s.t. P ≤ G, B − C ≤ ε (2)

Notation Meaning B total budget B = (B(1), ..., B(K)) pacing plan Reqi i-th ad request ri point pacing rate on Reqi si ∼ Bern(ri) indicator of participating auction wi indicator of winning Reqi ci cost to serve ad to Reqi pi response probability qi ∼ Bern(pi) indicator of user response (click

  • r conversion)

C =

i siwici

total cost of the ad campaign P = C/

i siwiqi

performance of the ad campaign (eCPC or eCPA) C = (C (1), ..., C (K)) actual spending pattern Ω(C, B) penalty of deviating from pacing plan ǫ tolerance level of the penalty ε tolerance level of remaining budget

Table: Notations in problem formulation.

Jian Xu et al. (Yahoo Inc.) Smart Pacing August 26, 2015 6 / 17

slide-7
SLIDE 7

Smart Pacing: Motivation

Directly solving for ri is difficult and computationally expensive. Observations on prevalent campaign pricing setups: CPM campaigns

Branding: optimize performance as long as budget spending aligns the plan → prefer high responding ad requests; Performance: optimize spending pattern as long as performance goal is met → prefer high responding ad requests.

CPC/CPA campaigns

Have implicit performance goals. If prediction is perfect, creative serving cost is a concern → prefer high responding ad requests.

dCPM campaigns

Have explicit performance goals. If prediction is perfect, creative serving cost is a concern → prefer high responding ad requests.

Jian Xu et al. (Yahoo Inc.) Smart Pacing August 26, 2015 7 / 17

slide-8
SLIDE 8

Smart Pacing: Our approach - models and algorithms

Learn from offline serving logs a response prediction model to estimate pi = Pr(respond|Reqi, Ad); Reduce the solution space by grouping similarly responding ad

  • requests. Requests in the same group share the same group pacing

rate; Develop a control-based method to learn from online feedback data and dynamically adjust the group pacing rates to approximate the

  • ptimal solution.

Jian Xu et al. (Yahoo Inc.) Smart Pacing August 26, 2015 8 / 17

slide-9
SLIDE 9

Smart Pacing: Our approach - models and algorithms (cont.)

A picture is worth a thousand words ...

1.0 0.6 1.0 0.1

0.001 0.001 0.001 0.001

1.0 1.0 0.8 1.0

0.001 0.2

Layer 3 Layer 2 Layer 1 Layer 0 Ad request volume Time slot Budget pacing plan Actual spending Time slot

High responding Low responding

0.001 0.001

Slow down Speed up

Jian Xu et al. (Yahoo Inc.) Smart Pacing August 26, 2015 9 / 17

slide-10
SLIDE 10

Evaluations: Real ad campaigns

Evaluation setup: Online blind A/B test with 50%-50% traffic and budget split; Baseline: probabilistic throttling with global pacing rate (equivalent to one-layer SmartPacing); SmartPacing: 8 layers of ad request groups. Pacing plan: even pacing.

5 10 15 20 25 30 35 40 10 20 30 40 50 60 70 80 90 0.1 0.2 0.3 0.4 0.5 0.6 0.7 Spending ($) eCPC ($) time slot Spending Baseline Spending SmartPacing eCPC Baseline eCPC SmartPacing

2 4 6 8 10 12 14 10 20 30 40 50 60 70 80 90 0.2 0.4 0.6 0.8 1 1.2 1.4 Spending ($) eCPC ($) time slot Spending Baseline Spending SmartPacing eCPC Baseline eCPC SmartPacing 5 10 15 20 25 30 35 40 45 50 10 20 30 40 50 60 70 80 90 2 4 6 8 10 12 Spending ($) eCPC ($) time slot Spending Baseline Spending SmartPacing eCPC Baseline eCPC SmartPacing

Jian Xu et al. (Yahoo Inc.) Smart Pacing August 26, 2015 10 / 17

slide-11
SLIDE 11

Evaluations: Simulations (w/o eCPC goal)

5 10 15 20 25 30 10 20 30 40 50 60 70 80 90 20000 40000 60000 80000 100000 120000 140000 160000 Spending ($) Traffic time slot traffic baseline # layers:2 # layers:4 # layers:8 # layers:256

Spendings over time with different # of layers (budget: $2000)

10 20 30 40 50 60 70 10 20 30 40 50 60 70 80 90 20000 40000 60000 80000 100000 120000 140000 160000 Spending ($) Traffic time slot traffic budget:$1000 budget:$2000 budget:$3000 budget:$4000 budget:$5000

Spendings over time with different budget (# layers: 8)

0.5 1 1.5 2 2.5 3 10 20 30 40 50 60 70 80 90 20000 40000 60000 80000 100000 120000 140000 160000 eCPC ($) Traffic time slot traffic baseline # layers:2 # layers:4 # layers:8 # layers:256

eCPC over time with different # of layers (budget: $2000)

0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 10 20 30 40 50 60 70 80 90 20000 40000 60000 80000 100000 120000 140000 160000 eCPC ($) Traffic time slot traffic budget:$1000 budget:$2000 budget:$3000 budget:$4000 budget:$5000

eCPC over time with different budget (# of layers: 8) Jian Xu et al. (Yahoo Inc.) Smart Pacing August 26, 2015 11 / 17

slide-12
SLIDE 12

Evaluations: Simulations (w eCPC goal)

5 10 15 20 25 30 10 20 30 40 50 60 70 80 90 20000 40000 60000 80000 100000 120000 140000 160000 Spending ($) Traffic time slot traffic baseline # layers:2 # layers:4 # layers:8 # layers:256

Spendings over time with different # of layers (budget: $2000)

10 20 30 40 50 60 70 80 10 20 30 40 50 60 70 80 90 20000 40000 60000 80000 100000 120000 140000 160000 Spending ($) Traffic time slot traffic budget:$1000 budget:$2000 budget:$3000 budget:$4000 budget:$5000

Spendings over time with different budget (# layers: 8)

0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2 10 20 30 40 50 60 70 80 90 20000 40000 60000 80000 100000 120000 140000 160000 eCPC ($) Traffic time slot traffic baseline # layers:2 # layers:4 # layers:8 # layers:256

eCPC over time with different # of layers (budget: $2000)

0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 10 20 30 40 50 60 70 80 90 20000 40000 60000 80000 100000 120000 140000 160000 eCPC ($) Traffic time slot traffic budget:$1000 budget:$2000 budget:$3000 budget:$4000 budget:$5000

eCPC over time with different budget (# of layers: 8) Jian Xu et al. (Yahoo Inc.) Smart Pacing August 26, 2015 12 / 17

slide-13
SLIDE 13

Evaluations: Simulations (compare to state-of-the-art)

Comparison with the pacing algorithm proposed by Agarwal et al. [Agarwal 2014]. Their approach: conventional controller, not considering performance; Our approach: adaptive controller, considering performance.

500 1000 1500 2000 200 400 600 800 1000 1200 1400 1 2 3 4 5 6 7 Cumulative spending ($) eCPC ($) time slot Allocation Spend SmartPacing Spend Agarwal et al eCPC SmartPacing eCPC Agarwal et al

Jian Xu et al. (Yahoo Inc.) Smart Pacing August 26, 2015 13 / 17

slide-14
SLIDE 14

Evaluations: Simulations (compare to state-of-the-art)

Comparison with the pacing algorithm proposed by Agarwal et al. [Agarwal 2014]. Their approach: conventional controller, not considering performance; Our approach: adaptive controller, considering performance.

500 1000 1500 2000 200 400 600 800 1000 1200 1400 1 2 3 4 5 6 7 Cumulative spending ($) eCPC ($) time slot Allocation Spend SmartPacing Spend Agarwal et al eCPC SmartPacing eCPC Agarwal et al

Jian Xu et al. (Yahoo Inc.) Smart Pacing August 26, 2015 14 / 17

slide-15
SLIDE 15

System Implementation

Besides the common implementation considerations of a large scale ad serving system, we focus on two components to support smart pacing: Real-time feedback of layered statistics

Use message queue to rapidly send delivery message to control server; Use remote procedure call to send pacing rate and quick stop message to serving boxes.

In-memory data sources

Use snapshot + message queue to avoid data loss; Use aggregation to reduce memory usage.

  • Jian Xu et al. (Yahoo Inc.)

Smart Pacing August 26, 2015 15 / 17

slide-16
SLIDE 16

References

  • D. Agarwal, S. Ghosh, K. Wei, and S. You

Budget pacing for targeted online advertisements at Linkedin Proceedings of the 20th ACM SIGKDD, 2014 K.-C. Lee, A. Jalali, and A. Dasdan Real time bid optimization with smooth budget delivery in online advertising The Seventh International Workshop on Data Mining for Online Advertising, 2013.

  • A. Bhalgat, J. Feldman, and V. Mirrokni

Online allocation of display ads with smooth delivery Proceedings of the 18th ACM SIGKDD, 2012.

  • Z. Abrams, O. Mendelevitch, and J. Tomlin

Optimal delivery of sponsored search advertisements subject to budget constraints Proceedings of the 8th ACM conference on Electronic Commerce, 2007.

  • C. Borgs, J. Chayes, N. Immorlica, K. Jain, O. Etesami, and M. Mahdian

Dynamics of bid optimization in online advertisement auctions Proceedings of the 16th international conference on World Wide Web, 2007.

Jian Xu et al. (Yahoo Inc.) Smart Pacing August 26, 2015 16 / 17

slide-17
SLIDE 17

Thank you!

Jian Xu et al. (Yahoo Inc.) Smart Pacing August 26, 2015 17 / 17