《推荐系统:技术、评估及高效算法》一1.8 出现的问题和挑战

1.8 出现的问题和挑战

1.8.1 本书对出现的问题的讨论

从前面的讨论可以很明显地看出,推荐系统的研究正在向众多不同的方向发展,同时新的主题不断出现,或者正成为更重要的研究课题。读者也可以参考最近的ACM RecSys会议资料,参考其他优秀的论文,将其作为额外的研究素材[7,3]。本手册中涵盖许多这种话题。实际上,很多已经介绍过了,例如,上下文感知推荐(第7章);新的可视化技术(第17章);基于社区的个性化搜索(第18章);基于信任的推荐系统(第20章)。其他一些重要的话题在手册最后两部分,我们现在简短地介绍一下这些章节。

第19章介绍社会标签系统(STS),这是随着Web 2.0的发展而出现的跟推荐系统相关的新话题。STS如同Flickr、Bibsonomy、Delicious这类网站一样,允许普通用户发表和编辑内容,同样也允许用户产生和共享标签(即自定义关键字)。STS用户正面临着信息过载问题,因为STS有数以百万计的用户,他们进入系统后发表的内容和标签不受控制,这就给传统的推荐系统造成检索困难。因此,需要推荐系统来帮助用户找到相关的信息,于是许多商业STS开始提供推荐服务(如Delicious)。

该章讨论了STS推荐系统面对的新挑战,如推荐系统的新任务。这些不仅包括传统的内容推荐也包括相关标签推荐,甚至其他相似用户推荐。标签推荐系统(即推荐给用户一个物品的相近标签),与传统的推荐系统有很多独特性,因为系统可以推荐经常出现的标签,不像传统的推荐系统一般不对相同物品进行二次推荐。另外,STS的推荐系统解决的是三维问题(用户、资源、标签),而不是传统推荐系统的二维问题(用户、物品),这个问题会影响算法的复杂性。该章有一项最新调查,是关于支持STS的新一代推荐系统的。详述了给真实STS系统部署推荐系统遇到的挑战,并且为解决STS和标签推荐系统面临的挑战提供了新的算法。

第21章处理这样的情形,就是系统最好能够给一群用户推荐信息或物品,而不是给单个用户推荐。例如,推荐系统可以为一个群组选择电视节目,或者推荐歌单,其模型是基于整体群组成员的。为群组推荐很明显要比为个体推荐更复杂。假设我们能精确地知道单个用户喜好,那么问题就是如何组合单个用户模型。在本章中,作者讨论了群体推荐如何工作,面临的问题,目前的进展。

第22章讨论了聚合用户偏好、准则和相似度这一普遍性问题。通常这类聚集是通过利用算术平均值或最大最小值函数完成的。但是许多其他有灵活性和适应性,并且最终能产生更相关的推荐结果的聚合函数经常被忽略。在本章,作者回顾了聚集函数的基础和特性,并且介绍了最重要的几个,包括广义集群,Choquet积分和Sugeno积分,有序加权平均,三角模自生成,双极性聚合函数。这种函数可以模拟输入条件之间的各种相互作用,包括连续的、分散的和混合的行为。

在第23章中,作者着重讲了推荐系统的另一个重要问题,即推荐系统生命周期过程中需要积极寻找新数据的问题。这个问题通常被忽略,因为用户访问系统时,系统就假设没有足够大的空间管理系统收集的数据(如评分)。实际上,推荐系统可以激发用户兴趣,许多系统在推荐过程中明确地询问用户偏好。因此,通过调整推荐过程,用户可以提供一系列不同的信息。特别是系统可以要求用户评价特定商品,用户对这些物品的评价在特定的条件下是非常有用的,比如,为一些用户或者整个用户群体产生更加多样化的推荐结果,或者简单地提高系统的预测准确性。此时,主动学习出现了;主动学习可以增强推荐系统,帮助用户更了解自己的偏好,产生更有效和更有用的问题。同时,主动学习可以为系统提供新信息,为随后的推荐作分析。因此,推荐系统应用主动学习能使推荐过程个性化[61]。这可以通过允许系统积极地影响用户遇到的物品(例如,在用户注册或用户定期使用时给用户展示物品)来完成,同样也可以通过用户自由探索自己的偏好来完成。

第24章介绍了另一个新兴话题,即多准则推荐系统。多数推荐系统通常是考虑单一标准值来决定物品的效用,例如,整体评价或者一个用户对一个物品的评分。但是目前这个假设被认为具有局限性。因为用户做选择的时候,系统为一个特定用户推荐的物品是否合适要根据用户考虑的多方面因素判断。多准则的组合可以影响用户意见,从而产生更有效更精确的推荐。

第24章提供了多准则推荐系统的一个概述。首先,它把推荐问题定义为一个多准则决策问题,并且回顾了支持多准则推荐实现的方法和技术。随后,集中讨论了多准则评分推荐技术的分类,这种技术主要是根据物品在不同准则上的评分向量对用户效用模型建模来产生推荐的。给出了有关利用多准则评分计算评分预测值并生成推荐的当前算法的概述。该章包括这些推荐系统的有争议问题和未来面临的挑战。

本书最后一章(第25章)概述了安全方面的话题。这个话题在过去几年是一个重要问题。目前这个话题的工作在[28,45,102,112]有介绍。该章分析能产生更具健壮性推荐的算法设计,即推荐不易受到恶意用户影响。实际上,协同过滤推荐系统依赖用户信誉,即默认假设用户与系统相互作用的目的是为自己得到好的推荐,从而给邻居提供有用的数据。然而,在某些情况下用户与推荐系统的交互有一系列的目的,这些目的可能是与系统所有者或系统多数使用者背道而驰的。也就是说,这些用户想去破坏推荐系统网站或者干预提供给访客的推荐,例如,给一些物品更高的分数或更低的分数,而不是进行公正的评价。

该章作者提出一个有效的攻击模型,这种攻击的成本很低,但是对系统输出产生的影响很大。由于这些攻击可以在攻击网站时运行良好,因此很有必要检测它们并尽快制定对策。同时,研究人员已经研究出许多能经受攻击的健壮性算法,而且与有效攻击相比,这些算法具有较低的影响曲线。这些方法在本章中也涉及了。利用这些技术的结合,研究人员考虑的不再是避免攻击而是去控制攻击的影响,让他们付出高昂的代价。

1.8.2 挑战

新兴的具有挑战性的推荐系统话题,不限于我们上面提到的章节中描述的那些。此外,覆盖所有的主题并不在这个简短介绍的范围内。读者可以参考本书最后的讨论部分,讨论其他值得关注的问题。

下面简短地介绍其他具有挑战性的话题,我们认为这些话题对推荐系统的研究发展很重要,但本书并没有涵盖这些内容。

大的真实数据集背景下的算法扩展性。随着核心技术进步与成熟的研究,算法扩展性明显成为推荐系统的重要问题,它决定着如何把核心推荐技术嵌入真实系统里,如何处理用户和物品互动(评分、偏好、评论等)产生的大量动态的数据集。有个方法是在相对较小的数据集离线测试,但这个方法在非常大的数据集上可能失效或者完全不适应。需要进行新方法和大规模的评估的研究[91,92,33,38,116,75,75]。

主动推荐系统,即虽然没有明确的请求[90,24,62,80],推荐系统也产生推荐。到目前为止大多数的推荐系统都遵循一个“pull”模型[94],用户为获得推荐而发起请求。时变境迁,计算机无处不在,用户间总是相连的,人们很自然地想到推荐系统能够探测到隐藏的请求。所以需要预测不仅是推荐什么,还要考虑什么时候,如何去推送推荐。这样推荐系统变得积极主动而不用被视为骚扰。

推荐系统中的用户隐私保护[81,26,79,56,17,28,102,16,5,53,70,114]。推荐系统利用用户数据产生个性化推荐。在尝试建立更多更好的推荐系统时,它们尽可能多地收集用户数据。这无疑会对用户隐私产生负面影响,用户可能开始觉得系统知道太多关于自己真实想法的信息。因此,需要设计解决方案,简约并明智地使用用户数据。同时这些解决方案将确保用户信息库不被恶意用户随意获得。

推荐给目标用户的物品多样性[104,66,69,55,54,46,119]。推荐列表中包含的物品如果具有一定程度的多样性,用户就更有可能找到合适的物品。为受限种类的产品做完美推荐是没有意义的,除非用户已经表示他的偏好在一个狭窄的范围内。有许多情况,特别是在推荐过程的早期阶段,用户想要探索新的多样性的方向。在这种情况下,用户使用推荐系统作为一个知识发现工具。在这个话题上的研究仍处于初级阶段,需要描述“多样性”的特性,即我们要从几次不同推荐中还是从一次推荐中寻找多样性,以及如何保证推荐精确性的同时兼有多样性。

在建立推荐列表的过程中整合用户的长期和短期偏好[6,40,74]。推荐系统可以分为两类:一种是建立长期的配置资料,通过聚集所有系统收集的用户交易数据产生推荐(如系统过滤);另一种更侧重于用户的短期偏好,例如,在基于案例的方法中。显然,在解决偏好整合问题上,这两方面都很重要,无论是精确的用户任务还是物品的可用性都要兼顾。实际上,在当有足够的证据表明用户的短期偏好与长期偏好发生偏离时,需要建立混合模型来正确地决定是要发生兴趣偏移,还是不要偏向用户的偶然偏好。

通用的用户模型和交叉领域推荐系统能够在不同的系统和应用领域调配用户数据[41,18,52,19,20,49,15]。使用通用的用户模型技术,一个单一的推荐系统可以产生多种物品的推荐。这对于一般的推荐系统是不可能的,因为一般的推荐系统能够把多种技术整合到一个混合的方法中,但是却不能利用在一个领域收集到的用户偏好信息来在另一个领域产生推荐结果。

在开放式网络中运行的分布式推荐系统[38,116,92,113,17,102]。大多数推荐系统的计算模型是典型的客户端服务器结构。用户客户端请求推荐,推荐系统服务端产生推荐以回应请求。这显然是个严重的限制,受到集成式控制系统中所有传统问题的折磨。新兴的网格计算或云计算的出现,为推荐系统实现更具健壮性和灵活性的计算模型提供了良机。

最优化推荐序列的推荐系统[120,99,10,59,61,107,106]。我们已经提到过传统的推荐系统是为了提高推荐质量,这依赖一个简单的方法:一次性的请求/响应。会话式推荐系统可以通过实现学习能力进一步提高,不仅可以优化推荐的物品,而且可以优化如何使用户系统在所有可能情况下都能展开对话。

移动上下文的推荐系统[117,98,55,51,4,115,111,57,29,9,77,76,89,73,44,95,13]。移动计算作为个人计算最自然的平台。当用户移动的时候可能产生推荐请求,例如,在城市旅游时的超市或者酒店。因此我们需要使用户界面“移动”起来(需求是“移动”的),需要设计能充分利用有限的移动资源(计算能力和屏幕尺寸)的计算方案。

最后,在结束引言之前,我们想介绍一些额外的挑战,即在最近的RecSys会议中一个教程中讨论的,该次会议地点在纽约,时间是2009年10月22日到25日,[http://recsys.acm.org/tutorial3.pdf]。John Riedl(Uni-versity of Minnesota)、Todd Beaupre(Yahoo!)和John Sanders(Netflix)提出研究推荐系统的八个重要挑战:透明度、探索与利用、指导准则、时间价值、用户行为解释、评价推荐系统、扩展性、学术/工业之间关系。

在引言中已经讨论过一些问题。例如,当讨论解释推荐的作用时介绍了透明度,我们强调透明度在使推荐更易被用户接受上有重大作用。同时,推荐系统的评估方法(也就是评估中被测量的一系列重要角度)这个话题在另一章(第8章)有完整的阐述。

推荐的时间价值在上下文感知推荐系统(第7章)的评论部分讨论过。然而,实际上面临的挑战是,给定的一系列推荐不可能永远适用,而这些物品需要过一段时间才能被系统推荐。例如,当谈及新闻物品时,人们显然想要了解最新发生的事件和新闻,而这些新闻甚至是与最初发布间隔一天后仍不能被推荐给用户。

主动学习(第23章)对探索还是利用的话题有所涉及。这个过程面临的挑战也是设计师必须妥善解决的主要困境,即在系统当前可用数据的给定条件下,推荐目前能识别出的好物品,还是为了得到未来更新也可能更好的推荐结果,而去探索用户的偏好(比如,要求用户对额外的特定物品评分)。
索引式导航栏,导航栏指的是将传统的推荐列表(即推荐结果)和能够让用户在选项中更加自主浏览的工具相结合。用户行为解读指的是,除了用户显式评分之外,还可以探测、分析用户在操作推荐系统中产生的更多行为,并用于构建更好的预测模型。这个想法是,每个用户的用户行为都应该被利用在推荐过程中。但是解读用户行为(即一个行为的背后意图)是个挑战,有些行为需要被舍弃,因为这不是由原来真正的用户产生的,例如,在同一个浏览器中不同用户执行的行为,或者是虚假和恶意注册,或者是由机器人和爬虫引起的数据或日志。

先前也提到过可扩展性。我们强调,很显然这是个问题,当前文献中对这个问题的探讨并不完整,因为可扩展性一直被大多数工业实践者研究调查。
最后,关于工业界和学术界合作一事在研讨会上讨论得兴致勃勃。工业界有一些特殊的问题,但这些问题没有明确地公开。这有很多原因,包括不向竞争对手透露关键信息。相反,学术界正在寻找能在允许的时间和资源框架内解决的问题,学术界通常会专注一个能对科学界产生影响的专题。这种不同会使工业/学术合作变得困难。但是推荐系统是个需要新的实际挑战的领域,这些挑战是有利于解决问题或使问题变得成熟的。如果我们不解决那些有用的但是有风险的挑战,那么该领域的研究就真正有停滞不前的风险。
我们希望本书能成为实践工作者和研究人员的有用工具,有助于在这个令人激动并且有用的研究领域进一步开发知识。这样我们相信能减少两组人员(工业与学术)走不同路线的风险。目前推荐系统领域极大地得益于工业界和学术界对此的兴趣和努力。因此,当他们两组人阅读本书时,我们都会奉上最美好的祝愿。希望能吸引更多的研究者在这个非常有趣又充满挑战的领域奋斗!

参考文献










时间: 2024-10-31 13:45:45

《推荐系统:技术、评估及高效算法》一1.8 出现的问题和挑战的相关文章

《推荐系统:技术、评估及高效算法》一1.5 应用与评价

1.5 应用与评价 推荐系统的研究着重放在实践和商业应用上.因为除了理论方面的贡献,这方面的研究一般旨在切实促进商业推荐系统的发展.因此,推荐系统的研究包括实现这些系统的实践方面.这些方面与推荐系统生命周期的不同阶段都相关,即系统设计.实现以及系统运行过程中的维护和改善. 系统设计阶段所需考虑的影响因素或许会影响算法的选择.第一个要考虑的因素--应用的领域是算法选择的主要影响因素.[72]提供了推荐系统的分类,并且对特定应用领域的推荐系统应用做了分类.基于这些特定的应用领域,我们为最普遍的推荐系

《推荐系统:技术、评估及高效算法》一导读

前 言 推荐系统是为用户推荐所需物品的软件工具和技术.提供的推荐旨在通过各种决策过程来支持用户,例如,买什么物品.听什么歌或者读什么新闻.推荐系统对于在线用户处理信息过载是一个非常有价值的方法,并成为电子商务领域最强大和流行的工具.因此,人们提出了各种各样的推荐技术,并在过去的10年中将其中很多方法成功地运用在商务领域. 推荐系统的发展需要多学科的支持,涉及来自各个领域的专家知识,如人工智能.人机交互.信息检索.数据挖掘.数据统计.自适应用户界面.决策支持系统.市场营销或消费者行为等.本书旨在基

《推荐系统:技术、评估及高效算法》一1.1 简介

1.1 简介 推荐系统(RS)是一种软件工具和技术方法,它可以向用户建议有用的物品[60,85,25],这种建议适用于多种决策过程,如购买什么物品.听什么音乐.在网上浏览什么新闻等."物品"是用来表示系统向用户推荐内容的总称.一个推荐系统通常专注于一个特定类型的物品(如CD或新闻),因此它的设计.图形用户界面以及用于生成建议的核心的推荐技术都是为特定类型的物品提供有用和有效的建议而定制的. 推荐系统主要针对的是那些缺乏足够的个人经验和能力的人,他们无法评估潜在的大量可供选择的物品,比如

《推荐系统:技术、评估及高效算法》一3.1 简介

3.1 简介 网络上和数字图书馆中,存在着大量而丰富的信息,由于它们的动态性和多样性,很难快速找出我们想要的或最能满足我们需求的东西. 因此,用户建模和个人资料访问的作用变得越来越重要:根据喜好和品位,用户需要个性化的支持来从大量信息中筛选出可用信息. 大量的信息来源显示,推荐系统是能够满足用户个性化需求的一种方式[73].推荐系统在巨大的可能选择范围内引导用户发现感兴趣的或有用的个性化推荐结果[17].推荐算法把用户的兴趣作为输入来产生一个推荐列表.亚马逊的推荐算法用于为每个用户定制一个网上商

《推荐系统:技术、评估及高效算法》一2.3 分类

2.3 分类 分类器是从特征空间到标签空间的映射,其中特征代表需要分类的元素的属性,标签代表类别.例如,餐厅推荐系统能够通过分类器来实现,其分类器基于许多特征描述把餐厅分成两类中的一类(好的,不好的). 有许多种类型的分类器,但是一般情况下我们谈的有监督分类器和无监督分类器.在有监督分类器中,我们预先知道一组标签或是类别,并且我们有一组带有标签的数据,用来组成训练集.在无监督分类中,类别都是提前未知的,其任务是恰当地组织好我们手中的元素(按照一些规则).在本节中我们描述几个算法来学习有监督分类,

《推荐系统:技术、评估及高效算法》一3.4 趋势和未来研究

3.4 趋势和未来研究 3.4.1 推荐过程中用户产生内容的作用 Web 2.0是一个描述万维网技术趋势的术语,万维网的目标是促进用户之间的信息共享和协作.按照Tim O'Reilly http://radar.oreilly.com/archives/2006/12/web-20-compact.html,Accessed on March 18,2009说法,术语Web2.0的意思是以用户为中心,设计用户产生内容的软件,因为其内容是由成千上万用户所贡献的,如Flickr,Wikipedi

《推荐系统:技术、评估及高效算法》一3.3 基于内容的推荐系统的现状

3.3 基于内容的推荐系统的现状 顾名思义,基于内容的推荐是利用物品的内容数据来预测它和用户个人信息的相关性.基于内容的推荐系统的研究涉及计算机科学的许多方面,尤其是在信息检索[6]和人工智能领域. 在信息检索领域,推荐技术研究的想象力来自将用户搜索推荐结果看作一个信息检索的过程.在信息检索系统中,用户需要给出一次性查询信息(经常是一个关键词列表),而在信息过滤系统,用户的信息需求被表示成他的个人信息.由于用来描述物品的属性在数量和类型上的差异,待推荐物品也会有较大差异.每个物品当然可以用一组已

《推荐系统:技术、评估及高效算法》一2.5 关联规则挖掘

2.5 关联规则挖掘 关联规则挖掘关注于规则的发现,其他能够根据事务中出现其他物品来预测出现某个物品.两个物品被发现相关只意味着共同出现,但是没有因果关系.注意不要将这种技术与在2.3.3节中提到的基于规则的分类混淆. 我们定义物品集为一个或多个物品的集合(例如,(牛奶,啤酒,尿布)).k-物品集是包含k个物品的集合.给定物品的频繁度称为支持量(比如,(牛奶,啤酒,尿布)=131).并且物品集的支持度是包含它的事务的比例(例如,(牛奶,啤酒,尿布)=0.12).频繁物品集是支持度大于或等于最小支

《推荐系统:技术、评估及高效算法》一2.4 聚类分析

2.4 聚类分析 扩展CF分类器的最大问题是计算距离时的操作量,如发现最好的K近邻.如我们在2.2.3节中所看到那样,一种可能的解决方法是降维.但是,即使降低了特征维度,仍有许多对象要计算距离,这就是聚类算法的用武之地.基于内容的推荐系统也是这样,检索相似对象也需要计算距离.由于操作量的减少,聚类可以提高效率.但是,不像降维方法,它不太可能提高精确度.因此,在设计推荐系统时必须谨慎使用聚类,必须小心地衡量提高效率和降低精度之间的平衡. 聚类[41],也称为无监督的学习,分配物品到一个组中使得在同