个性化推荐系统关键算法探讨

2016-12-15 19:46张普洋郭剑英
电脑知识与技术 2016年27期
关键词:个性化推荐推荐系统算法

张普洋+郭剑英

摘要:推荐算法是个性化推荐系统的核心。目前,研究人员提出了很多推荐算法。本文首先对个性化推荐系统进行介绍,然后侧重讨论了多种经典的个性化推荐算法,对这些推荐算法的优缺点及适用场景进行了比较分析,最后在此基础上提出了未来的研究方向。

关键词: 个性化推荐;算法;推荐系统

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)27-0162-02

1个性化推荐系统

随着互联网的飞速发展和云计算的兴起,人们已然处于一个信息爆炸的大数据时代。每天面对海量的数据信息,搜索引擎在一定程度上为人们解决了信息筛选问题,但当用户无法用准确的关键词描述自己的需求时,搜索引擎的筛选效率将会打折扣。用户如何在一个网站上快速而有效地找到自己所需要的信息?网站如何将用户最关注最感兴趣的信息筛选出来实时呈现在用户面前?推荐系统的出现解决了这些问题。

推荐系统是根据用户的兴趣爱好向用户推荐符合其需求的对象,亦称为个性化推荐系统。个性化推荐系统通过一定的方式将用户和信息联系起来,不仅可以帮助用户找到感兴趣的信息,而且能够将信息分类呈现在不同的用户面前,从而实现用户与信息提供商的双赢。个性化推荐系统已经全面运用到各个互联网网站中。在电子商务领域,网站通过使用个性化推荐系统向用户推荐其可能感兴趣的商品,提高用户的购买率和用户的忠诚度。Netflix网站使用个性化推荐系统为用户推荐喜欢的电影,豆瓣电台通过个性化推荐系统向用户推荐符合其口味的好音乐,Goodreads网站利用推荐系统为用户推荐适合其阅读的书籍。

2个性化推荐系统中关键算法分析

个性化推荐系统为用户提供个性化体验的同时,也日益受到越来越多的学者和互联网网站的关注。个性化推荐系统的工作原理是首先输入数据源(用户和项目的各种属性和特征,包括年龄、性别、地域、物品的类别、发布时间等),然后选择合适的推荐算法,最后将产生的推荐结果(按照用户喜好程度排序的项目列表)推荐给用户。不同的个性化推荐系统使用不同的推荐算法,因此个性化推荐系统最为核心之处在于根据不同的数据源选择不同的推荐算法。

目前,个性化推荐系统中主要使用的推荐算法有:协同过滤推荐算法、基于内容的推荐算法、基于人口统计学的推荐算法、组合推荐算法。下面对主要的推荐算法进行比较并分析它们的优缺点及适用场景。

2.1协同过滤推荐算法

协同过滤推荐是使用最广泛的个性化推荐算法之一。协同过滤有两种主流算法:基于用户的协同过滤和基于项目的协同过滤。

2.1.1基于用户的协同过滤

基于用户的协同过滤是根据不同的用户对项目的评分来测评各用户之间的相似性,基于用户间的相似性进行推荐。即通过用户的浏览记录、购买行为等信息分析各个用户对项目的评价,发现与当前用户最相似的“邻居”用户群(“K-邻居”的算法);然后将K个邻居评价最高并且当前用户又没有浏览过的项目推荐给当前用户。基于用户的协同过滤推荐算法是以用户与用户之间的关系为着眼点,因为兴趣相近的用户可能会对同样的东西感兴趣。如:Facebook网站首先对用户个人资料、周围朋友感兴趣的广告等相关信息进行分析,计算出各用户之间的相似性,进而对用户提供广告推销。所以说,在当前流行的社交网站中,基于用户的协同过滤推荐是一个不错的选择,若将基于用户的协同过滤推荐算法与社会网络信息相融合,会增加用户对推荐解释的信服程度。

2.1.2 基于项目的协同过滤

基于项目的协同过滤是通过用户对不同项目的评分来测评各个项目之间的相似性,基于项目之间的相似性做出推荐。即利用所有用户对物品或者项目的偏好,计算不同物品或项目之间的相似度,然后根据用户的历史信息,将类似的物品或项目推荐给用户。基于项目的协同过滤是以项目与项目之间的关系为中心,因为用户可能偏爱与他已购买的商品类似的商品。如在购书网站上,当用户看一本书时,网站会给用户推荐相关的书籍。此时,基于项目的协同过滤推荐成为了引导用户浏览的重要手段。对于一个电子商务网站,用户的数量远远超过商品的数量,同时商品的数据相对稳定,因此计算商品的相似度计算量较小,不必频繁更新。所以基于项目的协同过滤推荐适应于提供商品的电子商务网站。

协同过滤推荐算法优势在于:不需要各领域的知识;能跨类型推荐(如推荐音乐、艺术品、电影等);计算出来的推荐结果是开放的,可以共享他人的经验,能很好地发现用户潜在的兴趣爱好;自适应性好;随着时间推移预测精度会提高。

协同过滤的推荐算法不足之处在于对于历史信息依赖性较强;还有冷启动问题,当新用户或者新物品进入系统时,难以进行个性化推荐。同时在大规模网络中,数据极端稀疏,算法效率较低,难以处理大数据量下的即时结果。

2.2基于内容的推荐算法

基于内容的推荐算法是根据历史信息(如评价、分享、收藏过的文档) 学习用户的兴趣,建立用户偏好文档,计算待推荐项目与用户偏好文档的匹配程度, 将最相似的项目推荐给用户。如:在音乐推荐中,基于内容的推荐系统首先分析用户欣赏过的音乐的共性(歌手、曲风等),再推荐与用户感兴趣的音乐内容相似度高的其他乐曲。

基于内容的推荐算法生成推荐的过程主要依靠三个部件:(1)内容分析器:用一种适当的方式表示从项目信息中提取的有用信息。(2)文件学习器:该模块收集用户偏好的数据,生成用户概要信息和偏好文档。(3)过滤部件:通过学习用户偏好文档,匹配用户概要信息和项目信息,将生成一个用户可能感兴趣的潜在项目评分列表。

基于内容的推荐算法生成的推荐结果直观明了,容易理解。不需要领域知识,不需要很大的用户社区,仅需要得到两类信息:项目特征的描述和用户过去的喜好信息。

基于内容的推荐算法有三个主要缺陷:(1)过度规范问题:推荐给用户的项目与其消费过的项目很相似,不能为用户发现潜在感兴趣的资源。 (2)内容分析有限:只能预处理一些易提取的文本类内容(网页、博客等),而在提取多媒体数据(图像、音频、视频等)时较困难。(3)冷启动问题:当一个新用户没有对任何项目进行评分或没有浏览过任何商品时,系统无法向该用户提供准确的推荐。

2.3 基于人口统计学的推荐算法

基于人口统计学的推荐算法是根据人口统计学数据(即系统用户的基本信息:年龄、性别、工作、兴趣、爱好等),计算用户间相关程度,得到当前用户的最近邻集,然后将把“邻居”用户群喜爱的项目推荐给当前用户。

基于人口统计学的推荐算法优势在于:不需要用户的历史喜好信息,可以很好解决冷启动问题;不依赖于项目的属性,其他领域的问题都可以无缝接入;而且随着时间推移,预测精度也会逐渐提高。

但是在一些有较高要求的领域(如:音乐、艺术品、电影、书籍等)进行推荐时,此算法对用户基本信息进行分类过于粗糙。同时在收集人口统计信息时,不易获取比较敏感的信息,从而导致推荐系统在准确度方面不如其他算法,无法得到良好的推荐效果。

除了上述比较典型的推荐算法,还有其他一些推荐算法: 基于知识的推荐算法、基于效用的推荐算法和基于关联规则的推荐算法。基于关联规则的推荐算法是将用户的购买历史记录、浏览痕迹、打分记录作为数据源,挖掘出的关联规则就是推荐对象。关联规则挖掘是用来发现不同商品在销售过程中的相关性,而且关联规则的发现是算法的关键,也是算法的瓶颈。

2.4 混合推荐算法

任何一个个性化推荐算法都有它独特的优势和不可避免的缺陷,因此现实应用中,直接用某种算法来做推荐系统的很少,往往是将各种推荐算法组合起来,这样可以扬长补短,提高推荐的准确度和效率。尤其是大数据环境下,各种混合推荐算法的推荐效果要优于单一推荐算法。基于内容的推荐算法和协同过滤算法都无法解决冷启动问题,因为这两种算法都需要历史信息。若将协同过滤推荐算法与基于知识的推荐算法组合起来,则能很好地解决冷启动问题。

文献[2]以电影为推荐对象, 通过线性组合的方式将基于内容的推荐算法和基于协同过滤的推荐算法相融合, 得到最终的推荐结果。两种算法的组合很好地避免了基于内容推荐算法不适合推荐多媒体数据的缺陷, 解决了协同过滤算法中用户对电影评分少的数据稀疏的问题。

在一些大型的网站使用的就是融合了多种算法的推荐系统。比如淘宝网为顾客推荐商品时采用了基于内容和基于关联规则两种算法的组合。根据用户的浏览痕迹、收藏记录、购买行为以及反馈信息产生可推荐的关联规则,根据商品的相关属性(描述,评价,名称,收藏人气,累计销量等等)对优质商品进行评分,计算出用户带权重的标签,最后进行个性化推荐。

3 总结与展望

综上所述,个性化推荐系统将用户和项目有机地联系起来,是一个高效的信息服务系统。为增强个性化推荐系统的功能,未来的个性化推荐系统应该将企业的销售系统、客户关系管理系统等企业信息系统集成在一起,共同为企业发展提供决策支持。那么个性化推荐系统如何与这些系统集成,如何与社会网络相结合,改变用户购物模式,企业销售方式,都是未来的研究方向。

设计个性化推荐系统最终目的都是为了提高用户体验感和满意度。一个被用户接受和认可的推荐系统,在帮助用户发现潜在感兴趣的项目的同时还能够帮助项目提供商将项目投放给对它感兴趣的用户。一个好的推荐系统能够对公司或业务产生增值效应,会给用户带来更好的体验。但是如何将用户的体验感进行量化是一个具有挑战性的课题。

参考文献:

[1] 张亮,赵娜.改进的协同过滤推荐算法[J].计算机系统应用,2016,25(7)

[2] 马瑞敏,卞艺杰,陈超,吴慧.基于Hadoop 的电子商务个性化推荐算法——以电影推荐为例[J].计算机系统应用,2015,24(5).

[3] 乔亚飞,张霞,张文博.智能图书系统中的个性化推荐[J].计算机系统应用,2016,25(9).

[4] 朱郁筱,吕琳媛.推荐系统评价指标综述[J].电子科技大学学报,2012,41(2).

[5] 朱扬勇,孙婧.推荐系统研究进展[J].计算机科学与探索,2015,9(5).

[6] 刘鲁,任晓丽.推荐系统研究进展及展望[J].信息系统学报,2007(1).

[7] 余力,刘鲁.电子商务个性化推荐研究[J].计算机集成制造系统,2004(10).

[8] 杨博,赵鹏飞.推荐算法综述[J].山西大学学报,2011,34(3).

猜你喜欢
个性化推荐推荐系统算法
基于MapReduce的改进Eclat算法
Travellng thg World Full—time for Rree
进位加法的两种算法
基于远程教育的个性化知识服务研究
基于用户偏好的信任网络随机游走推荐模型
一种改进的整周模糊度去相关算法