用戶在線廣告點擊行為預測的深度學習模型

2021-03-02 人工智慧頭條

本文來自英國倫敦大學學院博士張偉楠在攜程技術中心主辦的深度學習Meetup中的主題演講,介紹了深度學習在在Multi-field Categorical(多欄位分類)數據集上的應用,涉及FM和FNN等算法。

本次分享主要講的是深度學習在Multi-field Categorical 這類數據集上的應用,這種類型的數據主要呈現以下特徵:有多個域,每個域上的數據以ID格式呈現。本課題就是在信息檢索這一大類下的應用,它的應用主要體現在:網絡搜索、推薦系統、廣告展示這些領域。深度學習對連續數據和序列數據(比如:圖片像素、語音、自然語言等)有比較好的效果且目前已經有了比較成熟的應用,如:圖像識別、語音識別等。

而現實世界中又有很多現象需要多欄位的分類數據來描述,那如果用深度學習來處理多欄位的分類數據,效果又會是怎樣呢?本文通過用戶在線廣告點擊行為預測的應用實例來向大家展示深度學習在多欄位分類數據的應用效果。

文章將詳細介紹了FM和FNN算法在處理多值分類數據方面的優勢,並把這兩種算法與神經網絡在特徵變量處理方面的差異做了對比,最後通過一個用戶在線廣告點擊行為預測的實例比較了LR、FM、FNN、CCPM、PNN-I等不同算法的實際預測效果。

深度學習目前的應用現狀

深度學習目前比較成熟的應用主要集中在:機器視覺、語音識別、自然語言處理這些課題上,這些應用領域的共同特點是它們的數據集是連續的。比如:圖形識別中每個圖層與它之後的圖層局部都有比較緊密的聯繫;語音信息前後也有比較強的相關關係;在自然語言處理中每個WORD雖然是離散的,但是其前後的數據也是強相關的。對於這種類型的數據,人可以輕易理解這些數據,但是一般的機器學習算法處理這種數據卻是非常困難的,而深度學習卻可以很好的從底層逐層學習出高層的模式,這就是深度學習的優勢。

而今天我們要了解的數據 Multi-field Categorical Data與上述這些連續或是序列數據是有區別的,Multi-field Categorical Data會有多種不同的欄位,比如:[Weekday=Wednesday, Gender=Male, City=London,…],那這樣我們就比較難識別這些特徵之間的關係。給大家舉例一個直觀的場景:比如現在有一個鳳凰網站,網站上面有一個迪斯尼廣告,那我們現在想知道用戶進入這個網站之後會不會有興趣點擊這個廣告,類似這種用戶點擊率預測在信息檢索領域就是一個非常核心的問題。

那一般普遍的做法就是通過不同的域來描述這個事件然後預測用戶的點擊行為,而這個域可以有很多,比如:

•  Date: 20160320•  Hour: 14•  Weekday: 7•  IP: 119.163.222.*•  Region: England•  City: London•  Country: UK•  Ad Exchange: Google•  Domain: yahoo.co.uk•  URL: http://www.yahoo.co.uk/abc/xyz.html•  OS: Windows•  Browser: Chrome•  Ad size: 300*250•  Ad ID: a1890•  User tags: Sports, Electronics

可能我們還會有這些用戶的身份信息,比如該用戶是學生等,那我們可以通過這些多維度的取值來描述這個事件然後來預測用戶的點擊行為。回到剛才的那個場景,那麼什麼樣的用戶會點擊這個廣告呢?我們可能猜想:目前在上海的年輕的用戶可能會有需求,如果今天是周五,看到這個廣告,可能會點擊這個廣告為周末做活動參考。那可能的特徵會是:[Weekday=Friday, occupation=Student, City=Shanghai],當這些特徵同時出現時,我們認為這個用戶點擊這個迪斯尼廣告的概率會比較大。

這種場景在WEB Search、廣告展示、推薦系統領域會經常遇到,比如Google和百度在做廣告點擊率預測時,他們人工地把這種分類數據做四階或是五階的結合特徵,最終在一個超級大的數據集上去學習特徵,而這個過程需要耗費大量人力去做特徵處理,本次要講的就是應用深度學習去直接學習這類數據特徵。

傳統的做法是應用One-Hot Binary的編碼方式去處理這類數據,例如現在有三個域的數據X=[Weekday=Wednesday, Gender=Male, City=Shanghai],其中 Weekday有7個取值,我們就把它編譯為7維的二進位向量,其中只有Wednesday是1,其他都是0,因為它只有一個特徵值;Gender有兩維,其中一維是1;如果有一萬個城市的話,那City就有一萬維,只有上海這個取值是1,其他是0。

那最終就會得到一個高維稀疏向量。但是這個數據集不能直接用神經網絡訓練:如果直接用One-Hot Binary進行編碼,那輸入特徵至少有一百萬,第一層至少需要500個節點,那麼第一層我們就需要訓練5億個參數,那就需要20億或是50億的數據集,而要獲得如此大的數據集基本上是很困難的事情。

FM、FNN以及PNN模型

因為上述原因,我們需要將非常大的特徵向量嵌入到低維向量空間中來減小模型複雜度,而FM(Factorisation machine)無疑是被業內公認為最有效的embedding model:

第一部分仍然為Logistic Regression,第二部分是通過兩兩向量之間的點積來判斷特徵向量之間和目標變量之間的關係。比如上述的迪斯尼廣告,occupation=Student和City=Shanghai這兩個向量之間的角度應該小於90,它們之間的點積應該大於0,說明和迪斯尼廣告的點擊率是正相關的。這種算法在推薦系統領域應用比較廣泛。

那我們就基於這個模型來考慮神經網絡模型,其實這個模型本質上就是一個三層網絡:

它在第二層對向量做了乘積處理(比如上圖藍色節點直接為兩個向量乘積,其連接邊上沒有參數需要學習),每個field都只會被映射到一個 low-dimensional vector,field和field之間沒有相互影響,那麼第一層就被大量降維,之後就可以在此基礎上應用神經網絡模型。

我們用FM算法對底層field進行embeddding,在此基礎上面建模就是FNN(Factorisation-machine supported Neural Networks)模型:

模型底層先用FM對經過one-hot binary編碼的輸入數據進行embedding,把稀疏的二進位特徵向量映射到 dense real 層,之後再把dense real 層作為輸入變量進行建模,這種做法成功避免了高維二進位輸入數據的計算複雜度。

那我們把這些模型應用到iPinYou數據集上,模型效果如下所示:

那我們可以看出FNN的效果優於LR和 FM 模型。我們進一步考慮FNN與一般的神經網絡的區別是什麼?大部分的神經網絡模型對向量之間的處理都是採用加法操作,而FM 則是通過向量之間的乘法來衡量兩者之間的關係。我們知道乘法關係其實相當於邏輯「且」的關係,拿上述例子來說,只有特徵是學生而且在上海的人才有更大的概率去點擊迪斯尼廣告。但是加法僅相當於邏輯中「或」的關係,顯然「且」比「或」更能嚴格區分目標變量。

所以我們接下來的工作就是對乘法關係建模。可以對兩個向量做內積和外積的乘法操作:

可以看出對外積操作得到矩陣而言,如果該矩陣只有對角線上有值,就變成了內積操作的結果,所以內積操作可以看作是外積操作的一種特殊情況。通過這種方式,我們就可以衡量連個不同域之間的關係。

在此基礎之上我們搭建的神經網絡如下所示:

首先對輸入數據進行embedding處理,得到一個low-dimensional vector層,對該層的任意兩個feature進行內積或是外積處理就得到上圖的藍色節點,另外一種處理方式是把這些Feature直接和1相乘複製到上一層的Z中,然後把Z和P接在一起就可以作為神經網絡的輸入層,在此基礎上我們就可以應用神經網絡去模型了。

那麼對特徵做內積或是外積處理就會產生一個複雜度的問題:假設有60個域,那麼把這些feature做內積處理,就會產生將近1000多個元素的矩陣,如此就會產生一個很大的weight矩陣,那我們需要學習的參數就很多,那我們的數據集可能就滿足不了這個要求。那接下來的做法就是:由於weight矩陣是個對稱陣,我們可以用factorization來處理這個對稱陣,把它轉換為一個小矩陣乘以這個小矩陣的轉置,這樣就會大大減少我們所需要訓練的參數:

模型效果評估

接下來我們可以看一下模型在兩個不同數據集上面的應用效果:

第一個數據集Criteo Terabyte Dataset:這個數據集有13個數值變量,26個類別變量,我們節選了8天將近300GB的數據量,前7天作為訓練集,由於這個數據集正樣本過少,我們對負樣本做了欠抽樣的處理。

第二個數據集iPinYou Dataset:共有24個類別變量,我們截取了連續10天的數據量。

我們應用的比較算法有:LR (Logistic regression)、FM(Factorisation machine)、FNN(Factorisation machine supported neural network)、CCPM(Convolutional click prediction model)、PNN-I(Inner product neural network)、PNN-II(Outer product neural network)、PNN-III(Inner&outer product ensembled neural network)

評估模型我們主要看的是以下幾個指標:

Area under ROC curve (AUC):非常關鍵的指標

Log loss:該值越小,說明點擊率預估的準確度越高 

Root mean squared error (RMSE):值越大模型效果越好,作為參考 

Relative Information Gain (RIG):值越大模型效果越好 

最終各個模型的效果如下:

我們主要看的是AUC這個指標,業內一般模型提升2個百分點就會帶來巨大收益,可以看到從LR到PNN,模型效果提升了近5個百分點,由此可見FM、FNN、PNN這幾類模型效果比LR顯著要好。

其他的實驗結果,比如dropout,業內認為0.5是比較好的值,我們PNN-II模型的實驗結果也證明了這一點:

我們還測試了最佳的隱層層數,隱層層數並不是越多越好,層數過多的模型會出現過擬合效應,這個隱層數是跟數據集大小相關,一般而言數據集越大所需要的隱層就越多,我們這裡模型顯示的最佳隱層是3層:

我們同時在小數據集iPinYou Dataset上看了一下各模型的穩健性,發現PNN-1和PNN-2模型效果超過其他模型一直處在穩步上升的過程:

之後我們還學習了神經網絡不同層級節點數目的分布,一下有四種不同的層級節點分布形態,結果發現constant 和 diamond 這兩種形態的表現效果比較好,increasing形態效果最差,說明我們不應該在第一層就過度壓縮特徵向量:

我們還對比了不同隱層節點的Activation Functions的效果,結果發現tanh 和 relu明顯優於sigmoid:

小結

深度學習在多欄位分類數據集上也能取得顯著的應用效果;

通過內積和外積操作找到特徵之間的相關關係;

在廣告點擊率的預測中,PNN效果優於其他模型。

PPT下載:[用戶在線廣告點擊行為預測的深度學習模型] by 張偉楠

本分享涉及的研究工作由張偉楠與其在上海交通大學和倫敦大學學院的同事共同完成,文章由攜程技術中心(微信公號ctriptech)侯淑芳根據演講內容整理,並經過演講者本人確認和授權發布。

責編:周建丁(zhoujd@csdn.net)

CCAI 2016中國人工智慧大會將於8月26-27日在京舉行,AAAI主席,多位院士,MIT、微軟、大疆、百度、滴滴專家領銜全球技術領袖和產業先鋒打造國內人工智慧前沿平臺,6+重磅大主題報告,4大專題論壇,1000+高質量參會嘉賓,探討人機互動、機器學習、模式識別及產業實戰。門票限時八折優惠中(http://huiyi.csdn.net/activity/product/goods_list?project_id=3023)。

相關焦點

  • 阿里KDD2017論文:基於大規模圖計算的本地算法對展示廣告的行為預測
    點擊右上角即刻關注。在 2017 國際知識發現與數據挖掘大會(KDD)全球論文投稿中,阿里集團和螞蟻金服共有 5 篇論文被大會收錄,本次被收錄論文涵蓋深度學習、大規模圖計算、商品智能排序等多個研究領域,基於真實的業務場景或數據樣本,文中部分方法結論已經在業務中運用。
  • 常見用戶行為分析模型解析(1)——行為事件分析模型
    結合近期的思考與學習,將為大家陸續介紹不同針對用戶行為的分析模型。本文主要介紹行為事件分析。一、什麼是行為事件分析?行為事件分析法來研究某行為事件的發生對企業組織價值的影響以及影響程度。這裡需要了解「Session」的概念,Session 即會話,是指用戶在指定的時間段內在 APP、WEB 上發生的一系列互動。例如,一次會話可以包含多個網頁或屏幕瀏覽、事件、社交互動和電子商務交易。當用戶想了解「訪問次數」、「平均交互深度」、「平均使用時長」、「頁面平均停留時長」、「跳出率」、「頁面退出率」等指標時,都需引入 Session 才能分析。
  • 人工智慧-Andrew Ng版|神經網絡和深度學習|深度學習概述
    下面我們來看幾個監督式學習在神經網絡中應用的例子。首先,第一個例子還是房屋價格預測。根據訓練樣本的輸入x和輸出y,訓練神經網絡模型,預測房價。第二個例子是線上廣告,這是深度學習最廣泛、最賺錢的應用之一。其中,輸入x是廣告和用戶個人信息,輸出y是用戶是否對廣告進行點擊。
  • 你為何而轉:微博用戶轉發行為預測模型的構建與影響因素探究
    摘要:微博用戶的轉發行為已成為信息擴散的關鍵機制。本研究旨在構建模型對轉發行為進行預測,並分析其影響因素。首先根據「5W模型」,提取微博作者、微博文本、微博接受者和相互關係四個一級維度特徵,並細分為39個二級維度特徵,利用支持向量機構建預測模型,再通過新浪微博數據,對模型進行評估。
  • 從模型到部署,FPGA該怎樣加速廣告推薦算法
    其實這些推送都是由機器學習搭建的推薦系統預測的結果。今天就介紹一下推薦系統中的重要成員 CTR 預估模型,下面先讓大家對 CTR 預估模型有一個初步認識。先了解兩個名詞CTR(Click-Through-Rate)點擊率,它是在一定時間內點擊量/曝光量*100%,意味著投放了 A 條廣告有 A*CTR 條被點擊了。
  • 5G廣告行業的22個預測
    本文作者根據5G發展現狀,並結合了同行的思想,發散整編了22個預測,供大家一同參考和學習。>,5G的極速體驗,會使得廣告出現的次數提升到當前不可想像的量級,更快的速度意味著更少的頁面加載時間,以及更低的跳出率,這將大大增加在線視頻廣告的點擊率和可交付率。
  • 從FM推演各深度CTR預估模型(附代碼)
    比如網際網路廣告平臺,為了精細化權衡和保障用戶、廣告、平臺三方的利益,準確的CTR預估是不可或缺的。CTR預估技術從傳統的邏輯回歸,到近兩年大火的深度學習,新的算法層出不窮:DeepFM, NFM, DIN, AFM, DCN…… 然而,相關的綜述文章不少,但碎片羅列的居多,模型之間內在的聯繫和演化思路如何揭示?
  • 學術長文|電力用戶行為模型:基本概念與研究框架
    隨著智能電錶等信息獲取手段的不斷普及,電力系統「物理-信息-社會」深度耦合的特徵日益突出,對電力用戶的分析面臨手段上的突破,以物理模型與數據模型相結合的綜合分析成為重要趨勢。然而目前研究對「物理-信息-社會」深度耦合電力系統的社會視角建模較少,對電力系統中的「用戶」建模不夠。電力負荷作為整個電力系統的重要組成部分,其建模受到了廣泛的關注和研究,具體包括綜合負荷建模和負荷預測等,為電力系統規劃、運行和穩定性分析等奠定了基礎。
  • 深度解析廣告歸因模型,從此看懂渠道轉化So easy~
    因此,這就需要對用戶在完成轉化前接觸到的所有營銷渠道進行分析,利用用戶的廣告數據結合各種數據建模和分析技術,構建從用戶接觸廣告到最終購買的整條路線,從而較為準確的衡量用戶在不同渠道的不同觸點對達成轉化目標的貢獻價值評估。
  • FB開源深度學習推薦模型
    選自Facebook博客作者:Maxim Naumov等機器之心編譯參與:路、一鳴近日,Facebook 開源了深度學習推薦模型DLRM 通過結合協同過濾算法和預測分析方法,提供了推薦系統當前最優效果。隨著深度學習的發展,基於神經網絡的個性化和推薦模型成為在生產環境中構建推薦系統的重要工具。但是,這些模型與其他深度學習模型有顯著區別,它們必須能夠處理類別數據(categorical data),該數據類型用於描述高級屬性。
  • 三萬字整理深度匹配模型
    2.推薦系統的傳統匹配模型2.1 基於Collaborative Filtering的方法2.1.1 CF模型說到推薦系統裡最經典的模型,莫過於大名鼎鼎的協同過濾了。協同過濾基於一個最基本的假設:一個用戶的行為,可以由和他行為相似的用戶進行預測。
  • 深度學習的時間序列模型評價
    在視頻中通過重點學習時間特徵,在靜態圖像上的性能可以提高,從而激發了需要繼續發展深度學習的算法,去捕捉時間關係。早期的嘗試在延伸深度學習算法,視頻數據通過模擬兩幀之間的轉換完成的。時間池化的使用擴展了時間相關性,模型可以學習超過一單獨幀的轉換。但是,時間相關性已被建模,其仍然只是幾幀。對於視頻處理的一個可能的未來發展方向是看模型可以學習更長的時間相關性。
  • 計算廣告之在線廣告市場和背景
    廣泛收集用戶的行為數據和廣告反饋數據,利用雲計算的基礎設施對用戶打上合適的標籤,同樣根據數據在多個廣告競爭同一次展示時作出決策,再將投放的結果統計數據反饋給廣告操作人員以調整投放策略。2.3 計算廣告的核心問題計算廣告的核心問題是,是為一系列用戶與上下文的組合找到最合適的廣告投放策略以優化整體廣告活動的利潤。
  • 深度學習模型及應用詳解!50本包郵贈送福利
    第2 部分(第3~5 章)介紹深度學習在自然語言處理、計算機視覺、預測等應用中常見模型的舉例及實現,包括自然語言處理中的詞嵌入向量模型;圖像理解中普遍使用的卷積神經網絡(CNN)及其在物體檢測(object detection)方面的應用;應用於機器翻譯的遞歸神經網絡模型(RNN)和長短期記憶模型(LSTM)。
  • 我用八字和流運當輸入,讓深度學習模型預測了一波公眾號粉絲數量變化
    還好,如今是計算機資訊時代,機器學習和大數據大行其道,雖然作者沒法掌握術數中的具體數學計算,但是作者完全可以用機器學習,尤其是深度學習跑一下數據,得到術數中數學計算方法的擬合函數。這裡要特別感謝葉隱蟬老哥能夠提供公眾號:隱蟬 的每日公眾號關注人數變化數據。
  • 贈書|從阿里到Facebook,一線大廠這樣做深度學習推薦系統
    從那時起,諸如Deep Crossing、Embedding等的深度學習手段被應用在特徵工程上,並逐漸過渡到全深度學習的網絡。從某種意義上講,Facebook基於GBDT+LR的廣告推薦系統成了連接傳統機器學習推薦系統時代和深度學習推薦系統時代的橋梁。此外,其在2014年就採用的在線學習、在線數據整合、負樣本降採樣等技術至今仍具有極強的工程意義。
  • 根植於工業級大規模深度學習應用場景的PaddlePaddle
    早在2012年,百度就成功將DNN模型應用於語音識別和光學字符識別(OCR)任務;而緊接著在2013年,鳳巢廣告和搜索排序也先後上線深度學習模型,這些都屬於業內首次,也奠定了百度在世界範圍內深度學習研究和應用的領先優勢。從此百度逐步全面進入深度學習時代,在深度學習框架研發、平臺建設和技術創新應用等方面都一直走在前沿。
  • AARRR已過時,「6R」模型才是新一代用戶增長模型
    「6R模型」沉澱了每日互動(個推)多年來深耕移動網際網路領域的實踐經驗以及對數據智能行業的深入理解,在數據和技術的深度融合下增能智慧化運營,為移動網際網路開發者打破增長困境開闢新路徑。一、3個關鍵詞拆解6R模型6R模型的精髓在於它將數據全面、深度地應用於用戶全生命周期管理的各個階段,真正讓用戶增長數據化、智能化。
  • 基於用戶畫像與新聞詞向量的個性化新聞推薦模型
    ,預測用戶對新聞的行為——點擊、不點擊,從而將點擊概率較高的新聞推薦給用戶,提高推薦效果,可廣泛應用於新聞門戶網站,如人民網、網易新聞等。 針對上述問題,本文提出一種基於用戶畫像和內容詞向量融合特徵的個性化新聞推薦模型,分析用戶的信息和歷史行為數據構建用戶畫像,並使用改進的Word2Vec詞向量訓練算法對新聞內容進行訓練,有效衡量新聞之間的相似性,進而採用高效分類算法預測用戶對其推薦內容的行為——點擊、不點擊,並按照用戶點擊概率進行排序,將點擊概率較高的新聞內容推薦給用戶,這樣避免衡量用戶高維稀疏數據之間的相似性並能對新聞內容進行有效的特徵提取
  • 深度學習應對推薦系統,必須懂的3個層面
    應用領域有:電子商務、電影視頻、社交網絡、個性化閱讀、位置服務、個性化郵件、個性化廣告、個性化旅遊、證券、理財、個性化音樂等等。第一個層面:推薦系統的數據分析例如:一方面淘寶用戶在逛淘寶時會留下用戶的個人信息、喜好信息、上下文信息;另外一方面用戶的行為,用戶對寶貝的評價、評分、點擊、瀏覽、搜藏、購買等行為會構成用戶與寶貝商品之間形成行為數據。