基于电影数据的个性化推荐技术应用研究

2021-04-25 05:24陈铿蔡默晗李德超
现代计算机 2021年6期
关键词:物品协同评分

陈铿,蔡默晗,李德超

(北方工业大学信息工程学院,北京100144)

0 引言

随着科技的飞速发展,信息服务也随之得到了巨大的发展,用户在获取信息服务便利的同时,同样也面临着得到了大量无用信息,即所谓的信息超载问题。人们每天都要受到成百上千条信息的轰炸,那么,“信息过滤器”将显得尤为突出,是我们日常生活中不可或缺的存在,同时也是信息供应商在当今激烈的信息市场脱颖而出的超级必杀技。面对海量的网络信息,人们所需要的是一种解决信息超载的服务技术,而个性化推荐系统便是一种极具潜力的解决信息超载的服务技术。个性化推荐系统能够从许多繁杂信息中推荐出用户喜欢的信息。生活中的个性化的推荐随处可见,例如电商平台的“猜你喜欢”模块,音乐平台的“每日推荐”模块,以及社交网站的“相似用户”模块。推荐系统能够挖掘用户的潜在兴趣,有效地提高商品的交叉销售能力。

1 相关工作

为了使人们在当今的海量信息中有效筛选自己想要的信息,个性化推荐系统在众多信息服务技术中脱颖而出,2016 年,深度学习正处于其研究的火热时期,YouTube 便将深度神经网络应用到了推荐系统中,使推荐系统的个性化程度进一步提高,在生成的推荐内容中,进一步过滤出最符合用户喜好的内容。2017 年,风靡网络的短视频App——抖音,在使用基于协同过滤的推荐算法的同时,将深度神经网络也融合了进去,从用户的浏览历史纪录以及当前的热门视频,进一步分析了用户的喜好与视频的特征信息,不断地将用户感兴趣的内容推荐出来,因此打造了当时最为火热的短视频App。2018 年,注意力机制在推荐算法中有了新的应用。注意力机制的引入,极大地提高了对信息过滤的效率。同时,用户的爱好存在多样性,注意力[1]机制结合神经网络也更加精准地分析出了用户的兴趣爱好。本系统的设计开发平台是PyCharm,采用Py⁃thon 编程语言来进行数据的获取以及数据的预处理,使用PyQt 来搭建推荐系统的界面。

2 个性化推荐技术研究

一般来说,个性化推荐系统的原理就是给用户推荐与他们所喜欢的物品相似的物品,其技术实现主要分为以下三点:基于内容的推荐技术、基于用户的协同过滤推荐技术以及基于物品的协同过滤推荐技术。

2.1 基于内容的推荐技术

基于内容的推荐系统可以很直观地根据物品属性特征以及用户偏好信息生成推荐列表。其推荐原理如图1 所示。

图1 基于内容的推荐原理

此时,电影的特征属性是电影类型,假设有三个用户,分别为用户1、用户2 和用户3,用户1 和用户3 喜欢科幻和冒险类的电影,而用户2 喜欢家庭喜剧类电影,电影A、C 两者都属于同一种类型的电影,所以判定两者为相似电影,由此便可以推测用户1 也喜欢电影C。所以在推荐时向用户1 推荐没有过行为的电影C。

基于内容的推荐算法其本质就是把物品的特征属性和用户的喜好信息联系起来,其流程图如图2 所示。

图2 基于内容的推荐流程图

2.2 基于用户的协同过滤推荐技术

假设有三个用户,分别为用户1、2、3。用户1 和用户3 都喜欢电影A,那我们就可以将用户3 和用户1判定为相似用户。同时用户3 也喜欢电影A,所以我们便向用户1 推荐其没有过历史行为的电影C。

基于物品的推荐算法其本质就是找到不同物品的相似物品,其中主要步骤分为以下三步:

(1)构建出用户评分表,以用户评分来反映用户对物品的喜好程度,需要依据实际的需要进行设置。

(2)计算相似度:

在上式中,u、v 代表不同用户,N 表示用户有过评分的物品数量。

(3)得到用户相似度之后,计算用户对之前没有评过分物品的评分,采取公式为:

S(u,K)表示与用户u 兴趣最接近的K 个用户的集合,而N(i)是指对物品i 有过行为的用户集合,如果要判断用户u 对物品i 的兴趣程度,那么就要从与其兴趣最接近的K 个用户中挑出对i 有过行为的用户,因此两者取交集。Wuv是用户u 和用户v 的兴趣的相似度,rvi代表用户v 对物品i 的兴趣程度。

计算完评分之后,对这些评分进行排序,然后推荐前k 个未评分的物品给该用户。

图3 基于用户的协同过滤推荐技术原理

2.3 基于物品的协同过滤推荐技术

物品的协同过滤算法是目前业界使用最多的推荐算法[2],其核心思想是通过分析用户之前喜欢的物品,找出这些物品特征,再找到跟这些特征相似的物品,最后将其推荐给该用户。ItemCF 算法认为,如果同时喜欢这两件物品的用户数量越多,那么就判定这两件物品的相似度也就越高。

用户1 喜欢电影A 跟B,用户2 喜欢电影A,电影B 和电影C,用户3 喜欢电影B。从这些用户喜好中,我们可以发现用户1 和用户2 同时喜欢电影A 和电影B,因此我们可以认为电影A 和B 属于相似电影,因为喜欢电影A 的用户同时也喜欢电影B。所以推测用户3 同样也会喜欢电影A,于是在推荐时可以向用户3 推荐将电影A。在ItemCF 中,物品成为了算法的主体,物品的相似度成为了推荐的根本依据,具体实现步骤如下:

图4 基于物品的协同过滤推荐技术原理

(1)构建用户评分信息表

因此在驾驶时实现调整智能自动化技术能够加强车辆控制和机车运转状态的监控与调整,让驾驶人员更容易的能够及时知道机车及时的运转状态,预防危险状况的出现。结合科学技术调控系统,设定对车辆水箱内的降温水温度范围的严格调控,如果超过或少于设定的调控范围,便将会发起自我保护信号并及时进行系统调控,与此同时还会有警报来提醒驾驶员注意。至于刹车问题的解决方案,对不同的路面状况,计算机系统将运转信息回馈至中心调控处理体系,体系通过对状况的精准判定作出精确的预算。在人工智能的协助下,还可能给司机行驶意见,规划更为安全的路径。

(2)计算物品之间的相似度,首先重构物品评分信息,然后根据重构的表来创建同现矩阵相似度由公式来计算:

在上式中,i、j 代表不同物品,N 表示喜欢该物品的用户数。

该公式的意义在于惩罚了活跃的用户,即惩罚热门物品的权重,那么就会减轻热门物品与许多物品相似的可能性。

(3)计算推荐结果

计算完用户评分表以及物品相似度表之后,通过使用公式来计算评分。

其中S(i,k)是指和物品j 最相似的K 个物品的集合,N(u)则是指用户u 喜欢物品的集合,Wij指物品i 与物品j 的相似度,ruj表示用户u 对物品i 的兴趣程度。

该公式的最主要的意义便是在用户的历史纪录中感兴趣的物品越相似的物品,便可以在推荐列表中有较高的排名。

3 实验结果与分析

本文基于内容的推荐技术,基于用户的协同过滤推荐技术以及基于物品的协同过滤推荐技术分别进行了调试,并使用Qt Designer 工具来实现界面的搭建。实验结果如图5。

图5 准确率运行截图

图6 基于内容的电影推荐

4 结语

在Python 开发环境和PyCharm 的软件环境下进行实践,主要对从豆瓣电影中爬取的数据进行预处理,而界面使用了Qt Designer 工具来搭建,之后使用基于内容的推荐算法设计并完成了一个电影推荐系统,同时使用数据增广的方式来填充数据,缓解用户评分数据稀疏问题。同时,也通过基于协同过滤的两种推荐算法验证了此方法的可行性。同时分析了不同K 值对推荐算法准确率的影响结果。

猜你喜欢
物品协同评分
创造力的“阴暗面”与“创新—保新”的协同论
车联网系统驾驶行为评分功能开发
家校社协同育人 共赢美好未来
APACHEⅡ评分在制定ICU患者护理干预措施中的应用研究
京津冀协同发展加快向纵深推进
京津冀协同发展
图画捉迷藏
双周最佳阵容
找物品
创意,源自生活的可爱小物品