矩陣分解(Koren等人,2009 年)是推薦系統(tǒng)文獻(xiàn)中公認(rèn)的算法。矩陣分解模型的第一個版本是由 Simon Funk 在一篇著名的博文中提出的他在其中描述了分解交互矩陣的想法。由于 2006 年舉行的 Netflix 競賽,它變得廣為人知。當(dāng)時,媒體流媒體和視頻租賃公司 Netflix 宣布了一項提高其推薦系統(tǒng)性能的競賽。能夠在 Netflix 基準(zhǔn)(即 Cinematch)上提高 10% 的最佳團(tuán)隊將贏得 100 萬美元的獎金。因此,本次比賽引起了推薦系統(tǒng)研究領(lǐng)域的廣泛關(guān)注。隨后,大獎由 BellKor 的 Pragmatic Chaos 團(tuán)隊獲得,該團(tuán)隊由 BellKor、Pragmatic Theory 和 BigChaos(您現(xiàn)在無需擔(dān)心這些算法)組成。盡管最終得分是集成解決方案(即許多算法的組合)的結(jié)果,矩陣分解算法在最終混合中發(fā)揮了關(guān)鍵作用。Netflix大獎解決方案技術(shù)報告( T?scher et al. , 2009 )詳細(xì)介紹了所采用的模型。在本節(jié)中,我們將深入探討矩陣分解模型及其實現(xiàn)的細(xì)節(jié)。
21.3.1。矩陣分解模型
矩陣分解是一類協(xié)同過濾模型。具體來說,該模型將用戶-項目交互矩陣(例如,評分矩陣)分解為兩個低秩矩陣的乘積,捕獲用戶-項目交互的低秩結(jié)構(gòu)。
讓R∈Rm×n表示交互矩陣m用戶和n項和值R表示明確的評級。用戶-項目交互將被分解為用戶潛在矩陣 P∈Rm×k和一個項目潛在矩陣 Q∈Rn×k, 在哪里 k?m,n, 是潛在因子大小。讓pu 表示uth一排P和 qi表示ith一排 Q. 對于給定的項目i, 的元素 qi衡量項目在多大程度上擁有電影的流派和語言等特征。對于給定的用戶u, 的元素pu衡量用戶對物品相應(yīng)特征的興趣程度。這些潛在因素可能會衡量那些示例中提到的明顯維度,或者完全無法解釋。預(yù)測評級可以通過以下方式估算
在哪里R^∈Rm×n是預(yù)測的評分矩陣,其形狀與R. 該預(yù)測規(guī)則的一個主要問題是無法對用戶/項目偏差進(jìn)行建模。例如,一些用戶往往會給出較高的評分,或者某些項目由于質(zhì)量較差而總是獲得較低的評分。這些偏差在實際應(yīng)用中很常見。為了捕獲這些偏差,引入了特定于用戶和特定于項目的偏差項。具體來說,預(yù)測評分用戶u給項目i計算方式
然后,我們通過最小化預(yù)測評分和實際評分之間的均方誤差來訓(xùn)練矩陣分解模型。目標(biāo)函數(shù)定義如下:
在哪里λ表示正則化率。正則化項 λ(‖P‖F(xiàn)2+‖Q‖F(xiàn)2+bu2+bi2) 用于通過懲罰參數(shù)的大小來避免過度擬合。這
評論
查看更多