本文是一篇工程硕士论文研究,本文主要工作简单总结如下:(1)梳理常见的传统推荐算法,整理基于深度学习的推荐技术发展趋势,归纳总结传统推荐算法的不足之处,改进神经协同过滤模型的难点和创新点。(2)简要介绍了多层感知机,卷积神经网络以及 GRU 神经网络这三种与本文模型相关的神经网络,并重点介绍了贝叶斯个性化排序算法和神经协同过滤模型的原理。(3) 提出结合贝叶斯个性化排序算法的改进神经协同过滤模型 B-NCF。解构B-NCF 模型,解析 B-NCF 的实现过程:首先通过数据处理,构造用户电影偏序对,满足贝叶斯个性化排序算法的前提条件,然后通过改造神经协同过滤模型结构,把广义矩阵分解层替换成贝叶斯个性化排序层使得模型拥有学习排序信息的能力,最后用大量对比试验验证 B-NCF 的有效性。为了拓展信息来源的深度和广度,基于 B-NCF 的推荐系统引入辅助因子综合考虑多个影响因素。
1 绪论
1.1 电影推荐研究的意义
依托电影市场蓬勃发展的背景,个性化电影推荐系统成为推荐算法的热门研究方向。传统的推荐系统常根据物品相似度或者用户相似度进行推荐,主要的推荐思路是“人以群分,物以类聚”[2]。在大数据时代,多样化的行为数据为个性化推荐工作提供了大量辅助信息,个性化推荐也有了更高的要求。例如常见的协同过滤算法,主要推荐思路是给用户推荐相似的物品,这个算法最大的缺点是忽略了用户需求的多样性,很难会推荐出让人感到新奇的物品。这个缺点会导致用户视野变窄[1],搜索范围拘束在一个小范围,于是衍生出各种“开拓视野”的改进型协同过滤算法。个性化电影推荐系统对新颖性、多样性和覆盖率等推荐系统评价指标也有要求[3],一个好的个性化推荐系统应在保持高准确度的情况下,最大限度地给用户带来新颖性和惊喜度[2],要想做到跨领域推荐物品,就需要更多元的信息,同时,也需要研究信息的多样化和多元信息融合问题。
本文对基于深度学习的推荐算法做了深入研究工作,工作内容包括对数据的清洗、文字信息的数字化、信息的嵌入等。对于这些技术的研究,将有利于在有限的数据集中挖掘更多的个性化信息,促进个性化电影推荐技术的发展和应用,
对端到端的电影推荐技术研究有参考意义。
........................
1.2 推荐算法现状
1.2.1 常用的推荐算法——协同过滤算法
常用的推荐算法包括基于用户的协同过滤算法、基于物品的协同过滤算法[4]和基于内容的推荐算法,其中基于用户的协同过滤算法历史最长,基于物品的协同过滤算法运用最广泛。个性化算法常用协同过滤算法,协同过滤算法属于邻域算法[2],主要的思想是通过计算用户或者物品的余弦相似度来计算计算用户或者物品相似程度。协同过滤技术根据是否运用机器学习思想建模可以划分为基于内存的协同过滤[4](Memory-based CF)与基于模型的协同过滤技术(Model-basedCF)。基于模型的协同过滤方法中的矩阵分解法深受大家欢迎,因为它易于实现且容易在神经网络中实现多角度拓展。
数学上的奇异值分解方法 SVD[5]分解的形式为三个矩阵相乘,左右两个矩阵分别表示用户、物品隐含因子矩阵,中间矩阵为奇异值矩阵并且是对角矩阵,每个元素满足非负性,并且逐渐减小。我们可以称数学上的这个矩阵分解法[6]为PureSVD[7]。运用 PureSVD 矩阵分解对原矩阵有基本要求——要求原矩阵是稠密的,即原矩阵里没有非空元素,与此同时,PureSVD 时间复杂度为 O( n3 ),不适合大数据运算。后来 Simon Funk 提出了 FunkSVD[9]的方法,它不再将矩阵分解为三个矩阵,而是通过分解成两个矩阵,让这两个矩阵进行矩阵乘法得到的新矩阵与原来矩阵误差减小,这个思路降低了计算复杂度。FunkSVD 在推荐系统中有实际物理意义,推动了隐语义模型[10]在推荐系统的发展[11]。
..........................
2 与推荐模型相关的理论与技术
2.1 相关神经网络
2.1.1 多层感知机
多层感知机,也称为普通前馈神经网络或者人工神经网络[28]。多层感知机的特点是有强大的拟合能力,而且也能从数学的角度解释多层感知机拟合复杂函数的原因,被证明是一种通用的近似算法。简单神经元如下图 2-1 所示。
.......................
2.2 贝叶斯个性化排序算法
贝叶斯个性化排序(Bayesian Personalized Ranking,BPR)算法是实现最大化后验概率优化排序的算法,在 UAI 2009 被采用,至今仍然是很重要的推荐系统算法。推荐排序算法大体分为三种[36],第一种是逐点方法(Pointwise Approach),第二种是成对方法(Pairwise Approach),还有一种是列表方法(Listwise Approach)。贝叶斯个性化排序算法属于第二种方法,利用概率统计方法对元素进行两两之间排序。
虽然神经网络在计算机视觉和自然语言领域都取得了巨大的成功,然而基于神经网络技术的推荐算法还没成熟。通过改造神经结构,何向南博士提出一种新的框架,并且证明了这个框架是矩阵分解方法的推广。使用多层感知机和广义矩阵分解层去学习隐含的喜好信息,实验证明这种新的模型相比简单矩阵分解有巨大的性能提升。
传统的矩阵分解方法通过矩阵分解的低阶特征组合,捕捉用户与物品之间的复杂关系,何向南博士认为这种方式只能在低维空间估计用户与物品的关系,并通过提出低阶与高阶特征信息结合的神经协同过滤模型,在基于多层感知机的推荐模型中,通过输入用户向量与物品向量,经过一个多层感知机和广义矩阵分解层来结合用户与物品低阶和高阶的交互信息[38]。
.........................
3 结合贝叶斯个性化排序算法的改进神经协同过滤模型..............................17
3.1 模型总体设计................................17
3.1.1 嵌入层(Embedding Layer).................................18
3.1.2 多层感知机层(MLP Layer)..............................18
4 基于深度学习的多元信息嵌入推荐模型.................................27
4.1 特征工程.....................................27
4.1.1 数据集分析....................................27
4.1.2 数字化与向量化..............................30
5 总结与展望................................51
5.1 论文工作总结.........................................51
5.2 不足与展望...........................52
4 基于深度学习的多元信息嵌入推荐模型
4.1 特征工程
在深度学习中,想要得到理想的预测值,如何选用模型和如何处理原始数据是两个关键环节。其中处理数据特征的过程可以称为特征工程,如何去除无效信息,得到有效信息是特征工程的关键问题。
特征工程包括数据预处理、数值变换、特征提取、特征选择、格式规范化、特征降维等等多方面的内容。
特征工程对于构建精准的推荐系统很重要,原始电影数据集数据不能直接使用需要数据预处理,本文提出一套文字信息数字化和数字信息向量化的方案,数据处理思路如下图 4-1 所示。
..........................
5 总结与展望
5.1 论文工作总结
随着电影市场的不断扩大,对电影个性化推荐算法提出更高的要求,本文着眼于推荐算法结合日趋成熟的神经网络技术,研究基于深度学习的电影推荐模型。通过查阅各种文献资料,关注最新学术动态,本文以数据详实的电影数据集MovieLens-100k 和 MovieLens-1m 为研究对象,提出两种改进神经协同过滤模型的新模型,分别是结合贝叶斯个性化排序算法的改进神经协同过滤模型 B-NCF和基于深度学习的多元信息嵌入推荐模型 M-NCF。通过阐述模型原理,设计对比实验,电影仿真推荐的思路,完成了两个新模型的电影推荐系统研究。
本文主要工作简单总结如下:
(1)梳理常见的传统推荐算法,整理基于深度学习的推荐技术发展趋势,归纳总结传统推荐算法的不足之处,改进神经协同过滤模型的难点和创新点。
(2)简要介绍了多层感知机,卷积神经网络以及 GRU 神经网络这三种与本文模型相关的神经网络,并重点介绍了贝叶斯个性化排序算法和神经协同过滤模型的原理。
(3) 提出结合贝叶斯个性化排序算法的改进神经协同过滤模型 B-NCF。解构B-NCF 模型,解析 B-NCF 的实现过程:首先通过数据处理,构造用户电影偏序对,满足贝叶斯个性化排序算法的前提条件,然后通过改造神经协同过滤模型结构,把广义矩阵分解层替换成贝叶斯个性化排序层使得模型拥有学习排序信息的能力,最后用大量对比试验验证 B-NCF 的有效性。为了拓展信息来源的深度和广度,基于 B-NCF 的推荐系统引入辅助因子综合考虑多个影响因素。
参考文献(略)