一锐秦、標(biāo)題
Collaborative Filtering with Recurrent Neural Networks
二备燃、來(lái)源
三讹躯、問(wèn)題
作者通過(guò)分析囱挑,認(rèn)為傳統(tǒng)推薦常用的協(xié)同過(guò)濾方法可以看作時(shí)間序列的預(yù)測(cè)問(wèn)題醉顽。進(jìn)而引入RNN這一處理序列問(wèn)題常用的深度網(wǎng)絡(luò)學(xué)習(xí)模型。
四平挑、主要方法
4.1 RNNs(LSTM)
將數(shù)據(jù)集中出現(xiàn)的每個(gè)item視作一個(gè)詞游添,item的集合視作詞的集合。借用bag-of-words的思想弹惦,將每個(gè)item用one-hot向量表示否淤。同時(shí)將每個(gè)用戶(hù)的歷史行為作為采樣的時(shí)間序列。每一時(shí)刻棠隐, RNN模型的輸入即為對(duì)應(yīng)時(shí)刻item的one-hot編碼表示石抡,輸出則為每個(gè)item對(duì)應(yīng)神經(jīng)元的softmax值的大小(所有用戶(hù)行為中出現(xiàn)的item均有對(duì)應(yīng)的softmax的輸出)助泽福可以根據(jù)問(wèn)題需要返回softmax最大的前k個(gè)值作為推薦的item.
??這里,為了避免梯度消失的問(wèn)題嗡贺,文中采用"gated?RNN"即LSTM.目標(biāo)損失函數(shù)為item類(lèi)別的交叉熵函數(shù)隐解。一般形式為
4.2 Markov Chain
Markov?Chain是時(shí)序預(yù)測(cè)中比較常見(jiàn)的方法。本文中,作者利用Markov?Chain续徽,將用戶(hù)的行為中的item視為不同的state.不同state的轉(zhuǎn)移概率表示用戶(hù)從一個(gè)item轉(zhuǎn)向下一個(gè)item的可能性的大小蚓曼。推薦時(shí)返回轉(zhuǎn)移概率最大的前k個(gè)item.
4.3 KNN(Userbased-CF)
基于user屬性的協(xié)同過(guò)濾是傳統(tǒng)的推薦方法之一∏张ぃ基于以下打分函數(shù)纫版,給出top-N的結(jié)果。
4.4 BPR-MF
該方法是目前推薦領(lǐng)域先進(jìn)的矩陣分解方法膀斋,在Mymedialite上有開(kāi)發(fā)成熟的工具包梭伐。
五、相關(guān)工作
- 提出將協(xié)同過(guò)濾視為序列預(yù)測(cè)問(wèn)題的思想概页。
??作者提出籽御,傳統(tǒng)基于協(xié)同過(guò)濾的推薦方法,無(wú)論基于何種特征惰匙,都沒(méi)有考慮用戶(hù)歷史行為的時(shí)間屬性,只是將歷史行為中的每個(gè)item統(tǒng)一考慮铃将。這樣處理帶來(lái)的最大問(wèn)題在于推薦系統(tǒng)無(wú)法分析用戶(hù)喜好的變化情況项鬼,從而給出更符合用戶(hù)現(xiàn)階段喜好的推薦結(jié)果。那么劲阎,如果基于協(xié)同過(guò)濾“由過(guò)去绘盟,看未來(lái)”的思想,如果將該問(wèn)題視作序列預(yù)測(cè)問(wèn)題悯仙,一方面可以更好的分析用戶(hù)的興趣愛(ài)好的變化情況給出更好的推薦結(jié)果龄毡,另一方面也可以將在時(shí)序預(yù)測(cè)問(wèn)題中廣泛使用的RNN深度網(wǎng)絡(luò)模型引入到推薦系統(tǒng)中。 -
分析其他特征對(duì)推薦結(jié)果的影響
??前述RNN模型在輸入時(shí)锡垄,只將item的one-hot屬性作為輸入信息沦零。作者這里考慮將其他特征輸入模型,比如用戶(hù)的信息货岭,item的屬性路操,用戶(hù)與item交互的信息等。作者這里將這些屬性也用one-hot編碼的形式表示千贯,與之前的item向量拼接作為新的輸入屯仗。下表是相關(guān)結(jié)果:
??從圖中可以看出,引入新的特征對(duì)模型的提升作用并不明顯搔谴,由此作者認(rèn)為魁袜,時(shí)間序列已經(jīng)包含大部分這里加入的信息,我們可以通過(guò)對(duì)時(shí)間序列的分析來(lái)隱含的利用信息。
六峰弹、簡(jiǎn)評(píng)
之所以選擇這篇論文店量,一個(gè)重要原因在于自己考慮將RNN用在時(shí)間序列預(yù)測(cè)問(wèn)題上,本篇論文提出的思路對(duì)自己是一個(gè)很好的啟發(fā)垮卓。本篇論文的可貴之處不僅在于提出了看待協(xié)同過(guò)濾問(wèn)題的新的角度垫桂,更在于他對(duì)模型參數(shù)進(jìn)行了詳細(xì)的分析,有利于具體的工程實(shí)踐粟按。但本文也存在一些瑕疵诬滩,比如就數(shù)據(jù)集本身而言,并不具備時(shí)序的信息灭将,而且數(shù)據(jù)量是否可以減弱過(guò)擬合的影響疼鸟,這些問(wèn)題顯得作者的結(jié)論說(shuō)服力有待加強(qiáng)。再者處理RNN的輸入時(shí)庙曙,作者只提到將item做one-hot編碼空镜,但不同時(shí)間序列可能屬于不同用戶(hù),這一點(diǎn)對(duì)于RNN模型的訓(xùn)練影響捌朴,作者在訓(xùn)練時(shí)是否考慮這一因素文中也沒(méi)有提及吴攒。總的說(shuō)來(lái)砂蔽,本篇論文提出的思想難能可貴洼怔,但具體到工程應(yīng)用,還需要更多工作要做左驾。
??以上都是本人自己的觀(guān)點(diǎn)看法镣隶,肯定存在疏漏錯(cuò)誤的地方,歡迎交流討論诡右。