您好,欢迎访问三七文档
ComputerEngineeringandApplications计算机工程与应用2012,48(7)互联网的出现和普及给用户带来了大量的信息,满足了用户在信息时代对信息的需求,但随着网络的迅速发展而带来的网上信息量的大幅增长,使得用户在面对大量信息时无法从中获得对自己真正有用的那部分信息,对信息的使用效率反而降低了,这就是所谓的信息超载(informationoverload)问题。目前,针对信息超载问题的解决办法之一是以搜索引擎为代表信息检索系统,比如Google、Baidu等,它们在帮助用户获取网络信息方面发挥着极其重要的作用。但使用搜索引擎的用户在使用同一个关键字搜索信息时,得到的结果是相同的[1】。另一方面来看,信息及其传播是多样化的,而用户对信息的需求是多元化和个性化的,那么通过以搜索引擎为代表的信息检索系统获得的结果不能满足用户的个性化需求,仍然无法很好地解决信息超载问题。解决信息超载问题另外一个非常有潜力的办法是个性化推荐系统,它是根据用户的信息需求、兴趣等,将用户感兴趣的信息、产品等推荐给用户的个性化信息推荐系统。和搜索引擎相比推荐系统通过研究用户的兴趣偏好,进行个性化计算,由系统发现用户的兴趣点,从而引导用户发现自己的信息需求。一个好的推荐系统不仅能为用户提供个性化的服务,还能和用户之间建立密切关系,让用户对推荐产生依赖。个性化推荐系统现已广泛应用于很多领域,其中最典型并具有良好的发展和应用前景的领域就是电子商务领域。同时学术界对推荐系统的研究热度一直很高,逐步形成了一门独立的学科,本文就推荐系统的几项关键技术研究给予了关注。1推荐系统的概念和定义推荐系统的定义有不少,但被广泛接受的推荐系统的概念和定义是Resnick和Varian在1997年[2]给出的:“它是利用电子商务网站向客户提供商品信息和建议,帮助用户决定应该购买什么产品,模拟销售人员帮助客户完成购买过程”。推荐系统有3个重要的模块:用户建模模块、推荐对象建模模块、推荐算法模块。通用的推荐系统模型流程如图1所示[3]。推荐系统把用户模型中兴趣需求信息和推荐对象模型中的特征信息匹配,同时使用相应的推荐算法进行计算筛选,找到用户可能感兴趣的推荐对象,然后推荐给用户。推荐系统的形式化定义如下[4-5]:设C是所有用户的集合,S是所有可以推荐给用户的对象的集合。实际上,C和S集合的规模通常很大,如上百万的顾客以及上亿种歌曲等。设效用函数u()可以计算对象s对用户c的推荐度(如提供商的可靠性(vendorreliability)和产品的可得性(productavailability)等),即u:C´S®R,R是一定范围内的全序的非负实数,推荐要研究的问题就是找到推荐度R最大的那些对象S*,如式(1):cÎCS*=argmaxsÎSu(cs)(1)个性化推荐系统综述王国霞,刘贺平WANGGuoxia,LIUHeping北京科技大学自动化学院,北京100083SchoolofAutomation,UniversityofScience&TechnologyBeijing,Beijing100083,ChinaWANGGuoxia,LIUHeping.Surveyofpersonalizedrecommendationsystem.ComputerEngineeringandApplications,2012,48(7):66-76.Abstract:Informationoverloadisoneofthemostcriticalproblems,andpersonalizedrecommendationsystemisapowerfultooltosolvethisproblem.Inthisarticle,thedefinitionofrecommendationsystemisintroduced,thisarticlealsoexpoundssomekeytechnolo-giesincludingusermodeling,recommendationitemmodelingandrecommendationalgorithm.Therecommendationframeandevalua-tionmethodsarealsoexhibited.Thisarticletriestogivethedifficultiesandfuturedirectionsofrecommendationsystem.Keywords:recommendationsystem;informationoverload;recommendationalgorithm;personalization摘要:信息超载是目前网络用户面临的一个严重问题,个性化推荐系统是解决该问题的一个有力工具,并受到了众多的关注和研究。给出推荐系统的定义,同时阐述了推荐系统的几项关键技术,包括用户建模、推荐对象的建模和推荐算法。后来总结了推荐系统的体系结构和性能评价指标,并尝试给出了推荐系统未来研究的重点、难点和热点问题。关键词:推荐系统;信息超载;推荐算法;个性化DOI:10.3778/j.issn.1002-8331.2012.07.018文章编号:1002-8331(2012)07-0066-11文献标识码:A中图分类号:TP18⦾网络、通信、安全⦾作者简介:王国霞(1975—),女,博士研究生,讲师,主要研究方向为个性化信息获取;刘贺平(1951—),男,教授,博士导师。E-mail:my_zhg0127@sina.com收稿日期:2011-09-08;修回日期:2011-11-01获取用户偏好提供个人偏好采集个人偏好推荐算法寻求推荐提供推荐计算用户模型推荐对象模型图1推荐系统通用模型662012,48(7)从上述模型和定义可以看出,推荐系统关键技术有三个方面,分别是用户建模、推荐对象的建模和推荐算法。下文分别对这几项技术给以说明。2用户建模模块一个好的推荐系统要给用户提供个性化的、高效的、准确的推荐,那么推荐系统应能够获取反映用户多方面的、动态变化的兴趣偏好,推荐系统有必要为用户建立一个用户模型,该模型能获取、表示、存储和修改用户兴趣偏好,能进行推理,对用户进行分类和识别,帮助系统更好地理解用户特征和类别,理解用户的需求和任务,从而更好地实现用户所需要的功能。推荐系统根据用户的模型进行推荐,所以用户描述文件对推荐系统的质量有至关重要的影响。建立用户模型之前,需要考虑下面几个问题[6-7]:(1)模型的输入数据有哪些,如何获取模型的输入数据。(2)如何考虑用户的兴趣及需求的变化。(3)建模的对象是谁。(4)清楚了上述内容后,怎么建模呢。(5)模型的输出是什么。用户建模的大致过程如图2所示。图2中获取用户信息就是解决模型输入数据的问题,模型的输入数据主要有以下几种:(1)用户属性:这是用户最基本的信息,包括社会属性和自然属性,比如用户的姓名、年龄、职业、收入、学历等。文献[8-9]用用户注册时的自然属性和社会属性进行初始建模。(2)用户手工输入的信息:这部分是用户主动提供给系统的信息,包括用户在搜索引擎中输入的关键词,用户输入的感兴趣的主题、频道。还有一类重要的信息就是用户反馈的信息,包括用户自己对推荐对象的喜好程度[10];用户标注的浏览页面的感兴趣、不感兴趣或感兴趣的程度等。(3)用户的浏览行为和浏览内容:用户浏览的行为和内容体现了用户的兴趣和需求,它们包括浏览次数、频率、停留时间等,浏览页面时的操作(收藏、保存、复制等)、浏览时用户表情的变化等。服务器端保存的日志也能较好地记录用户的浏览行为和内容。(4)推荐对象的属性特征:不同的推荐对象,用户建模的输入数据也不同。网页等推荐对象通常考虑对象的内容和用户之间的相似性,而产品等推荐对象通常考虑用户对产品的评价。为提高推荐质量,推荐对象的相关的属性也要考虑进去,比如除网页内容以外,还要考虑网页的发布人、时间等。产品类的对象还要考虑产品的品牌、价格、出售时间等。文献[11-12]扩展了二维的评价矩阵,综合考虑了影响用户兴趣的各种因素。文献[13-14]考虑了Web服务的Qos来对户的兴趣建模。获取模型输入数据的方式有显式获取、隐式获取和启发式获取三种方式。显式的获取方式用户主动告之。例如MyYahoo和WebWatcher[15]都要户自己给出感兴趣的栏目和关键。另外一类显式的方式要求用户提供与其兴趣相关的示例及类别属性来建立用户模型,LIRA、Syskill&Webert、WebMate等是该方法的代表。显式获取兴趣偏好的方法是简单而直接的做法,能相对准确地反映用户的需求,同时所得的信息比较具体、全面、客观,结果往往比较可靠。缺点就是很难收到实效,主要原因就是很少用户愿意花时间或不愿向系统表达自己的喜好。而且这一方法灵活性差,存在答案异质性,用户兴趣主题改变时要手动更改系统中用户兴趣等诸多问题,使得该方法的实时性、可操作性很难得到保证。同时该方法对用户不是很友好,具有很大的侵袭性[3]。解决侵袭性问题是推荐系统未来的一个研究方向,来研究用户能够接受的评价方式是什么,比如能够有耐心进行几次评分。文献[16]利用固定负担模型来计量用户评价的负担,将侵袭性问题转化为最优化问题来研究。隐式获取法是指系统通过跟踪用户行为,通过推理获取用户的兴趣偏好,因为用户的很多动作都能暗示用户的喜好,比如查询、浏览页面和文章、标记书签、反馈信息、点击鼠标、拖动滚动条,Web日志挖掘[17-19]等。典型的系统有ELFI[20]、Letizia[21]等。隐式的跟踪可以减少用户很多不必要的负担,不会打扰用户的正常生活。这种方法的缺点就是跟踪的结果未必能正确反映用户的兴趣偏好,如在文献[22]中认为利用日志跟踪用户兴趣偏好存在兴趣偏好走样的问题。同时系统若过度跟踪用户的历史记录,有时会引起用户反感,而放弃对当前推荐系统的使用。上述获取兴趣偏好的方法有时受用户知识背景、资源和经验等方面因素的限制,用户有时意识不到自己的兴趣主题,因此,为用户提供启发式信息,如专家意见、领域术语抽取,可以实现领域知识的复用,为用户间的协同提供支持,提高用户兴趣获取质量。用户的兴趣和需求会随着时间和情景发生变化,用户建模时要考虑到用户长期兴趣偏好和短期兴趣偏好,还要考虑兴趣的变化,目前很多研究关注了用户的长期兴趣,建立了静态模型,用户兴趣更新的动态模型也受到了很多关注,短期兴趣的关注还比较少。结合长期和短期兴趣的建模将是未来的一个研究方向,文献[23]对此进行了研究。而且采用时间窗方法[24]和遗忘机制[25]来反映用户兴趣的变化。目前的更新机制无法及时跟踪用户兴趣的变化,just-in-time型有更强学习效率和动态变化适应能力的建模也是未来的重要研究方向。建模的对象有单用户建模和群组建模之分,单用户建模针对单个用户进行建模,比如基于内容的推荐,群组建模是针对群体用户进行建模,比如协同推荐。用户建模的输出即用户模型的表示方法有很多种,使用用户感兴趣的信息主题表示用户模型的主题表示法,比如Google、MicrosoftAOL。多用于协同推荐的用户-项目评价矩阵表示法,并且文献[11-12]提出了多维空间来扩展用户-项目评价矩阵。利用用户检索过的案例或者与案例相关的一组属性值来表示用户兴趣偏好的案例表示法,如CASPER系统[26]、WebWatcher、TAGUS系统、BGP-MS系统、LIRA、Syskill&We-bert等。基于本体论的表示法用一个本体来表示用户感兴趣的领域,例如Quickstep系统和aceMedia系统。文献[21,23]中提出了容易理解那个方便修改和补充的细粒度模型表示法。用户获取用户信息提供推荐结果利用模型进行推荐建立用户模型模型的更新推荐结果反馈或兴趣需求变化图2用户建模的过程王国霞,刘贺平:个性化推荐系统综述67ComputerEngineeringandApplications计算机工程与应用2012,48(7)用户模型的建模方法主
本文标题:个性化推荐系统综述
链接地址:https://www.777doc.com/doc-4085427 .html