论文部分内容阅读
在当今大数据环境中,信息过载问题一直困扰着互联网用户。随着推荐系统出现,人们就有了一个新的出色的信息过滤工具。然而传统推荐算法仍然存在许多问题,例如冷启动和精度低等等。过去的几十年中,研究工作者们一直致力于解决这些问题,提出了各种各样的推荐模型。因此,推荐系统也在不断的发展着。本文首先介绍了推荐系统的组成和两个传统推荐模型:基于内容的过滤(CBF)和协同过滤(CF)推荐模型。然后介绍了一些改进的推荐模型和深度学习的相关技术理论,这些将作为本文后续研究工作的理论基础。本文还指出了传统推荐算法存在的诸多问题。这些问题包括系统冷启动问题、数据稀疏性问题、推荐多样性问题、非线性特征学习能力问题。1.冷启动问题:当新项目和新用户加入系统时,没有大量的历史关联行为记录作为推荐的基础。例如,协同过滤推荐算法尽管需要较少的产品知识,并具有准确的推荐内容和宽泛的推荐范围,但存在冷启动问题。2.稀疏性问题:用户对项目的评分记录相对于总用户数和总项目数而言,往往只占极小一部分,这使得用户项目评分矩阵的数据稀疏性极高。例如,使用协同过滤算法在计算用户和项目之间的相似度时准确率往往很低,这将导致推荐系统的推荐精度直线下降。目前大部分相关研究仅仅利用用户对项目的评分信息,并不能从本质上解决上述推荐中存在的问题。面对海量数据,用户往往只能访问到少量物品的信息,从而导致能够反映用户偏好的历史记录数据稀疏。加入额外的数据源或引入辅助信息(如图像、文本等)就成为解决这些问题的一种方案。因此如何在推荐系统中有效融合多源辅助信息,为不同用户做出精准推荐,成为推荐系统领域重要的研究问题。3.多样性问题:基于内容的过滤的推荐不存在冷启动问题,同时能缓解数据稀疏的问题。另外它也有更高的可扩展性并且能够向所有用户推荐没有评分的新项目。算法始终根据内容标签向对应的用户推荐项目,这很可能导致推荐结果没有新颖性,缺乏多样性。基于内容的推荐难以发现用户的某种不可预测或独特的偏好。4.非线性和表征学习能力:传统的推荐算法一般是浅层或线性模型,无法学习到用户和项目的深层次特征.此外,它们难以利用多源异构数据,往往需要有效的特征提取,依赖于人工设计特征,这就导致了工作量大,效率低下,可扩展性低。而基于深度学习的算法可以有效的解决这些问题,从而提高推荐准确性。深度学习能够学习非线性的多层次抽象特征表示。深度学习推荐模型能融合多源异构数据,如用户的显式反馈和隐式反馈数据、项目内容、用户画像数据等。它能将各类粗糙的原始数据作为输入来学习用户和项目的隐表示,从而缓解数据稀疏和冷启动问题,并提升推荐系统的能力。近年来,随着大数据技术和深度学习算法的快速发展,基于深度学习的推荐系统取得了令人瞩目的成绩。深度学习能够学习非线性的多层次抽象特征表示,并且能够融和多源异构数据进行处理。它能将各类粗糙的原始数据作为输入来学习用户和项目的隐表示,从而缓解数据稀疏性和冷启动问题,并提升推荐精度。因此,针对上述这些问题,本文首先提出了两个基于深度学习算法的推荐模型(CNN-Based CBF和LSTM-Based CF),然后融合这两个模型形成一个加权混合推荐模型,用来向用户推荐电影。混合模型的目标是提高精度,缓解系统冷启动和数据稀疏问题,同时保持推荐结果的多样性,并在不同的数据集上具有一定的泛化能力。本文的主要研究工作如下:1.对于本文提出的基于CNN的内容过滤模型,基于LSTM的协同过滤模型和加权混合模型这三个模型,本文使用均方误差(MSE),查准率(Precision)和召回率(Recall)这三个指标来评估其在具有高数据稀疏性的两个MovieLens数据集上的推荐性能和泛化能力。此外,本文还对比了三个模型的覆盖率(Coverage),用于评估推荐模型解决长尾效应的能力。对于加权混合推荐模型,本文还使用了 Top-N推荐列表来观察并分析推荐结果的多样性以及混合模型是否具有冷启动问题。对于这两个数据集,训练集和测试集的划分比例为4:1。为了在本实验中计算查准率和召回率,实验中将评分大于或等于3.5分的电影设置为正样本,并将评分低于3.5分的电影设置为负样本。这样划分之后,正样本和负样本的数量可以大致平衡,然后分别评估两个模型的查准率和召回率。2.卷积神经网络(CNN)算法有诸多优点,比如它能有效捕获局部特征,有实现数据降维的作用,提取数据的高频信息,进而大大降低计算复杂度等等。因此CNN被广泛使用在图像识别,自然语言处理中,并且表现出色。此外,文本卷积神经网络(TextCNN)是CNN的一种特殊结构,在提取文本特征时有良好的效果。而电影标题,就是文本数据。因此,本文融合TextCNN和深度神经网络(DNN),提出了一个基于内容过滤的推荐模型(CNN-Based CBF)。首先,使用TextCNN将电影标题转换为文本向量,并结合用户和电影的其他特征作为辅助信息。其次,使用深度神经网络融合多源辅助信息,以实现基于内容的过滤的推荐模型。最后,生成初始推荐序列。该模型学习用户和电影的隐式表示,并基于此隐式表示为用户生成电影推荐列表。实验结果表明,该模型在数据稀疏度很高的数据集上仍然有很好的性能。对于查准率,召回率,均方误差,三个评价指标都大大优于传统的推荐模型。并且,该模型在两个数据集上表现相当,泛化能力良好,具有一定的通用性。3.长短期记忆神经网络(LSTM)是一种循环神经网络(RNN)的特殊结构。LSTM在处理序列问题时,有天然的优势。它继承了RNN的短期记忆的特性,并且解决了 RNN无法记住长距离依赖的问题。因此,本文基于LSTM网络,提出了一个协同过滤推荐模型(LSTM-Based CF)。首先将电影标题输入LSTM网络转换为文本向量。接着,使用两个神经网络分别提取用户特征和电影特征。然后,该模型执行矩阵分解算法,并分解共现矩阵,分别形成电影和用户的隐式特征矩阵,并将训练好的两个特征矩阵保存起来。最后,系统就可以使用用户特征矩阵和电影特征矩阵做电影推荐了。推荐方法为计算电影特征向量与电影特征矩阵的余弦相似度,再选取相似度最大的Top-N个电影,这样就得到了同类型的电影列表。或者,使用用户特征向量与电影特征矩阵计算所有电影的评分,同时计算用户与电影,电影之间,或者用户之间的相似度,取评分最高或相似度最高的Top-N个电影,推荐给该用户。实验结果表明,该模型无论是查准率,召回率,还是均方误差,三个指标都优于传统的推荐模型,但比起本文的CNN-Based CBF推荐模型稍显逊色。而对于覆盖率,该模型优于CNN-Based CBF 模型。同样,该模型在两个数据集上表现相当,泛化能力良好。另外,DeepFM模型的实验结果和LSTM-Based CF模型十分接近,原因可能是它们都是基于因子分解和神经网络相结合的模型。4.混合推荐模型可以利用每一种算法的优势,弥补单一模型的缺陷。本文将上述两种模型按照并行式设计的方式结合起来,形成一个加权混合推荐系统。加权策略使用多项式回归算法实现。实验结果表明当多项式最高次数为5时,混合模型的综合性能最好。此时,加权混合模型具有较高的推荐精度和较低的均方误差。因此,使用次数为5的多项式回归方程式来获得最终的加权混合模型。在Top-N推荐实验结果中,通过分析比较用户的历史兴趣列表和Top-N推荐列表中的电影类型,发现Top-N推荐列表中大多数电影类型本来就是用户喜欢的类型,但是也出现了一些新的电影类型。因此,从Top-N推荐实验结果可以看出,该加权混合模型的推荐结果在保证准确性的前提下也考虑了多样性和新颖性。另外,比起本文提出的的另外两个单一模型和当前比较流行的DeepFM模型,该混合模型的MSE值更低。它的推荐结果的覆盖率更高,推荐结果也具有多样性,一定程度上缓解了长尾效应。同时,该混合模型在两个数据集上表现相当,泛化能力良好。对于没有历史评分数据的新用户和电影,混合推荐模型也能形成Top-N推荐列表。因此,本文提出的加权混合推荐系统没有冷启动问题,并且在稀疏度高的数据集上也能表现良好,比起CNN-Based CBF,LSTM-Based CF和DeepFM模型,它的综合性能更好。综上所诉,本文提出的基于深度学习的电影混合推荐系统克服了传统推荐模型的不足,并且提高了推荐精度,拥有较高的覆盖率。该模型具有可行性和有效性,有一定的研究意义。