【論文導讀】DLP-KDD2019|BST---使用Transformer進行序列推薦

2021-02-24 機器學習初學者
前言

本次分享一篇使用Transformer作為用戶行為序列建模的CTR預估文章。論文較短,只有4頁,感興趣的同學可以閱讀下原文[1]。
本文約1.7k字,預計閱讀10分鐘。

概要

本文「Behavior Sequence Transformer for E-commerce Recommendation in Alibaba」[1]是2019年阿里團隊發表在DLP(Deep Learning Practice for High-Dimensional Sparse Data)-KDD上關於序列推薦的一篇論文。文章最主要的內容就是「通過Transformer模型在用戶行為序列中捕獲序列信息來進行推薦」。其餘內容與其他Embedding&MLP的模型沒有本質上的變化。本文主要聚焦於推薦系統中排序階段的任務,「即可以把它看作是一個CTR預估任務」

與WDL、DIN的對比

WDL(Wide&Deep)模型只是單純的將所有Embedding特徵進行拼接,且忽略了用戶行為序列的先後信息。

DIN(Deep Interest Network)則是應用一個Attention機制來加大與目標物品相似的歷史物品的權重,但Attention沒有位置的先後順序(即打亂歷史物品的順序,並不影響最後的結果),因此DIN依舊沒有考慮到用戶行為的序列特徵。

為了解決上述模型缺陷,作者受Transformer的啟發---「可以通過自注意機制更好地捕捉句子中單詞之間的依賴關係」,使用Transformer來提取用戶行為序列中物品之間的「依賴關係」。

【題外話】作者在該篇文章中,只與WDL、DIN這些非序列化模型進行對比,個人認為只能證明序列化推薦的有效性,很難說明Transformer在序列推薦有很好的應用,後期實驗也證明了這一點。

模型結構

BST的模型結構主要由Embedding層、Transformer層與MLP層組成,如下所示:

Embedding層

Embedding層依舊是將所有的高維稀疏的輸入特徵映射為低維密集型特徵。但由於是序列推薦,所以將所有的特徵分成了三塊內容:Other Features、User Behavior Sequence、Target Item。

Other Features:包括用戶的基本特徵、目標物品的基本特徵、上下文信息、交叉特徵,先將每個大的種類特徵內的所有內容進行拼接,再分別進行embedding映射為一個低維向量,最後得到一個embedding矩陣,

User Behavior Sequence:由於表示一個序列特徵,且不使用RNN神經網絡,因此需要一個Positional Feature表示相對位置,Sequence Item Features表示歷史物品信息。其中文中指出,item_id, category_id已經完全充分能表示物品信息。Positional Feature與Sequence Item Feature分別得到兩個embedding低維向量,再進行拼接,得到一個embedding矩陣,

關於Positional Feature Embedding,文章單獨進行了說明:「Attention is all you need」[2]一文中提到,可以使用位置的Embedding方法來捕捉句子的順序信息。當然,在序列推薦中,也能捕捉用戶歷史行為的一個先後順序。對於每一個歷史物品

其中

Transformer層

該部分,作者直接引入了Transformer模型來捕獲用戶的行為序列信息。

「自注意力機制層:」

使用多頭自注意力機制:

其中

「前向網絡層:」

為了克服過擬合等問題,作者在原有Transformer模型上,加入了dropout與LeakyReLU在自注意力機制層與前向網絡層之間:

「堆疊多個自注意力機制塊:」

以上部分稱為一個attention block,對於

作者在實驗中也對這個超參數進行了討論。

具體的Transformer模型的內容可以參考原文:「Attention is all you need」,或閱讀NIPS2017|行為序列建模的方式---Transformer。

MLP層

使用了如上圖圖所示的全連接神經網絡。

損失函數使用了CTR預估最為常見的交叉損失:

實驗

文章提出的BST模型整體結構非常簡單,最主要的內容就是在序列推薦中引入Transformer進行了嘗試,且取得了不錯的效果。

但我們發現,

This may be due to the fact that the sequential dependency in users』 behavior sequence is not as complex as that in sentences in machine translation task, thus smaller number of blocks are enough to obtain good performance.Similar observation is reported in [7].

即用戶行為序列並不像機器翻譯序列那樣複雜,很小的block也能充分獲得不錯的性能。並且表示「「Self-attentive sequential recommendation」」[3]一文中也是相似的情況。

討論

1、文中只和兩個非序列推薦模型進行比較,那和其他序列模型,例如DIEN進行對比,結果會怎麼樣?

2、關於文中提到的block數量的解釋是否具有說服力?(個人並不清楚)

3、關於位置編碼的設計,文章使用的方法與Transformer不同,不過時間差確實能反應兩個歷史物品的一個先後順序大小。

總結

本篇文章提出的模型BST是簡單的應用Transformer結構,實現序列推薦,完成CTR預估。

本篇論文也會進行復現,大家可以star一下我的github項目:https://github.com/ZiyaoGeng/Recommender-System-with-TF2.0,目前已有138🌟。

參考文獻

[1] Chen Q, Zhao H, Li W, et al. Behavior sequence transformer for e-commerce recommendation in Alibaba[C]//Proceedings of the 1st International Workshop on Deep Learning Practice for High-Dimensional Sparse Data. 2019: 1-4.
[2] Vaswani A, Shazeer N, Parmar N, et al. Attention is all you need[C]//Advances in neural information processing systems. 2017: 5998-6008.
[3] Wang-Cheng Kang and Julian McAuley. 2018. Self-attentive sequential recommendation. In ICDM. 197–206.

相關焦點

  • AI攢論文指日可待?Transformer生成論文摘要方法已出
    論文地址:https://arxiv.org/abs/1909.03186Transformer 怎樣生成論文摘要語言模型的訓練目標是使用某個大型文本語料庫來學習估計任意的詞或字符序列的聯合概率。它們已經在多種不同的語言任務上取得了出色的表現。
  • 谷歌的KDD 2017:九篇錄用+雙料博士論文獎
    這一研究課題使用局限圖原語(例如 ego-network 和截取的隨機散列)有效地利用每個頂點周圍的信息進行分類、聚類和異常檢測。值得一提的是,這項工作在 DeepWalk 中採用了神經網絡圖形嵌入的隨機遊走範式。
  • 這六大方法如何讓Transformer輕鬆應對高難度長文本序列?
    為了進行梯度運算,必須在訓練過程中緩存激活值,除非使用諸如梯度檢查點之類的重計算策略,因此對於每個示例來說,存儲所有 12 層 BERT base 的注意力矩陣就需要大概 150MB 的內存。當序列長度為 1024 時,內存需求則變為約 600MB,而序列長度為 2048 時,對於每個示例的注意矩陣而言,內存需求就已達到約 2.4GB。
  • 谷歌的KDD 2017:九篇錄用+雙料博士論文獎,超百位員工參與
    這一研究課題使用局限圖原語(例如 ego-network 和截取的隨機散列)有效地利用每個頂點周圍的信息進行分類、聚類和異常檢測。值得一提的是,這項工作在 DeepWalk 中採用了神經網絡圖形嵌入的隨機遊走範式。
  • 滴滴KDD 2019 論文詳解:基於深度價值網絡的多司機智能派單模型
    本次KDD大會首次採用雙盲評審制,共吸引了全球範圍內約1879篇論文投遞。其中,Applied Data Science track收到約 700 篇論文投稿,最終45篇被接收為Oral論文,100篇被接收為Poster論文;而Research track 共收到了 1179 篇投稿,最終111篇被接收為Oral論文,63篇被接收為Poster論文。
  • 假期薦讀:一文看盡2019-2020各大頂會 Graph Neural Network 論文(附連結)
    推薦理由:該論文來自NIPS 2019。3、證明了圖變換網絡學習的節點表示的有效性,從而獲得了最佳的性能,而現有的方法在異質圖的所有三種基準節點分類中都使用了領域知識。http://data.holdenhu.site/papers/graph/graph-transformer-networks.pdf3、Can Graph Neural Networks Help Logic Reasoning?
  • Science一周論文導讀
    本研究綜合使用多種生物物理學方法,發現了決定PLD整體相行為的序列特徵。PLD中芳香族殘基的數量(化合價)可決定稀溶液中,以及兩相混合狀態下PLD分子的溫度依賴性壓縮程度。此外,芳香族殘基規則排列的均勻構象化也可作為序列特徵,在抑制聚集的同時促進LLPS。基於此,本研究開發了一種可以根據序列預測PLD相行為的數值模型。
  • 論文主題、引用量、中國機構 & 華人學者,KDD 2020 關鍵數據搶先看
    1論文主題 Top 5AMiner 統計的會議論文數據顯示,本次會議的熱點話題有圖神經網絡,圖嵌入,推薦,表示學習等。多元時間序列預測背後的一個基本假設是其變量相互依賴,但仔細觀察,可以說現有的方法未能充分利用變量對之間潛在的空間相關性。近年來,圖神經網絡(GNNs)在處理關係依賴方面表現出了很高的能力。GNNs需要定義良好的圖結構來進行信息傳播,這意味著它們不能直接應用於依賴關係未知的多元時間序列。本文提出了一個專門針對多元時間序列數據設計的通用圖神經網絡框架。
  • 深2.5至4倍,參數和計算量卻更少,DeLighT Transformer是怎麼做到的?
    這種寬且深的表示有助於用單頭注意力和輕量級前饋層替換 transformer 中的多頭注意力和前饋層,從而減少網絡參數量。重要的是,與 transformer 不同,DExTra 模塊可以獨立於輸入大小進行縮放。通過使用靠近輸入的較淺和窄的 DeLighT 塊以及靠近輸出的較深和寬的 DeLighT 塊,在各個塊之間更高效地分配參數。
  • 解析Transformer模型
    轉自 | GiantPandaCV作者 | zzk【導讀】GiantPandaCV導語:這篇文章為大家介紹了一下Transformer模型,Transformer模型原本是NLP中的一個Idea,後來也被引入到計算機視覺中,例如前面介紹過的DETR就是將目標檢測算法和Transformer進行結合,另外基於
  • Nature 一周論文導讀
    本研究從733份包含438種細胞和組織類型及狀態的人類生物樣本中繪製出高解析度DHS圖譜,並對人類基因組序列中360萬個DHSs進行描述和數字索引。這些圖譜高度解析了人類基因組的順式調控部分,編碼了不同細胞、組織選擇性調控程序。該研究成果為人類基因調控構建提供了全新角度。
  • Science一周論文導讀 | 2020年3月6日
    本研究發現人類皮層的波紋振蕩反映了組織成記憶特異性序列的單個單元的脈衝活動。尖峰序列在記憶形成過程中反覆出現,在成功的記憶提取過程中重放。數據表明,人類的情節記憶由特異神經活動序列編碼,記憶回想涉及重置該活動的時間順序。
  • 中國軍團稱霸KDD:華人博士獲最佳論文,清華北大華為等榜上有名
    強調論文可復現而且最重要的是,KDD今年還在投稿通知中特別強調——可復現性——且規定該項會作為最佳論文評選資格,論文需要額外提交內容展示可復現內容。包括實驗方法、經驗評估和結果,也鼓勵在論文中公開研究代碼和數據,儘可能完整地描述論文中使用的算法和資源。
  • Science一周論文導讀|2020年10月30日
    Ridgecrest earthquake sequence 與2019裡奇克萊斯特地震序列附近裂縫相關的表面變形 材料科學 Materials Science
  • 論文詳解:滴滴大數據預測用戶目的地,準確率超90% | KDD 2017
    雷鋒網(公眾號:雷鋒網)將對這篇論文進行詳細解讀。論文解讀相比於在搜尋引擎中找到一個想要的網頁,在茫茫車潮中匹配到一輛載你去目的地的車輛會更加複雜。因為網頁可以持續呈現一整天,甚至半個月;但車輛是高速移動的,乘客和司機的相對位置一直在實時變動。
  • 不一樣的論文解讀:2018 KDD best paper「Embeddings at Airbnb」
    可喜的是,據我所知,國內一線團隊的實踐水平並不比論文中描述的差,而且就是 W&D,國內也有團隊在論文沒有出來之前就做出了類似的結果,可見在推薦這樣的場景,大家在一個水平線上。希望未來國內的公司,也發一些真正實用的 paper,不一定非要去發聽起來 fancy 的。自從 Word2vec 出來後,迅速應用到各個領域中,誇張一點描述,萬物皆可 embedding。
  • Nature一周論文導讀|2020年11月26日
    本研究將螢光金剛石用作為體外診斷的超靈敏標籤,使用一種微波場來調控放射強度和頻率域分析,以分離出所需信號。研究人員成功實現了8.2x10-19摩爾的檢測極限,其靈敏度是使用金納米顆粒的105倍。該超靈敏量子診斷平臺有望應用於多種診斷測試和疾病的早期診斷,從而讓更多患者和群體受益。
  • 熱門的模型跨界,Transformer、GPT做CV任務一文大盤點
    將 DETR 的結構具體化,如下圖所示:DETR 使用常規的 CNN 主幹來學習輸入圖像的 2D 表示。模型將其展平並在將其傳遞到 transformer 編碼器之前進行位置編碼補充。然後,transformer 解碼器將少量固定數量的學得位置嵌入作為輸入,稱為對象查詢,並另外參與編碼器的輸出。
  • Transformer在CV領域有可能替代CNN嗎?
    新智元推薦 來源:極市平臺&知乎 編輯:SF【新智元導讀】Transformer有可能替換CNN嗎? 當然,FCN也存在許多的缺點,諸如分割結果粗糙等,當這並不妨礙我們基於它的思想去進行很多的拓展。 比如最近幾年提出的很多分割論文都是針對它去進行改進,有人提倡改善編碼器利用更強大的卷積模塊去提取更具備代表性的特徵。
  • Nature一周論文導讀|2020年10月29日
    阿金)本研究對426名個體進行全基因組測序分析探索非洲基因組多樣性的廣度。49960名個體進行外顯子測序和表徵 (導讀 阿金)英國生物庫是對於502543名個體的前瞻性研究。病毒遺傳序列分別與該家庭的患者一致。狗在隔離中未出現症狀。該結果為SARS-CoV-2的人-動物傳播提供證據,但被感染的狗能否將病毒傳給其他動物或人類尚不明確。