基於用戶的協同過濾算法


下面講解的鏈接

https://blog.csdn.net/shf1730797676/article/details/97100815

基本思路:當用戶A需要個性化推薦的時候,可以先找到和他興趣相似的用戶群體G,然后把G中所包含的且A中沒有的東西進行預測評估,最后根據預測評估值對用戶A進行推薦。

方法:
1、找到與用戶A興趣相似的用戶群體
2、對G中所包含的且A沒有聽說過或沒有見過的進行預測分析。
3、根據預測分析值對A進行推薦

過程:

1發現興趣相似的用戶

通常用 Jaccard (傑卡德相似度)公式或者余弦相似度計算兩個用戶之間的相似度。設 N(u) 為用戶 u 喜歡的物品集合,N(v) 為用戶 v 喜歡的物品集合,那么 u 和 v 的相似度是多少呢?

如何一下子計算所有用戶之間的相似度呢?為計算方便,通常首先需要建立“物品—用戶”的倒排表,如下圖所示:

 

 然后對於每個物品,喜歡他的用戶,兩兩之間相同物品加1。例如喜歡物品 a 的用戶有 A 和 B,那么在矩陣中他們兩兩加1。如下圖所示:

 

      計算用戶兩兩之間的相似度,上面的矩陣僅僅代表的是公式的分子部分。以余弦相似度為例,對上圖進行進一步計算:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM