基於大資料的推薦演算法研究(1)
阿新 • • 發佈:2019-01-04
孫遠帥. 基於大資料的推薦演算法研究[D]. 廈門大學, 2014.
讀的一篇論文的總結
總覽
基於專案層次結構的推薦演算法,並結合Hadoop技術實現矩陣分解演算法。
- 改進均衡相似度的餘弦距離和皮爾遜相關係數的計算公式,避免計算目標使用者與所有使用者的相似度,從而避免了在整個使用者空間中搜索最相近的k個使用者,同時引入倒排索引資料結構,是查詢目標使用者最近鄰的計算複雜度降低;
- 提出基於專案層次相似度的協同過濾演算法,使用者給部分專案標註標籤和專案類別進行自動擴充套件,建立所有專案的層次結構,利用建立的專案標籤層次結構計算專案之間的相似性
- 結合矩陣分解梯度下降演算法的近似演算法和MapReduce分散式計算框架設計實現了一種基於MapReduce的矩陣分解推薦演算法
該文章通過改進相似度計算方法,引入倒排索引資料結構,來避免在整個使用者空間上查詢目標使用者的最近鄰使用者,從而在一定程度上提高最近鄰的查詢速度。
推薦演算法簡介
根據使用的資料來源的不同,推薦演算法可以分為:
基於內容的推薦演算法:推薦使用者之前喜歡的商品內容相似的商品
使用者u的興趣愛好向量(使用者之前喜歡的所有專案向量模型的平均)
其中N(u)是使用者之前喜歡的專案集合。content(*)表示所有專案的內容向量一個新專案j與專案與使用者u喜好的相似度
通常採用向量夾角的餘弦距離計算
自適應過濾主要解決了ContentBasedProfile(u)的增量計算問題;閩值設定提出了使用者行為與專案特徵的匹配問題,從而精確地計算Content(j)。基於內容的推薦只考慮商品和商品之間的相似性,而不考慮使用者行為
協同過濾:研究使用者歷史行為並建模,利用模型推薦商品
基於使用者的協同過濾演算法,計算出目標使用者與每個使用者的相似度,取相似度最高的若干個
使用者作為最近鄰。
給定使用者u和v,令N(u)是使用者u喜歡的專案集合,則u、v的興趣相似度
使用近鄰使用者來預測目標使用者對專案評價的方法
1.要預測使用者u對專案i的評分
其中,,I(u)為使用者u對專案評分集合其中按推薦生成方式的不同,協同過濾又可以分為啟發式的和基於模型的協同過濾。上面都是啟發式的。
混合推薦演算法
就是把上面兩種推薦進行混合
推薦系統衡量指標
- 使用者滿意度調查(問卷等形式)
- 預測準確度
1)評分預測
a、均方差誤差
b、平均絕對誤差
2)TopN推薦
研宄人員通常使用準確率/召回率度量來衡量推薦的預測準確率
召回率
準確率
3)覆蓋率
評價推薦系統發覺長尾的能力
4)實時性
實時性是一個衡量推薦系統性能的定性指標。
資料集
- MovieLens電影評分資料
- Jester Joke(風向和推薦笑話的網站)
- Netfile(電影租賃公司提供的電影評分)
- Yahoo音樂資料