天天看點

推薦算法煉丹筆記:标簽工程

作者:一進制  
公衆号:煉丹筆記  
           

Deep Feedback Network for Recommendation(IJCAI20)

背景

做資料挖掘相關的朋友,大多數都聽說過特征工程這個藝術的詞彙,卻鮮有人知道标簽工程這個偉大的詞彙,诶,為什麼很少有人知道呢?因為這個

是我們自己造出來

的,輕噴......但是這個詞卻真的非常契合本篇文章的核心思路,大家都知道标簽髒或者模糊的問題,這個是所有資料裡面不可避免的,那麼如何解決或者緩解此類的問題呢?讓标簽更加置信,這個就是本文探讨的一個重點。具體細節,大家可以閱讀下文慢慢品味.......

無論是顯性回報還是隐性回報都能反映使用者對商品的意見,這對于學習推薦中的使用者偏好至關重要。然而,目前大多數推薦算法隻關注隐式的正回報(如點選),而忽略了其他資訊豐富的使用者行為。在這篇文章中,我們的目的是聯合考慮顯式/隐式和正/負回報,以了解使用者的無偏偏好。具體地說,我們提出了一種新的深度回報網絡(DFN)來模組化點選、未點選和不喜歡行為。DFN有一個内部回報互動元件,該元件捕獲單個行為之間的細粒度互動,以及一個外部回報互動元件,該元件使用精确但相對較少的回報(單擊/不喜歡)從豐富但非常嘈雜(unclick)的回報中提取有用的資訊。

基礎概念

顯示和隐式回報

在推薦系統中,顯式和隐式的回報都是有價值的,許多工作使用特征mapping以及遷移學習的方式來建構顯示和隐式回報的關系,目前大多數算法使用多任務學習方式将顯式和隐式回報結合來聯合處理ranking和rating的任務。在DFN中,我們使用高品質的但是相對稀有的顯式回報來指導學習。

負回報

在平時,我們将缺失的或者未點選的樣本作為負回報,但是這麼做會引入大量的噪音,因為未點選并不代表不喜歡,為了提取隐式回報中的真實負信号,一些模型使用曝光變量或popularity。Zhao等人以點選和取消點選序列作為特征進行強化學習。相比之下,明确的負面回報可以直接反映使用者的負面意見,而其稀缺性限制了其在深層次模型中的使用。據我們所知,我們是第一個将點選、不點選、不喜歡的行為及其互相作用編碼到深層神經推薦中,同時考慮到隐性和顯性回報中的負面信号的。

方法

三種回報

DFN希望可以同時考慮大量的明顯的和隐性的以及正負回報來學習使用者的無偏喜好,此處有三種不同的回報:

  • 隐式正回報:隐式正回報在數量和品質上面是最容易滿足的,在大多數傳統模型,我們考慮點選行為序列{C1,...,Cn}作為隐式的正回報;
  • 顯式負回報:顯式回報是高品質的,但是在現實世界中确是稀有的。此處我們在每個商品後面附加 dislike 按鈕來收集現實的負回報序列{d1,...,dn};
  • 隐式負回報:我們将impressed但是沒有點選的行為序列作為隐式負回報,未點選的序列是所有回報中最多的,但是它需要和大量的噪音以及false-negative信号鬥争。

整體架構

推薦算法煉丹筆記:标簽工程

1. 深度回報互動子產品

内部回報互動元件

:該子產品關注目标商品和特定類型回報中個人行為之間的互動作用。我們在item embedding和position embedding上進行multi-head self-attention,并投射到一個聯合語義空間,形成行為嵌入。以點選行為為例,将目标商品t與點選序列的行為embedding相結合,形成輸入矩陣,

推薦算法煉丹筆記:标簽工程

我們還在特定type的超參數上使用相同的Transformer來生成明顯的負回報embedding, 以及從dislike和unclick的隐式回報embedding,内部回報互動成份很好地捕獲了目标商品和每種回報序列中行為之間的互動。它可以為使用者提供與目标商品相關的積極和消極偏好。

外部回報互動元件

: 隐式的負回報是充分的但也是noisy的,未點選的行為看上去是負的信号,但是曝光給使用者的商品是被特定政策篩選過的,是以也可能包含粗粒度方面的使用者興趣。外部回報互動元件旨在根據點選和不喜歡行為中的強烈回報,區分使用者在不點選行為中真正喜歡和不喜歡什麼。

推薦算法煉丹筆記:标簽工程

2. 特征互動子產品

我們将稀疏的特征分為m個域,{x1,x2,...,xm} ,裡面也包含連續域,例如年齡等,所有的field被表示為one-hot的embedding,lookup table被用來生成所有filed的dense特征{f1,...,fn},此處我們實作了Wide,FM以及Deep的成份來做特征交叉。

2.1 Wide部分
推薦算法煉丹筆記:标簽工程
2.2 FM部分
推薦算法煉丹筆記:标簽工程
2.3 深度部分

此處,我們使用一個二層的MLP來學習高階的特征交叉,輸入是dense特征和回報特征的拼接形式,

推薦算法煉丹筆記:标簽工程
3. 目标優化
推薦算法煉丹筆記:标簽工程

最終我們的損失函數為:

推薦算法煉丹筆記:标簽工程

實驗

1. 效果比較
推薦算法煉丹筆記:标簽工程
  • DFN在所有的baseline上的效果遠超過了Baseline;
  • DFN的又是主要來源于它的深度回報交叉子產品。内部回報互動元件通過transformer成功地捕獲了目标項和個體行為之間的細粒度互動。它可以從不同類型回報中的行為層互動中提取使用者偏好。第二,外部回報互動元件使用精确但相對較少的回報來消除豐富但嘈雜的不點選的行為。是以,DFN可以解決數量與品質的兩難問題。
2. Dislike預測
推薦算法煉丹筆記:标簽工程
  • DFN取得了最好的效果;
  • 主要的改進來自兩點:(1)DFN在損失函數中考慮了顯式的負回報,直接優化了不喜歡預測。(二)深度回報互動子產品引入了内部和外部回報互動,更好地提取了資訊豐富的使用者無偏見的推薦偏好;
  • 對于公平模型的比較,我們進一步将DFN中的不喜歡損失添加到一些強基線中(DIN+);它的結果和DFN相比還是差了很遠。
3. 解耦分析
推薦算法煉丹筆記:标簽工程
  • DFN(click)效果優于DFN(w/o feedbacks),這證明了單擊行為的重要性。
  • 從DFN(click)到DFN(internal)的顯著改進也驗證了unclick和dislike行為可以提供補充資訊,幫助學習使用者無偏見的偏好。
  • 與DFN(内部)和DFN(All)相比,外部回報互動仍然有顯著的改進,這證明了外部回報互動元件在DFN中是有益的;
4. 線上效果
推薦算法煉丹筆記:标簽工程
  • 與DIN相比,DFN在CTR和LCTR名額上實作了一緻的改進,這證明了DFN在實際CTR預測中表現良好。
  • AUT的改進也意味着使用者願意花更多的時間使用我們的系統,因為DFN可以提供更好的推薦商品。
  • DTR的顯著改進表明,DFN能夠對推薦中的使用者負偏好進行模組化,這對于提高使用者的實際體驗至關重要。

結論

在本文中,我們提出一個深度回報網路(DFN),它同時考慮顯式/隐式和正/負回饋來學習使用者的無偏喜好。DFN在多個回報中使用内部行為和外部回報互動。離線和線上的顯著改進驗證了DFN的有效性和魯棒性。在未來,我們将使用更複雜的排名模型進行功能互動。

參考文獻

  1. Deep Feedback Network for Recommendation:https://www.ijcai.org/Proceedings/2020/0349.pdf

http://weixin.qq.com/r/XSjP1zrEzGezrX60931P (二維碼自動識别)