协同过滤算法在新闻推荐系统中的比较研究

2018-08-22 08:07魏茂
东方教育 2018年14期
关键词:聚类矩阵评分

魏茂

摘要:本文首先对基于用户、项目和模型的协同过滤算法在新闻推荐系统中的应用进行对比;接下来,着重对基于关联规则、聚类、分类、回归、矩阵分解模型的协同过滤算法在新闻推荐系统中的应用进行对比;最后,阐述了协同过滤算法在新闻推荐系统中的运用所面临的挑战及今后需努力的方向。

关键词:新闻推荐协同过滤算法算法比较

一、引言

随着互联网的飞速发展,上网浏览新闻已成为网民们的习惯,然而海量的新闻并不一定都是网民们所关注的,广泛的阅读会严重影响阅读效率,因此新闻推荐应运而生[1]。新闻推荐是指通过用户信息和新闻内容,根据一定的推荐算法,智能地找到与用户兴趣偏好相匹配的新闻,尽可能多地主动推荐给用户,以提高用户阅读新闻的效率和质量。

推荐算法是新闻推荐最核心和关键的部分,其性能的优劣直接影响推荐的质量,目前常用的推荐方法包括:基于内容的推荐,基于协同过滤的推荐等,其中协同过滤推荐(Collaborative Filtering Recommendation)是目前应用最为成功的个性化推荐技术,包括在线和离线过滤两部分,具体又涵盖多个分支,其应用促进了新闻推荐系统的发展。

二、新闻推荐系统的过程体系

新闻推荐系统的核心过程为:数据的收集和预处理,选用适合的推荐算法,推荐效果评价,如图1所示。

1.数据的收集和预处理包括:1)形成用户档案和候选新闻集,包括:用户的个人相关信息、用户浏览新闻的数据、传感器感知的上下文数据,如:时间、地理位置、情绪等等;2)对收集的数据进行数据清理、转换,最终形成用户对各新闻的二维评价矩阵。

如表1所示:其中Rij表示第i个用户对第j条新闻的评分(0≦Rij≦10),一般说来,分数越高,表示用户对该新闻的喜好程度越高。

2.选用推荐算法。一般先对预处理后的数据再进行最近邻居搜索,计算目标用户与用户档案集里面的其他用户的相似度,相似度最高的作为最近邻居集。其次,通过一定的推荐算法和最近邻居集的评价值,产生推荐。目前己有的协同过滤算法有两个主要的研究方向:基于用户或项目(新闻)的协同过滤算法和基于模型的协同过滤算法。

3.对推荐效果的评价。基于用户反馈,利用点击率、精确度、响应时间等评估指标评价新闻推荐的性能[2]。

三、协同过滤算法比较

1.基于用户或项目(新闻)的协同过滤算法

基于用户的协同过滤算法主要考虑用户之间的相似度,利用用户间需求的相似性,智能的为用户筛选有用信息。只要找出相似用户偏好的新闻,并预测目标用户对此新闻的评分,就可将评分较高的新闻推荐给用户。而基于项目(新闻)的协同过滤算法则是找到新闻之间的相似度,只有找到目标用户对这些新闻的评分,就可以将相似度高的新闻推荐给用户。

两种算法的主要区别在于前者需要在线计算用户的相似度,计算复杂度较高。而后者,在考虑新闻的相似性在一定时间内不变的前提下,可离线计算,精确度要求不高,推荐的多样性较差。

2.基于模型的协同过滤算法

基于模型的协同过滤算法是目前用的较多的算法,它的优势在于可以利用现有数据,构建出新的预测和偏好数据,通过机器学习的分类方法,或采用技术降维手段抽取特征数据,映射到低维空间,使原始数据变得更为稠密。另外还可以利用原数据中的潜在结构进行数据压缩,以达到减少维度。能很好的解决数据稀疏性等问题。具体可分为:基于关联规则、聚类、分类、回归、矩阵分解等模型的算法。

2.1 基于关联规则的协同过滤

找出用户查看的所有新闻数据中频繁出现的项集活序列,来做频繁集挖掘,找到满足支持度阈值的关联新闻的频繁N项集或者序列。如果用户查看了频繁N项集或者序列里的部分新闻,则可将频繁项集或序列里的其他新闻按一定的评分准则推荐给用户,这个评分准则可以包括支持度,置信度和提升度等。常用的关联规则算法有Apriori,FP Tree等。

2.2 基于聚类的协同过滤

用聚类算法做协同过滤与基于用户或项目(新闻)的协同过滤类似。可以基于一定的距离来聚类。如果基于用户聚类,则可以将用户分成不同的目标人群,将在同样目标人群中评分较高的新闻推荐给目标用户。基于新闻的聚类,则是将与目标用户评分高的新闻相似的新闻推荐给他。常用的聚类推荐算法有K-Means, BIRCH等。

2.3 基于分类的协同过滤

对用户的评分设置阈值,评分高于阈值的新闻进入推荐范畴,低于阈值不予推荐。常见的分类推荐算法有逻辑回归和贝叶斯,基于分类的协同过滤不但解释性强,而且可以对数据的特征再进行训练,不断达到优化。

2.4 基于回归算法的协同过滤

用回归算法做协同过滤比分类算法看起来更为直观。通过回归模型可以得到目标用户对某新闻的预测打分,而此评分可以是一个连续值。常用的回归推荐算法有回归树、支持向量回归等。发

2.5 基于矩阵分解的协同过滤

代表算法是奇异值分解(SVD),它利用特征提取,对隐含语义的检索有较好的效果。但缺点在于经过预处理的二维评价表是典型的稀疏矩阵,SVD必须经过算法的改进变种才能处理,比如FunkSVD、SVD++等[3],此外分解机(Factorization Machine)和张量分解(Tensor Factorization)也将成为矩阵分解的新趋势。

四、结束语

协同过滤作为一种经典的推荐算法,应用广泛,通用性强。近几年来,协同过滤算法在新闻推荐系统中的运用已取得了一定的成绩,在一定程度上解决了数据的可扩展性、稀疏性、冷启动和强健性等问题,但随着网络应用规模的不断扩大,用户对系统使用要求的不断提高,推荐系统的在安全性、实时性、计算效率、推荐的精确性等方面还需进一步发展。

参考文献:

[1]张同启. 基于关联规则和用户喜好程度的综合电子商务推荐系统的研究[D]. 北京邮电大学, 2015:32-33.

[2]彭菲菲,钱旭.基于用户关注度的个性化新闻推荐系统[J].计算機应用研究,2012,29(3):1005-1006.

[3]孙小华,陈洪,孔繁胜.在协同过滤中结合奇异值分解与最近邻方法.计算机应用研究,2006,23(9):206-208.

猜你喜欢
聚类矩阵评分
APACHEⅡ评分在制定ICU患者护理干预措施中的应用研究
基于模糊聚类和支持向量回归的成绩预测
双周最佳阵容
双周最佳阵容
多项式理论在矩阵求逆中的应用
基于流形学习的自适应反馈聚类中心确定方法
基于密度的自适应搜索增量聚类法
双周最佳阵容
矩阵
矩阵