950 likes | 1.1k Views
Please interrupt me at any point!. Online Advertising Open lecture at Warsaw University January 7/8, 2011. Ingmar Weber Yahoo! Research Barcelona ingmar@yahoo-inc.com. Disclaimers & Acknowledgments.
E N D
Please interrupt me at any point! Online AdvertisingOpen lecture at Warsaw UniversityJanuary 7/8, 2011 Ingmar Weber Yahoo! Research Barcelona ingmar@yahoo-inc.com
Disclaimers & Acknowledgments • This talk presents the opinions of the author. It does not necessarily reflect the views of Yahoo! Inc. or any other entity. • Algorithms, techniques, features, etc. mentioned here might or might not be in use by Yahoo! or any other company. • Some of the slides in this lecture are based on slides for “Introduction to Computational Advertising”, given by A. Broder and V. Josifovski at Stanford University. http://www.stanford.edu/class/msande239/
Goals of this Presentation • Give an overview of the two main types of online advertising; (i) search advertising and (ii) display advertising • Explain the key technical aspects behind with a focus on computational aspects • This time: more breadth • Next time: more depth (you tell me where!)
Types of Online Advertising • Search Advertising • Display Advertising • E-mail Advertising • Classifieds • Sponsorships • … Part 1 Part 2
Part 0 Setting the Scene
Different Advertising Objectives Brand Advertising You’re not expected to buy a rolex watch tomorrow. What’s different? Direct Marketing Tries to cause an (almost) immediate reaction.
US Online Spending share by objective What’s bigger? Branding or direct response?
Lots of $$$ (or zloty) Poland’s state deficit in 2010: ~$11 billion Poland’s agriculture GDP: ~$32 billion
Part 1 Search Advertising
The Life of an Ad - Terminology “impression”/“pageview” <script type="text/javascript" src="http://www.yahoo.com/conversion.js"> </script> “click” “click-through rate”: (# clicks)/(# impressions) “landing page” “target page” “conversion” or “action” “conversion rate”: (# conversions)/(# page visits) “tracking code”
Search Advertising • Advertisements are sold in auctions • Advertisers bid on search terms [show live] • Different payment models • CPC (cost per click) Advertiser pays $X when an ad gets clicked • CPA (cost per action) Advertiser pays $Y when a click on an ad leads to a (trans-)action/purchase • CPM (cost per mille [page impressions]) Advertiser pays $Z for 1,000 ad displayments de-facto standard growing popularity used for display ads
Bidding for search terms Advertisers compete for search terms “warsaw hotels”, “online advertising”, … A click has a different value for different advertisers depends on profit margin and on conversion rate There’s a ranked list of sponsored search results Assumption: higher ranking => more clicks (CTR) Advertisers bid for a (good) slot in the results $ 0.01 per click - $ 100.00 per click Search engine decides the order/inclusion slots are assigned to (successful) bidders When a user clicks on a sponsored search result … … payment is made by the advertiser Search engines need to decide: * How should the slots be assigned? * How much should be paid per click? Advertisers need to decide: * How much to bid? MyComputer.com 99% of web site visitors don’t purchase anything 1% buy a computer - conversion rate (from click to transaction) Profit per computer sold $100 Expected profit per visitor $1 – value of a single visit/click How would you do it? Guess the most expensive search term?
How much does X cost? • Try to guess some expensive key words • Clear (commercial) intent • Very high value for new customer • Keyword tool • Small competition … • The winner is … • Mesothelioma
Exercise • Build six teams • Think of terms to bid on (exact match) and corresponding ads. You can choose the target page! • You’ll get 5 EUR per team to target the US&Canada search market • Ads will go live around 18h00 today (Friday) and we’ll look at the results tomorrow (Saturday) around 16h00
Exercise • All ads will run under my account • All keywords have to be “distinct” (system doesn’t allow self-competition) • Assigned in reversing round robin fashion (1,2,3,3,2,1,1,2,3,…) • Max 5 key words and 1 ad per team • The team with the largest number of clicks by 16h00 on Saturday wins • Please, no cheating
Pricing of Ads • How was it done? • What was wrong with that? • How is it done now? • Does that solve all problems?
Historic Overture mechanismSlot assignment by bid order Assign the slots in the order of the bid values higher bid => higher slot When a user clicks, you pay your bid value You bid $1.00 per click? - You pay $1.00 per click! Simple. - Intuitive. - Used for many years. What’s wrong with this?
End of story? – No, because … Difficult for advertisers to “play” this “game”: There’s no equilibrium! Scenario: • Two available ad slots with CTR 5% and 4% respectively • Three bidders with valuations $20, $18, $10 per click What happens? Bidder 2 bids $10.01 to beat Bidder 1 and to get a slot Bidder 1 will not pay more than $10.02 Then bidder 2 bids $10.03 Then bidder 1 bids $10.04 … and the fun continues until $14 … when it all collapses back to $10.01 Difficult to “play” this game optimally. Potential feeling of “being cheated”.
End of story? – And no, because … Ads can have different motivations • Motivating an action/purchase/click • Simply placing/marketing a brand ebay could afford to bid for every term … ... because no one will click the ad! “Buy * on ebay!” * = world peace, grandmother, happiness, … ebay cares more about page impressions Want to get rid of high-bidding free riders.
Addressing the first problem: Second price auction If only a single slot exists, do the following: Assign the slot to the highest bidder. Ex: Slot goes to Bidder 1 who bid $17. Let him pay the second highest bid. Ex: Bidder 1 pays $15, Bidder 2’s bid. Theorem (Vickrey ‘61): Bidding truthfully is a dominant strategy in this setting. (c.f. stamp auctions 1878+)
Second Price Auction Explained This ad slot is worth €1 to me. He’s “lying”. I bid €0.80! Your title here Your cool ad text goes here. Loses item. But could have bid €1.00. Pays €0.70. But could have bid €1.00. Loses item. Should have bid €1.00. www.domain.com I bid €0.90! I bid €1.50! I bid €0.70! Bidding “truthfully” is always best. Regardless of what others do. Only works for a single slot …
Addressing the first problem:Generalized second price auction If many slots exist, do the following: Assign the slots in (decreasing) order of the bids. Let each one pay the next (lower) bid. Called: Generalized second price (GSP) auction Is bidding “truthfully” a dominant strategy? Are there any dominant strategies?
Addressing the first problem:Generalized second price auction Same scenario again: • Two available ad slots with CTR 5% and 4% respectively • Three bidders with valuations $20, $18, $10 per click What happens if everyone bids truthfully ($20, $18, $10 respectively)? Bidder 1: ($20-$18)*0.05 = $0.10 profit per page impression Bidder 2: ($18-$10)*0.04 = $0.32 profit per page impression Bidder 3: $0.00 profit per page impression If bidder 1 bids $11 instead … … his profit is ($20-$10)*0.04 = $0.40 per page impression Bidding “truthfully” is not a dominant strategy in GSP. In fact, no dominant strategy exists for GSP.
So, still saw-tooth under GSP? As long as you bid less than the higher bid, your payment doesn’t change … … but the guy above gets charged more. So: Bidder 2 increases bid to stay just slightly below bidder 1 No difference for his position/payment But payment of other bidder 1 goes up Bidder 1 can “retaliate” by underbidding bidder 2 Bidder 1 now pays less (for a worse slot) Bidder 2 now pays more (for a better slot) Bidder 1 and bidder 2 have swapped position and (kind of) bids. “locally envy-free” if these games don’t happen.
Locally envy-free equilibria“Internet Advertising and the GSP Auction: Selling Billions of Dollars Worth of Keywords”, Edelman et al., 2006 A (pure Nash) equilibrium is locally envy-free if for any rank i: ®i sg(i) – p(i)¸®i-1 sg(i) – p(i-1) ®i = CTR at rank i (think “volume”) p(i) = cost for rank i small i = low rank = high CTR
Locally envy-free equilibria Lemma 1: A locally envy-free equilibrium of the GSP game corresponds to a stable assignment. Stable assignment: nobody wants to swap position and payment with anybody else Proof: No swap with positions below as we have an equilibrium: could just undercut advertiser to make this swap. Remains to show: no swap with positions (far) above.
Locally envy-free equilibria Proof (ctd): Claim: resulting order is “assortative”, i.e. in the order of the sg(i): ®i sg(i) – p(i)¸®i+1 sg(i) – p(i+1) (equilibrium) ®i+1 sg(i+1) – p(i+1)¸®i sg(i+1) – p(i) (envy-free) Gives: (®i - ®i+1) sg(i)¸ (®i - ®i+1) sg(i+1)
Locally envy-free equilibria Proof (ctd): Suppose i wants to go to m<i ®i sg(i) – p(i)¸®i-1 sg(i) – p(i-1) ®i-1 sg(i-1) – p(i-1)¸®i-2 sg(i-1) – p(i-2) … ®m+1 sg(m+1) – p(m+1)¸®m sg(m+1) – p(m) Replace all sq(x) by sq(i) (using Claim and ®j > ®j+1). Then add and cancel. Get: ®i sg(i) – p(i)¸ ®m sg(i) – p(m)
Locally envy-free equilibria Lemma 2: When there are more advertisers than slots, then any stable assignment corresponds to a locally envy free equilibrium of the GSP game. Could be an empty set …but Theorem: Bidding bj = pV,(j-1)/®j-1 gives a locally envy-free equilibrium with VCG payments. Here pV,(j-1) are VCG payments. Why is this of little practical relevance?
So, still saw-tooth under GSP? At least GSP has equilibria, though not in dominant strategies. GSP is “reasonably stable”. Payment depends on position, not on bid directly.
“Correct” generalization of SP:Vickrey-Clarke-Groves Mechanism Assume “no ebay”: CTR depends only on slot Assign the slots in bid order … (again) Advertiser X has to pay for loss in (bid * clicks) (Sum of (bi¢CTRi) before X enters the game - sum of (bi¢CTRi) of other players after X enters) / CTRX Example: …. next slide …
“Correct” generalization of SP:Vickrey-Clarke-Groves Mechanism Same scenario again: 3 advertisers: bids $20, $18, $10 (their valuations) Two slots: CTR 5%, CTR 4% [think: 5 clicks, 4 click] Slots go to bids $20 and $18 respectively. Corresponding payments? Advertiser 1: W/o adv. 1, sum over adv. 2 and 3 $18*0.05 + $10*0.04 = $1.30 W/ adv. 1, sum only over adv. 2 $18*0.04 = $0.72 Payment by advertiser 1: ($1.30-$0.72)/0.05 = $11.6 (per click) Advertiser 2: Without adv. 2, sum over adv. 1 and 3 $20*0.05 + $10*0.04 = $1.40 With adv. 2, sum only over adv. 1 $20*0.05 = $1.00 Payment by advertiser 2: ($1.40-$1.00)/0.04 = $10 (per click)
“Correct” generalization of SP:Vickrey-Clarke-Groves Mechanism Theorem: Bidding “truthfully” is a dominant strategy in this mechanism. Vickrey got Nobel prize in economics in ‘96 (a few days before his death) VCG mechanism not used for web advertising! Still have ebay problem …
Addressing the “ebay problem”Slot assignment by revenue order Have weights for different advertisers Measure probability of click (= quality of ad) ctrebay = 0.001, ctringmar = 0.01 Assign slots in (decreasing) order of ctri ¢bi (~ revenue for search engine) Pay minimum bid needed to stay ahead: pi = ctri+1¢bi+1/ctri Revenue ordering vs. bid ordering 30% more revenue per page impression
GSP in Practice • GSP with revenue ordering used by all major search engines • But with modifications … • minimum price (“reserve price”) • number of slots is variable • quality of landing page to avoid frustration • positional constraints • …
“Putting Nobel Prize-winning theories to work” ? Google’s unique auction model uses Nobel Prize-winning economic theory to eliminate the winner’s curse – that feeling that you’ve paid too much. While the auction model lets advertisers bid on keywords, the AdWords™ Discounter makes sure that they only pay what they need in order to stay ahead of their nearest competitor. http://www.google.com/adsense/afs.pdf
Knowing the Click-Through Rates • How do we know the click-through rates? • Estimated from past performance • What if a new advertiser arrives? • If we show his ads, lose chance to show other good ads. • If we don’t show his ads, might not discover a new high-performing ad. Solution: Explore-Exploit What is the problem?
Multi-Armed Bandits $10 $1 $6 $4 Expect $8 $3 Expect $2 Expect $6 $4 $10 $2 $8 First, explore! Now, exploit!
Multi-Armed Bandits • Set of k bandits, i.e. real distributions B = {R1, …, RK} ¹k = mean(Rk) ¹* = maxk {¹k} Game is played for H rounds Regret: ½(H) = H ¹* - t=1H rt where rt is the (random) reward at time t Want ½(H)/H ! 0 with probability 1 as H!1 Suggestions?
Multi-Armed Bandits Epsilon-greedy strategy: The currently best bandit is selected for a fraction of 1- ² of the rounds, and a bandit selected uniformly at random for a fraction of ². Restless Bandit Problem – distributions change Arm Acquiring Bandit – new bandits arrive
Practical CTR Complications • CTR depends also presence/absence of other ads • And what the user has seen in the past • And on quality of search results • Should we show the worst search results so that users are “desperate” and click the ads?
Fraud • Click fraud • On opponent's paid search results (10%-20%) • On the contextual ads of your homepage • Impression fraud • Give your opponent a lower CTR • Lowers the amount you’ll have to bid • What should search engines do? • All search engines do not bill for fraudulent clicks • See case “Lane’s Gifts v. Google” Other kinds?
Does CPA Solve Fraud? Click fraud no longer works. Only get charged for “actions”, aka conversion. Now advertisers can cheat by underreporting conversions. Can Y!/G trust advertisers? Have to hand over monitoring to search engine. Can advertisers trust Y!/G? Very, very sparse data to derive estimates. Hard for Y!/G to make optimal decisions. End of story?
Mobile Sponsored Search • Mobile devices offer more context • Location • More short-term needs -> more monetizable • More focused user attention • Can’t just open another tab while loading • More positive associations • People tend to feel “closer” to their mobile
Summary of Part 1 • Search advertising is a multi-billion dollar business • Allows very targeted advertising • Fair payment model: you only pay for clicks (CPC) • How much you pay depends on • Your bid • Fraction of people clicking your ad (CTR) • Payment reasonably stable and “gaming” is difficult • Practical problems such as learning CTRs and avoiding click fraud
Exercise • 6 teams …
Part 2 Display Advertising