基于Web的个性化混合推荐系统外文翻译资料

 2021-12-14 10:12

英语原文共 5 页

基于Web的个性化混合推荐系统

萨利尔·卡内特卡·阿克什·纳亚克·斯里德哈·斯瓦米·格雷莎·巴蒂亚

印度孟买VES理工学院计算机工程系

摘要:

推荐系统已经存在了十多年。对许多人来说,选择接下来要阅读的书籍一直是一个问题。即使对于学生来说,决定阅读哪个他们所不知道主题的教科书或参考书也是一个大问题。在本文中,我们尝试提出一个基于Web的个性化混合图书推荐系统的模型,该系统利用除了常规协作和基于内容的过滤方法之外的各个方面来提供建议。时间方面的建议也被纳入考虑范畴之内。同样的,对于不同年龄,性别和国家的用户,系统可以对这些人口统计参数进行个性化推荐。从网上搜集信息并使用从此过程获得的信息在提出建议时也同样有用。

关键词:推荐系统;协同过滤;内存过滤;人口统计过滤;时间;网页抓取

1.介绍

推荐系统(RS)的任务是根据用户的喜好,兴趣和偏好来向用户提供合适的书籍推荐。一个RS通过使用某些过滤技术来进行这些预测。这些技术就包括协同过滤,即基于内存的过滤和基于知识的过滤。这些方法帮助用户在万维网的复杂网格中发现相关信息。协同过滤涉及过滤掉具有相似喜好的用户,并根据过滤后的结果为用户预测新项目。协同过滤有两种类型:基于模型和基于内存。基于模型的过滤,也称为离线推荐引擎,涉及使用不同的技术和算法创建模型以提出建议。另一方面,基于内存的协同过滤使用评级矩阵来进行预测,通常用于大型数据集。基于内存的过滤使用有关项目和用户配置文件的信息,描述和关键字为用户提供建议。基于知识的推荐器引擎使用不同的约束和情况来分别基于明确定义的规则和相似性度量来做出推荐。一个推荐平台结合使用这些所有的技术的也是可能的。它被称为混合推荐系统[1]。

随着时间的推移,不同的技术已经被开发出来给出准确的建议。除了常规过滤技术外,还采用了其他方法。基于本体的建议、基于人口统计的建议近来变得越来越重要。现在,自然语言处理也被用于分析用户反馈。语境感知建议也越来越受欢迎。即使是时间方面,对于使当前时间合理的准确建议也同样重要。从网上搜集信息并使用传统的过滤技术正变得非常流行[3]。

我们提出的系统考虑了建议的个性化。用户求助于任何具有信任感的网站。如果给出的建议与用户的喜好和品味相差太大,他/她可能轻易地停止使用该系统。因此,为了建立信任,建议需要个性化。人口统计推荐是提供个性化推荐的好方法。过滤协作方法的结果是提出更好建议的好方法。可以制定适合用户年龄,地区,性别的建议,使其更加个性化。冷启动问题是许多推荐系统中的主要问题。在这种情况下,系统无法给出适当的预测,直到它对用户的偏好有更好的了解[4]。

用户总是希望了解特定类别中最受欢迎的书籍。传统的过滤技术可能无法始终使用户了解书籍的最新趋势。网络抓取可能对具有此类偏好的用户有重大帮助。来自电子商务网站的信息可以用于提供推荐,这些信息具有流行和购买最多书籍的动态列表。

在书籍推荐方面,时间方面同等重要。特别是对于以学术为导向的书籍,旧的评级和建议经常变得过时并导致错误的预测。因此,用户提供的每个评级的时间戳属性是必要的。即使是建议也可以有时间戳。过滤旧的建议有助于做出更准确的预测。如果某个特定图书的新版本可用,则应该建议用户使用较新版本而不是较旧版本。此外,之前评为旧版本的用户也应该被提示对新版本进行评级。因此,评级存储库仍然会更新,过时的建议会在一段时间内从系统中过滤掉[2]。

2.目前的图书推荐系统

各个领域已经存在着几个推荐网站。这些网站提供推荐所采用的方法可能有所不同,但仍有很多共同之处。基于项目的协同过滤和基于用户的协同过滤是两种常用的技术。在基于项目的建议中,考虑项目之间的相似性,然后进行预测。而在后者中,找到具有相似品味的用户,并且基于他们的评级,进行预测。不同的算法如余弦相似度量,皮尔逊相关相似度量被用于相同[7]。在过去十年中,图书推荐网站在网络上蓬勃发展。哈德斯菲尔德图书推荐系统,BookPsychic,WhatshouldIreadnext.com,LibraryThing,Goodsreads.com和Bookexplorer.com是一些受欢迎的图书推荐系统。某些上述提及的系统也提供了基于内容的推荐[2]。

3.提供的推荐系统

图1. 推荐系统概述

上图显示了基于Web的推荐系统的基本概述。将由一台主服务器计算机,完成整个处理工作。服务器将连接到主存储库,用户和人口统计信息将存储在主存储库中。另一个表可能包含整个书籍数据库。这可能包括书的标题,图像和其他信息。第三个表具有用户给书的评级。此表的一个重要字段也是时间戳列。评级的时间方面被纳入该领域。如上所述,因为旧评级已经过时,所以我们需要定期细化建议。因此,在时间戳字段的帮助下,这是可能的。Web抓取的数据将存储在数据库的另一个表中。Apache Mahout为我们提供了使用Apache Hadoop或像MySQL这样的关系数据库来实现后端的选项。Mahout尝试提供能够使用Hadoop大规模解决问题的开源实现。因此,使用Mahout时可扩展性不是问题。然而,与内存表示相比,访问关系数据库中的记录要慢得多,因为必须重复处理数据的额外开销。

图2. 推荐流程的工作流程

上图说明了推荐系统流程的流程。让我们考虑用户评级已经存储在存储库中的场景。现在是时候给他推荐了。将应用两种主要的过滤技术来提供建议:协作和内容。协同过滤既可以使用项目相似度,也可以使用用户-用户相似度。根据用户的人口学特征,如年龄、性别等,进一步的筛选程序将有助于使建议更个性化。除了这些建议外,用户还可以经常访问从电子商务网站上搜集的热门书籍集。

4.过滤技术

A.基于协作的过滤

如上所述,协作过滤主要有两种主要类型:基于内存和基于模型。基于内存的还有两种类型:项目 - 项目相似性和用户 - 用户相似性。通过观察对两个项目进行评级的所有用户来测量项目之间的相似性值。如下图所示,两个项目之间的相似性取决于对两个项目进行评级的用户给予的评级。

图3.项目相似性技术功能

用户 - 用户相似性以不同的方式工作。假设有一个用户XYZ没有看到项目A,那么该算法找到那些喜欢与用户XYZ相同的项目的用户组,并且还评估了项目A.这项技术是针对所有项目进行的XYZ没有评级,然后推荐评分最高的商品。Pearson相关性是用于此目的的流行相似性度量。PearsonCorrealtionSimilarity和GenericUserBasedRecommender是Apache Mahout中的两个不同的类,它们有助于实现这种相似性度量[8]。输出在-1到1的范围之间,其中a -1表示总相异度,1表示总相似度。其数学公式为:

a, b:用户

r a, p:项目P的用户A评级

P:一套项目,由A和B两个等级评定

B.基于内容的过滤

与基于协作的过滤相比,基于内容的推荐需要有关项目的其他信息以提供建议。这种类型的推荐者从用户偏好中学习并推荐类似于用户喜好的项目。如果是图书推荐人,除了用户对图书的评价外,其他信息如作者、流派、出版商、成本、图书页数等也可以存储在中央存储库中[6]。基于内容的推荐者主要从不同的方面学习。因此,选择学习方法是最重要的一步。除了方法的效率之外,还需要考虑其时间和空间复杂性,因为这些因素会影响系统的整体性能。学习方法需要执行两项任务:开发和探索。在开发阶段,系统试图根据用户已经表示的偏好来预测书籍。在现实世界中,用户对物品的倾向经常是变化的,而且变化很大。

因此,所采用的方法需要探索新的选择,并尝试预测一个对用户有利的项目。

基于内容的推荐使用了纳维贝叶斯分类器的概率方法、罗奇奥法和支持向量机等线性分类器以及术语频率反比文档频率、最近邻和相关反馈等方法。ApacheMahout不具备实现基于内容的过滤的类,因为它具有基于协作的技术。但是,有用于实现分类技术算法的内置类[5]。

C.基于人口统计的过滤

多级过滤有助于提供更好的建议。人口统计过滤结合内容和协作过滤的结果,可以带来更好的体验。

聚类技术在提高推荐算法的效率方面非常有利[13]。我们可以根据用户的人口统计特点对用户进行集群,而不是将整个网站注册的用户作为培训集。男性和女性通常倾向于拥有各自的书籍选择,这些书籍通常彼此不同。我们可以根据性别创建不同的集群。年龄可以是群集的另一个属性。集群可以基于不同的年龄组。孩子,青少年,成人可以相应地被推荐与他们的年龄组有关的书籍。像SequenceFile这样的类和不同的距离测量类如EuclideanDistanceMeasure,ManhattanDistanceMeasure用于在Mahout中实现聚类[5]。下图显示了在对目标数据执行实现后,不同的集群如何以图形方式显示。

图4.簇的图形表示

位置也可以是一个很好的过滤参数。这主要有两种方式。根据用户的位置进行分类,根据作者的来源对书籍进行分类。由于语言简单,人们通常比外国作家更喜欢本国作家。然后只能在集群上进行过滤,而不能在整个集合上进行过滤。因此,人口统计参数可以很好地用于个性化建议和减少使用集群进行处理所需的时间。

5.网络抓取技术

随着网络在很大程度上的发展,利用网络资源来辅助推荐过程的想法在过去几年里得到了极大的推动。每一种可能的信息都可以在网络上以多种格式提供。术语“网络抓取”是指从网络中检索或获取数据。它是一种Web内容检索。下面的流程图简要说明了Web抓取的整个过程[3]。

图5.网络抓取流程图

电子商务对推荐书籍有很大帮助。电子商务网站反映了市场上流行和热门的书籍。像amazon.com,flipkart.com这样的网站提供了一系列历史畅销书,本月最佳书籍以及类似的不同类别[12]。可以从网上抓取这样的列表,并且可选地根据人口统计方面对其进行过滤并显示在推荐站点上。网络抓取技术可以帮助解决推荐系统面临的主要问题之一 -- 冷启动问题。当用户不熟悉系统时,冷启动问题就会面临。作为新用户,系统对用户没有或很少有了解,因此无法在这样的阶段推荐书籍。直到用户评价至少几本书之前,系统都需要耐心等待。网络抓取可以作为这个问题的部分解决方案。该技术与用户评级无关。每个用户在注册网站后都可以访问已删除的书籍列表。人们经常被市场上的热门书籍吸引到其中。他们可以通过抓取的数据来不断访问此类书籍。如果什么都没有的话,该系统至少建议用户可能根据市场趋势阅读的一些书籍。随着时间的推移,随着系统对用户有足够的了解,其他过滤技术也随之出现。

网络抓取也可以在向灰羊用户推荐书籍方面发挥作用。这类用户是推荐系统由于其不同的兴趣而无法给出预测的一组用户。因此,网络抓取技术有助于用户与市场上流行的热门书籍保持联系。

6.在推荐系统中建立信任

用户应该信任推荐系统是至关重要的。对系统充满信心将有助于用户获得健康的推荐体验。开发人员应优先考虑此任务。确保信任的一种方式是向用户解释推荐过程。在网站上,最好有一个网页来解释如何建议。同样的视频会产生更大的影响。这不仅有助于用户理解整个机制,还可以培养对系统的信任感。建立信任的另一种方式是通过镜像行为。镜像某人是为了让个人资料与其他用户相似。在配置文件匹配的情况下,我们可以允许用户查看具有相似特征的另一用户的配置文件。但是,应注意不要侵入其他用户的隐私。在这种情况下,推荐系统需要有适当的平衡。只有在用户允许与其他人共享其个人资料的情况下才允许镜像行为功能,否则不允许。

对每个推荐者来说,安全性是另一个重要的方面。基于网络的推荐系统受到恶意用户的攻击,他们试图通过插入虚假的用户评级来影响系统的行为[9]。创建虚假帐户和配置文件是这些用户采用的最简单的策略。他们可以有两个不同的目标 - 增加或减少项目的评级。这种攻击分别称为推攻和核攻击[10]。书籍推荐系统通常受到两种特殊的攻击 - 流行和段攻击。这些类似于推和核攻击,主要攻击重磅炸弹物品。应该有必要预防此类攻击,因为给予用户的建议不应受到可疑评级注入的影响。

一种技术是使用混合算法来提供建议。仅基于协同过滤技术的系统更容易受到上述攻击的影响。因此,使用混合系统或多层过滤技术可以帮助减少这些攻击的影响。我们的系统主要处理三种过滤技术 - 协作,内容和人口统计将更好地抵御攻击。Nuke和push攻击基于配置文件注入方法。使这些攻击更加困难的方法是增加轮廓注入成本。使用验证码使这成为可能[13]。因此,在每个会话期间,可以在提出建议之前使用验证码。IP地址可能是防止恶意用户攻击的另一种工具。如果从同一IP地址发生的注册太多,则可以简单地阻止来自该地址的任何活动以防止任何进一步的攻击。

7.结论和未来范围

除了传统的协作和基于内容的过滤技术之外,现在许多现代技术正在被开发利用。混合算法是许多技术的混合。人口统计过滤有助于提供更个性化的推荐随着网络的发展,它在推荐过程中的使用有助于提高效率。在本文中,我们探讨了Web Scraping的使用,Web Scraping是Web内容挖掘的一种形式。将Web灌输到推荐过程中,可以帮助解决与过滤方法相关的许多限制。本体方面,语义和情境感知建议的蓬勃发展肯定会提高推荐的质量。无处不在的域名(如移动电话)中的推荐正在增强过滤的适用性。

致谢

我们想借此机会感谢我们的导师和项目指南,VESIT计算机工程系副主任Gresha Bhatia

资料编号:[5327]

原文和译文剩余内容已隐藏,您需要先支付 20元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。