推荐系统研究

2023-12-31 00:00:00赵辉袁普及
科技创新与应用 2023年19期

摘" 要:随着互联网的高速发展,数据呈指数级增长,这使得用户需要花费大量时间找到对自己有用的资源。推荐系统能够帮助用户从海量数据中找到需要的资源,因此,该文对推荐系统进行研究。首先,描述目前常用的传统推荐算法,在此基础上,阐述3种基于深度学习的推荐模型,最后,总结全文并描述下一步研究方向。

关键词:推荐系统;互联网;协同过滤;算法;深度学习

中图分类号:TP38" " " " 文献标志码:A" " " " " 文章编号:2095-2945(2023)19-0097-04

Abstract: With the rapid development of the Internet, the data is growing exponentially, which makes users need to spend a lot of time to find useful resources for themselves. The recommendation system can help users find the resources they need from the massive data. Therefore, the recommendation system is studied in this paper. First of all, this paper describes the traditional recommendation algorithms commonly used at present, and on this basis, expounds three recommendation models based on deep learning. Finally, it summarizes the full text and describes the next research direction.

Keywords: recommendation system; Internet; collaborative filtering; algorithm; deep learning

当今,互联网高速发展,给人们提供了不少便利,使人们可以从网上获取自己想要的资源,但是,这也使得数据呈指数级增长,从而导致用户需要花费大量时间找到对自己有用的资源。因此,如何从海量信息中找到有用的资源成为国内外学者的研究热点。为了能够帮助用户在海量数据中找到需要的资源,推荐系统应运而生。用户使用推荐系统后不需要浪费太多时间和精力就能够获得适合自己的资源[1-3]。

1975年,Salton等[4]研究了一种基于词向量的文本文件搜索算法的推荐系统,并将该系统应用于互联网文档搜索领域。近年来,推荐系统广泛应用于各个领域,如新闻、广告、音乐和购物等领域。推荐系统通过对用户的历史行为数据进行分析研究,可以根据用户的日常爱好、关注领域发现用户喜欢的资源,过滤掉不需要的资源。1997年,Resnick等[5]提出非形式化概念的推荐系统,其通过电子商务网站来模拟销售人员,根据销售人员的推荐,进而帮助推荐感兴趣的商品,即能够向用户推荐商品信息,帮助用户作出决策,给用户选择商品提供了很大的便利条件。推荐系统可分为用户模型和推荐模型,其中,用户模型针对用户浏览轨迹、购买记录等建模。然而,传统的推荐系统存在稀疏性问题、用户冷启动、可扩展性、多样性及可解释性等问题,使得推荐实时性差且准确率较低。因此,为了解决这些问题,国内外学者将深度学习引入到推荐系统中。深度学习是机器学习领域的研究方向之一,广泛应用于图像识别、自然语言处理、语音识别等领域,具有较强的学习能力,并能挖掘数据的隐藏信息。传统的推荐系统的用户和物品信息未能充分使用,而深度学习可以较方便地利用这些信息,通过挖掘数据的潜在特性,获取用户和物品的特征描述,进而提升推荐系统的整体性能[6-8]。综上所述,本文研究了基于内容的推荐、协同过滤推荐、混合推荐等传统的推荐系统,描述了基于自编码器、受限玻尔兹曼机、卷积神经网络等深度学习算法等深度学习的推荐系统,在此基础上,对传统推荐系统和深度学习推荐系统进行了总结,并对下一步研究方向进行了描述。

1" 传统推荐系统

推荐系统通过使用不同的网络平台来向使用者提供商品的详细信息,给使用者推荐感兴趣的商品,从而帮助使用者完成购买过程。推荐系统通过对用户的历史行为数据进行分析,建立用户和物品模型,以提取有价值的信息,然后利用推荐算法来计算。其中,推荐算法的选择至关重要。2022年,蒲岍岍[9]研究了新闻推荐系统。该系统通过分析用户的历史行为数据和新闻的文本数据,对个性化重排的新闻推荐算法进行了研究。该新闻算法对新闻的文本数据和用户的历史行为数据进行分析,然后构建用户表征向量和新闻表征向量,使用建模候选新闻列表的全局信息,进而获取排序得分,最终为用户生成结果列表,实现路新闻的在线阅读、模型推理、定时更新等功能。

传统推荐算法包括基于内容的推荐、协同过滤推荐、混合推荐等。基于内容的推荐算法根据用户偏好和项目属性来计算之间的相关性,进而根据用户的爱好将相似度较高的产品推荐给需要的用户。基于内容的推荐算法通过用户的历史记录,将产品推荐给用户,可以解决冷启动问题。在推荐过程中,最为关键的是提取物品特征,能够利用用户历史浏览物品的内容特性构建兴趣偏好模型,然后通过此模型匹配推荐项目的属性,进而将相似度较高的物品推荐给用户。基于内容的推荐算法不依赖用户和物品的评分矩阵,如果推荐系统中用户很少,也能够对用户推荐,但是,该推荐算法有个缺点就是,其推荐的物品与用户使用的物品太相似了,因此,较难将新上架的物品推荐给用户。

协同过滤(Collaborative Filtering,CF)推荐算法是应用较广泛的个性化推荐算法,广泛应用于新闻、音乐、电影等领域。1992年,Goldberg等[10]提出协同过滤系统。该系统利用协同过滤算法来筛选电子邮件,根据个人需要选择出自己感兴趣的邮件,经过过滤器的邮件会优先送达,解决了信息重载问题。其核心思想是通过对评分矩阵进行研究(通常是用户对项目的评分)来得到用户、项目之间的关系,进而预测新用户与项目之间的相互关系,最终给用户推荐感兴趣的产品。

协同过滤算法[11]主要有基于物品的协同过滤、基于用户的协同过滤及基于模型的协同过滤。其中,基于用户的协同过滤算法根据收集用户对项目的评分,对收集的数据进行预处理,构建用户项目评分矩阵。通过用户项目评分矩阵,对用户与用户之间的相似度进行计算,提取与目标用户相似度最高的用户作为用户的最近邻用户集,根据目标用户与近邻用户之间的相似度和近邻用户对项目的实际评分来预测目标用户对未评分项目的评分,进而将评分较高的项目推荐给用户。基于项目的协同过滤算法根据收集用户对项目的评分,然后预处理收集的数据,构建用户项目评分矩阵,从而获取到每个项目的所有用户评分向量,再利用项目的评分向量和相似度计算方法得到项目之间的相似度,构建项目相似度矩阵,预测目标用户对未评分项目的评分,进而将评分较高的项目推荐给用户。基于模型的协同过滤推荐算法根据用户的历史行为数据,训练出机器学习模型,使用其对用户未评分的项目进行评分,最终向用户推荐评分较高的项目。基于模型的协同过滤推荐算法,其模型的选择很重要。但是,协同过滤算法存在冷启动问题。

因为协同过滤推荐算法和基于内容的推荐算法均存在不同的问题,所以,国内外学者提出了混合推荐算法。混合推荐算法是通过将多种推荐方法相结合,利用各自优点获得更好的推荐效果,如可将协同过滤推荐和基于内容推荐的方法相结合,不仅考虑用户与用户的偏好关系,且能解决冷启动问题,进而设计出更好的推荐模型。

2" 推荐算法与深度学习结合

深度学习技术在图像识别、自然语言处理、语音识别等领域应用较多,能够利用用户及物品的辅助信息,具有较好的特征提取能力,因此,将推荐系统与深度学习相结合成为学术界研究的热点问题之一。深度学习与推荐算法结合是在推荐系统中加入深度学习,如:自编码器(Auto Encoder,AE)、受限玻尔兹曼机(Restricted Boltzmann Machine, RBM)、卷积神经网络(Convolutional Neural Network, CNN)等, 进而构件推荐模型。

2.1" 基于自编码的推荐系统

自编码器是一种前馈神经网络,主要处理维度较高的数据,是一种无监督的学习算法。自编码器由输入层、隐藏层和输出层3个部分组成,其核心思想是编码和解码的映射过程,即从输入层到隐藏层实现数据重构,然后解码从隐藏层映射到输出层。基于自编码的推荐系统,能够缓解冷启动问题。

2015年,Sedhain等[12]提出一种基于常规自编码的推荐算法,该算法通过构建无监督深度学习模型,有效地解决标签数据稀疏性的问题,具有较好的推荐效果。由于传统自编码推荐系统的模型表现能力较差,2016年,谢霖铨等[13]提出一种基于降噪自编码的推荐算法,该算法通过ZCA白化对评分数据进行预处理,然后加入噪声让编码器学习输入信号,能够增强算法的泛化能力,但是,该算法不能改善局部最小问题,且随机初始化不能达到预期的结果。2022年,杨阳[14]研究了自编码机的推荐算法,在自编码机的推荐算法基础上,提出使用知识图谱进行特征拓展的双自编码机推荐算法。该算法利用知识图谱作为信息特征扩展来源,通过自编码机模型提取特征,使得数据得到较好的使用,解决了特征信息稀疏问题。同时,为解决向量稀疏性问题,提出了一种潜在语义分析模型增强的自编码机推荐算法,提升了推荐效果。

2.2" 基于受限玻尔兹曼机的推荐系统

受限玻尔兹曼机(Restricted Boltzmann Machine,RBM)是深度学习领域重要的模型之一,该模型是玻尔兹曼机(Boltzmann Machine, BM)的一种特殊的拓扑结构,由可见层和隐藏层构成,只允许层间连接,层内连接是不允许的。受限玻尔兹曼机可应用于物体识别、图片分类、协同过滤等任务,因此,将受限玻尔兹曼机用于推荐系统,成为国内外学者的研究方向。

2014年,孙天凯等[15]提出基于对称受限玻尔兹曼机的协同过滤算法。该对称受限玻尔兹曼机的协同过滤算法利用用户和物品的对称性,给用户和物品分别建立受限玻尔兹曼机,再利用回归算法将两者结果进行融合。文献[16]通过将项目类别信息与条件受限玻尔兹曼机模型的推荐算法相融合,解决了传统受限玻兹曼机在协同过滤推荐算法中存在不足的问题。杨春[17]提出一种基于UP_RBM 模型的推荐算法,其根据 RBM模型对未评分的项目进行预测评分,利用学习好的受限玻尔兹曼机模型对未评分项目进行预测评分,通过融合用户对项目的兴趣偏好预测评分和受限玻尔兹曼机模型的预测评分按照适当的权重,进而得到最终预测评分。2022年,谢妙等[18]提出基于深度受限玻尔兹曼机个性化推荐算法。该算法利用用户信息及用户对资源的评分信息,通过受限玻尔兹曼机网络的正反向更新,得到稳定的受限玻尔兹曼机模型,从而提高了推荐模型的推荐效率。

2.3" 基于卷积神经网络的推荐系统

卷积神经网络通过模拟视觉神经中枢活动方式使得神经网络具有部分视觉功能,主要由输入层、卷基层、池化层、全连接层和输出层构成。其中,卷积神经网络的卷积层和池化层计算是通过学习数据局部特征来提取非结构化数据, 然后对多源异构数据进行表征学习。卷积神经网络能够将多样化信息进行融合, 挖掘潜在信息。卷积神经网络提高了模型的可扩展性,可用于图片推荐、文本推荐和会话推荐。国内外研究者将卷积神经网络应用到推荐系统。

文献[19]研究了一种基于卷积神经网络的推荐系统。该推荐系统利用卷积神经网络对用户感兴趣的图像进行研究,利用余弦相似性得到用户感兴趣的信息,并将其应用到酒店预订系统,从而将用户喜欢的住房风格推荐给用户,即通过卷积神经网络来得到用户的视觉特征,然后分析视觉特征,从而推荐给用户感兴趣的视觉偏好。Seo等[8]将卷积神经网络与上下文感知推荐系统结合,通过卷积神经网络构建文本信息模型,得到用户的兴趣偏好及项目的特征信息,为提取文本语义信息提供更加精确的推荐效果。2017年,Zheng等[20]构建基于注意力机制的卷积神经网络推荐模型,该模型通过分析用户评论和商品评论,利用深度卷积神经网络模型对用户行为和商品属性进行建模,在lookup层将其转化为对应的词向量,然后输入到卷积神经网络中,从而得到推荐结果,能够有效地提高推荐的准确度。Tang 等将卷积序列嵌入推荐模型。该模型利用卷积序列嵌入模型学习序列特征,从而向用户推荐感兴趣的商品。该模型可提高跨任务的学习效率。2017年,Tuan等[21]提出基于3D卷积神经网络的会话内容推荐算法,该算法将会话内容的属性进行逐个字符分解,将分解的数据进行输入并编码,利用卷积神经网络得到物品之间的关系,进而获得数据的内部结构。2021年,赵永泽[6]研究了基于神经网络的推荐算法。该推荐算法分析了卷积神经网络推荐算法存在的问题,首先提出基于序列模式和空洞卷积算法,对各种类型的序列模式利用卷积核抽取信息。然后,融合推荐问题和深度神经网络,提出新的基于卷积神经网络的推荐算法,将高维的抽象关系用低维特征来表示,进而挖掘隐含信息、拟合深层关系。最后,通过残差块优化网络模型,将多次卷积提取的物品特征和输入数据相加,从而增强了特征表达能力,提高了推荐效果。

3" 结束语

随着互联网的高速发展,人们可以从网上获取自己想要的资源,但是,这使得数据呈指数级增长,用户需要花费大量时间找到对自己有用的资源。因此,推荐算法的研究成为国内外学者研究的热点之一。本文描述了基于内容的推荐、协同过滤推荐、混合推荐这3种传统的推荐系统,阐述了基于深度学习的推荐系统,如自编码器、受限玻尔兹曼机、卷积神经网络等深度学习算法。基于深度学习的推荐算法能够提高算法的推荐效率,然而,当前深度学习与推荐系统结合还未完全成熟,后续将继续研究深度学习、数据挖掘技术在推荐系统中的应用,以期具有更好的推荐效果。

参考文献:

[1] 刘君良,李晓光.个性化推荐系统技术进展[J].计算机科学,2020,47(7):47-55.

[2] 郭艳红.推荐系统的协同过滤算法与应用研究[D].大连:大连理工大学,2008.

[3] 周惠宏,柳益君,张尉青,等.推荐技术在电子商务中的运用综述[J].计算机应用研究,2004,21(1):8-12.

[4] SALTON G, WONG A, YANG C S. A vector space model for automatic indexing[J]. Communications of the Acm,1975,18(11):613-620.

[5] RESNICK P,VARIAN H R. Recommender systems[J].Communications of the Acm,1997,40(3):56-58.

[6] 赵永泽.基于卷积神经网络的推荐算法研究[D].成都:电子科技大学,2021.

[7] 张敏,丁弼原,马为之,等.基于深度学习加强的混合推荐方法[J].清华大学学报:自然科学版,2017(10):1014-1021.

[8] SEO S,HUANG J,YANG H,et al. Interpretable convolutional neural networks with dual local and global attention for review rating prediction[C]//Proceedings of the Eleventh ACM Conference on Recommender Systems,2017:297-305.

[9] 蒲岍岍.个性化重排的新闻推荐算法研究及系统实现[D].成都:电子科技大学,2022.

[10] GOLDBERG D, NICHOLS D, OKI B M, et al. Using collaborative filtering to weave an information tapestry [J]. Commun ACM, 1992,35(12):61-70.

[11] 王子茹,宋尚文,阎红灿.协同过滤推荐算法的性能对比与分析[J].计算机仿真,2022(9):435-440.

[12] SEDHAIN S, MENON A K, SANNER S, et al. AutoRec: autoencoders meet collaborative filtering[C]// Proceedings of the 24th International Conference on World Wide Web, Florence, 2015:111-112.

[13] 谢霖铨,梁博群.基于降噪自编码的推荐算法[J].计算机与现代化,2016(2):38-41.

[14] 杨阳.基于自编码机的推荐算法研究[D].扬州:扬州大学,2022.

[15] 孙天凯,邵晓根,鞠训光.基于对称受限玻尔兹曼机的协同过滤算法[J].江苏科技大学学报(自然科学版),2014,28(4):392-394,402.

[16] LIU X M, YANG Y X, RONG W G, et al. Item category aware conditional restricted Boltzmann machine based recommendation[C]// Proceedings of the 22nd International Conference on Neural Information. Istanbul: Springer-Verlag, 2015:609-616.

[17] 杨春.基于RBM模型和LFM模型的推荐算法研究与实现[D].重庆:重庆邮电大学,2019.

[18] 谢妙,邓育林,吕洁.基于深度受限玻尔兹曼机的个性化推荐算法[J].数据采集与处理,2022,37(2):456-462.

[19] ZHOU J, ALBATAL R,GURRIN C. Applying visual user interest profiles for recommendation and personalisation[C]// International Conference on Multimedia Modeling,2016:361-366.

[20] ZHENG L,NOROOZI V,YU P S. Joint deep modeling of users and items using reviews for recommendation[C]// Proceedings of the Tenth ACM International Conference on Web Search and Data Mining, 2017:425-434.

[21] TUAN T X, PHUONG T M. 3D convolutional networks for session-based recommendation with content features[C]// Proceedings of the 11th ACM Conference on Recommender systems, 2017:138-146.

第一作者简介:赵辉(1986-),女,硕士,工程师。研究方向为计算机技术。