推薦系統 xDeepFM架構詳解

2021-09-26 05:39:10 字數 1946 閱讀 1824

1.xdeepfm並不是由deepfm延伸而來的,而是通過deep & cross延伸過來的,其繼承了deep & cross 可以控制高階特徵互動的特點。

2.感覺xdeeofm最難理解的是cin的架構,從形式上來看 確實是一種 rnn 與 cnn相互結合的方式, 很精妙。

1.先看下整體的xdeepfm的架構吧。首先從大致的體系來看, 包括五大部分(可參照deepfm):

*對原始 特徵的field形式包裝,把 特徵one-hot形式 包裝進同一field來克服 稀疏性, 這裡就對應包括構建特徵字典 和 特徵索引矩陣、特徵值矩陣分解的問題。

*在embeding層對 樣本做embeding轉換,embeding其實相當於是 全連線層,進行embedding 按照 deepfm相似的形式 來獲取每個樣本長度為  field_size的  embedding表示,這樣embedding後的樣本矩陣應該為(field_size,embedding_size)

*簡單的一階計算部分,這部分並沒有使用到 特徵embedding的結果,而是w*x那種類似lr的一階計算。

*cin模型(壓縮互動網路)架構進行可控的 自動學習顯式的高階特徵互動,這裡說顯式是因為其 傳遞了 deep &  cross 思想 可以通過層數控制 進行學習的最高端數,這種可控的能表示成 wij * (xi * xj)形式的就成為顯式。 同時也是可以特徵向量級的互動,對於  向量級 和 顯式的理解可參看注1.  關於cin的結構接下來會詳細的介紹,其是一種非常巧妙的結合 cnn+rnn思想的架構。

*最後是很常見的 dnn部分的結構,會對經過embedding轉換後的 樣本特徵進行 隱式的高階 特徵互動,這算是經常用到的模型結構,類同於deepfm、wide&deep中的使用。

2.現在來詳細看下 cin互動網路的結構,同樣我們對cin進行觀察時,也從大到小進行觀察,首先整體的cin架構如下,其是一種類 cnn+rnn的形式,首先我們是有卷積和不斷對 hi-1 和 xo來計算出新的特徵圖,通知 也是一種不斷從左到右構建的過程,類似rnn的時序,這裡是不斷加深對特徵的高階操作(但是不同於deep&cross的高階操作,這裡在l層時,cin只包含l+1層階的組合特徵, 而在cross中,在第l層,包含了1階-l+1階的所有組合特徵)。

其整體生成每個後一層k層 特徵圖的 公式表達如下,其中前一層  隱層的狀態圖是

通過對以上公式的觀察,我們可以發現其可以分成兩步:

(1)第一步是內部的

(2)接下來是對應公式中的卷積核 和  第一步結果的計算, 其中w是乙個卷積核,使用hk個尺寸為

至此,我們已經完成對 cin   過程完全的介紹了,為了便於理解,下圖是對整體過程的形象化的描述。  首先是兩部分的內積計算

注1. 對 特徵向量級  和  元素向量級、   顯式 和隱式的解釋。

推薦系統CTR預估模型之xDeepFM

xdeepfm 是msra發表在kdd 2018上的一篇文章,用於ctr預估。前面已經介紹過deep fm和deep cross networks兩種模型,xdeepfm可以看成結合了這兩種模型的優點。dnn模型以bit wise的形式把特徵進行交叉,而fm則以vector wise的形式進行特徵交...

推薦系統架構 推薦系統(1) 業界推薦系統架構

1.1業界主流推薦系統架構 業界推薦系統通用架構 1.2使用者本身資料 1.3物品本身資料 1.4使用者行為資料 2.1基於離線訓練的推薦系統架構設計 常用演算法 邏輯回歸 logistics regression 梯度提公升決策樹 gbdt 和因式分解 fm 架構設計 2.2面向深度學習的推薦系統...

推薦系統架構

實時性 推薦系統要根據使用者的上下文來實時更新推薦內容,使用者的興趣也是隨著時間而改變的,需要實時更新。其中,前三者是和機器學習沒有任何關係的,但卻是推薦效果最好的三種方式。一般說來,這部分內容應該佔到總的推薦內容的80 左右,另外20 則是對長尾內容的個性化推薦。核心模組 資料路徑 1 請求的重新...