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