推薦系統(tǒng)遇上深度學(xué)習(xí)(三十七)--基于多任務(wù)學(xué)習(xí)的可解釋性推薦系統(tǒng)

論文名稱:《Why I like it: Multi-task Learning for Recommendation and Explanation》
論文地址:https://dl.acm.org/citation.cfm?id=3240365

本文提出了一種通過結(jié)合概率矩陣分解PMF和對抗式Seq2Seq模型的多任務(wù)學(xué)習(xí)框架这吻,可以通過矩陣分解模型得到用戶對物品的評分矗漾,通過Seq2Seq模型可以生成用戶對于物品的評論唁情,在提升推薦預(yù)測準(zhǔn)確性的同時瓤摧,能夠在一定程度上解決推薦系統(tǒng)中難以提供可解釋性推薦結(jié)果的難題源武。我們來一探究竟。

1、整體框架

該模型的整體框架如下圖所示:

可以看到,該模型架構(gòu)可以分為兩個部分:

對抗式Seq2Seq模型(Adversarial Sequence-to-Sequence Learning):這一部分學(xué)習(xí)生成用戶對于物品的評論籽御,并作為推薦結(jié)果的可解釋性依據(jù)。

上下文感知的PMF模型(Context-aware Matrix Factorization):這一部分主要得到用戶對于目標(biāo)物品的評分惰匙。

接下來技掏,我們分別介紹上面兩部分的結(jié)構(gòu)。

2项鬼、對抗式Seq2Seq模型

關(guān)于該部分的模型零截,文章首先介紹了單獨生成用戶u的評論和單獨生成物品j評論的過程,最后簡單介紹了生成用戶u對物品j個性化評論的過程秃臣。注意在上面的框架圖中,對抗式Seq2Seq模型包含了單獨生成用戶評論和單獨生成物品評論兩個部分的結(jié)構(gòu)。

這里我們以單獨生成用戶的評論為例奥此,介紹模型的結(jié)構(gòu)弧哎。單獨生成物品的評論,是同樣的原理稚虎。

首先定義用戶文檔du,i代表用戶i的所有歷史評論的集合撤嫩,而物品文檔dv,j代表物品j的所有歷史評論集合。

經(jīng)典的Seq2Seq模型蠢终,Decoder階段輸入的是已知的正確數(shù)據(jù)序攘,但是這種方式會導(dǎo)致exposure bias,即一步錯寻拂,步步錯程奠。所以,文章首創(chuàng)一種對抗式 Seq2Seq 模型祭钉,與常見的 GAN 方式一樣包括判別網(wǎng)絡(luò)和生成網(wǎng)絡(luò)瞄沙。

2.1 Recurrent Review Generator

生成器G的目的是盡可能生成像用戶i所寫的評論。包含兩個主要的部分:用戶文檔encoder和用戶評論生成decoder慌核。

用戶文檔encoder

該部分的詳細(xì)流程如下:
1距境、對于用戶文檔du,i中的每一條評論,將其進(jìn)行分詞垮卓,得到(w1,w2,...,wT)單詞序列垫桂。
2、單詞序列通過embedding 表得到對應(yīng)的k維embedding粟按,這里的embedding通過首先通過word2vec預(yù)訓(xùn)練得到诬滩,隨后經(jīng)由反向傳播的過程不斷更新。
3钾怔、將單詞序列對應(yīng)的embedding輸入到雙向的GRU循環(huán)神經(jīng)網(wǎng)絡(luò)中碱呼,得到兩部分的輸出:

兩部分的輸出分別代表正向輸入和反向輸入的最后時刻的輸出,然后將兩部分的輸出進(jìn)行拼接宗侦,得到每個評論的對應(yīng)向量hT愚臀。
4、將每個評論的的對應(yīng)向量hT進(jìn)行求平均操作矾利,得到用戶的文本特征向量姑裂,用U~i表示。

用戶評論生成decoder
在得到用戶的文本特征向量之后男旗,decoder生成用戶評論的過程可以用如下的條件概率表示:

這里的decoder的初始隱狀態(tài)是全0的向量舶斧,而非encoder最后時刻的隱藏層狀態(tài)。encoder和decoder通過用戶文本特征向量相聯(lián)系察皇。decoder在t-1時刻得到選擇的單詞yi,t-1時茴厉,得到該單詞對應(yīng)的向量xi,t-1,并與用戶文本特征向量進(jìn)行拼接泽台,作為decoder的t時刻的輸入:

decoder的初始輸入是開始標(biāo)記SOS,在得到結(jié)束標(biāo)記EOS時終止矾缓。在訓(xùn)練初期怀酷,使用用戶真正的評論進(jìn)行參數(shù)預(yù)訓(xùn)練,隨后通過蒙特卡洛搜索的方式生成評論嗜闻。

2.2 Convolutional Review Discriminator

對于判別模型蜕依,其目的不僅僅是區(qū)分評論是否是人寫的,還要區(qū)分生成的評論是否是用戶i所寫的琉雳,所以需要在結(jié)構(gòu)中加入用戶特征向量样眠,該特征向量不是上文所說的用戶文本特征向量,應(yīng)該是對用戶ID所對應(yīng)的Embedding翠肘。該部分借鑒經(jīng)典的textCNN結(jié)構(gòu)進(jìn)行判別檐束,將評論詞匯向量與用戶特征向量進(jìn)行 Concat 處理后作為輸入,模型結(jié)構(gòu)如下所示:

2.3 Adversarial Training for Review Generation with REINFORCE

對判別器來說锯茄,其目標(biāo)是盡可能將人寫的和生成器生成的區(qū)分開來厢塘,其目標(biāo)是最大化下面的式子:

而對生成器來說,采用強(qiáng)化學(xué)習(xí)中策略梯度的方式進(jìn)行訓(xùn)練肌幽,其梯度為:

而最終生成網(wǎng)絡(luò)的損失函數(shù)定義如下:

其中晚碾,U是經(jīng)由矩陣分解模型得到的用戶向量矩陣,如何得到我們將在后面介紹喂急。這還不同于textCNN中輸入的用戶特征向量格嘁。所以我們縷一縷,現(xiàn)在每個用戶有三組不同的向量:用戶文本特征向量廊移、經(jīng)由矩陣分解得到的用戶向量糕簿、textCNN中輸入的用戶向量。

在生成器加入后面的正則項的原因是為了使用戶文本特征向量不僅僅經(jīng)由用戶的評論生成狡孔,同時還考慮用戶在評分矩陣中所體現(xiàn)出的偏好懂诗。

2.4 擴(kuò)展

上面介紹了用戶評論生成器,物品評論生成器和用戶-物品評論生成器都是同樣的過程苗膝,只是將輸入做了一定的替換殃恒。這里我們就不再做過多的解釋了。

3辱揭、上下文感知的PMF模型

這里評分預(yù)測問題所選用的模型是概率矩陣分解PMF模型(Probabilistic Matrix Factorization)离唐。

我們這里簡單介紹一下該模型的原理。該模型基于如下兩個假設(shè):
使用如下兩個假設(shè):觀測噪聲(觀測評分矩陣R和近似評分矩陣之差)為高斯分布问窃,同時用戶屬性向量和物品屬性向量矩陣均為多元高斯分布(即向量中的每一維服從不同的高斯分布)亥鬓,即:

上面第一個式子可以改寫成:

我們的目標(biāo)是基于目前的評分矩陣,找到最有可能的用戶向量和物品向量域庇,即最大化下面的后驗概率:

這里所有的方差都是超參數(shù)嵌戈,所以可以認(rèn)為是常量覆积,所以可以對上面的式子進(jìn)行化簡(這里用戶和物品向量是獨立的):

兩邊取對數(shù)得到:

將多元高斯分布的公式帶入最終化簡可得到:

上面第二行的數(shù)都是常數(shù),所以我們只需要關(guān)心第一行的式子咕别,最大化上面的式子技健,最終可化簡為最小化下面的式子:

有關(guān)詳細(xì)的推導(dǎo)過程,可以參考文章:https://blog.csdn.net/df19900725/article/details/78222076?locationNum=4&fps=1

本文對上面的過程進(jìn)行了一定的改進(jìn)惰拱,主要是用戶屬性向量和物品屬性向量所服從的分布變?yōu)椋?/p>

而最終經(jīng)由化簡得到的損失函數(shù)為:

通過求導(dǎo)數(shù)為0,可以計算得到最終的結(jié)果為:

感興趣的同學(xué)可以自己推導(dǎo)一下上面的過程啊送。

4偿短、模型訓(xùn)練流程

一種常見的訓(xùn)練方式是將兩部分的損失函數(shù)加起來得到一個全局的損失函數(shù)進(jìn)行聯(lián)合訓(xùn)練。但是馋没,無論是生成模型還是評分預(yù)測模型昔逗,兩部分都同時依賴用戶向量U和用戶文本特征向量U~,以及物品向量V和物品文本特征向量V~篷朵。如果想要生成好的評論勾怒,模型會期望所得到的用戶向量U和物品向量V是準(zhǔn)確的,如果想要得到較為精確的評分声旺,模型會期望用戶文本特征向量U~和物品文本特征向量V~是準(zhǔn)確的笔链,但是在訓(xùn)練初期,二者都不是特別精確腮猖,因此會導(dǎo)致兩個任務(wù)之間相互誤導(dǎo)鉴扫。
所以實際中采用類似于EM方法的訓(xùn)練方式,即當(dāng)訓(xùn)練其中一個任務(wù)時澈缺,固定另一個任務(wù)的參數(shù)坪创,反復(fù)交叉訓(xùn)練,其流程如下圖:

5姐赡、實驗結(jié)論

論文使用均方誤差(MSE)作為對預(yù)測評分的評價指標(biāo)莱预。對 Yelp 2013、Yelp 2014 等 5 個國際通用數(shù)據(jù)集進(jìn)行試驗项滑,結(jié)果如下所示依沮。

MT 為本論文所提出的的多任務(wù)學(xué)習(xí)的推薦算法模型,由實驗結(jié)果所示杖们,該算法模型的 MSE 的結(jié)果最多個數(shù)據(jù)集的結(jié)果中都表現(xiàn)最優(yōu)悉抵。

對于推薦系統(tǒng)的算法解釋效果如何,最佳的評價方式就是線上與用戶進(jìn)行互動調(diào)研摘完。但目前論文還沒有這樣做姥饰,論文采用了一種妥協(xié)的方式評價生成的評論質(zhì)量如何。

利用 Perplexity的評價指標(biāo)對比其他生成模型的生成效果以及 tf-idf 的相似性計算方式評價生成的評論與真實評論的近似性孝治,結(jié)果如下所示列粪,本論文模型生成的評論效果最佳审磁。

6、總結(jié)

論文嘗試用生成評論的方式解決推薦算法的解釋合理性難題岂座,并將預(yù)測評分率的效果達(dá)到了 state-of-the-art态蒂。評論生成的方式作為推薦解釋的方式雖然存在爭議,但不失為一條路徑费什。

論文中涵蓋了多種前沿領(lǐng)域的研究熱點钾恢,包括對抗式網(wǎng)絡(luò)、AutoEncoder鸳址、強(qiáng)化學(xué)習(xí)瘩蚪、多任務(wù)學(xué)習(xí)等等,是值得一看的優(yōu)質(zhì)應(yīng)用論文稿黍。

參考文獻(xiàn)

1疹瘦、原文:https://dl.acm.org/citation.cfm?id=3240365
2、http://www.mingriqingbao.com/web/detail/forword/P/36267
3巡球、https://blog.csdn.net/df19900725/article/details/78222076?locationNum=4&fps=1

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末言沐,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子酣栈,更是在濱河造成了極大的恐慌险胰,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,378評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件钉嘹,死亡現(xiàn)場離奇詭異鸯乃,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)跋涣,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,356評論 2 382
  • 文/潘曉璐 我一進(jìn)店門缨睡,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人陈辱,你說我怎么就攤上這事奖年。” “怎么了沛贪?”我有些...
    開封第一講書人閱讀 152,702評論 0 342
  • 文/不壞的土叔 我叫張陵陋守,是天一觀的道長。 經(jīng)常有香客問我利赋,道長水评,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,259評論 1 279
  • 正文 為了忘掉前任媚送,我火速辦了婚禮中燥,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘塘偎。我一直安慰自己疗涉,他們只是感情好拿霉,可當(dāng)我...
    茶點故事閱讀 64,263評論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著咱扣,像睡著了一般绽淘。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上闹伪,一...
    開封第一講書人閱讀 49,036評論 1 285
  • 那天沪铭,我揣著相機(jī)與錄音,去河邊找鬼偏瓤。 笑死伦意,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的硼补。 我是一名探鬼主播,決...
    沈念sama閱讀 38,349評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼熏矿,長吁一口氣:“原來是場噩夢啊……” “哼已骇!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起票编,我...
    開封第一講書人閱讀 36,979評論 0 259
  • 序言:老撾萬榮一對情侶失蹤褪储,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后慧域,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體鲤竹,經(jīng)...
    沈念sama閱讀 43,469評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,938評論 2 323
  • 正文 我和宋清朗相戀三年昔榴,在試婚紗的時候發(fā)現(xiàn)自己被綠了辛藻。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,059評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡互订,死狀恐怖吱肌,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情仰禽,我是刑警寧澤氮墨,帶...
    沈念sama閱讀 33,703評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站吐葵,受9級特大地震影響规揪,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜温峭,卻給世界環(huán)境...
    茶點故事閱讀 39,257評論 3 307
  • 文/蒙蒙 一猛铅、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧诚镰,春花似錦奕坟、人聲如沸祥款。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,262評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽刃跛。三九已至,卻和暖如春苛萎,著一層夾襖步出監(jiān)牢的瞬間桨昙,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工腌歉, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留蛙酪,地道東北人。 一個月前我還...
    沈念sama閱讀 45,501評論 2 354
  • 正文 我出身青樓翘盖,卻偏偏與公主長得像桂塞,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子馍驯,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,792評論 2 345

推薦閱讀更多精彩內(nèi)容