搜索引擎的竞价排名是怎样实现的?
導讀:在搜索引擎的搜索結果頁面上一般有兩類內容:一類是根據PageRank等算法得到的與你搜索的關鍵字有直接關聯的源生鏈接,另一類是廣告商付了費的廣告鏈接。
每次你在搜索引擎上搜索一個關鍵字時,搜索引擎在背后都實時地運行了一場拍賣,通過這場拍賣來決定哪些廣告商的鏈接能夠被顯示出來,這些鏈接以什么次序排列,以及向每個廣告商收取多少錢。
那么這樣的系統背后的模型是什么?是怎樣設計的?本文帶你一一了解。
作者:蒂姆·拉夫加登(Tim Roughgarden)
譯者:郝東 李斌 劉凡
來源:大數據DT(ID:hzdashuju)
01 背景知識
關鍵字搜索拍賣創造了巨大的網絡經濟效益。相關的數據非常讓人震撼:在2006年,來自關鍵字搜索拍賣的利潤占據了谷歌總利潤的98%。雖然在線廣告現在有多種成熟的表現形式,但是關鍵字搜索拍賣產生的經濟價值仍然是每年數百億美元量級的。
進入正式討論前,我們先看兩個定義:
1.?占優策略激勵相容(DSIC)
在一場拍賣中,如果對于每一個競拍者按照自己的估值真實報價都是一個占優策略,并且真實報價的競拍者的效用都非負,則稱這個拍賣是占優策略激勵相容(Dominant-Strategy Incentive Compatible,DSIC)的。
2.?社會福利
單物品拍賣結果的社會福利定義為
其中,如果競拍者i贏得了拍賣,則xi為1,否則為0。因為只有一個物品,所以有一個可行性的約束條件。所以,社會福利就是贏家的估值,或者如果沒有贏家的話,社會福利就是0(物品的售價并沒有包括在社會福利的計算中。我們將賣家視為一個獨立的智能體,他的收益抵消了贏家由于支付而產生的收益損失)。
如果在一場拍賣中,在所有的競拍者都說真話的情況下,拍賣的結果能導致最大的社會福利,就說這場拍賣是社會福利最大化(welfare maximizing)的。
02?關鍵字搜索拍賣的基本模型
下面我們針對關鍵字搜索拍賣,討論一種簡單、實用且很有影響的模型。需要銷售的物品是某個搜索結果頁面上的k個廣告鏈接位置。競拍者是一些想要在該關鍵字頁面下顯示自己廣告鏈接的廣告商。
例如,沃爾沃和斯巴魯可以是“客貨兩用車”這個關鍵字的競拍者,尼康和佳能可以是“單反相機”這個關鍵字的競拍者,這樣的拍賣形式比單物品拍賣要復雜。
其復雜體現在兩個方面:一方面,一般來說,有多個物品待售(即k>1);另一方面,這些物品是不同的。例如,如果廣告是按順序顯示在頁面上的,那么排在前面的廣告比排在后面的廣告就更有價值,因為人們一般遵循從前到后的順序來瀏覽廣告列表。
我們使用點擊率(Click-Through Rate,CTR)來對不同廣告位之間的差別進行量化。廣告位j的點擊率αj表示的是用戶點擊這個廣告位鏈接的概率。如果廣告位是從上到下排列的,那么一個合理的假設就是α1≥α2≥…≥αk。為了簡化處理,我們現在做一個不太合理的假設,即廣告位的點擊率與該廣告位的內容無關。
關鍵字搜索拍賣可以擴展到更一般化且符合實際的形式,即每個廣告商i都有一個自己的質量分βi(越高越好),這樣的話,廣告商i在廣告位j處的鏈接的點擊率計算為βiαj。
我們假設廣告商并不在乎廣告的曝光量,而是對用戶的每一次點擊有一個估值vi。這樣的話,廣告商i在廣告位j處的期望值就是viαj。
03?我們想要什么
是否存在理想化的關鍵字搜索拍賣呢?對于這樣的拍賣,有以下幾個關鍵的需求:
DSIC。也就是按照真實估值報價是占優策略,而且效用不會為負。
社會福利最大化。對廣告位的分配應該使得最大化,其中xi是分配給i的廣告位的點擊率(如果該廣告位沒分配給任何廣告商,則為0)。每個廣告位只能分配給一個競拍者,每個競拍者只能得到一個廣告位。
計算高效。拍賣的運行時間應該是輸入(即v1,…,vn)的多項式級的(甚至是近線性的)。請注意,每天都有海量的這種拍賣在搜索引擎上運行。
04?我們的設計方法
拍賣問題的困難在于,我們要同時處理兩個攪在一起的事情:決定誰贏得拍賣,以及決定每個人付多少錢。即使在單物品拍賣中,如果只做對了第一件事(比如把物品分給出價最高的競拍者),也是不夠的。因為如果沒有好好設計支付,那么策略型參與者就會鉆空子。
令人高興的是,在許多應用(包括關鍵字搜索拍賣)中,我們可以同時解決這兩個交織在一起的問題。
步驟1:假設所有的競拍者都如實報價。那么,我們該如何將競拍者分配到廣告位上去,從而使得上面的性質2和3成立?
步驟2:在得到步驟1的解之后,我們該如何設定售價,從而使得上面的性質1成立?
如果能高效地解決以上兩個步驟,那么我們就得到了一個理想的拍賣。步驟2保證了DSIC性質,這意味著競拍者會如實報價(前提是如果競拍者有占優策略,就會執行這個策略)。這樣的話,步驟1中的假設就得到滿足了,所以拍賣的結果就是社會福利最大化的。
最后,我們來看看在關鍵字搜索拍賣這個情境下步驟1是如何執行的。如果報價都是真實的,我們該如何將競拍者分配到廣告位上去才能實現社會福利最大化呢?自然的貪心算法是能實現最優的(而且是計算高效的),即對于所有的i=1,2,…,k,將報價第i高的競拍者分配到點擊率第i高的廣告位上去。
關于作者:蒂姆·拉夫加登(Tim Roughgarden), 哥倫比亞大學計算機科學系教授,之前曾任教于斯坦福大學,主要研究領域包括算法、博弈論以及微觀經濟學。他曾獲得美國青年科學家與工程師總統獎(PECASE),ACM頒發的Grace Murray Hopper獎,Game Theory Society頒發的Kalai獎,Mathematical Programming Society頒發的Tucker獎,以及EATCS-SIGACT頒發的G?del獎。
本文摘編自《斯坦福算法博弈論二十講》,經出版方授權發布。
延伸閱讀《斯坦福算法博弈論二十講》
點擊上方鏈接了解及購買
轉載請聯系微信:DoctorData
推薦語:本書源于斯坦福大學“算法博弈論”課程講義,計算機科學+經濟學的跨學科研究,涵蓋重要模型與結論。
有話要說????
Q:?你對搜索結果滿意嗎?
歡迎留言與大家分享
猜你想看????
盤點科幻作品中的機器人,哆啦A夢、阿拉蕾、變形金剛…你最想擁有?
一個月讀完6本書?這些燒腦神書,你能讀完1本,就是學霸!
一文看懂數據預處理最重要的3種思想和方法
2個基礎操作案例帶你入門MySQL
據統計,99%的大咖都完成了這個神操作
????
新人創作打卡挑戰賽發博客就能抽獎!定制產品紅包拿不停!總結
以上是生活随笔為你收集整理的搜索引擎的竞价排名是怎样实现的?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 什么是气泡图?怎样用Python绘制?有
- 下一篇: 神操作:教你用Python识别恶意软件