《深度學習推薦系統》第3章各模型要點

AutoRec

image.png

要點:

  • 輸出層的節點數與輸入層相等,訓練這個網絡以期望得到近似恒等函數,網絡結構類似于word2vec

評價:這個模型2015年由澳大利亞國立大學提出, 是個單隱層的神經網絡推薦模型,網絡結構簡單,非常適合深度學習推薦系統的入門模型,但由于比較簡單, 表達能力不足,并且往往共現矩陣非常的稀疏, 更加加大了模型的預測難度, 并沒有真正的被應用。這個東西是將深度學習思想應用于推薦系統的初步嘗試, 拉開了使用深度學習思想解決推薦問題的序幕。

DeepCrossing

image.png

要點:

  • 類別型特征經過embedding處理,數值型特征直接進入stacking層,進行連接,這部分為經典深度學習架構
  • Multiple Residual Units為多層殘差網絡


    image.png
class Residual_block(nn.Module):
    def __init__(self, hidden_unit, dim_stack):
        super(Residual_block, self).__init__()
        # 兩個線性層   注意維度, 輸出的時候和輸入的那個維度一致, 這樣才能保證后面的相加
        self.linear1 = nn.Linear(dim_stack, hidden_unit)
        self.linear2 = nn.Linear(hidden_unit, dim_stack)
        self.relu = nn.ReLU()
    
    def forward(self, x):
        orig_x = x.clone()
        x = self.relu(self.linear1(x))
        x = self.linear2(x)
        outputs = self.relu(x + orig_x)       # 殘差鏈接
        return outputs

評價:微軟于2016年在KDD上提出的模型,它算是第一個企業以正式論文的形式分享深度學習推薦系統的技術細節的模型。由于手工設計特征(特征工程)花費巨大精力,因此文章利用全連接隱層進行特征交叉(但針對性不強)。以現在的角度看待這個模型是非常簡單的,也就是Embedding+MLP的結構,但對當時影響是非常巨大。

NeuralCF

image.png

image.png

image.png

要點:

  • GMF為元素積,MF和MLP的embedding向量是單獨學習的, 并不是共享的, 作者在論文里面也給出了原因, 就是這樣會更加的靈活,可以根據模型的復雜程度確定不同的隱向量的維度

評價:新加坡國立大學2017年提出,動機就是看著MF的內積操作比較簡單, 表達能力不強, 作者就用一個“多層的神經網絡+輸出層”替換了矩陣分解里面的內積操作, 這樣做一是讓用戶向量和物品向量做更充分的交叉, 得到更多有價值的特征組合信息。 二是引入更多的非線性特征, 讓模型的表達能力更強。局限是只使用了用戶和物品的ID特征,沒有加入更多其他特征。

PNN

image.png

要點:

  • z部分為向量拼接,W權重矩陣為N×M,N為Feature長度,M為embedding長度,W[i,j]與相應的z[i,j]對應相乘并加和,有D1個W即可重復D1次,形成D1個輸出,即L1層節點數(實際上就是z → D1的全連接嘛)


    111.png

    111.png
  • p部分分為內積(IPNN)和外積模式(OPNN),與z部分類似,所不同的是W權重矩陣為N×N,z[i,j]改為p[i,j],內積模式為N個embedding兩兩內積(N×N個數),外積模式為N個embedding兩兩外積(N個N×N矩陣)再疊加到一起(N×N個數,等價于所有embedding求和后,與自身進行外積,圖111.jpg)


    image.png

    image.png

    111.jpg
  • 數值型特征不經過Product Layer,而是直接進入L1層的全連接

評價:PNN在2016年由上海交大提出,模型在輸入、Embedding層, 多層神經網絡及最后的輸出層與DeepCrossing沒有區別, 唯一的就是Stacking層換成了Product層。 DeepCrossing把所有特征進行了交叉, 沒有針對性, 所以PNN這里就弄了個Product層, 專門進行特征之間的交叉的, 并且還提出了兩種特征交叉的方式。

Wide & Deep

image.png

要點:

  • deep部分數值型特征直接進入隱層,類別類特征要先進行embedding


    image.png
  • wide部分使用User Installed App和Impression App(曝光的App)的交叉,實際等價于兩類特征元素兩兩相乘(外積)。公式\phi即所謂的“交叉積變換”,當第i個特征屬于第k個組合特征時,c_{ki}的值為1,否則為0。假如特征組合這個特征域長度為n,當長度為r和長度為s的特征域兩兩交叉時,n=r×s;當長度為r、長度為s、長度為t的特征域三三交叉時,n=r×s×t,以此類推。現假設該特征組合域第m維的特征組合為i_j_k,若x_i,x_j,x_k均為1,則,c_{mi},c_{mj},c_{mk}也為1,\phi_m(x)=1(其他c_{mX}均為0,x_X^{c_{mX}}=1,不論x_X取0或1,均不影響\phi_m(x)=1),但若x_i,x_j,x_k其中之一為0,則由于c_{mi},c_{mj},c_{mk}為1,則必有一個值為0,進而\phi_m(x)=0
    image.png

    image.png
  • 帶L1正則化項的FTRL作為wide部分的優化方法(產生稀疏性),而使用AdaGrad作為deep部分的優化方法

評價:谷歌于2016年提出,Wide部分的主要作用是讓模型具有較強的記憶能力,Deep部分的主要作用是讓模型具有泛化能力,開創了組合模型的構造方法,對深度學習推薦模型的后續發展產生重大影響。

DCN(Deep & Cross)

111.png

要點:

  • 類似wide & deep,但wide部分使用多層交叉層(Cross layer)對輸入向量進行特征交叉,每個交叉層均保留了輸入向量和初始化值x_0,因此輸出輸入之間的變化不會特別明顯。
    111.png

    111.png

評價:2017年由斯坦福大學和谷歌的研究人員提出,由多層交叉層組成的Cross網絡在Wide&Deep模型中Wide的基礎上進行特征的自動化交叉,避免了更多基于業務理解的人工特征組合。

FNN

111.jpg

要點:

  • 基本等同于DeepCrossing,但embedding部分用事先訓練好的FM模型進行初始化,加快收斂速度
  • l1和l2層使用tanh激活函數,輸出層使用sigmoid激活函數

評價:2016年由倫敦大學學院提出,引入DNN對特征進行更高階組合,減少特征工程,能在一定程度上增強FM的學習能力,這種嘗試為后續深度推薦模型的發展提供了新的思路。缺點是,兩階段訓練模式,在應用過程中不方便,且模型能力受限于FM表征能力的上限。和DeepCrossing一樣,沒有專門的特征交叉,針對性不強。

DeepFM

111.png

要點:

  • Wide部分與Deep部分共享了輸入特征,參數并未增加
  • 數值型特征無需進行embedding

評價:2017年由哈工大和華為諾亞提出,用FM替換了原來的Wide部分,加強了淺層網絡部分特征組合的能力(彌補了DeepCrossing和FNN的不足),動機類似于DCN

NFM

image.png

要點:

  • Bi-Interaction Pooling(特征交叉池化層),在該層將embedding的數據進行交叉(兩兩元素積,再求和,這一步可以參考FM的方法化簡;該層不涉及任何學習參數,只是線性的對特征進行交叉),然后送入DNN進一步學習。


    111.jpg

    111.jpg
  • 與PNN模型的結構非常相似;與deepFM的區別是,deepFM的FM部分直接送到輸入層,沒有進一步學習

評價:2017年新加坡國立大學提出,將FM和DNN結合起來,FM最多只能學習二階,NFM的思想是在FM學習的二階特征的基礎上加入DNN使其學習更高階的特征,一方面FM學好二階特征之后DNN學習更高階特征會更加容易更好學,另一方面FM學習了低階特征然后DNN繼續學習高階特征,又是一次低階特征和高階特征組合的模型。

AFM

111.jpg

要點:

  • 這個模型之中并沒有DNN模塊,但是保存了NFM的二階交叉特征池化層
  • 需要注意的是Attention的加入,并不是單單給某一個二維交叉特征一個權重,這樣子的話對于未在訓練數據中出現的交叉特征就無法進行權重賦予。所以在上圖中也可以看到Attention是一個Net的形式給出。也就是用了一個MLP將注意力分數進行參數化,該注意力網絡的結構是一個簡單的單全連接層加softmax輸出層的結構


    image.png
  • 防止過擬合常用的方法是Dropout或者L2 L1正則化。AFM的做法是:在Pair-wise Interaction Layer的輸出使用Dropout;在Attention Network中使用L2正則化

評價:2017年由浙江大學和新加坡國立大學研究員提出的一個模型(和NFM是同一個作者),AFM模型其實就是從前面講解過的NFM模型的進化升級版, 該模型和NFM模型結構上非常相似, 算是NFM模型的一個延伸,在NFM中, 不同特征域的特征embedding向量經過特征交叉池化層的交叉,將各個交叉特征向量進行“加和”, 然后后面跟了一個DNN網絡,但是NFM中的加和池化,它相當于“一視同仁”地對待所有交叉特征, 沒有考慮不同特征對結果的影響程度,作者認為這可能會影響最后的預測效果, 因為不是所有的交互特征都能夠對最后的預測起作用。 沒有用的交互特征可能會產生噪聲。或者說加大對預測結果重要的特征,抑制噪聲特征。

DIN

image.png

image.png

要點:

  • 與Base相比,加入了attention機制,attention機制在數學形式上只是將過去的平均操作或加和操作換成了加權和或加權平均操作
  • 商鋪id只跟用戶歷史行為中的商鋪id序列發生作用,商品id亦然

評價:DIN模型是阿里媽媽團隊2018年提出的CTR預估模型,雖然是幾年前提出的,但是現在應用仍比較廣泛

DIEN

image.png

要點:

  • 與DIN相比,使用GRU引入了歷史行為序列信息,GRU解決了RNN梯度消失問題,與LSTM相比參數更少收斂更快
  • 行為序列層作用為embedding;興趣抽取層作用為模擬用戶遷移;興趣進化層在抽取層的基礎上加入attention,模擬與廣告相關的興趣進化,后兩者是關鍵

評價:2019年阿里媽媽提出的DIN演化版本

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,119評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,382評論 3 415
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,038評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,853評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,616評論 6 408
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,112評論 1 323
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,192評論 3 441
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,355評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,869評論 1 334
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,727評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,928評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,467評論 5 358
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,165評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,570評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,813評論 1 282
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,585評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,892評論 2 372

推薦閱讀更多精彩內容