基于用户时间和信任度的协同过滤算法之软件工程研究

论文价格:0元/篇 论文用途:仅供参考 编辑:论文网 点击次数:0
论文字数:**** 论文编号:lw202329929 日期:2023-07-22 来源:论文网

第一章 绪论

1.1 研究背景及意义
淘宝、天猫、京东、电子游戏等信息产业已经逐渐渗透到人们生活的方方面面,正在从根本上改善人类获取知识的途径与方式。各商家想出各种各样的办法,来分析投资--回报收益[3],想要最大限度的获取更多的商机,面对大量的信息,用户不知道如何获取有用的信息,需要访问大量的网站才能找到所需的信息,大大降低了工作效率,增加了搜索时间,从而减慢了寻找可用资源的时间。因此,在当今大数据时代[4]下,怎样从海量的信息中快速满足不同用户的需求,更高效、更便捷的获取用户感兴趣的内容,是当前个性化服务所面临的挑战。

目前,获取信息改善途径主要有两种:搜索引擎[5-7]和信息检索技术[8]。信息检索:用户可通过搜索关键字找到自己所需的信息,用户占主导地位,当查询结果不理想时,用户可更换关键字,从而改善这一结果,这在一定程度上改善了搜索效率。目前,应用最为广泛的搜索引擎有:Baidu、Google、Sougou 等。但相应的,也存在着一些弊端:用户无法说清楚自己的具体需求,给信息查找带来一定的困难;用户不确定自己要购买的东西或不清楚自己的愿望清单,需要借助朋友、或是亲友的力量来选择,这就使得推荐系统应运而生。它可通过大数据分析用户行为模式或行为习惯,从而主动向用户推荐信息。一度把推荐信息由主动变为被动,效率大大提高。推荐系统注重研究用户兴趣模型,它通过分析用户最近的兴趣爱好、消费水平、浏览网站类型、购买商品的分类等向用户推荐最感兴趣的商品或新闻,将其他的不相关的信息过滤掉,进而准确无误的向用户推荐,达到用户预期的效果。推荐系统采用“one-to-one”的模式,对每一位用户都做到了定制化、个性化,即不同的用户产生不同的推荐结果,这种方式得到大家的青睐,很好的解决信息超载(Information over-load)的问题。数据的大量增加,人类需求的不断提升,知识型网络[9]的发展,很好的推动了推荐系统的快速发展。
...........................

1.2 国内外研究现状
一种向用户进行推荐商品的系统是互联网时代的一种信息检索工具,从上世纪 90 年代起,推荐系统的发展至今已有 20 余年,大大增强了人们生活的幸福感。纵观推荐系统的发展过程,可以将其分为三个阶段。

第一阶段:推荐系统的初始阶段。对于新的定义进行研究、发现,分析用户的行为,提出一些新的概念。对于推荐系统的研究,早在 1997 年,Resnick 等人就对推荐系统有一个定义:推荐系统是利用电子商务平台向用户提供商品及建议,为用户决定应购买什么商品,仿照货物人员完成购买的过程。我们称使用电子商务系统的人为客户、用户、目标用户,称被推荐给用户的对象为信息、资源、项目。这极大的激发了研究人员的热情,调动了人们在推荐系统科研的积极性。
第二阶段:推荐系统的发展阶段。出现了很多的商业架构应用,主要代表:亚马逊,用户通过搜索引擎[11]可将喜欢的商品放进购物车中,下方会出现“你可能喜欢”的商品列表,分析用户的兴趣爱好,整理出用户感兴趣的商品。

第三阶段:推荐系统的应用阶段。这一阶段出现很多新型的算法,如 NetflixPrize 竞赛,Netflix 发布了一个具有电影评分的推荐系统集,该训练集由 500,000名匿名用户针对 17,000 部电影提交的电影评分组成,每部电影的评分范围为1—5 分。Netflix 则根据所掌握的真实数据与评分数据计算误差,参赛者将均方根误差降低 10%及以下的团队将会获得百万奖励,这在当时对于协同过滤推荐引起了很大的反响。
总的来说,目前推荐系统领域,虽然取得了很大的进展,也取得了不小的进步,但还存在一些问题。比如:数据稀疏性问题,冷启动问题,增加上下文信息后的推荐,对于推荐的精准性增加了一定的难度。所以,我们还需要不断探索更为准确的推荐算法,从而给用户更好的享受体验。
..........................

第二章 推荐系统相关研究

2.1 推荐系统原理
在此之前,已经有人给出了推荐系统定义:用户和物品之间的二维关系,users代表用户,items 代表被推荐的项目(Books、Movies、Restaurants),通过分析用户以往的历史数据,对其分析整理建模,进而对其推荐相关物品的过程。推荐算法是用户和物品对物品评分的二维映射,如图 2-1 所示:


由图 2-1 可知,通过分析用户的购买清单,对大量的数据进行对比,推荐系统必须符合用户的兴趣爱好,满足大多数用户的需求。首先我们需要收集用户的行为数据,分析历史评分数据和建立模型,从数以亿计的商品中寻找到用户感兴趣的商品进行推荐。推荐系统已慢慢演变到人们的日常生活中,可以为用户提供便捷的选择指导,已成为电商时代必不可少的智能服务,只有准确分析用户之前的历史行为数据,才能更好的为用户进行推荐,很好的满足用户的需求。
...........................

2.2 基于物品的协同过滤
协同过滤(Collaborative Filtering):利用某兴趣相投、具有共同经验的群体的爱好来推荐用户感兴趣的信息。比如说,你和另外一个人都喜欢看电影,而你们所喜欢的电影类型都差不多,我可以把这两个人归结为同类用户,那个人对于某一部电影的评价很高,而这部电影你都没有看过。那么,我是不是就能将这部电影推荐给你呢?这就完成了一次准确的推送。传统的基于协同过滤的推荐主要分为两个方面:从物品和用户角度入手,对目标用户进行数据分析,商品推送,完成系统的功能。

如何来衡量两个用户是否有相同的兴趣爱好呢?通过计算两个用户的相似度来衡量。相似度的计算方法有很多,常用的相似度计算有基于欧式距离的相似度计算、基于余弦相似度的计算。
下表 2-1 是 3 个不同用户对于 5 部电影的评分数据,运用不同的相似度计算公式,来计算用户的相似度。评分规则为最高分是 5 分,最低分 0 分。

..........................
第三章 加入时间变化的协同过滤算法.....................................10

3.1 协同过滤算法概述......................................10
3.2 用户兴趣变化问题和用户评分习惯因素............................... 11
第四章 加入用户信任值的协同过滤算法..................................25
4.1 信任度问题......................................25
4.2 模型搭建及算法实现......................................26
第五章 实验结果分析..............................................32
5.1 实验数据及实验评价标准..........................................32
5.1.1 实验数据......................................32
5.1.2 实验评价标准...............................................35

第五章 实验结果分析

5.1实验结果分析
5.1.1公式中参数的计算
(1) 算法中最近邻个数 k
在传统的协同过滤算法中,要计算用户的最近邻用户和物品的最近邻商品,我们可以取最近邻个数 K,通过计算 UBCF 的 MAE 值,选择 MAE 值最小的 K值,更接近预测的效果。通过多次的实验,我们得到结果如图 5-1 所示:


由图 5-1 可知,当 K 值<45 时,MAE 值随着最近邻个数 K 值的增大而减小,说明算法的准确性越好;当 K 值>45 时,MAE 值随着最近邻个数 K 值的增大而不变,说明算法的准确性基本不受其 K 值的影响,因此,我们选择 K 值为 45,作为我们以下实验的参数。

.......................

第六章 总结与展望
处在信息飞速发展的时代,我们希望可以通过 Internet 及时快速的找到自己感兴趣的内容,推荐系统的产生无疑为我们带来了新的机遇与挑战,个性化的推荐算法越来越受到当代人们的欢迎,可以很好的智能提升用户的体验度。对于传统的协同过滤算法存在太多的弊端,易受到环境、地域等因素的影响,通过建立用户兴趣随时间变化的模型,参考用户信任值的模型,设计了混合时间变化函数和用户信任度的算法,对之前的算法进行改进,从而提高算法的准确性,实验证明改进后的算法准确性得到了提高。
协同过滤算法仍然存在一定待优化的地方,值得我们去深思探索。如其他的基于上下文的影响因素,比如 LBS(基于位置的服务[45]),怎样可以根据用户的位置信息给用户推荐物品;基于关联规则[46]的学习,是一种最具影响力的挖掘布尔关联规则频繁项集的算法,如何运用这些算法应用于我们日常生活中;基于模型的推荐[47]的学习,机器学习就是让机器像人脑一样持续性的学习,这也是人工智能领域的一个分支;如何有效的组合各种不同的影响因素,仍是我们不断坚持探究的课题,在科学探究的道路上,我们永不止步,坚持认真研究的工作态度、良好学习习惯的不断培养,攻克一个又一个科学难题,才是我们现在以及将来要做的事情。对于不同类型的协同过滤算法,如何更有效的提高推荐效率仍然需要我们不断的学习与探究。
参考文献(略)


如果您有论文相关需求,可以通过下面的方式联系我们
客服微信:371975100
QQ 909091757 微信 371975100