Smart Pacing for Effective Online Ad Campaign Optimization · 2016-04-23 · Smart Pacing for E...

17
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

Transcript of Smart Pacing for Effective Online Ad Campaign Optimization · 2016-04-23 · Smart Pacing for E...

Page 1: Smart Pacing for Effective Online Ad Campaign Optimization · 2016-04-23 · Smart Pacing for E ective Online Ad Campaign Optimization Jian Xu, Kuang-chih Lee, Wentong Li, Hang Qi,

Smart Pacing for Effective Online Ad CampaignOptimization

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

Page 2: Smart Pacing for Effective Online Ad Campaign Optimization · 2016-04-23 · Smart Pacing for E ective Online Ad Campaign Optimization Jian Xu, Kuang-chih Lee, Wentong Li, Hang Qi,

Overview

1 BackgroundPacing as a campaign optimization problem

2 Smart PacingMotivationOur approach - models and algorithms

3 EvaluationsReal ad campaignsSimulations

4 System Implementation

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

Page 3: Smart Pacing for Effective Online Ad Campaign Optimization · 2016-04-23 · Smart Pacing for E ective Online Ad Campaign Optimization Jian Xu, Kuang-chih Lee, Wentong Li, Hang Qi,

Background

Budget pacing helps advertisers to define and execute how their budget isspent 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 spendingfluctuations.

Budget pacing plan examples:

%XGJHW6

SHQGLQJ

+RXURI'D\

%XGJHW6

SHQGLQJ

+RXURI'D\

(a) Even pacing

%XGJHW6

SHQGLQJ

+RXURI'D\

%XGJHW6

SHQGLQJ

+RXURI'D\

(b) Traffic-based pacing

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

Page 4: Smart Pacing for Effective Online Ad Campaign Optimization · 2016-04-23 · Smart Pacing for E ective Online Ad Campaign Optimization Jian Xu, Kuang-chih Lee, Wentong Li, Hang Qi,

Background (cont.)

Two streams of strategies for budget pacing:

Bid modification: bid price is altered to influence bid win-rate so thatbudget spending can be controlled,

Probabilistic throttling: ad request is bid with some probability(pacing rate).

%XGJHW6SHQGLQJ

5HTXHVW $G

5HVSRQVH5DWH

%LG

3DFLQJ5DWH

:LQ5DWH

%XGJHW6SHQGLQJ

&DPSDLJQ6HWXS

5HTXHVW $G

5HVSRQVH5DWH

%LG

:LQ5DWH

&DPSDLJQ6HWXS

IHHGEDFN IHHGEDFN

(c) Bid modification

%XGJHW6SHQGLQJ

5HTXHVW $G

5HVSRQVH5DWH

%LG

3DFLQJ5DWH

:LQ5DWH

%XGJHW6SHQGLQJ

&DPSDLJQ6HWXS

5HTXHVW $G

5HVSRQVH5DWH

%LG

:LQ5DWH

&DPSDLJQ6HWXS

IHHGEDFN IHHGEDFN

(d) Probabilistic throttling

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

Page 5: Smart Pacing for Effective Online Ad Campaign Optimization · 2016-04-23 · Smart Pacing for E ective Online Ad Campaign Optimization Jian Xu, Kuang-chih Lee, Wentong Li, Hang Qi,

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 eCPCor eCPA) as good as possible;Performance campaigns: meet performance goal (e.g., eCPC no morethan $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

Page 6: Smart Pacing for Effective Online Ad Campaign Optimization · 2016-04-23 · Smart Pacing for E ective Online Ad Campaign Optimization Jian Xu, Kuang-chih Lee, Wentong Li, Hang Qi,

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

Problem def. 1

Smart pacing for ad campaigns without specificperformance goals: determining the values of riso that

minri

P

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

Problem def. 2

Smart pacing for ad campaigns with specificperformance goals: determining the values of riso that

minri

Ω(C,B)

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

Notation MeaningB total budget

B = (B(1), ...,B(K)) pacing planReqi i-th ad requestri point pacing rate on Reqisi ∼ Bern(ri ) indicator of participating auctionwi indicator of winning Reqici cost to serve ad to Reqipi response probabilityqi ∼ Bern(pi ) indicator of user response (click

or 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

Page 7: Smart Pacing for Effective Online Ad Campaign Optimization · 2016-04-23 · Smart Pacing for E ective Online Ad Campaign Optimization Jian Xu, Kuang-chih Lee, Wentong Li, Hang Qi,

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 theplan → prefer high responding ad requests;Performance: optimize spending pattern as long as performance goal ismet → prefer high responding ad requests.

CPC/CPA campaigns

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

dCPM campaigns

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

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

Page 8: Smart Pacing for Effective Online Ad Campaign Optimization · 2016-04-23 · Smart Pacing for E ective Online Ad Campaign Optimization Jian Xu, Kuang-chih Lee, Wentong Li, Hang Qi,

Smart Pacing: Our approach - models and algorithms

Learn from offline serving logs a response prediction model toestimate pi = Pr(respond |Reqi ,Ad);

Reduce the solution space by grouping similarly responding adrequests. Requests in the same group share the same group pacingrate;

Develop a control-based method to learn from online feedback dataand dynamically adjust the group pacing rates to approximate theoptimal solution.

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

Page 9: Smart Pacing for Effective Online Ad Campaign Optimization · 2016-04-23 · Smart Pacing for E ective Online Ad Campaign Optimization Jian Xu, Kuang-chih Lee, Wentong Li, Hang Qi,

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

Page 10: Smart Pacing for Effective Online Ad Campaign Optimization · 2016-04-23 · Smart Pacing for E ective Online Ad Campaign Optimization Jian Xu, Kuang-chih Lee, Wentong Li, Hang Qi,

Evaluations: Real ad campaigns

Evaluation setup:

Online blind A/B test with50%-50% traffic and budgetsplit;

Baseline: probabilistic throttlingwith global pacing rate(equivalent to one-layerSmartPacing);

SmartPacing: 8 layers of adrequest groups.

Pacing plan: even pacing.

0

5

10

15

20

25

30

35

40

10 20 30 40 50 60 70 80 90 0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

Sp

en

din

g (

$)

eC

PC

($

)

time slot

Spending BaselineSpending SmartPacing

eCPC BaselineeCPC SmartPacing

0

2

4

6

8

10

12

14

10 20 30 40 50 60 70 80 90 0

0.2

0.4

0.6

0.8

1

1.2

1.4

Sp

en

din

g (

$)

eC

PC

($

)

time slot

Spending BaselineSpending SmartPacing

eCPC BaselineeCPC SmartPacing

0

5

10

15

20

25

30

35

40

45

50

10 20 30 40 50 60 70 80 90 0

2

4

6

8

10

12

Sp

en

din

g (

$)

eC

PC

($

)

time slot

Spending BaselineSpending SmartPacing

eCPC BaselineeCPC SmartPacing

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

Page 11: Smart Pacing for Effective Online Ad Campaign Optimization · 2016-04-23 · Smart Pacing for E ective Online Ad Campaign Optimization Jian Xu, Kuang-chih Lee, Wentong Li, Hang Qi,

Evaluations: Simulations (w/o eCPC goal)

0

5

10

15

20

25

30

0 10 20 30 40 50 60 70 80 90 20000

40000

60000

80000

100000

120000

140000

160000

Spendin

g (

$)

Tra

ffic

time slot

trafficbaseline

# layers:2# layers:4

# layers:8# layers:256

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

0

10

20

30

40

50

60

70

0 10 20 30 40 50 60 70 80 90 20000

40000

60000

80000

100000

120000

140000

160000

Spendin

g (

$)

Tra

ffic

time slot

trafficbudget:$1000

budget:$2000budget:$3000

budget:$4000budget:$5000

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

0

0.5

1

1.5

2

2.5

3

0 10 20 30 40 50 60 70 80 90 20000

40000

60000

80000

100000

120000

140000

160000

eC

PC

($)

Tra

ffic

time slot

trafficbaseline

# 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

0 10 20 30 40 50 60 70 80 90 20000

40000

60000

80000

100000

120000

140000

160000

eC

PC

($)

Tra

ffic

time slot

trafficbudget:$1000

budget:$2000budget:$3000

budget:$4000budget:$5000

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

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

Page 12: Smart Pacing for Effective Online Ad Campaign Optimization · 2016-04-23 · Smart Pacing for E ective Online Ad Campaign Optimization Jian Xu, Kuang-chih Lee, Wentong Li, Hang Qi,

Evaluations: Simulations (w eCPC goal)

0

5

10

15

20

25

30

0 10 20 30 40 50 60 70 80 90 20000

40000

60000

80000

100000

120000

140000

160000

Spendin

g (

$)

Tra

ffic

time slot

trafficbaseline

# layers:2# layers:4

# layers:8# layers:256

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

0

10

20

30

40

50

60

70

80

0 10 20 30 40 50 60 70 80 90 20000

40000

60000

80000

100000

120000

140000

160000

Spendin

g (

$)

Tra

ffic

time slot

trafficbudget:$1000

budget:$2000budget:$3000

budget:$4000budget:$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

0 10 20 30 40 50 60 70 80 90 20000

40000

60000

80000

100000

120000

140000

160000

eC

PC

($)

Tra

ffic

time slot

trafficbaseline

# 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

0 10 20 30 40 50 60 70 80 90 20000

40000

60000

80000

100000

120000

140000

160000

eC

PC

($)

Tra

ffic

time slot

trafficbudget:$1000

budget:$2000budget:$3000

budget:$4000budget:$5000

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

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

Page 13: Smart Pacing for Effective Online Ad Campaign Optimization · 2016-04-23 · Smart Pacing for E ective Online Ad Campaign Optimization Jian Xu, Kuang-chih Lee, Wentong Li, Hang Qi,

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.

0

500

1000

1500

2000

0 200 400 600 800 1000 1200 1400 0

1

2

3

4

5

6

7

Cum

ula

tive s

pendin

g (

$)

eC

PC

($)

time slot

AllocationSpend SmartPacing

Spend Agarwal et aleCPC SmartPacing

eCPC Agarwal et al

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

Page 14: Smart Pacing for Effective Online Ad Campaign Optimization · 2016-04-23 · Smart Pacing for E ective Online Ad Campaign Optimization Jian Xu, Kuang-chih Lee, Wentong Li, Hang Qi,

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.

0

500

1000

1500

2000

0 200 400 600 800 1000 1200 1400 0

1

2

3

4

5

6

7

Cu

mu

lativ

e s

pe

nd

ing

($

)

eC

PC

($

)

time slot

AllocationSpend SmartPacing

Spend Agarwal et aleCPC SmartPacing

eCPC Agarwal et al

0

500

1000

1500

2000

0 200 400 600 800 1000 1200 1400 0

1

2

3

4

5

6

7

Cu

mu

lativ

e s

pe

nd

ing

($

)

eC

PC

($

)

time slot

AllocationSpend SmartPacing

Spend Agarwal et aleCPC SmartPacing

eCPC Agarwal et al

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

Page 15: Smart Pacing for Effective Online Ad Campaign Optimization · 2016-04-23 · Smart Pacing for E ective Online Ad Campaign Optimization Jian Xu, Kuang-chih Lee, Wentong Li, Hang Qi,

System Implementation

Besides the common implementation considerations of a large scale adserving system, we focus on two components to support smart pacing:

Real-time feedback of layered statisticsUse message queue to rapidly send delivery message to control server;Use remote procedure call to send pacing rate and quick stop messageto serving boxes.

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

,PSUHVVLRQVHUYLQJER[

,PSUHVVLRQVHUYLQJER[

,PSUHVVLRQVHUYLQJER[

,QPHPRU\GDWDVRXUFH

&RQWUROOHU

$GUHTXHVWELGGHU

$GUHTXHVWELGGHU

$GUHTXHVWELGGHU

'LVWULEXWHGPHVVDJHTXHXH

3XVK 3XOO 53&

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

Page 16: Smart Pacing for Effective Online Ad Campaign Optimization · 2016-04-23 · Smart Pacing for E ective Online Ad Campaign Optimization Jian Xu, Kuang-chih Lee, Wentong Li, Hang Qi,

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

Page 17: Smart Pacing for Effective Online Ad Campaign Optimization · 2016-04-23 · Smart Pacing for E ective Online Ad Campaign Optimization Jian Xu, Kuang-chih Lee, Wentong Li, Hang Qi,

Thank you!

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