# Computational Advertising Bipartite Graph Matching

• View
63

1

Embed Size (px)

Transcript

• Computational Advertising Bipartite Graph Matching

13CSE001

• 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 girls choice are revealed

That is, girls 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:

• 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

(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

Popular websites charged X\$

for every 1000 impressions

Called CPM rate (cost per thousand impressions)

Modeled similar to TV, magazine ads

From untargeted to demographically targeted

Low click-through rates

Introduced by Overture around 2000

When someone searches for that keyword, the highest bidders ad is shown

• 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? (Its not our focus)

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 engines revenues

Clearly we need an online algorithm!

• Expected Revenue

• Expected Revenue

• Limitations of Simple Algorithm

CTR of an ad is unknown

• Future Work

Estimation of CTR

Algorithm to solve limited budgets problem

(Balance Algorithm)

• 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. 114

• References

[4] Coy P. The secret to google's success. http://www.bloomberg.com/bw/stories/ 2006-03-05/