https://www.jianshu.com/p/79d24fa3664f
https://blog.csdn.net/ABCDEFG0929/article/details/87103772
https://www.cnblogs.com/1113127139aaa/p/9830449.html
常用的協同過濾算法有兩種,基於用戶的協同過濾算法以及基於物品的協同過濾算法,都屬於基於領域的算法。
基於用戶的協同過濾算法也被稱爲最近鄰協同過濾或KNN (K.Nearest-Neighbor,K最近鄰算法)。其核心思想就是,首先根據相似度計算出目標用戶的鄰居集合,然後用鄰居用戶評分的加權組合來爲目標用戶作推薦。
基於用戶的協同過濾算法主要包括兩個步驟1、找到與目標用戶興趣相似的用戶集合2、找到這個集合中的用戶喜歡的,且目標用戶沒有聽說過的物品推薦給目標用戶
算法實現
1、計算其他用戶與目標用戶的相似度
2、根據相似度找到與你最相似的k個用戶(鄰居)
3、在這些鄰居喜歡的物品中,根據與目標用戶的相似度加權計算出每一件物品的推薦度
4、根據推薦度向目標用戶推薦物品
計算相似度
1、夾角餘弦2、Pearson相關係數3、Jaccard公式