最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

推薦系統(tǒng)中的矩陣補(bǔ)全算法

2022-11-20 00:47 作者:021usc  | 我要投稿

數(shù)據(jù)來(lái)源

電影數(shù)據(jù)

在推薦系統(tǒng)中,評(píng)分預(yù)測(cè)問(wèn)題是最基本的問(wèn)題。以用戶電影評(píng)分為例,也就是這個(gè)用戶-電影矩陣。

Fig1. 推薦系統(tǒng)評(píng)分預(yù)測(cè)問(wèn)題

圖1中是用戶對(duì)電影的評(píng)分,但評(píng)分有缺失,因?yàn)橛脩舨豢赡軐?duì)所有電影作出評(píng)價(jià)。那么推薦問(wèn)題就是給用戶合理推薦一個(gè)沒(méi)看過(guò)的電影,合理是指,預(yù)測(cè)用戶應(yīng)該對(duì)這部電影評(píng)分較高.然后這個(gè)問(wèn)題就變成了矩陣補(bǔ)全,也就是填充表中的問(wèn)號(hào)。??

圖像數(shù)據(jù)

圖像修復(fù):簡(jiǎn)單來(lái)說(shuō)就是通過(guò)矩陣填補(bǔ)模型將“打碼”的圖片修復(fù)成原來(lái)的圖片,如下圖所示:

Fig2.? 圖像修復(fù)

圖2中,圖像包含了很多的噪聲,可以通過(guò)一些方法,如RPCA將圖像進(jìn)行恢復(fù),或者將一些缺失的地方進(jìn)行填充。



低秩矩陣分解

矩陣的補(bǔ)全有無(wú)數(shù)種可能,所以如果不對(duì)用戶-電影矩陣(記為Y)的性質(zhì)作出一定假設(shè),那這個(gè)恢復(fù)問(wèn)題就不可能完成。所以首先作出的假設(shè)是Y是低秩的,如果Y是低秩的,那么Y就能夠由兩個(gè)較小的矩陣線性組合而來(lái)。

Y%20%3D%20P%C3%97Q%5ET

假設(shè)Y矩陣維度,即有n_m%C3%97n_u部電影和n_u個(gè)用戶,P的維度是n_m%C3%97k?,Q的維度是n_u%C3%97k,k是特征的維度,也就是Y的秩,上式如果畫出來(lái)就是這樣。

Fig3. 矩陣分解

這表示了一個(gè)電影對(duì)應(yīng)一個(gè)k維特征,一個(gè)用戶對(duì)應(yīng)了k個(gè)參數(shù),反映出有用戶對(duì)電影的K維特征的喜好程度。然后每個(gè)評(píng)分都可以看做是用戶參數(shù)和電影特征的點(diǎn)積。試想如果我們得到了P和Q兩個(gè)矩陣,我們就能對(duì)Y矩陣中的缺失值進(jìn)行預(yù)測(cè)。以上問(wèn)題可以用梯度下降來(lái)求解,因此我們可以構(gòu)造誤差函數(shù),并能計(jì)算偏導(dǎo)。

E%3D%5Csum_%7Bl%2C%20j%3A%20r(i%2C%20j)%3D1%7D%20e_%7Bi%2C%20j%7D%3D%5Csum_%7Bi%2C%20j%3A%20r(i%2C%20j)%3D1%7D%20y%5E%7B(i%2C%20j)%7D-%5Csum_%7Bk%3D1%7D%5E%7BK%7D%20p_%7Bi%20k%7D%20q_%7Bk%20j%7D%2B%5Cfrac%7B%5Clambda%7D%7B2%7D%20%5Csum_%7Bi%2C%20j%3A%20r(i%2C%20j)%3D1%7D%20%5Csum_%7Bk%3D1%7D%5E%7BK%7D%5Cleft(%5C%7CP%5C%7C%5E%7B2%7D%2B%5C%7CQ%5C%7C%5E%7B2%7D%5Cright)

這個(gè)誤差函數(shù)的意義是對(duì)于Y矩陣中存在的值,用P和Q乘積計(jì)算出預(yù)測(cè)值,讓它們之間誤差最小.當(dāng)然,還加入了針對(duì)P和Q的L2正則項(xiàng).這個(gè)誤差函數(shù)對(duì)P和Q中每一項(xiàng)的偏導(dǎo)如下:

%5Cbegin%7Barray%7D%7Bl%7D%0A%0Ap_%7Bi%20k%7D%3Dp_%7Bi%20k%7D%2B%5Calpha%5Cleft(2%20e_%7Bi%20j%7D%20q_%7Bk%20j%7D-%5Clambda%20p_%7Bi%20k%7D%5Cright)%20%5C%5C%0A%0Aq_%7Bi%20k%7D%3Dq_%7Bi%20k%7D%2B%5Calpha%5Cleft(2%20e_%7Bi%20j%7D%20p_%7Bi%20k%7D-%5Clambda%20q_%7Bk%20j%7D%5Cright)%0A%0A%5Cend%7Barray%7D

然后迭代求解即可。

協(xié)同過(guò)濾??

這個(gè)算法本質(zhì)上和低秩矩陣分解一樣,但它里面的K維特征具有現(xiàn)實(shí)意義。一個(gè)電影的K維特征,就是它對(duì)應(yīng)于K種電影風(fēng)格的分量,比如只有兩種風(fēng)格的時(shí)候:

設(shè)一個(gè)電影的k維特征向量為x%3D%5Bx_1%2Cx_2%2C%E2%80%A6%2Cx_k%5D,那么就應(yīng)該存在一個(gè)用戶參數(shù)向量%CE%B8%3D%5B%CE%B8_1%2C%CE%B8_2%2C%E2%80%A6%2C%CE%B8_k%5D。這實(shí)際上和矩陣分解里的P和Q意義相同。

但實(shí)際情況是,這個(gè)電影特征無(wú)法得到,還是要通過(guò)迭代算出來(lái)。針對(duì)電影特征和用戶參數(shù),對(duì)應(yīng)了兩個(gè)代價(jià)函數(shù)。


%5Coperatorname%7Bcost%7D_%7B%5Ctheta%7D%3D%5Cfrac%7B1%7D%7B2%7D%20%5Csum_%7Bj%3D1%7D%5E%7Bn_%7Bu%7D%7D%20%5Csum_%7Bi%3A%20r(i%2C%20j)%3D1%7D%5Cleft(%5Cleft(%5Ctheta%5E%7B(j)%7D%5Cright)%5E%7BT%7D%20x%5E%7B(i)%7D-y%5E%7B(i%2C%20j)%7D%5Cright)%5E%7B2%7D%2B%5Cfrac%7B%5Clambda%7D%7B2%7D%20%5Csum_%7Bj%3D1%7D%5E%7Bn_%7Bu%7D%7D%20%5Csum_%7Bk%3D1%7D%5E%7Bn%7D%5Cleft(%5Ctheta_%7Bk%7D%5E%7B(j)%7D%5Cright)%5E%7B2%7D

%5Coperatorname%7Bcost%7D_%7Bx%7D%3D%5Cfrac%7B1%7D%7B2%7D%20%5Csum_%7Bi%3D1%7D%5E%7Bn_%7Bm%7D%7D%20%5Csum_%7Bj%3A%20r(i%2C%20j)%3D1%7D%5Cleft(%5Cleft(%5Ctheta%5E%7B(j)%7D%5Cright)%5E%7BT%7D%20x%5E%7B(i)%7D-y%5E%7B(i%2C%20j)%7D%5Cright)%5E%7B2%7D%2B%5Cfrac%7B%5Clambda%7D%7B2%7D%20%5Csum_%7Bi%3D1%7D%5E%7Bn_%7Bm%7D%7D%20%5Csum_%7Bk%3D1%7D%5E%7Bn%7D%5Cleft(x_%7Bk%7D%5E%7B(i)%7D%5Cright)%5E%7B2%7D

再分別求導(dǎo),用梯度下降迭代至收斂即可。

核范數(shù)矩陣補(bǔ)全

圖像恢復(fù)里經(jīng)常有這種問(wèn)題,比如圖像被隨機(jī)采樣,試圖從隨機(jī)采樣的圖像恢復(fù)出原圖。首先它將問(wèn)題定義為,認(rèn)為用戶-電影矩陣是由一個(gè)完全矩陣A下采樣而來(lái),而且還加上了噪音L就是那個(gè)下采樣變換。

Fig4. RPCA求秩最小

然后問(wèn)題的解就是要求秩最小,如下:

%5Cmin%20_%7BA%7D%20%5Coperatorname%7Brank%7D(A)%20%5Ctext%20%7B%20subject%20to%20%7D%20L(A)%3DD

%5Cmin%20_%7BA%2C%20E%7D%20%5Coperatorname%7Brank%7D(A)%2B%5Clambda%5C%7CE%5C%7C_%7B0%7D%20%5Cquad%20%5Ctext%20%7B%20s.t.%20%7D%20A%2BE%3DD

但直接去優(yōu)化秩太困難了,這是一個(gè)NP難問(wèn)題,但可以通過(guò)核范數(shù)近似求解,核范數(shù)就是矩陣的奇異值之和。

%5Cmin%20_%7BX%7D%5C%7CX%5C%7C%20%5Ctext%20%7B.%20subject%20to%20%7D%20L(X)%3DY

%5Cmin%20_%7BA%2C%20E%7D%5C%7CA%5C%7C_%7B*%7D%2B%5Clambda%5C%7CE%5C%7C_%7B1%7D%20%5Cquad%20%5Ctext%20%7B%20s.t.%20%7D%20%5Cquad%20A%2BE%3DD

代碼

代碼生成低秩數(shù)據(jù)

通過(guò)一些參數(shù)可以生成相應(yīng)的低秩數(shù)據(jù)集,并通過(guò)算法將該數(shù)據(jù)恢復(fù)。


參考

[機(jī)器學(xué)習(xí)矩陣分解解析Recommender.Matrix.Factorization - 簡(jiǎn)書 (jianshu.com)](https://www.jianshu.com/p/2fc8850e4a1c)


推薦系統(tǒng)中的矩陣補(bǔ)全算法的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
图木舒克市| 潼关县| 读书| 宁德市| 巨野县| 濮阳市| 宕昌县| 哈密市| 九龙坡区| 营山县| 大理市| 寿光市| 孝昌县| 岳西县| 称多县| 晋城| 防城港市| 葫芦岛市| 余江县| 玛沁县| 石家庄市| 溧水县| 井冈山市| 罗甸县| 钟祥市| 昌江| 基隆市| 房山区| 托克逊县| 镇远县| 马边| 墨玉县| 云霄县| 峨边| 梨树县| 安龙县| 巴塘县| 黄龙县| 浦江县| 四子王旗| 云阳县|