協同過濾中相似度矩陣的計算

2021-08-21 10:53:09 字數 571 閱讀 2607

對使用者的行為進行分析得到使用者的偏好後,可以根據使用者的偏好計算相似使用者和物品,然後可以基於相似使用者或物品進行推薦。這就是協同過濾中的兩個分支了,即基於使用者的協同過濾和基於物品的協同過濾。

關於相似度的計算,現有的幾種方法都是基於向量(vector)的,其實也就是計算兩個向量的距離,距離越近相似度越大。

在推薦場景中,在使用者-物品偏好的二維矩陣中,我們可以將乙個使用者對所有物品的偏好作為乙個向量來計算使用者之間的相似度,或者將

所有使用者

對某個物品的偏好

作為乙個向量來計算物品之間的相似度。

1.同現相似度

計算公式為:

分母|n(i)|是喜歡物品i的使用者數,而分子|n(i)∩n(j)|是同時喜歡物品i和物品j的使用者資料。

為了防止j為熱門物品,修正為:

最初用於計算歐幾里得空間中的兩個點的距離,假設x、y是n維空間的兩個點,它們之間的歐幾里得距離是:

可以看出,當n=2時,歐幾里得距離是平面上的兩點的距離。

當用歐幾里得距離表示相似度時,一般採用一下公式進行轉換:距離越小,相似度越大。

cosine相似度被廣泛應用於計算文件資料的相似度:

協同過濾與矩陣分解

生成共現矩陣。假設有m個使用者,n個物品,每個使用者會對n個物品中的乙個或者幾個進行評分,未評分的物品分值就用問號表示,則所有m個使用者對物品的評分可形成乙個m n m nm n的評分矩陣,也就是協同過濾中的共現矩陣。生成共現矩陣後,推薦問題就轉換成了 矩陣中問號的值的過程。利用使用者相似度和相似使...

協同過濾 基於使用者的協同過濾itemCF

基於使用者的協同過濾演算法也被稱為最近鄰協同過濾或knn k nearest neighbor,k最近鄰演算法 其核心思想就是,首先根據相似度計算出目標使用者的鄰居集合,然後用鄰居使用者評分的加權組合來為目標使用者作推薦。通常這些演算法都可以總結成三步 首先,使用使用者已有的評分來計算使用者之間的相...

R中協同過濾演算法

協同過濾常常被用於分辨某位特定顧客可能感興趣的東西,這些結論來自於其他相似顧客對哪些產品感興趣的分析。資料結構 協同過濾,主要收集每個使用者對使用過的物品的評價。評價可以理解為經常在電商 上出現的,五星級的評分。注意 不同使用者的評分標準不同,所以需要對評分進行標準化處理。標準化為0 1之間的值。使...