3 前奏之基於物品的協同過濾演算法 ItemsCF

2022-04-29 01:12:08 字數 1012 閱讀 2372

兩步走:

計算物品間的相似度

根據1和使用者歷史行為給使用者生成推薦列表

一、計算物品間的相似度

1、相似度演算法

喜歡物品i的使用者中有多少比例的使用者也喜歡j;問題:j存在熱門商品問題,因為j很流行,喜歡 j 的使用者可能包含喜歡 i 的使用者,則相似度基本是1,導致任何物品和熱門物品的相似度都近似為1,這對於挖掘長尾的系統不好

懲罰 熱門 j 的權重

懲罰活躍使用者

2、計算商品的相似度矩陣

3、相似度矩陣歸一化,提高準確率、多樣性、覆蓋率

二、根據商品相似度和使用者歷史行為,生成使用者推薦列表

在相似度矩陣中按照相似度對物品 j 關聯的物品字典降序排列

取出前k個物品

取出和使用者 u 有過互動的商品的列表或集合

取2和3的交集

對相似度和偏好值累加求和

2、計算推薦列表

哈利波特問題

商品太熱門,導致相似度近似於1,解決:

1、加大對熱門商品懲罰

2、剔除太熱門商品

基於物品的協同過濾演算法

核心思想 給使用者推薦那些和他們之前喜歡的物品相似的物品。不同於基於內容的推薦,基於物品的協同過濾中的相似主要是利用使用者行為的集體智慧型。相似度的計算計算相似度的實現方式是多種多樣的 對物品的喜愛程度並不能單純的使用二值屬性來評價,很多資料集包含了使用者對物品的詳細評分資料,將評分資料進一步引入到...

基於物品的協同過濾演算法

輸入 輸入 物品使用者行為矩陣,行為矩陣中的元素只有0和1,0代表行為的負類,1代表行為的正類。比如不喜歡與喜歡 不點贊與點讚 不收藏與收藏。輸出 輸出1 根據輸入可計算得到物品相似度矩陣 前言 基於物品的協同過濾演算法適用於物品數明顯小於使用者數的場景,適用於長尾物品豐富,使用者個性化需求強烈的領...

基於物品的協同過濾演算法 ItemCF

余弦相似度公式 其中 共現矩陣,記錄了同時愛好 i 和 j 的數量 根據余弦相似度公式計算相似度 初始化使用者評分資料 def inituserscore self user score dict b c d return user score dict 計算item之間的相似度 def items...