推荐算法炼丹笔记:如何让你的推荐系统具有可解释性?
作者:一元, 公眾號:煉丹筆記
可解釋性和有效性是構建推薦系統的兩大關鍵成份,之前的工作主要關注通過引入輔助信息來獲得更好的推薦效果。但這些方法會存在下面的兩個問題:
- 基于神經網絡的embedding方法很難解釋和debug;
- 基于圖的方法需要人工以及領域知識來定義模式和規則,并且會忽略商品的相關類型;(可替代并且互補)
本文提出了一種新的聯合學習框架,我們將知識圖中可解釋規則的歸納與規則引導的神經推薦模型的構建相結合;該框架鼓勵兩個模塊可以互相補并生成有效的可解釋的推薦。
- 歸納規則:從商品為中心的知識圖譜中挖掘, 總結出用于推斷不同商品關聯的常見多跳關系模式,并為模型預測提供人類可理解的解釋;
- 通過引入規則對推薦模塊進行擴充,使其在處理冷啟動問題時具有更好的泛化能力;
所以本文是希望通過聯合訓練推薦和知識圖譜來給出既準確又可解釋的推薦。
背景知識
問題定義
1. 商品推薦(Item Recommendation)
給定用戶U和商品I, 商品的推薦任務就是基于用戶和商品的歷史交互找出最適合每個用戶的商品;用戶會通過購買或者對某個商品打分的形式表述他的喜好, 這些交互可以通過矩陣進行表示,最具代表的方法就是:將用戶和商品embed到低維度的潛在空間中,然后使用用戶-商品交互的結果來進行推薦。
2. 知識圖譜(Knowledge graph)
知識圖譜是由實體(節點)和關系(邊)構成的多關系圖,我們可以使用多個三元組(頭部實體E1, 關系類型r1, 尾部實體E2)來表示知識圖譜的事實。
3. 知識圖的歸納規則
知識圖譜中兩個實體之間可能有許多路徑,一條路徑由關系類型構成(例如P(k)=E1r1E2r2E3就是兩個實體E1和的E2路徑);規則由兩個實體的關系序列定義,例如,路徑和規則的區別在于規則更多關注關系類型而不是實體。
4. 問題定義
給定用戶U,商品I,用戶和商品的交互,商品關聯以及知識圖譜,我們的聯合訓練框架目的在于:
- 基于商品的關系學習商品之間的規則;
- 學習推薦系統推薦對每個用戶基于規則R以及他的交互歷史Iu推薦商品;
該框架輸出一套規則R 以及推薦商品的列表I'.
推薦基礎模型
此處介紹兩種基礎的模型。
1. BPRMF:貝葉斯個性化排序矩陣分解
2. NCF(Neural Collaborative Filtering):神經網絡協同過濾
RULEREC框架
帶有rule learning的推薦主要由下面兩個子任務組成:(1). 基于商品的關系從知識圖譜中進行規則學習; (2). 對每個用戶基于他的購買歷史和得到的規則推薦商品;我們將其建模為多任務學習,于是我們有:
異構圖構建
我們構建異對于推薦和知識圖譜的商品的異構圖,具體如下:
規則學習模塊
規則學習模塊的目的是在異構圖中找到與給定項目關聯A相關聯的可靠規則集。
1. 規則學習
2. 規則選擇
Item推薦模塊
多任務學習
此處我們采用多任務目標函數進行優化:
模型效果
- 在加權的訓練中結合推薦損失和規則選擇損失可以提高推薦效果;
- 從知識圖譜中抽取得到的規則對于商品對的特征向量學習是非常有價值的,學習得到的向量可以加強多個基本的推薦模型;
- 多任務學習的方式對于推薦和規則選擇比規則加權學習貢獻更多;因為提出框架的靈活性,提出的規則能夠和其它推薦算法結合進一步提升模型的效果.
案例研究&效果比較
- 提出的模型比HERec好,但比RippleNet差。
- 多任務學習方法在所有指標上都取得了最好的性能,并且改進效果顯著,這表明多任務學習在規則權重學習中非常有助于獲得更好的推薦結果。
- 由于硬過濾方法可能同時忽略負項目和正項目(從表3中,我們可以看到,有時正項目和項目采購歷史之間沒有規則)。
- 雖然選擇權重有助于推薦(更好同樣的重量),它仍然比一起學習模式更糟糕。
- 對于由四個關聯中的任何一個導出的規則,使用BPRMF的RuleRec_{multi}明顯優于BPRMF算法。
- 使用不同的關聯可以得到相似的結果,但它們對于挖掘項目關系以提高推薦結果都是有價值的。
- 在推薦中當我們使用更多規則的時候,整體效果沒有變得更好;(可能隨著規則的個數增加,很多不好的規則也被帶入到模型中);
- 由于在多任務學習算法中考慮了規則的選擇,我們發現規則集的性能與隨著規則數的增加,BPRMF算法表現出更好的性能;
- 使用BPRMF的的性能明顯優于和BPRMF(對不同規則計數的實驗結果進行配對雙樣本t檢驗)的性能。p<0.01)。結果表明,基于多任務學習的算法能夠處理大量的規則,即使存在一些無用的規則;
小結
本文提出了一種新的、有效的聯合優化框架,用于從包含商品的知識圖中歸納出規則,并基于歸納出的規則進行推薦。該框架由兩個模塊組成:規則學習模塊和推薦模塊。規則學習模塊能夠在具有不同類型商品關聯的知識圖中導出有用的規則,推薦模塊將這些規則引入到推薦模型中以獲得更好的性能。此外,有兩種方法來實現這個框架:兩步學習和聯合學習。
本文研究使用大型知識圖Freebase進行規則學習。該框架能夠靈活地支持不同的推薦算法。我們修改了兩種推薦算法,一種是經典的矩陣分解算法(BPRMF)和一種基于神經網絡的推薦算法(NCF)。所提出的四種規則增強推薦算法在多個領域都取得了顯著的效果,并優于所有的基線模型,表明了本文框架的有效性。此外,推導出的規則還能夠解釋我們為什么要向用戶推薦這個項目,同時也提高了推薦模型的可解釋性。進一步的分析表明,我們基于多任務學習的組合方法(帶有BPRMF的和NCF的$RuleRec_{two})在不同規則數下的性能優于兩步法。不同關聯規則的組合有助于獲得更好的推薦結果。
參考文獻
后續我們會篩選出在我們實踐中帶來提升或者啟發的工作進行細致的解讀與探討,歡迎關注我們的公眾號,也歡迎多交流,我是三品煉丹師: 一元。
煉丹筆記推薦算法煉丹筆記:序列化推薦系統
推薦算法煉丹筆記:電商搜索推薦業務詞匯表
推薦算法煉丹筆記:推薦系統采樣評估指標及線上線下一致性問題
推薦算法煉丹筆記:CTR點擊率預估系列入門手冊
推薦算法煉丹筆記:科學調參在模型優化中的意義
推薦算法煉丹筆記:如何讓你的推薦系統具有可解釋性?
2020年推薦系統工程師煉丹手冊
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的推荐算法炼丹笔记:如何让你的推荐系统具有可解释性?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 推荐算法炼丹笔记:科学调参在模型优化中的
- 下一篇: 推荐算法炼丹笔记:推荐系统采样评估指标及