基于巴氏系數的協同過濾算法
推薦系統成功幫助人們解決了“信息過載”問題,并成功運用于商業領域。推薦系統的核心是推薦算法,協同過濾算法是其中最為廣泛使用的協同過濾算法,其優點是它與領域知識無關并且準確性也比其他算法高。可分為:基于用戶的的協同過濾推薦算法和基于項目的協同過濾推薦算法。協同過濾推薦算法的基本思想是:與目標用戶相似的用戶喜歡的項目目標用戶也可能喜歡,其核心是相似度計算。傳統的相似度計算方法大都依賴共同評分項來計算目標用戶的近鄰,而稀疏性使得這些方法失效甚至適得其反。經過多年的發展,出現了各種不同的相似度計算方法:皮爾森相關系數(PC)是衡量兩個用戶(項目)的線性相關性。皮爾森相關系數(PC)在共同評分項較少的情形下無法判定兩個用戶的相似性,而且沒有充分利用全局評分信息;Ahn 提出了PIP (Proximity-lmpact-Popularity)只考慮評分的片面信息:接近、影響度和普及度,而沒有考慮全局評分信息的利用;Jaccard相似度計算方法考慮到使用全局評分信息,但是沒有考慮評分的數值的大小,而是簡單的處理為0和1;Bobadilla等捉出了多個相似度計算方法來克服其之前的相似度計算方法的缺點。1)結合了均方差(Mean squared-difference,MSD)和Jaccard提出JMSD計算方法,讓兩者克服彼此的缺點;2)他們提出Mean-Jaccard-Difference (MJD) ,在一定程度上克服了稀疏性問題。但上述的所有相似度計算方法在共同評分項較少的時候性能變得很差。
由前面的討論可以看出傳統的相似性計算方法并不適用于稀疏用戶一項目評分的場景,因為它們都依賴共同評分項。在此,我們提出一個基于巴氏系數的協同過濾算法(Collaborative Filtering Based on Bhattacharyya Coefficient,CFBC),該算法通過巴氏系數來度量項目間的相似度,巴氏系數通過計算項目的全局評分信息從而克服對共同評分項的依賴問題。CFBC算法有效緩解傳統相似度在用戶一項目評分數據非常稀疏場景下推薦質量低的問題。
?
非常好我支持^.^
(0) 0%
不好我反對
(0) 0%