協同過濾演算法 基於使用者

2021-10-06 12:30:02 字數 831 閱讀 8736

背景: 使用基於使用者的協同過濾演算法進行****

讀取檔案,處理每一行資料,把使用者id和**id轉化為long型別(因為協同過濾模型這兩列為long類),並轉化為datamodel(模型輸入資料)。

轉化出使用者評分矩陣(沒有的填充0)。如下表所示(部分):

使用者id\**id110

100101

102103

104105

106014

0100

1431

0310

2124

1221

2013

2143

2031

0301

1使用皮爾遜相似度,計算使用者相似矩陣。把上表中的每一行,作為乙個向量,計算當前使用者與其他使用者的距離,如計算使用者0與使用者1的距離:

使用者0向量: (1, 4, 0, 1, 0, 0, 1, 4, 3)

使用者1向量: (0, 3, 1, 0, 2, 1, 2, 4, 1)

計算以上兩個向量的相似度,值越大,相似度越高。

選取距離最近的前0.8%的使用者,使用相似度作為權重,**該使用者沒有看過,但是鄰居看過的**的評分。

計算公式

按評分倒序排列,選擇評分最高的10個**id,把使用者id和**id從long轉回string,並寫入到資料庫。

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

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

基於使用者的協同過濾演算法

最近正在讀項亮博士的 推薦系統實踐 人民郵電出版社,這本書應當是目前國內為數不多的介紹推薦演算法的了。目前正在學習基於使用者的協同過濾演算法 usercf user based collaborative filtering 該演算法是推薦系統中最古老的演算法,標誌著推薦系統的誕生,該演算法在199...

基於使用者的協同過濾演算法

在乙個線上的個性化推薦系統中,當乙個使用者需要個性化推薦時,找到與使用者有相同的興趣愛好的使用者來進行推薦物品是乙個不錯的選擇。1 找到和目標使用者興趣相似的使用者集合。2 找到此相似集合中使用者沒有購買過,但是可能喜歡的商品進行推薦。步驟 1 對於相似使用者的查詢,就需要用乙個方法去衡量這個相似度...