論文地址:Deep Interest Network for Click-Through Rate ...算法
這篇論文來自阿里媽媽的精準定向檢索及基礎算法團隊。文章提出的Deep Interest Network (DIN),實現了推薦系統CTR預估模型中,對用戶歷史行爲數據的進一步挖掘。同時,文章中提出的Dice激活函數和自適應正則方法也優化了模型的訓練過程。網絡
CTR預估任務是,根據給定廣告、用戶和上下文狀況等信息,對每次廣告的點擊狀況作出預測。其中,對於用戶歷史行爲數據的挖掘尤其重要,從這些歷史行爲中咱們能夠獲取更多的關於用戶興趣的信息,從而幫助做出更準確的CTR預估。函數
許多應用於CTR預估的深度模型已經被提出。它們的基本思路是將原始的高維稀疏特徵映射到一個低維空間中,也即對原始特徵作了embedding操做,以後一塊兒經過一個全鏈接網絡學習到特徵間的交互信息和最終與CTR之間的非線性關係。這裏值得注意的一點是,在對用戶歷史行爲數據進行處理時,每一個用戶的歷史點擊個數是不相等的,咱們須要把它們編碼成一個固定長的向量。以往的作法是,對每次歷史點擊作相同的embedding操做以後,將它們作一個求和或者求最大值的操做,相似通過了一個pooling層操做。論文認爲這個操做損失了大量的信息,因而引入attention機制,提出一種更好的表示方式。學習
DIN方法基於對用戶歷史行爲數據的兩個觀察:一、多樣性,一個用戶能夠對多種品類的東西感興趣;二、部分對應,只有一部分的歷史數據對目前的點擊預測有幫助,好比系統向用戶推薦泳鏡時會和用戶點擊過的泳衣產生關聯,可是跟用戶買的書就關係不大。因而,DIN設計了一個attention結構,對用戶的歷史數據和待估算的廣告之間部分匹配,從而獲得一個權重值,用來進行embedding間的加權求和。優化
傳統深度模型和DIN模型的對好比下圖:google
DIN模型在對用戶的表示計算上引入了attention network (也即圖中的Activation Unit) 。DIN把用戶特徵、用戶歷史行爲特徵進行embedding操做,視爲對用戶興趣的表示,以後經過attention network,對每一個興趣表示賦予不一樣的權值。這個權值是由用戶的興趣和待估算的廣告進行匹配計算獲得的,如此模型結構符合了以前的兩個觀察——用戶興趣的多樣性以及部分對應。attention network 的計算公式以下, 表明用戶表示向量,
表明用戶興趣表示向量,
表明廣告表示向量:編碼
a. 評價指標url
不一樣於以往CTR模型採用AUC做爲評價指標,論文采用的評價指標是本身設計的GAUC評價指標,而且實踐證實了該評價指標更可靠。設計
AUC的含義是正樣本得分比負樣本得分高的機率。在CTR的實際應用場景中,CTR預測常被應用於對每一個用戶的候選廣告進行排序,也即最終想獲得的效果是每一個用戶的AUC達到最高。同時,不一樣用戶的AUC之間也確實存在差異,有的用戶天生點擊率就高,有的用戶卻不怎麼喜歡點擊廣告。3d
以往的評價指標是對樣本不區分用戶地進行AUC計算。論文采用的GAUC計算了用戶級別的AUC,在將其按展現次數進行加權,消除了用戶誤差對模型評價的影響,更準確地描述了模型對於每一個用戶的表現效果。
b. 激活函數
論文提出了一種新的激活函數,實驗效果表現優於PReLU,是一種data dependent的激活函數。首先,PReLU的定義以下:
它實際上是ReLU的改良版,ReLU能夠看做是 ,至關於輸出
通過了一個在0點的階躍整流器。因爲ReLU在
小於0的時候,梯度爲0,可能致使網絡中止更新,PReLU對整流器的左半部分形式進行了修改,使得
小於0時輸出不爲0。
然而論文裏認爲,對於全部輸入不該該都選擇0點爲整流點。因而提出了一種data depende- nt的方法,並稱該激活函數爲Dice函數,形式以下:
能夠看出, 值這個機率值決定着輸出是取
或者是
,
也起到了一個整流器的做用。這裏注意獲取
的兩步操做:首先,對
進行均值歸一化處理,這使得整流點是在數據的均值處,實現了data dependent的想法;其次,通過一個sigmoid函數的計算,獲得了一個0到1的機率值,巧合的是最近google提出的Swish函數形式爲
在多個實驗上證實了比ReLU函數
表現更優。
c. 自適應正則
在CTR預估任務中,用戶行爲數據具備長尾分佈的特色,也即數據很是的稀疏。爲了防止模型過擬合,論文設計了一個自適應的正則方法。
表明了特徵
出現的頻率。該正則項懲罰了出現頻率低的item,取得了不錯的效果。
能夠看到DIN的效果好於Base模型,同時Dice激活函數和自適應正則都爲模型效果帶來提高。