協同過濾演算法(上)

2021-08-15 06:57:13 字數 1169 閱讀 6910

演算法原理:

協同推薦演算法,作為眾多推薦演算法中的一種已經被廣泛的應用。其主要分為2種,第一種就是基於使用者的協同過濾,第二種就是基於物品的協同過濾。

所謂的itembase推薦演算法簡單直白的描述就是:使用者a喜歡物品x1,使用者b喜歡物品x2,如果x1和x2相似則,將a之前喜歡過的物品推薦給b,或者b之前喜歡過的物品推薦給a。這種演算法是完全依賴於使用者的歷史喜歡物品的;所謂的userbase推薦演算法直白地說就是:使用者a喜歡物品x1,使用者b喜歡物品x2,如果使用者a和使用者b相似則將物品x1推薦給使用者b,將物品x2推薦給使用者a。簡單的示意圖:

至於選擇哪種要看自己的實際情況,如果使用者量比物品種類多得多那麼就採用itembase的協同過濾推薦演算法,如果是使用者量比物品種類少的多則採用userbase的協同顧慮推薦算,這樣選擇的乙個原因是為了讓物品的相似度矩陣或者使用者相似度矩陣或者共現矩陣的規模最小化。

1.  建立物品的同現矩陣a,即統計兩兩物品同時出現的次數

資料格式:item_id1:item_id2        次數

2.  建立使用者對物品的評分矩陣b,即每乙個使用者對某一物品的評分

資料格式:item_id         user_id:preference

3.  推薦結果=物品的同現矩陣a * 使用者對物品的評分矩陣b

4. 過濾使用者已評分的物品項

第一步:讀取原始資料,按使用者id分組,輸出資料;

第二步:統計兩兩物品同時出現的次數(同乙個人買2個物品的出現次數),輸出檔案資料;

item_id  user_id:preference

item_id1:item_id2  次數

user_id  item_id ,推薦分值

協同過濾演算法

3種形式的協同過濾 collaborative filtering 演算法 1 user based 相同 相似 使用者的喜好相同 2 item based 能夠引起使用者興趣的專案,必定與其之前評分高的專案相似 3 model based 先用歷史資料得到乙個模型,再用此模型進行 參考 這個位址是...

協同過濾演算法

1.表示使用者行為矩陣,即統計使用者購買某種商品型別的數量 public double getnumbycustomer customer customer return vectore 2.用余弦距離計算每個使用者與其它使用者的行為相似度 下面 是兩個使用者之間的相似度,進行遍歷就可以獲取全部相似...

協同過濾演算法

乙個人想看電影的時候常常會思考要看什麼電影呢。這個時候他可能會問周圍愛好的人求推薦。現在社會每天都會產生海量的資訊。面對這麼多資訊好多人都不知道什麼資訊是自己需要的。推薦系統正是起了這麼乙個作用。推薦系統的應用隨處可見。網路購物是乙個典型的例子,電子商務的運營商往往會根據使用者在 的行為推薦使用者可...