针对传统基于邻域的协同过滤推荐算法存在数据稀疏性及相似性度量只能利用用户共同评分的问题,提出一种基于巴氏系数和Jaccard系数的协同过滤算法(CFBJ)。在项目相似性度量中,该算法引入巴氏系数和Jaccard系数,巴氏系数利用用户所有评分信息克服共同评分的限制,Jaccard系数可以增加相似性度量中共同评分项所占的比重。该算法通过提高项目相似度准确率来选取最近邻,优化了对目标用户的偏好预测和个性化推荐。实验结果表明,该算法比平均值-杰卡德差分(MJD)算法、皮尔森系数(PC)算法、杰卡德均方差(JMSD)算法、PIP算法误差更小,分类准确率更高,有效缓解了用户评分数据稀疏所带来的问题,提高了推荐系统的预测准确率。
The traditional collaborative filtering recommendation algorithm based on neighborhood has problems of data sparsity and similarity measures only utilizing ratings of co-rated items, so a Collaborative Filtering algorithm based on Bhattacharyya coefficient and Jaccard coefficient( CFBJ) was proposed. The similarity was measured by introducing Bhattacharyya coefficient and Jaccard coefficient. Bhattacharyya coefficient could utilize all ratings made by a pair of users to get rid of common rating restrictions. Jaccard coefficient could increase the proportion of common items in similarity measurement. The nearest neighborhood was selected by improving the accuracy of item similarity and the preference prediction and personalized recommendation of the active users were optimized. The experimental results show that the proposed algorithm has smaller error and higher classification accuracy than algorithms of Mean Jaccard Difference( MJD),Pearson Correlation( PC), Jaccard and Mean Squared Different( JMSD) and PIP( Proximity-Impact-Popularity). It effectively alleviates the data sparsity problem and enhances the accuracy of recommendation system.