/
Search Advertising These slides are modified from those by Search Advertising These slides are modified from those by

Search Advertising These slides are modified from those by - PowerPoint Presentation

julia
julia . @julia
Follow
65 views
Uploaded On 2023-11-19

Search Advertising These slides are modified from those by - PPT Presentation

Anand Rajaram amp Jeff Ullman History of web advertising Banner ads 19952001 Initial form of web advertising Popular websites charged X for every 1000 impressions of ad Called CPM rate ID: 1033051

ads bid ratio bids bid ads bids ratio probability advertiser search optimal profit ranking queries advertisers relevance expected price

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "Search Advertising These slides are modi..." is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

1. Search AdvertisingThese slides are modified from those by Anand Rajaram & Jeff Ullman

2. History of web advertisingBanner ads (1995-2001)Initial form of web advertisingPopular websites charged X$ for every 1000 “impressions” of adCalled “CPM” rateModeled similar to TV, magazine adsUntargeted to demographically tagetedLow clickthrough rateslow ROI for advertisers

3. Performance-based advertisingIntroduced by Overture around 2000Advertisers “bid” on search keywordsWhen someone searches for that keyword, the highest bidder’s ad is shownAdvertiser is charged only if the ad is clicked onSimilar model adopted by Google with some changes around 2002Called “Adwords”

4. Ads vs. search results

5. Web 2.0Performance-based advertising works!Multi-billion-dollar industryInteresting problemsSearch Engine: What ads to show for a search?Advertiser: Which search terms should I bid on and how much to bid?Will I be charged the full amount I bid? User: Am I getting relevant ads? Should I click on them?

6. From http://www.stanford.edu/class/msande239/

7. From http://www.stanford.edu/class/msande239/

8. From http://www.stanford.edu/class/msande239/

9. From http://www.stanford.edu/class/msande239/

10. Simple Adwords problemA stream of queries arrives at the search engineq1, q2,…Several advertisers bid on each queryWhen query qi arrives, search engine must pick an ad to showGoal: maximize search engine’s revenuesClearly we need an online algorithm!

11. Greedy algorithmSelect the ad with the highest bid forSimplest algorithm is greedyIt’s easy to see that the greedy algorithm is actually optimal!

12. Complication 1: Ads with different CTRsEach ad has a different likelihood of being clickedAdvertiser 1 bids $2, click probability = 0.1Advertiser 2 bids $1, click probability = 0.5Clickthrough rate measured historicallySimple solutionInstead of raw bids, use the “expected revenue per click”

13. The Adwords InnovationAdvertiserBidCTRBid * CTRABC$1.00$0.75$0.501%2%2.5%1 cent1.5 cents1.125 centsCTR: Click-Through Rate for that specific ad What fraction of times, when the ad is shown, do people click on the ad? SE has to track these statistics over time..

14. The Adwords InnovationAdvertiserBidCTRBid * CTRABC$1.00$0.75$0.501%2%2.5%1 cent1.5 cents1.125 cents

15. Complication 2: Advertisers bid on keywords not queries..Many-to-Many correspondence between queries and keywords purchasedSelect top-k similar ads, pick from among them the one with highest bid*CTR Retrieving Similar Ads Exact matchingIR-style similarityQuery rewriting (say using scalar/association clustering)Followed by exact matchingNeed inverted indexes

16. Complication 3: SE may want to show multiple ads per queryFirst ad shown: Is the one that is most similar and has the highest bid*CTR valueSecond ad shown isn’t necessarily the one that has next highest bid*CTR..Need to worry about inter-ad correlation (diversity)Need to worry about user browsing pattern (user may stop looking after the first ad)

17. Optimal Ranking given AbandonmentThe physical meaning RF is the profit generated for unit consumed view probability of adsHigher ads have more view probability. Placing ads producing more profit for unit consumed view probability higher up is intuitive. Rank ads in the descending order of:17Optimal ranking considering inter-ad correlation is NP-hardRaju Balakrishnan

18. Complication 4: Advertisers have limited budgetsEach advertiser has a limited budgetSearch engine guarantees that the advertiser will not be charged more than their daily budgetSE needs to be smarter in selecting among the relevant advertisers so it is sensitive to the remaining budget..

19. Simplified model (for now)Assume all bids are 0 or 1Each advertiser has the same budget BOne advertiser per queryLet’s try the greedy algorithmArbitrarily pick an eligible advertiser for each keyword

20. Bad scenario for greedyTwo advertisers A and BA bids on query x, B bids on x and yBoth have budgets of $4Query stream: xxxxyyyyWorst case greedy choice: BBBB____Optimal: AAAABBBBCompetitive ratio = ½Simple analysis shows this is the worst caseCompetitive Ratio: Ratio between online and off-line alg. Performance

21. BALANCE algorithm [MSVV][Mehta, Saberi, Vazirani, and Vazirani]For each query, pick the advertiser with the largest unspent budgetBreak ties arbitrarily

22. Example: BALANCETwo advertisers A and BA bids on query x, B bids on x and yBoth have budgets of $4Query stream: xxxxyyyyBALANCE choice: ABABBB__Optimal: AAAABBBBCompetitive ratio = ¾In the general case, worst competitive ratio of BALANCE is 1–1/e ~ 0.63

23. Analyzing BALANCEConsider simple case: two advertisers, A1 and A2, each with budget B (assume B À 1)Assume optimal solution exhausts both advertisers’ budgetsBALANCE must exhaust at least one advertiser’s budgetIf not, we can allocate more queriesAssume BALANCE exhausts A2’s budget

24. Analyzing BalanceA1A2BxyBA1A2xOpt revenue = 2BBalance revenue = 2B-x = B+yWe have y ¸ xBalance revenue is minimum for x=y=B/2Minimum Balance revenue = 3B/2Competitive Ratio = 3/4Queries allocated to A1 in optimal solutionQueries allocated to A2 in optimal solution

25. General ResultIn the general case, worst competitive ratio of BALANCE is 1–1/e = approx. 0.63Interestingly, no online algorithm has a better competitive ratioWon’t go through the details here, but let’s see the worst case that gives this ratio

26. Worst case for BALANCEN advertisers, each with budget B À N À 1NB queries appear in N rounds of B queries eachRound 1 queries: bidders A1, A2, …, ANRound 2 queries: bidders A2, A3, …, ANRound i queries: bidders Ai, …, ANOptimum allocation: allocate round i queries to AiOptimum revenue NB

27. BALANCE allocation…A1A2A3AN-1ANB/NB/(N-1)B/(N-2)After k rounds, sum of allocations to each of bins Ak,…,AN is Sk = Sk+1 = … = SN = 1· 1· kB/(N-i+1)If we find the smallest k such that Sk ¸ B, then after k roundswe cannot allocate any queries to any advertiser

28. BALANCE analysisB/1 B/2 B/3 … B/(N-k+1) … B/(N-1) B/NS1S2Sk = B 1/1 1/2 1/3 … 1/(N-k+1) … 1/(N-1) 1/NS1S2Sk = 1

29. BALANCE analysisFact: Hn = 1· i· n1/i = approx. log(n) for large nResult due to Euler1/1 1/2 1/3 … 1/(N-k+1) … 1/(N-1) 1/NSk = 1 log(N)log(N)-1Sk = 1 implies HN-k = log(N)-1 = log(N/e)N-k = N/ek = N(1-1/e)

30. BALANCE analysisSo after the first N(1-1/e) rounds, we cannot allocate a query to any advertiserRevenue = BN(1-1/e)Competitive ratio = 1-1/e

31. General version of problemArbitrary bids, budgetsConsider query q, advertiser iBid = xiBudget = biBALANCE can be terribleConsider two advertisers A1 and A2 A1: x1 = 1, b1 = 110A2: x2 = 10, b2 = 100

32. Generalized BALANCEArbitrary bids; consider query q, bidder iBid = xi (can also consider xi * CTRi ) Budget = biAmount spent so far = miFraction of budget left over fi = 1-mi/biDefine i(q) = xi(1-e-fi)Allocate query q to bidder i with largest value of i(q)Same competitive ratio (1-1/e)

33. Complication 4: How do we encourage Truthful Bidding? How to set the keyword bids? I am willing to pay 2$/click on the phrase “best asu course” But should I be charged the full 2$ even if no one else cares for that phrase? If I know that I will be charged my full bid price, I am likely to under-bidI lose the auction; search engine loses revenue Solution: Second Price Auction (Vickery Auction)The advertiser with the highest bid wins, but only pays the price of the second highest bidHas the property that truthful bidding is dominant strategy [No other strategy does better]Insight: Physical auctionsAre second-price auctions!

34. From http://www.stanford.edu/class/msande239/

35. Generalizing to multiple itemsTwo issues: 1. Allocation: who gets which item? Decided by Maximal Matching 2. Pricing: What price do they pay? Decided by opportunity cost introduced by the winner (which involves doing matching again without the winning bid) (Each advertiser may bid on more than one query)30Q1Q2This opportunity cost for a bidder is defined as the total bids of all the other bidders that would have won if the first bidder didn't bid, minus the total bids of all the other actual winning bidders.

36. Generalizing to multiple items Single item Vickery Auction(Truthful bidding is dominant strategy) Multi-item VCG Auction(Truthful bidding is dominant strategy) --Price paid by each buyer is his/her externality (how much others would have benefited if he/she weren’t around)Multi-item Generalized Second Price Auction(Truthful bidding is not a dominant strategy) Price paid by i-th bidder is the bid of i+1th bidderGoogle (and most SE) use thisTwo issues: 1. Allocationwho gets which item? 2. PricingWhat price do they pay?

37. What we swept under the rug..We handled user interests (CTR)search engine interests (ranking, budgets)Advertiser interests (keyword bidding, auctions)As if they are sort of independent..But they are inter-dependent..The full solution needs to bring them all together....and won’t have too many neat properties that you can prove

38. Ad Ranking: State of the ArtSort byBid Amount x Relevance We consider ads as a set, and ranking is based on user’s browsing model Sort by Bid Amount Ads are Considered in Isolation, as both ignore Mutual influences. 38

39. User’s Browsing ModelUser browses down staring at the first adAbandon browsing with probabilityGoes down to the next ad with probability At every ad he MayProcess repeats for the ads below with a reduced probability Click the ad with relevance probabilityIf is similar to residual relevance of decreases and abandonment probability increases.39

40. Mutual InfluencesThree Manifestations of Mutual Influences on an ad are:Similar ads placed above Reduces user’s residual relevance of Relevance of other ads placed above User may click on above ads may not view Abandonment probability of other ads placed aboveUser may abandon search and may not view 40

41. Expected Profit Considering Ad Similarities Considering bids ( ), residual Relevance ( ), abandonment probability ( ), and similarities the expected profit from a set of n results is,THEOREM: Ranking maximizing expected profit considering similarities between the results is NP-Hard Proof is a reduction of independent set problem to choosing top-k ads considering similarities. Expected Profit = Even worse, constant ratio approximation algorithms are hard (unless NP = ZPP) for diversity ranking problem41

42. Dropping similarity, hence replacing Residual Relevance ( ) by Absolute Relevance ( ), Ranking to maximize this expected utility is a sorting problem Expected Profit Considering other two Mutual Influences (2 and 3) Expected Profit = 42

43. Comparison to current Ad RankingsAssume abandonment probability is zero Assume where is a constant for all adsAssumes that the user has infinite patience to go down the results until he finds the ad he wants. Assumes that abandonment probability is negatively proportional to relevance.Bid Amount x RelevanceSort by Bid Amount

44. Generality of the Proposed RankingThe generalized ranking based on utilities.For ads utility=bid amountFor documents utility=relevancePopular relevance ranking44

45. Quantifying Expected ProfitProposed strategy gives maximum profit for the entire range45.7%35.9%Number of ClicksZipf random with exponent 1.5 Abandonment probabilityUniform Random as RelevanceUniform random as Bid AmountsUniform randomDifference in profit between RF and competing strategy is significantBid amount only strategy becomes optimal at 45

46. Optimal Ad-Ranking for Profit Maximization. Raju Balakrishnan, Subbarao Kabmbhampati. WebDB 2008Yahoo! Research Key scientific Challenge award for Computation advertising, 2009-10Publication and Recognition46

47. Online algorithmsClassic model of algorithmsYou get to see the entire input, then compute some function of itIn this context, “offline algorithm”Online algorithmYou get to see the input one piece at a time, and need to make irrevocable decisions along the waySimilar to data stream models

48. Example: Bipartite matching1234abcdGirlsBoys

49. Example: Bipartite matching1234abcdM = {(1,a),(2,b),(3,d)} is a matchingCardinality of matching = |M| = 3GirlsBoys

50. Example: Bipartite matching1234abcdGirlsBoysM = {(1,c),(2,b),(3,d),(4,a)} is a perfect matching

51. Matching AlgorithmProblem: Find a maximum-cardinality matching for a given bipartite graphA perfect one if it existsThere is a polynomial-time offline algorithm (Hopcroft and Karp 1973)But what if we don’t have the entire graph upfront?

52. Online problemInitially, we are given the set BoysIn each round, one girl’s choices are revealedAt that time, we have to decide to either:Pair the girl with a boyDon’t pair the girl with any boyExample of application: assigning tasks to servers

53. Online problem1234abcd(1,a)(2,b)(3,d)

54. Greedy algorithmPair the new girl with any eligible boyIf there is none, don’t pair girlHow good is the algorithm?

55. Competitive RatioFor input I, suppose greedy produces matching Mgreedy while an optimal matching is MoptCompetitive ratio = minall possible inputs I (|Mgreedy|/|Mopt|)

56. Analyzing the greedy algorithmConsider the set G of girls matched in Mopt but not in MgreedyThen it must be the case that every boy adjacent to girls in G is already matched in MgreedyThere must be at least |G| such boysOtherwise the optimal algorithm could not have matched all the G girlsTherefore |Mgreedy| ¸ |G| = |Mopt - Mgreedy||Mgreedy|/|Mopt| ¸ 1/2

57. Worst-case scenario1234abc(1,a)(2,b)d