其中,u1⋯u5
表示的是5
個不同的使用者,d1⋯d4
表示的是4
個不同的商品,這樣便構成了使用者-商品矩陣,在該矩陣中,有使用者對每一件商品的打分,其中「-」表示的是使用者未對該商品進行打分。
在推薦系統中有一類問題是對未打分的商品進行評分的**。
目前推薦系統中用的最多的就是矩陣分解方法,在netflix prize推薦系統大賽中取得突出效果。以使用者-專案評分矩陣為例,矩陣分解就是**出評分矩陣中的缺失值,然後根據**值以某種方式向使用者推薦。常見的矩陣分解方法有基本矩陣分解(basic mf),正則化矩陣分解)(regularized mf),基於概率的矩陣分解(pmf)等。今天以「使用者-專案評分矩陣r(n×m)」說明三種分解方式的原理以及應用。
對於上述的評分矩陣,通過矩陣分解的方法對其未打分項進行**,最終的結果為:
程式**如下:
#!/bin/python
'''date:20160411
@author: zhaozhiyong
'''from numpy import *
其中,利用梯度下降法進行矩陣分解的過程中的收斂曲線如下所示:
posted on 2018-01-01 17:12收藏
推薦演算法 矩陣分解
相關位址 矩陣分解是乙個非常優雅的推薦演算法,因為當設計到矩陣分解時,我們通常不會太多地區思考哪些專案將停留在所得到矩陣的列和行中。但是其使用這個推薦引擎,我們清楚地看到,u是第i個使用者的興趣向量,v是第j個電影的引數向量。所以我們可以通過u和v的點積來估算x 第i個使用者對第j個電影的評分 我們...
基於矩陣分解的推薦系統
推薦系統產生推薦列表的方式通常有兩種 協同過濾以及基於內容推薦,或者基於個性化推薦。協同過濾方法根據使用者歷史行為 例如其購買的 選擇的 評價過的物品等 結合其他使用者的相似決策建立模型。這種模型可用於 使用者對哪些物品可能感興趣 或使用者對物品的感興趣程度 基於內容推薦利用一些列有關物品的離散特徵...
推薦系統演算法 基於矩陣分解的CF演算法
raditional svd 通常svd矩陣分解指的是svd 奇異值 分解技術,在這我們姑且將其命名為traditional svd 傳統並經典著 其公式如下 traditional svd分解的形式為3個矩陣相乘,中間矩陣為奇異值矩陣。如果想運用svd分解的話,有乙個前提是要求矩陣是稠密的,即矩陣...