假設使用者物品評分矩陣位r,現在有m個使用者,n個物品
我們想要發現k個引雷,我們的任務就是找到兩個矩陣p和q,使這兩個矩陣的乘積近似等於r,即將使用者物品評分矩陣r分解稱為兩個低維矩陣相乘:
例如:對於使用者看過的電影,會有相應的打分,但乙個使用者不可能看過所有電影,對於使用者沒有看過的電影是沒有評分的,因此使用者評分矩陣大部分想都是空的,是乙個稀疏矩陣
如果我們能夠根據使用者給已有電影的打分推測出使用者會給沒有看過的電影的打分,那麼就可以根據**結果給使用者推薦他可能打高分的電影。
例如:乙個m * n的打分矩陣r,可以用兩個小矩陣p mk 和 q k n 的乘積r來近似:
如果得到的**評分矩陣r與原評分位置上的值都近似,那麼我們認為他們的**位置上的值也是近似的。
推薦系統ALS矩陣分解
思想類似線性回歸做 大致如下 定義乙個 模型 數學公式 然後確定乙個損失函式,將已有資料作為訓練集,不斷迭代來最小化損失函式的值,最終確定引數,把引數套到 模型中做 矩陣分解的 模型是 損失函式是 我們就是要最小化損失函式,從而求得引數q和p。矩陣分解模型的物理意義 我們希望學習到乙個p代表user...
推薦系統例項 基於矩陣分解
使用matlab嘗試了隨機梯度下降的矩陣分解方法,實現了乙個比較簡單的推薦系統的原理。常用推薦系統的方法有協同過濾,基於物品內容過濾等等。這次是用的矩陣分解模型屬於協同過濾的一種方法,大致原理是通過一定數量的因子來描述各個使用者的喜好和各個物品的屬性。通過隨機梯度下降法分解後得到兩個矩陣,乙個是使用...
推薦系統 04 矩陣分解演算法
netflix放出的比賽資料是評分資料,它是推薦系統中評分 模式。本次比賽中,矩陣分解模型大放異彩,最著名的是svd以及其各種變體。2.1 為什麼要矩陣分解 矩陣分解演算法,能很好的解決推薦系統中的評分 問題。其中,通常k比m和n小很多。k怎麼取?用k fold確定。2.2.基礎的svd演算法 sv...