SlideShare una empresa de Scribd logo
1 de 54
Descargar para leer sin conexión
Online Algorithms
• Classic model of algorithms
– We get to see the entire input, then compute some
function of it
– In this context, “offline algorithm”
• Online Algorithms
– We get to see the input one piece at a time, and need
to make irrevocable decisions along the way
– Similar to the data stream model
Example: Bipartite Matching
Nodes: Boys and Girls; Edges: Compatible Pairs
Goal: Match as many compatible pairs as possible
Example: Bipartite Matching
Example: Bipartite Matching
Perfect matching... all the vertices of graph are matched
Maximum Matching... a matching that contains the longest possible number of matches
Matching Algorithm
• Problem: Find a maximum matching for a
given bipartite graph
– A perfect one if it exists
• There is a polynomial – time offline algorithm
based on augmenting path (Hopcroft & Karp
1973)
Online Graph Matching Problem
• Initially, we are given the sets boys and girls
• In each round, one girl’s choice are revealed
– That is, girl’s edges are revealed
• At that time, we have to decide either:
– Pair the girl with a boy
– Do not pair the girl with any boy
• Example of application:
Assigning tasks to servers
Online Graph Matching: Example
Online Graph Matching: Example
Online Graph Matching: Example
Online Graph Matching: Example
Online Graph Matching: Example
Online Graph Matching: Example
Online Graph Matching: Example
Online Graph Matching: Example
Greedy Algorithm
• Greedy algorithm for the online graph
matching problem:
– Pair the new girl with any eligible boy
• If there is none, do not pair girl
• How good is the algorithm?
Competitive Ratio
• For input I, suppose greedy produces
matching 𝑴 𝒈𝒓𝒆𝒆𝒅𝒚 while an optimal matching
is 𝑴 𝒐𝒑𝒕
Competitive ratio=
𝒎𝒊𝒏 𝑎𝑙𝑙 𝑝𝑜𝑠𝑠𝑖𝑏𝑙𝑒 𝑖𝑛𝑝𝑢𝑡𝑠 𝐼(| 𝑴 𝒈𝒓𝒆𝒆𝒅𝒚|/ |𝑴 𝒐𝒑𝒕|)
Analyzing the Greedy Algorithm
• Suppose 𝑴 𝒈𝒓𝒆𝒆𝒅𝒚 ≠ 𝑴 𝒐𝒑𝒕
• Consider the set G of girls
matched 𝑴 𝒐𝒑𝒕 but not in 𝑴 𝒈𝒓𝒆𝒆𝒅𝒚
• (1) |𝑴 𝒐𝒑𝒕| ≤ |𝑴 𝒈𝒓𝒆𝒆𝒅𝒚|+|G|
• Every boy B adjacent to girls in G
is already matched in 𝑴 𝒈𝒓𝒆𝒆𝒅𝒚
• (2) |𝑴 𝒈𝒓𝒆𝒆𝒅𝒚|≥ |B|
• Optimal matches all the girls in G to boys in B
• (3) |G|≤|B|
Analyzing the Greedy Algorithm
Combining (2) and (3):
• (4) |G|≤|B|≤ |𝑴 𝒈𝒓𝒆𝒆𝒅𝒚|
Combining (1) and (4):
|𝑴 𝒐𝒑𝒕| ≤ |𝑴 𝒈𝒓𝒆𝒆𝒅𝒚|+|𝑴 𝒈𝒓𝒆𝒆𝒅𝒚|
|𝑴 𝒐𝒑𝒕| ≤ 2|𝑴 𝒈𝒓𝒆𝒆𝒅𝒚|
|𝑴 𝒈𝒓𝒆𝒆𝒅𝒚|/ |𝑴 𝒐𝒑𝒕|≥1/2
History of Web Advertising
• Banner ads (1995-2001)
– Initial form of web advertising
– Popular websites charged X$
for every 1000 “impressions”
of the add
• Called “CPM” rate (cost per thousand impressions)
• Modeled similar to TV, magazine ads
– From untargeted to demographically targeted
– Low click-through rates
• Low ROI for advertisers
Performance-based Advertising
• Introduced by Overture around 2000
– Advertisers bid on search keywords
– When someone searches for that keyword, the
highest bidder’s ad is shown
– Advertiser is charged only if the ad is clicked on
• Similar model adopted by Google with some
changes around 2002
– Called Adwords
Algorithmic Challenges
• Performance – based advertising works
– Multi-billion-dollar industry
• What ads to show for a given query?
– The AdWords Problem Mining of Massive Datasets
• If I am an advertiser, which search terms should I
bid on and how much should I bid?
– (It’s not our focus)
AdWords Problem
• A stream of queries arrives at the search
engine: 𝑞1, 𝑞2, …
• Several advertisers bid on each query
• When query 𝑞𝑖 arrives, search engine must
pick a subset of advertisers whose ads are
shown
• Goal: Maximize search engine’s revenues
• Clearly we need an online algorithm!
Expected Revenue
Expected Revenue
The AdWords Innovation
Instead of sorting advertisers by bid, sort by expected revenue
Limitations of Simple Algorithm
• CTR of an ad is unknown
• Advertisers have limited budgets and bid on
multiple ads.
Future Work
• Estimation of CTR
• Algorithm to solve limited budgets problem
(Balance Algorithm)
Recall…
• Greedy algorithm for the online graph
matching problem
• Competitive Ratio
• History of Web Advertising
• Performance-based Advertising
• The AdWords Innovation
• Click Through Rate (CTR)
• Expected Revenue
AdWords Problem
Given:
• A set of bids by advertiser for search queries
• A click-through rate for each advertiser query
pair
• A budget for each advertiser
• A limit on the number of ads to be displayed
with each search query
Adwords Problem
Respond to each search query with a set of
advertisers such that:
• The size of set is no larger than the limit on
the number of ads per query
• Each advertiser has bid on search query
• Each advertiser has enough budget left to pay
for the ad if it is clicked upon
Dealing with Limited Budget
• Our setting: Simplified Environment
– There is 1 ad shown for each query
– All advertisers have same budget B
– All ads are equally likely to be clicked
– Value of each ad is same(=1)
• Simplest Algorithm is greedy
– For a query pick any advertiser who has bid 1 for
that query
– Competitive ratio of greedy is 1/2.
Bad Scenario for Greedy
• Two advertisers A and B
– A bids on x, B bids on x and y
– Both have budget $4
• Query stream: x x x x y y y y
– Worst case for greedy choice: B B B B _ _ _ _
– Optimal: A A A A B B B B
– Competitive ratio= ½
• This is worst case!
– Note: Greedy algorithm is deterministic – it always
resolves draw in same way
BALANCE Algorithm [MSVV]
• For each query, pick the advertiser with the
largest unspent budget
• Break ties arbitrarily ( but in deterministic way)
Example: BALANCE
• Two advertisers A and B
– A bids on x, B bids on x and y
– Both have budget $4
• Query stream: x x x x y y y y
• Balance Choice: A B A B B B _ _
– Optimal: A A A A B B B B
• Competitive ratio= ¾
– For BALANCE with two advertisers
Analyzing 2 advertiser BALANCE
• Consider simple case
– 2 Advertisers, 𝐴1 and 𝐴2, each with budget B(≥1)
– Optimal solution exhaust both advertisers’ budgets
• BALANCE must exhaust at least one advertiser’s
budget:
– If not, we can allocate more queries
– Assume BALANCE exhausts 𝐴2’s budget
Analyzing Balance
Analyzing Balance
BALANCE: General Result
• In the general case, worst case competitive
ratio of BALANCE is 1-1/e = approx. 0.63
– Interestingly, no online algorithm has a better
competitive ratio!
• Let’s see the worst case example that gives
this ratio
Worst case for BALANCE
• N advertisers 𝐴1, 𝐴2, … 𝐴 𝑁
– Each with budget B>N
• Queries:
– N.B queries appear in N rounds of B queries each
• Bidding:
– Round 1 queries: bidders 𝐴1, 𝐴2, … 𝐴 𝑁
– Round 2 queries: bidders 𝐴2, 𝐴3, … 𝐴 𝑁
– Round i queries: bidders 𝐴𝑖, … 𝐴 𝑁
BALANCE Allocation
BALANCE Allocation
BALANCE Allocation
BALANCE Allocation
After k rounds, the allocation to k advertiser is:
𝑆 𝑘 = 𝐵 (𝑁 − 𝑖 + 1)𝑘
𝑖=1
If we find smallest k such that 𝑆 𝑘 ≥ 𝐵, then after k rounds
we can not allocate any queries to any advertiser
BALANACE Analysis
BALANACE Analysis
• Fact for large n
– Result due to Euler
ln 𝑁 − 𝑘 = ln 𝑁 − 1
ln(𝑁/(𝑁 − 𝑘)) = 1
𝑁/(𝑁 − 𝑘) = 𝑒
𝒌 = 𝑵(𝟏 − 𝟏/𝒆)
BALANACE Analysis
• So after the first 𝑘 = 𝑁(1 − 1/𝑒) rounds, we
cannot allocate a query to any advertiser
• Revenue = 𝐵. 𝑁(1 − 1/𝑒)
• Competitive ratio = 1 − 1/𝑒
General Version of the Problem
• So far: all bid = 1, all budget equal (=B)
• In general balance can be terrible
– Consider query q, two advertiser 𝐴1and 𝐴2
– 𝐴1: bid = 1, budget = 110
– 𝐴2: bid = 10, budget = 100
– Suppose we see 10 instance of q
– BALANCE always selects 𝐴1and earns 10
– Optimal earns 100
Generalized BALANCE
• Consider query q, bidder i
– Bid = 𝑥𝑖
– Budget = 𝑏𝑖
– Amount spent so far = 𝑚𝑖
– Fraction of budget left over 𝑓𝑖 = 1 − 𝑚𝑖/𝑏𝑖
– Define 𝜑𝑖(𝑞) = 𝑥𝑖 1 − 𝑒−𝑓 𝑖
• Allocate query q to bidder i with largest value
of 𝜑𝑖 𝑞
• Same Competitive ratio = 1 − 1/𝑒
Conclusion
• AdWords Problem
• Limited Budget Problem
• Solution of Limited Budget Problem
– BALANCE Algorithm and Analysis
Future Work
• Estimation of CTR
– Data Mining and Machine Learning techniques
References
• [1] Mehta A, Saberi A, Vazirani U, Vazirani V.
Adwords and generalized online
matching. J ACM (JACM) 2007;54(5):22.
• [2] Reiss C, Wilkes J, Hellerstein JL. Google cluster-
usage traces: formatþ schema.
Google Inc., White Paper; 2011.
• [3] Legrain A, Fortin M-A, Lahrichi N, Rousseau L-
M. Online stochastic optimization of radiotherapy
patient scheduling. In: Health care management
science;
2014. p. 1–14
References
• [4] Coy P. The secret to google's success.
〈http://www.bloomberg.com/bw/stories/ 2006-03-05/
the-secret-to-googles-success〉;
5 March 2006 [accessed16.02.15].
• [5] Google, 2014. 2014 financial tables.
〈https://investor.google.com/financial/tables.html〉
[accessed 16.02.2015].
• [6] Antoine Legrain , Patrick Jaillet A stochastic
algorithm for online bipartite resource allocation
problems.
Computers & Operations Research 75 (2016) 28–37,
Thank you

Más contenido relacionado

La actualidad más candente

Introduction to prolog
Introduction to prologIntroduction to prolog
Introduction to prologHarry Potter
 
Practical Implementation of AAD by Antoine Savine, Brian Huge and Hans-Jorgen...
Practical Implementation of AAD by Antoine Savine, Brian Huge and Hans-Jorgen...Practical Implementation of AAD by Antoine Savine, Brian Huge and Hans-Jorgen...
Practical Implementation of AAD by Antoine Savine, Brian Huge and Hans-Jorgen...Antoine Savine
 
Gradient descent method
Gradient descent methodGradient descent method
Gradient descent methodSanghyuk Chun
 
Markov chain and its Application
Markov chain and its Application Markov chain and its Application
Markov chain and its Application Tilakpoudel2
 
Orthogonal basis and gram schmidth process
Orthogonal basis and gram schmidth processOrthogonal basis and gram schmidth process
Orthogonal basis and gram schmidth processgidc engineering college
 
Artificial fish swarm optimization
Artificial fish swarm optimizationArtificial fish swarm optimization
Artificial fish swarm optimizationAhmed Fouad Ali
 
How to Build your Training Set for a Learning To Rank Project
How to Build your Training Set for a Learning To Rank ProjectHow to Build your Training Set for a Learning To Rank Project
How to Build your Training Set for a Learning To Rank ProjectSease
 
TEXT FEUTURE SELECTION USING PARTICLE SWARM OPTIMIZATION (PSO)
TEXT FEUTURE SELECTION  USING PARTICLE SWARM OPTIMIZATION (PSO)TEXT FEUTURE SELECTION  USING PARTICLE SWARM OPTIMIZATION (PSO)
TEXT FEUTURE SELECTION USING PARTICLE SWARM OPTIMIZATION (PSO)yahye abukar
 
Particle swarm optimization
Particle swarm optimization Particle swarm optimization
Particle swarm optimization Ahmed Fouad Ali
 
Propositional And First-Order Logic
Propositional And First-Order LogicPropositional And First-Order Logic
Propositional And First-Order Logicankush_kumar
 
Matching Weights to Simultaneously Compare Three Treatment Groups: a Simulati...
Matching Weights to Simultaneously Compare Three Treatment Groups: a Simulati...Matching Weights to Simultaneously Compare Three Treatment Groups: a Simulati...
Matching Weights to Simultaneously Compare Three Treatment Groups: a Simulati...Kazuki Yoshida
 
Advanced operation research
Advanced operation researchAdvanced operation research
Advanced operation researchSajid Ali
 
Text similarity measures
Text similarity measuresText similarity measures
Text similarity measuresankit_ppt
 
TextRank: Bringing Order into Texts
TextRank: Bringing Order into TextsTextRank: Bringing Order into Texts
TextRank: Bringing Order into TextsShubhangi Tandon
 
Fasttext 20170720 yjy
Fasttext 20170720 yjyFasttext 20170720 yjy
Fasttext 20170720 yjy재연 윤
 
Seq2Seq (encoder decoder) model
Seq2Seq (encoder decoder) modelSeq2Seq (encoder decoder) model
Seq2Seq (encoder decoder) model佳蓉 倪
 
First order logic in knowledge representation
First order logic in knowledge representationFirst order logic in knowledge representation
First order logic in knowledge representationSabaragamuwa University
 
A brief introduction to mutual information and its application
A brief introduction to mutual information and its applicationA brief introduction to mutual information and its application
A brief introduction to mutual information and its applicationHyun-hwan Jeong
 
Spell checker using Natural language processing
Spell checker using Natural language processing Spell checker using Natural language processing
Spell checker using Natural language processing Sandeep Wakchaure
 

La actualidad más candente (20)

Introduction to prolog
Introduction to prologIntroduction to prolog
Introduction to prolog
 
And or search
And or searchAnd or search
And or search
 
Practical Implementation of AAD by Antoine Savine, Brian Huge and Hans-Jorgen...
Practical Implementation of AAD by Antoine Savine, Brian Huge and Hans-Jorgen...Practical Implementation of AAD by Antoine Savine, Brian Huge and Hans-Jorgen...
Practical Implementation of AAD by Antoine Savine, Brian Huge and Hans-Jorgen...
 
Gradient descent method
Gradient descent methodGradient descent method
Gradient descent method
 
Markov chain and its Application
Markov chain and its Application Markov chain and its Application
Markov chain and its Application
 
Orthogonal basis and gram schmidth process
Orthogonal basis and gram schmidth processOrthogonal basis and gram schmidth process
Orthogonal basis and gram schmidth process
 
Artificial fish swarm optimization
Artificial fish swarm optimizationArtificial fish swarm optimization
Artificial fish swarm optimization
 
How to Build your Training Set for a Learning To Rank Project
How to Build your Training Set for a Learning To Rank ProjectHow to Build your Training Set for a Learning To Rank Project
How to Build your Training Set for a Learning To Rank Project
 
TEXT FEUTURE SELECTION USING PARTICLE SWARM OPTIMIZATION (PSO)
TEXT FEUTURE SELECTION  USING PARTICLE SWARM OPTIMIZATION (PSO)TEXT FEUTURE SELECTION  USING PARTICLE SWARM OPTIMIZATION (PSO)
TEXT FEUTURE SELECTION USING PARTICLE SWARM OPTIMIZATION (PSO)
 
Particle swarm optimization
Particle swarm optimization Particle swarm optimization
Particle swarm optimization
 
Propositional And First-Order Logic
Propositional And First-Order LogicPropositional And First-Order Logic
Propositional And First-Order Logic
 
Matching Weights to Simultaneously Compare Three Treatment Groups: a Simulati...
Matching Weights to Simultaneously Compare Three Treatment Groups: a Simulati...Matching Weights to Simultaneously Compare Three Treatment Groups: a Simulati...
Matching Weights to Simultaneously Compare Three Treatment Groups: a Simulati...
 
Advanced operation research
Advanced operation researchAdvanced operation research
Advanced operation research
 
Text similarity measures
Text similarity measuresText similarity measures
Text similarity measures
 
TextRank: Bringing Order into Texts
TextRank: Bringing Order into TextsTextRank: Bringing Order into Texts
TextRank: Bringing Order into Texts
 
Fasttext 20170720 yjy
Fasttext 20170720 yjyFasttext 20170720 yjy
Fasttext 20170720 yjy
 
Seq2Seq (encoder decoder) model
Seq2Seq (encoder decoder) modelSeq2Seq (encoder decoder) model
Seq2Seq (encoder decoder) model
 
First order logic in knowledge representation
First order logic in knowledge representationFirst order logic in knowledge representation
First order logic in knowledge representation
 
A brief introduction to mutual information and its application
A brief introduction to mutual information and its applicationA brief introduction to mutual information and its application
A brief introduction to mutual information and its application
 
Spell checker using Natural language processing
Spell checker using Natural language processing Spell checker using Natural language processing
Spell checker using Natural language processing
 

Destacado

Slides Chapter10.1 10.2
Slides Chapter10.1 10.2Slides Chapter10.1 10.2
Slides Chapter10.1 10.2showslidedump
 
Jessica brown 2
Jessica brown 2Jessica brown 2
Jessica brown 2jbrown154
 
burton_discrete_graph theory
burton_discrete_graph theoryburton_discrete_graph theory
burton_discrete_graph theoryguest63f42b
 
Simple algorithm & hopcroft karp for bipartite graph
Simple algorithm & hopcroft karp for bipartite graphSimple algorithm & hopcroft karp for bipartite graph
Simple algorithm & hopcroft karp for bipartite graphMiguel Pereira
 
Graph theory 1
Graph theory 1Graph theory 1
Graph theory 1Tech_MX
 
Graph theory
Graph theoryGraph theory
Graph theoryKumar
 
introduction to graph theory
introduction to graph theoryintroduction to graph theory
introduction to graph theoryChuckie Balbuena
 
Genetic Algorithm by Example
Genetic Algorithm by ExampleGenetic Algorithm by Example
Genetic Algorithm by ExampleNobal Niraula
 

Destacado (12)

Slides Chapter10.1 10.2
Slides Chapter10.1 10.2Slides Chapter10.1 10.2
Slides Chapter10.1 10.2
 
Jessica brown 2
Jessica brown 2Jessica brown 2
Jessica brown 2
 
Graphs
GraphsGraphs
Graphs
 
burton_discrete_graph theory
burton_discrete_graph theoryburton_discrete_graph theory
burton_discrete_graph theory
 
Simple algorithm & hopcroft karp for bipartite graph
Simple algorithm & hopcroft karp for bipartite graphSimple algorithm & hopcroft karp for bipartite graph
Simple algorithm & hopcroft karp for bipartite graph
 
2 Graph Theory
2 Graph Theory2 Graph Theory
2 Graph Theory
 
Graph theory
Graph theoryGraph theory
Graph theory
 
Graph theory 1
Graph theory 1Graph theory 1
Graph theory 1
 
Graph theory
Graph theoryGraph theory
Graph theory
 
graph theory
graph theory graph theory
graph theory
 
introduction to graph theory
introduction to graph theoryintroduction to graph theory
introduction to graph theory
 
Genetic Algorithm by Example
Genetic Algorithm by ExampleGenetic Algorithm by Example
Genetic Algorithm by Example
 

Similar a Computational advertising bipartite graph matching

Advertising
AdvertisingAdvertising
Advertisingblack150
 
Computational Advertising in Yelp Local Ads
Computational Advertising in Yelp Local AdsComputational Advertising in Yelp Local Ads
Computational Advertising in Yelp Local Adssoupsranjan
 
Online Advertisements and the AdWords Problem
Online Advertisements and the AdWords ProblemOnline Advertisements and the AdWords Problem
Online Advertisements and the AdWords ProblemRajesh Piryani
 
Tutorial 11 (computational advertising)
Tutorial 11 (computational advertising)Tutorial 11 (computational advertising)
Tutorial 11 (computational advertising)Kira
 
AI and Machine Language in PPC
AI and Machine Language in PPCAI and Machine Language in PPC
AI and Machine Language in PPCDavid Szetela
 
RTBMA ECIR 2016 tutorial
RTBMA ECIR 2016 tutorialRTBMA ECIR 2016 tutorial
RTBMA ECIR 2016 tutorialShuai Yuan
 
Machine learning for profit: Computational advertising landscape
Machine learning for profit: Computational advertising landscapeMachine learning for profit: Computational advertising landscape
Machine learning for profit: Computational advertising landscapeSharat Chikkerur
 
Szetela practcal ad words ai rocks
Szetela practcal ad words ai rocksSzetela practcal ad words ai rocks
Szetela practcal ad words ai rocksDavid Szetela
 
Int'l Conference on Predictive APIs: RTB Optimizer presentation
Int'l Conference on Predictive APIs: RTB Optimizer presentationInt'l Conference on Predictive APIs: RTB Optimizer presentation
Int'l Conference on Predictive APIs: RTB Optimizer presentationDatacratic
 
Hero Conf London 2016 - The Definitive Framework for Bidding in AdWords
Hero Conf London 2016 - The Definitive Framework for Bidding in AdWordsHero Conf London 2016 - The Definitive Framework for Bidding in AdWords
Hero Conf London 2016 - The Definitive Framework for Bidding in AdWordsWijnand Meijer
 
Squeezing the Most out of Every PPC Dollar
Squeezing the Most out of Every PPC DollarSqueezing the Most out of Every PPC Dollar
Squeezing the Most out of Every PPC DollarElizabeth Marsten
 
PPC for Cheapskates
PPC for CheapskatesPPC for Cheapskates
PPC for CheapskatesBrightEdge
 
EMOD_Optimization_Presentation.pptx
EMOD_Optimization_Presentation.pptxEMOD_Optimization_Presentation.pptx
EMOD_Optimization_Presentation.pptxAliElMoselhy
 
5 Most Common PPC Obstacles
5 Most Common PPC Obstacles5 Most Common PPC Obstacles
5 Most Common PPC ObstaclesSemrush
 
Make Google AdWords More Effective
Make Google AdWords More EffectiveMake Google AdWords More Effective
Make Google AdWords More Effectivecorneliafaith
 
Artificial Intelligence and Machine Learning in PPC - David Szetela
Artificial Intelligence and Machine Learning in PPC - David SzetelaArtificial Intelligence and Machine Learning in PPC - David Szetela
Artificial Intelligence and Machine Learning in PPC - David SzetelaState of Search Conference
 
1 Поток - 2. Аудиторные закупки в реальном времени_Thibault_Oberlin
1 Поток - 2. Аудиторные закупки в реальном времени_Thibault_Oberlin1 Поток - 2. Аудиторные закупки в реальном времени_Thibault_Oberlin
1 Поток - 2. Аудиторные закупки в реальном времени_Thibault_Oberlinelenae00
 

Similar a Computational advertising bipartite graph matching (20)

Advertising
AdvertisingAdvertising
Advertising
 
Computational Advertising in Yelp Local Ads
Computational Advertising in Yelp Local AdsComputational Advertising in Yelp Local Ads
Computational Advertising in Yelp Local Ads
 
Online Advertisements and the AdWords Problem
Online Advertisements and the AdWords ProblemOnline Advertisements and the AdWords Problem
Online Advertisements and the AdWords Problem
 
Marketing analytics
Marketing analyticsMarketing analytics
Marketing analytics
 
Tutorial 11 (computational advertising)
Tutorial 11 (computational advertising)Tutorial 11 (computational advertising)
Tutorial 11 (computational advertising)
 
AI and Machine Language in PPC
AI and Machine Language in PPCAI and Machine Language in PPC
AI and Machine Language in PPC
 
RTBMA ECIR 2016 tutorial
RTBMA ECIR 2016 tutorialRTBMA ECIR 2016 tutorial
RTBMA ECIR 2016 tutorial
 
Machine learning for profit: Computational advertising landscape
Machine learning for profit: Computational advertising landscapeMachine learning for profit: Computational advertising landscape
Machine learning for profit: Computational advertising landscape
 
Szetela practcal ad words ai rocks
Szetela practcal ad words ai rocksSzetela practcal ad words ai rocks
Szetela practcal ad words ai rocks
 
Int'l Conference on Predictive APIs: RTB Optimizer presentation
Int'l Conference on Predictive APIs: RTB Optimizer presentationInt'l Conference on Predictive APIs: RTB Optimizer presentation
Int'l Conference on Predictive APIs: RTB Optimizer presentation
 
Hero Conf London 2016 - The Definitive Framework for Bidding in AdWords
Hero Conf London 2016 - The Definitive Framework for Bidding in AdWordsHero Conf London 2016 - The Definitive Framework for Bidding in AdWords
Hero Conf London 2016 - The Definitive Framework for Bidding in AdWords
 
Squeezing the Most out of Every PPC Dollar
Squeezing the Most out of Every PPC DollarSqueezing the Most out of Every PPC Dollar
Squeezing the Most out of Every PPC Dollar
 
PPC for Cheapskates
PPC for CheapskatesPPC for Cheapskates
PPC for Cheapskates
 
EMOD_Optimization_Presentation.pptx
EMOD_Optimization_Presentation.pptxEMOD_Optimization_Presentation.pptx
EMOD_Optimization_Presentation.pptx
 
5 Most Common PPC Obstacles
5 Most Common PPC Obstacles5 Most Common PPC Obstacles
5 Most Common PPC Obstacles
 
Make Google AdWords More Effective
Make Google AdWords More EffectiveMake Google AdWords More Effective
Make Google AdWords More Effective
 
Beating AdWords Bidding [Webinar]
Beating AdWords Bidding [Webinar]Beating AdWords Bidding [Webinar]
Beating AdWords Bidding [Webinar]
 
Growth Secrets We've Learned Managing $500M in Digital Ad Spend - Lance Loved...
Growth Secrets We've Learned Managing $500M in Digital Ad Spend - Lance Loved...Growth Secrets We've Learned Managing $500M in Digital Ad Spend - Lance Loved...
Growth Secrets We've Learned Managing $500M in Digital Ad Spend - Lance Loved...
 
Artificial Intelligence and Machine Learning in PPC - David Szetela
Artificial Intelligence and Machine Learning in PPC - David SzetelaArtificial Intelligence and Machine Learning in PPC - David Szetela
Artificial Intelligence and Machine Learning in PPC - David Szetela
 
1 Поток - 2. Аудиторные закупки в реальном времени_Thibault_Oberlin
1 Поток - 2. Аудиторные закупки в реальном времени_Thibault_Oberlin1 Поток - 2. Аудиторные закупки в реальном времени_Thibault_Oberlin
1 Поток - 2. Аудиторные закупки в реальном времени_Thibault_Oberlin
 

Último

A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactPECB
 
9548086042 for call girls in Indira Nagar with room service
9548086042  for call girls in Indira Nagar  with room service9548086042  for call girls in Indira Nagar  with room service
9548086042 for call girls in Indira Nagar with room servicediscovermytutordmt
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfJayanti Pande
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpinRaunakKeshri1
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...anjaliyadav012327
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 

Último (20)

A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
9548086042 for call girls in Indira Nagar with room service
9548086042  for call girls in Indira Nagar  with room service9548086042  for call girls in Indira Nagar  with room service
9548086042 for call girls in Indira Nagar with room service
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 

Computational advertising bipartite graph matching

  • 1.
  • 2. Online Algorithms • Classic model of algorithms – We get to see the entire input, then compute some function of it – In this context, “offline algorithm” • Online Algorithms – We get to see the input one piece at a time, and need to make irrevocable decisions along the way – Similar to the data stream model
  • 3. Example: Bipartite Matching Nodes: Boys and Girls; Edges: Compatible Pairs Goal: Match as many compatible pairs as possible
  • 5. Example: Bipartite Matching Perfect matching... all the vertices of graph are matched Maximum Matching... a matching that contains the longest possible number of matches
  • 6. Matching Algorithm • Problem: Find a maximum matching for a given bipartite graph – A perfect one if it exists • There is a polynomial – time offline algorithm based on augmenting path (Hopcroft & Karp 1973)
  • 7. Online Graph Matching Problem • Initially, we are given the sets boys and girls • In each round, one girl’s choice are revealed – That is, girl’s edges are revealed • At that time, we have to decide either: – Pair the girl with a boy – Do not pair the girl with any boy • Example of application: Assigning tasks to servers
  • 16. Greedy Algorithm • Greedy algorithm for the online graph matching problem: – Pair the new girl with any eligible boy • If there is none, do not pair girl • How good is the algorithm?
  • 17. Competitive Ratio • For input I, suppose greedy produces matching 𝑴 𝒈𝒓𝒆𝒆𝒅𝒚 while an optimal matching is 𝑴 𝒐𝒑𝒕 Competitive ratio= 𝒎𝒊𝒏 𝑎𝑙𝑙 𝑝𝑜𝑠𝑠𝑖𝑏𝑙𝑒 𝑖𝑛𝑝𝑢𝑡𝑠 𝐼(| 𝑴 𝒈𝒓𝒆𝒆𝒅𝒚|/ |𝑴 𝒐𝒑𝒕|)
  • 18. Analyzing the Greedy Algorithm • Suppose 𝑴 𝒈𝒓𝒆𝒆𝒅𝒚 ≠ 𝑴 𝒐𝒑𝒕 • Consider the set G of girls matched 𝑴 𝒐𝒑𝒕 but not in 𝑴 𝒈𝒓𝒆𝒆𝒅𝒚 • (1) |𝑴 𝒐𝒑𝒕| ≤ |𝑴 𝒈𝒓𝒆𝒆𝒅𝒚|+|G| • Every boy B adjacent to girls in G is already matched in 𝑴 𝒈𝒓𝒆𝒆𝒅𝒚 • (2) |𝑴 𝒈𝒓𝒆𝒆𝒅𝒚|≥ |B| • Optimal matches all the girls in G to boys in B • (3) |G|≤|B|
  • 19. Analyzing the Greedy Algorithm Combining (2) and (3): • (4) |G|≤|B|≤ |𝑴 𝒈𝒓𝒆𝒆𝒅𝒚| Combining (1) and (4): |𝑴 𝒐𝒑𝒕| ≤ |𝑴 𝒈𝒓𝒆𝒆𝒅𝒚|+|𝑴 𝒈𝒓𝒆𝒆𝒅𝒚| |𝑴 𝒐𝒑𝒕| ≤ 2|𝑴 𝒈𝒓𝒆𝒆𝒅𝒚| |𝑴 𝒈𝒓𝒆𝒆𝒅𝒚|/ |𝑴 𝒐𝒑𝒕|≥1/2
  • 20. History of Web Advertising • Banner ads (1995-2001) – Initial form of web advertising – Popular websites charged X$ for every 1000 “impressions” of the add • Called “CPM” rate (cost per thousand impressions) • Modeled similar to TV, magazine ads – From untargeted to demographically targeted – Low click-through rates • Low ROI for advertisers
  • 21. Performance-based Advertising • Introduced by Overture around 2000 – Advertisers bid on search keywords – When someone searches for that keyword, the highest bidder’s ad is shown – Advertiser is charged only if the ad is clicked on • Similar model adopted by Google with some changes around 2002 – Called Adwords
  • 22. Algorithmic Challenges • Performance – based advertising works – Multi-billion-dollar industry • What ads to show for a given query? – The AdWords Problem Mining of Massive Datasets • If I am an advertiser, which search terms should I bid on and how much should I bid? – (It’s not our focus)
  • 23. AdWords Problem • A stream of queries arrives at the search engine: 𝑞1, 𝑞2, … • Several advertisers bid on each query • When query 𝑞𝑖 arrives, search engine must pick a subset of advertisers whose ads are shown • Goal: Maximize search engine’s revenues • Clearly we need an online algorithm!
  • 26. The AdWords Innovation Instead of sorting advertisers by bid, sort by expected revenue
  • 27. Limitations of Simple Algorithm • CTR of an ad is unknown • Advertisers have limited budgets and bid on multiple ads.
  • 28. Future Work • Estimation of CTR • Algorithm to solve limited budgets problem (Balance Algorithm)
  • 29. Recall… • Greedy algorithm for the online graph matching problem • Competitive Ratio • History of Web Advertising • Performance-based Advertising • The AdWords Innovation • Click Through Rate (CTR) • Expected Revenue
  • 30. AdWords Problem Given: • A set of bids by advertiser for search queries • A click-through rate for each advertiser query pair • A budget for each advertiser • A limit on the number of ads to be displayed with each search query
  • 31. Adwords Problem Respond to each search query with a set of advertisers such that: • The size of set is no larger than the limit on the number of ads per query • Each advertiser has bid on search query • Each advertiser has enough budget left to pay for the ad if it is clicked upon
  • 32. Dealing with Limited Budget • Our setting: Simplified Environment – There is 1 ad shown for each query – All advertisers have same budget B – All ads are equally likely to be clicked – Value of each ad is same(=1) • Simplest Algorithm is greedy – For a query pick any advertiser who has bid 1 for that query – Competitive ratio of greedy is 1/2.
  • 33. Bad Scenario for Greedy • Two advertisers A and B – A bids on x, B bids on x and y – Both have budget $4 • Query stream: x x x x y y y y – Worst case for greedy choice: B B B B _ _ _ _ – Optimal: A A A A B B B B – Competitive ratio= ½ • This is worst case! – Note: Greedy algorithm is deterministic – it always resolves draw in same way
  • 34. BALANCE Algorithm [MSVV] • For each query, pick the advertiser with the largest unspent budget • Break ties arbitrarily ( but in deterministic way)
  • 35. Example: BALANCE • Two advertisers A and B – A bids on x, B bids on x and y – Both have budget $4 • Query stream: x x x x y y y y • Balance Choice: A B A B B B _ _ – Optimal: A A A A B B B B • Competitive ratio= ¾ – For BALANCE with two advertisers
  • 36. Analyzing 2 advertiser BALANCE • Consider simple case – 2 Advertisers, 𝐴1 and 𝐴2, each with budget B(≥1) – Optimal solution exhaust both advertisers’ budgets • BALANCE must exhaust at least one advertiser’s budget: – If not, we can allocate more queries – Assume BALANCE exhausts 𝐴2’s budget
  • 39. BALANCE: General Result • In the general case, worst case competitive ratio of BALANCE is 1-1/e = approx. 0.63 – Interestingly, no online algorithm has a better competitive ratio! • Let’s see the worst case example that gives this ratio
  • 40. Worst case for BALANCE • N advertisers 𝐴1, 𝐴2, … 𝐴 𝑁 – Each with budget B>N • Queries: – N.B queries appear in N rounds of B queries each • Bidding: – Round 1 queries: bidders 𝐴1, 𝐴2, … 𝐴 𝑁 – Round 2 queries: bidders 𝐴2, 𝐴3, … 𝐴 𝑁 – Round i queries: bidders 𝐴𝑖, … 𝐴 𝑁
  • 44. BALANCE Allocation After k rounds, the allocation to k advertiser is: 𝑆 𝑘 = 𝐵 (𝑁 − 𝑖 + 1)𝑘 𝑖=1 If we find smallest k such that 𝑆 𝑘 ≥ 𝐵, then after k rounds we can not allocate any queries to any advertiser
  • 46. BALANACE Analysis • Fact for large n – Result due to Euler ln 𝑁 − 𝑘 = ln 𝑁 − 1 ln(𝑁/(𝑁 − 𝑘)) = 1 𝑁/(𝑁 − 𝑘) = 𝑒 𝒌 = 𝑵(𝟏 − 𝟏/𝒆)
  • 47. BALANACE Analysis • So after the first 𝑘 = 𝑁(1 − 1/𝑒) rounds, we cannot allocate a query to any advertiser • Revenue = 𝐵. 𝑁(1 − 1/𝑒) • Competitive ratio = 1 − 1/𝑒
  • 48. General Version of the Problem • So far: all bid = 1, all budget equal (=B) • In general balance can be terrible – Consider query q, two advertiser 𝐴1and 𝐴2 – 𝐴1: bid = 1, budget = 110 – 𝐴2: bid = 10, budget = 100 – Suppose we see 10 instance of q – BALANCE always selects 𝐴1and earns 10 – Optimal earns 100
  • 49. Generalized BALANCE • Consider query q, bidder i – Bid = 𝑥𝑖 – Budget = 𝑏𝑖 – Amount spent so far = 𝑚𝑖 – Fraction of budget left over 𝑓𝑖 = 1 − 𝑚𝑖/𝑏𝑖 – Define 𝜑𝑖(𝑞) = 𝑥𝑖 1 − 𝑒−𝑓 𝑖 • Allocate query q to bidder i with largest value of 𝜑𝑖 𝑞 • Same Competitive ratio = 1 − 1/𝑒
  • 50. Conclusion • AdWords Problem • Limited Budget Problem • Solution of Limited Budget Problem – BALANCE Algorithm and Analysis
  • 51. Future Work • Estimation of CTR – Data Mining and Machine Learning techniques
  • 52. References • [1] Mehta A, Saberi A, Vazirani U, Vazirani V. Adwords and generalized online matching. J ACM (JACM) 2007;54(5):22. • [2] Reiss C, Wilkes J, Hellerstein JL. Google cluster- usage traces: formatþ schema. Google Inc., White Paper; 2011. • [3] Legrain A, Fortin M-A, Lahrichi N, Rousseau L- M. Online stochastic optimization of radiotherapy patient scheduling. In: Health care management science; 2014. p. 1–14
  • 53. References • [4] Coy P. The secret to google's success. 〈http://www.bloomberg.com/bw/stories/ 2006-03-05/ the-secret-to-googles-success〉; 5 March 2006 [accessed16.02.15]. • [5] Google, 2014. 2014 financial tables. 〈https://investor.google.com/financial/tables.html〉 [accessed 16.02.2015]. • [6] Antoine Legrain , Patrick Jaillet A stochastic algorithm for online bipartite resource allocation problems. Computers & Operations Research 75 (2016) 28–37,