互聯網廣告系統綜述五系統架構

互聯網廣告系統綜述五系統架構

 

聲明:

1)該博文是整理自網上很大牛和專家所無私奉獻的資料的。具體引用的資料請看參考文獻。具體的版本聲明也參考原文獻

2)本文僅供學術交流,非商用。所以每一部分具體的參考資料並沒有詳細對應,更有些部分本來就是直接從其他博客複製過來的。如果某部分不小心侵犯了大家的利益,還望海涵,並聯系老衲刪除或修改,直到相關人士滿意爲止。

3)本人才疏學淺,整理總結的時候難免出錯,還望各位前輩不吝指正,謝謝。

4)閱讀本文需要互聯網廣告業的基礎(如果沒有也沒關係了,沒有就看看,當做跟同學們吹牛的本錢)。

5)此屬於第一版本,若有錯誤,還需繼續修正與增刪。還望大家多多指點。請直接回帖,本人來想辦法處理。


前面幾篇博文都說了很多業務架構方面的東西,順便說了一些用戶基礎信息的挖掘相關的事情。那些很多都已經被大神們說得淋漓盡致了,除了定向中說的那幾個定向方法以外。

下面就開始一些跟技術相關的東西了。

1.1前言

在說了這麼多技術無關的東西后,是要來點有技術性的東西了。

這系列的博文好像看起來並不能讓很多人看的爽,因爲沒啥公式與技術相關的東西。可以想象到的是,大部分人花不了5分鐘就看完了,覺得沒啥含量。只是這些東西纔是一個廣告產品重要的東西,也是老闆關心的東西,而用什麼模型,什麼挖掘手段,怎麼去估ctr,真沒有哪位老闆會關心。

工程師思維不是那麼有全局觀的,技術也不能一頭鑽着。廣告算法工程師需要更廣闊的視野,去看到更多的可能性,更多的增長點。

這話還是很客氣和空虛的,用人話來解釋一下:想要賺錢,把前面那套東西搭起來,就能賺不少錢了,再讓運營和銷售多拉點有錢的廣告主進來,那錢就賺得更多了;而用什麼技術去預估ctr,用什麼模型,用哪個大數據,都只是一些輔助手段,沒有前面的那些工作,這些都只是鏡中花、水中月。一個廣告業務會因爲出現了新的業務售賣形式獲得業務指標大幅度的增長,但不會因爲用了一個什麼模型有翻天覆地的變化。再好的ctr預估、再好的模型、再大的數據,廣告業務設計得很差,照樣賠本。廣告算法工程師拼了老命提升的一點點業務指標(點擊率和收入),可能把流量換種方式售賣就達到了,而且廣告主掏錢掏得爽爽的,用戶也不反感,就像請第三方公司挖掘出廣告主的潛在客戶,直接讓廣告主高價來買這些流量,這樣廣告主滿意了,用戶也覺得還不錯。

人話說完了,繼續一些套話。廣告算法工程師要注意對業務的掌控能力,看出在整個業務系統需要在哪個點發力,才能得到可觀的業務指標提升,而不是一味地優化模型與特徵。廣闊的視野,能幫助看到業務的發力點,甚至能看到從當前業務中催生一個新業務,這樣的廣告算法工程師纔是合格的。

這一段話也就是爲了給自己前面那幾篇博文加點回頭率罷了,下面開始系統方面的東西了。

 

1.2 廣告業務系統架構

爲了讓各位對系統有一個全面的理解,這裏把整個系統的架構列出來。


一個用戶過來後,這個廣告請求會進入到廣告投放平臺。廣告投放平臺會讀取一些索引,決定要不要進行投放,決定投放後,廣告投放平臺會讀取廣告主服務頁推送過來的廣告計劃,做一些頻次上的控制,再把剩餘的廣告交給線上定向模塊。線上定向模塊從線上存儲器讀取用戶的profile數據,根據每個廣告計劃的定向條件去篩選,篩選剩下的廣告計劃就是適合投這個用戶的廣告;再對篩選剩下的廣告,做一個比較粗的選取,選擇其中質量較高的返回給下一個模塊,這個工作由線上定向模塊完成。

線上定向模塊過後,剩下的是相對優質的若干個廣告,開始對這若干個廣告進行預估ctr,預估ctr過程中需要去線上存儲器讀取特徵,一般還需要本地加載的一個模型。當ctr預估完成後,就進行算分排序,計算扣費,再加上一些業務策略,從而選出最合適的若干個廣告,返回給廣告投放平臺。算法排序和計算扣費的方式在上一篇博文裏面描述過,不多講。

廣告投放後,會產生日誌,日誌會通過日誌收集系統收集到數據倉庫。

廣告算法工程師會從數據倉庫裏面獲取各種投放日誌,提取特徵,把特徵導入到線上存儲器;還會根據投放日誌,生成訓練樣本,訓練模型,把模型推送到線上服務器,由線上服務器進行加載來給預估ctr使用。

技術實力強大的公司,還能進行在線學習,就是模型隨着投放數據的不斷產生,不斷更新的,這個對工程能力要求很高。

 

1.3 注意點

上一節說的那個系統,很多可以由兄弟團隊幫助搭建,但是,有兩個點需要注意的。

第一個就是離線訓練模型,這裏面文章很大,大公司能用自己弄的mpi並行計算集羣搞得很牛逼。然而不是每個公司都是大公司,也不是每個組都具備這樣的技術實力,那就帶來了問題,早期的公司如何快速實現系統的搭建?

在這個時候,工具論是個絕對可行的方法,如mahout,或者說vw。其中mahout可以有random forest,而vw有logistic regression,這兩種模型在廣告技術上是用得比較廣泛的了,尤其是logistic regression,很多公司都在用。單機是很難達到要求的,並行計算是很重要而且要快速實現的,所以選擇一個好的工具,非常重要。

第二個就是線上存儲系統,離線特徵的設計,如何方便存取也很重要。因爲線上存儲器空間有限,不可能無限擴展,有些特徵如果不做區分,所佔的空間將非常大。爲了縮減數據體積,對特徵做一些清洗,歸併操作非常重要,這些也很考驗數據挖掘工程師的經驗。

 

致謝

多位同事的指點。

 

參考文獻

[1] http://www.techinads.com/archives/41江申_Johnson的博客

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章