一种基于两阶段深度学习的集成推荐模型

王瑞琴1 吴宗大2 蒋云良1 楼俊钢1

1(湖州师范学院信息工程学院 浙江湖州 313000)2(温州大学瓯江学院 浙江温州 325035)

摘 要 近年来,深度学习技术被广泛应用于推荐系统领域并获得了很大的成功,然而深度学习模型的输入质量对学习结果具有很大影响,稀疏的输入特征向量不仅会增加后续模型训练的难度,而且容易导致学习结果落入局部最优.提出一个基于两阶段深度学习的集成推荐模型:首先,利用具有封闭式参数计算能力的边缘化堆叠去噪自动编码机进行用户和项目高层抽象特征的提取;然后,将得到的用户抽象特征和项目抽象特征进行连接并作为深度神经网络模型的输入向量,通过联合训练的方式进行参数学习和模型优化.此外,为了对低阶特征交互进行建模,推荐模型中还集成了基于原始特征向量的逻辑回归模型.在通用数据集上的大量对比实验研究表明:与当前流行的深度学习推荐方法相比,该方法在推荐精度和召回率方面都有所改善,甚至是在数据稀疏和冷启动的环境下.

关键词 深度学习;边缘化堆叠去噪自动编码机;深度神经网络;特征提取

(zongda1983@163.com)

个性化推荐系统是互联网和电子商务发展的产物,是建立在海量数据挖掘基础上的高级商务智能平台,旨在向顾客提供个性化的信息服务和决策支持.个性化推荐技术是最具人文关怀的技术之一,它尊重个体、相信每个人都是与众不同的,在这个信息爆炸和以人为本的时代,实现个性化推荐服务势在必行.成功的电子商务推荐系统能有效保留客户,提高企业销售额,产生巨大的经济效益和社会效益[1].

近年来,越来越多的研究人员将深度学习技术应用于推荐系统领域并取得了一定的成功[2-6],其中以基于深度神经网络(deep neural network, DNN)的协同推荐模型最为流行,DNN推荐模型主要研究高阶特征的交互行为对预测和推荐任务的影响[7].尽管深度学习模型本身就是特征提取和参数学习的有效工具,但在输入向量稀疏的情况下,其学习结果很容易落入局部最优,从而影响推荐性能.

对于深度学习模型的输入优化,目前比较流行的做法是采用嵌入式编码方案对输入向量进行稠密化处理,然而嵌入式编码无疑会产生附加的模型参数,这些参数都需要经过迭代进行学习,使整个模型的复杂度也有所增加.因此,探索一种具有封闭式参数计算能力的特征学习模型是提高基于深度学习的推荐模型的关键所在,而边缘化堆叠式去噪自动编码机(marginalized stacked denoising auto-encoder, mSDA)正好满足这一需求,它通过无限最大化随机特征扰动的次数使参数计算具有封闭性,具有较低的计算复杂度和良好的可扩展性[8].那么是否可以利用mSDA模型对DNN推荐模型的输入向量进行初始化呢?如果可以那么应该采用怎样的方式将2个模型进行组合或集成?这些都是值得研究的问题.

基于这一启发式思想,本文提出一个基于两阶段深度学习的集成推荐模型,通过mSDA模型进行用户和项目抽象特征的学习,将学习到的抽象特征作为DNN模型的输入进行评分预测,通过联合训练的方法进行集成模型的参数学习和模型优化.总的来说,本文的贡献主要表现在4个方面:

1) 提出一种基于两阶段深度学习的集成推荐模型架构,即采用一种低成本的深度学习模型来初始化另一种高性能的深度学习模型,二者进行联合训练以达到全局最优;

2) 采用mSDA模型代替传统深度学习模型中的嵌入式编码方法,这样不仅可以学习到高阶特征,而且其特有的封闭式参数计算方法快速而高效,没有产生太多的计算负载;

3) 为了建模低阶特征交互对评分预测和推荐性能的影响,将逻辑回归模型集成到两阶段深度学习模型中,使模型同时具有线性建模和深度学习的能力;

4) 本文提出的模型是一个通用的两阶段推荐模型,在该模型框架上,完全可以采用其他低时高效的特征学习模型对深度学习模型的输入向量进行优化.

1 相关知识

本文提出的推荐模型是基于DNN模型和mSDA模型的集成框架,本节将简要介绍这2种模型以及基于这些模型的一些流行的推荐方法.

近年来,随着深度学习技术在语音识别、计算机视觉、自然语言处理等领域的成功应用和优异表现,研究者们尝试利用深度学习模型来建模高阶特征之间的交互关系,进而实现评分预测与推荐,其中以DNN模型最为常用.DNN是对神经网络的扩展,可以直观地理解为有很多隐藏层的神经网络,DNN模型以其独特的特征交叉以及非线性建模能力受到推荐领域专家、学者的广泛青睐.然而,DNN的局限性在于其对离散特征的处理方式,它通常将离散特征转换成One-Hot的编码形式,而DNN全连接的特征交叉特性会使One-Hot类型的输入产生大量的网络参数,这不仅会增加模型训练的复杂度,而且容易导致学习结果陷入局部最优.

2016年Google大脑研究团队在其开源软件库TensorFlow上发布了用于分类和回归的推荐模型Wide&Deep[9],其核心思想是将线性模型的记忆能力和深度学习模型的泛化能力相结合,在训练过程中同时优化2个模型的参数,使得整个模型同时具有线性建模和深度学习的能力.遗憾的是,Wide& Deep模型的输入特征向量依然采用One-Hot编码格式.

随后,研究者们陆续提出一系列兼具线性建模和深度学习的推荐模型,其中DeepFM[10]是一个端到端的推荐模型,它包含2个组成部件:DNN模型和因子分解机(factorization machine, FM)模型,分别负责低阶特征交互的建模和高阶特征交互的建模,这2部分共享相同的输入.与Wide&Deep模型不同的是,DeepFM模型的输入特征向量是经过嵌入式编码的特征向量,将One-Hot编码基于field进行分组,转化为低维、稠密的编码向量.然而DeepFM模型的局限性在于,它学习出的是隐式的交互特征,其形式是未知、不可控的.另外,DeepFM中的特征交互是发生在元素级而不是特征向量之间,这一点违背了FM的初衷.

在知识发现与数据挖掘会议KDD 2018上,微软亚洲研究院的社会计算组提出一种极深因子分解机模型xDeepFM[11],包含压缩交互网络模型和DNN模型2个组成部件,前者以显式方式在向量级建模特征交互,后者以隐式方式在元素级建模特征交互.随后,He等人[12]提出一种神经分解机模型NFM,在嵌入式编码层之上又增加了一个二阶交互层,采用池化操作对嵌入式特征编码进行合并,进一步降低输入特征向量的维度,从而降低了后续隐藏层对高阶特征交互建模的计算复杂度.

边缘化去噪自动编码机(marginal denoising auto-encoder, mDA)[13]是一种低成本的去噪自动编码机解决方案,它通过无限最大化随机特征扰动的次数使参数计算具有封闭性.为了增强mDA模型的学习能力,进一步将其扩展到多层就得到了mSDA模型.mSDA从输入层经过多层编码得到原始输入特征的抽象特征,然后再经过多层解码恢复到原始特征,通过多次编码和解码过程实现无监督的特征学习,模型的具体层数通过训练方法确定[14].

目前对mSDA模型的应用非常有限,Li等人[15]提出基于mSDA的协同推荐模型mSDA-CF,其中包含2个组成部件:mSDA模型与矩阵分解模型,前者用于项目抽象特征的提取,后者用于评分预测与协同推荐.通过将mSDA模型最中间层学习到的项目抽象特征向量映射到矩阵分解模型中的项目潜在因子向量,从而实现2个模型之间的无缝集成.

综上,基于深度学习的推荐模型已经得到了业界广泛关注并取得了一定成功,然而深度学习模型中的初始化对模型训练的收敛速度和模型质量具有重要影响,有必要采用相应的特征学习算法进行深度学习模型的输入特征向量进行优化.然而,传统的特征工程方法和人工特征选择方法都具有明显不足,前者假设特征之间是独立同分布的,与现实不符;后者需要领域专家的参与,费时费力,而且不能扩展到未出现的特征组合中.本文提出将低时、高效的mSDA模型作为DNN深度学习模型的初始化模型,完成抽象输入特征的快速提取,并采用联合训练的方式实现集成模型的全局优化.

2 本文方法

本节首先给出基于两阶段深度学习的集成推荐模型TDHR(two-stage deep learning based hybrid recommendation)的定义和理论框架,然后详细介绍特征提取过程和集成模型的参数学习方法,最后对模型的计算复杂度进行简要分析,表1列出了本文后续内容经常使用的一些符号定义.

Table 1 Definition and Description of Common Symbols in This Paper
表1 文中常用的符号定义及描述

SymbleDescriptionmNumber of usersnNumber of itemspDimension of vector of user featuresqDimension of vector of item featuresR∈RRm×nRating matrixX∈RRp×mVectors of original feature of usersY∈RRq×nVectors of original feature of itemsUVectors of abstract feature of users VVectors of abstract feature of itemsW∈RRp×pReconstructed mapping vector of XS∈RRq×qReconstructed mapping vector of YL1Layer number of user feature extraction modelL2Layer number of item feature extraction modelaGlobal biaswWeights of vectors of user featuresvWeights of vectors of item featuresHWeight vectors of hidden layersbbias of hidden layersσActivation function of hidden layers

2.1 TDHR模型概述

TDHR是一个同时具有线性建模和深度学习能力的集成推荐模型,其工作原理如下:首先,采用One-Hot编码方法对原始的用户特征和项目特征进行向量化处理;然后,一方面将One-Hot编码向量经过逻辑回归(logical regression, LR)模型进行线性交互建模,另一方面使用2个独立的mSDA模型分别进行用户抽象特征和项目抽象特征的提取;最后,将学习到的抽象特征进行合并并作为DNN模型的输入,采用联合训练的方式进行参数学习和模型优化.TDHR模型的整体架构如图1所示:

Fig. 1 Framework of the TDHR model
图1 TDHR模型的整体架构

2.2 特征提取

在TDHR集成推荐模型中,用户抽象特征和项目抽象特征的提取采用mSDA模型实现,mSDA模型每一层的特征重构参数均采用封闭式的计算方法得到.其中用户抽象特征向量的提取过程如下:

首先,对用户输入特征向量中的元素进行随机扰动,以增加模型的鲁棒学习能力,目标函数为

(1)

其中,表示对输入特征向量X的第i个元素xi的第j次扰动版本,k表示扰动的次数,l表示输入特征向量的维度,W表示特征重构向量.

然后,定义Xk次重复版本向量以及的扰动版本向量则目标函数可以改写为

(2)

其中,Tr(·)表示向量的迹,很明显,以上方程的参数求解可以使用最小二乘法实现.根据最小二乘法原理,W的计算形式为

(3)

其中,很显然,扰动次数k的值越大,模型的特征学习能力就越强.理想情况下,不妨假设k,即进行无限次扰动.根据弱大数定律,矩阵P1Q1将收敛于期望值E[P1]和E[Q1],此时W的表达形式为

W=E[P1]E[Q1]-1.

(4)

接下来推导的计算方法.当矩阵Q1的2个因子和都未被破坏时,其非对角元素才未被破环.假设特征扰动的概率为c,定义一个向量q=[1-c,…,1-c,1]T∈Rl+1,其中qα表示特征元素α不被破环的概率,则E[Q1]的计算公式为

(5)

其中,M=XXT表示X的散布矩阵.

同理,可以得到E[P1]的封闭式计算形式:

E[P1]=Mα βqα.

(6)

在一个L1层的mSDA特征提取模型中,采用以上方法,经过L12层的特征重构编码,在最中间层得到用户抽象特征U=WL12XL12.同理,可以得到项目抽象特征向量V=SL22YL22.

2.3 评分预测

给定评分矩阵R、用户特征属性向量X、项目特征属性向量Y以及由mSDA学习到的用户抽象特征向量U和项目抽象特征向量V,TDHR模型为评分预测:

(7)

其中,xim表示用户i的第m个原始特征向量元素的值,yjn表示项目j的第n个原始特征向量元素的值;Zi,j表示由用户i的抽象特征向量和项目j的抽象特征向量通过向量连接的方式得到的组合向量,Zi,j=[Ui,Vj];f(Zi,j)表示以Zi,j作为输入向量的DNN模型,定义为

f(Zi,j)=hTσL(HL(…σl(H1Zi,j+bl)),

(8)

其中,L表示DNN模型的层数,Hl,blσl分别表示第l层的权重向量、偏置和激活函数,h表示输出层的权重.

2.4 模型训练与参数学习

TDHR采用联合训练的方法进行特征建模和评分估计,目标函数为

(9)

其中,R+表示可观察的评分集,ri,j表示用户i对项目j的实际评分值,表示相应的预测评分.

采用随机梯度下降(stochastic gradient descent, SGD)优化方法进行集成模型的超参数的学习:

(10)

其中,η表示梯度下降的学习率,θ代表集成模型的所有超参数.

对于DNN模型这样的多层网络结构,进一步使用链式规则计算其中的参数对于f(Zi,j)的梯度:

(11)

(12)

其中,οl表示DNN模型的第l层的输出向量,δ是为了表示清晰而引入的中间变量,其定义为

δl=((Hl+1)Tδl+1σl(al),

(13)

(14)

其中,al表示DNN模型第l层的输入向量.

一轮训练结束之后,重新调整2个特征学习mSDA模型的层数L1L2,再对集成模型进行下一轮训练,直到得到最优的值为止.

需要说明的是,为了防止过拟合现象,在TDHR模型的训练过程中还使用了Dropout技术[16],即每次迭代过程仅对部分模型参数进行更新.此外,为了避免参数震荡、加速模型收敛,TDHR中还使用了动量(momentum)技术和批量规格化方法,前者根据历史梯度均值对当前梯度进行微调,后者使用高斯分布对批量化的输入训练样本进行规格化操作.

2.5 复杂度分析

TDHR是一个集成模型,其时间复杂度由其组成部件模型mSDA和DNN的复杂度来共同决定.mSDA模型是一个多层的框架,每一层特征重构向量的计算均采用基于矩阵运算的封闭式计算方法实现,矩阵运算的复杂度为O(dp2),其中d表示mSDA的层数,p表示特征的维度.

DNN模型是具有多个隐藏层的计算框架,每个隐藏层的主要操作是矩阵乘法运算,时间复杂度为O(dl-1dl),其中dl表示第l层的维度.因此,DNN模型参数学习的时间复杂度为其中t表示模型训练的迭代次数.

综上,TDHR模型一次训练的时间复杂度为为了得到mSDA模型的最优层数,集成模型需要迭代d次,所以TDHR模型的整体时间复杂度为在实际应用中mSDA模型的层数一般都不会太大,而且采用mSDA模型对DNN模型的输入向量进行优化之后,DNN模型的迭代次数也会大大降低,所以本文方法具有良好的可扩展性.

3 实 验

3.1 数据集

在推荐系统领域,一个广泛用于评分预测的数据集是由GroupLens[注] http://www.grouplens.org研究团队开发的MovieLens数据集,本实验使用了其中的2个不同规模的数据集,即MovieLens-100K和MovieLens-1M,前者包括943个用户对1 682部电影的100 000个评分值,后者包括6 040个用户对3 882个电影的1 000 209个评分值,由2个数据集组成的评分矩阵的稀疏度分别为93.7%和95.9%.

首先,将每个数据集分成2个不同的部分,随机选择20%的实例作为测试集,另外80%作为训练集;然后,使用5-交叉验证法来评估评分预测和个性化推荐的性能.

3.2 评估指标

本文采用平均绝对误差(mean absolute error, MAE)和均方根误差(root mean square error, RMSE)这2个指标来衡量不同推荐算法在评分预测中的性能表现.

MAE指标用于描述预测值与实际值偏差量绝对值的平均数,其中的所有偏差量都具有相等的权重.在本实验中,通过计算测试集中的所有可观察评分值的平均预测误差来计算MAE

(15)

其中,N表示测试集R+中的样本数.

RMSE指标用于描述预测值与实际值之间偏差量的标准差,该指标具有惩罚较大偏差的优势,定义为

(16)

3.3 对比算法

为了说明本文方法的有效性,本节进行了大量实验分析,将本文方法与当前一些具有代表性的推荐方法进行比较,其中包括传统的PMF模型、FM模型的官方实现版本LibFM、基于mSDA的协同推荐模型mSDA-CF、基于DNN技术的FM模型DeepFM和基于嵌入式编码和DNN技术的推荐模型NFM.为了证明本文方法在数据稀疏环境和冷启动环境中的性能表现,进一步模拟了数据稀疏环境和冷启动环境,并在模拟环境下对不同推荐方法的推荐性能进行了比较分析.

本文模型TDHR使用Tensorflow框架[17]实现,模型的参数配置如下:用户特征提取mSDA模型的层数L1=3,项目特征提取mSDA模型的层数L2=5,特征扰动概率c=0.3.DNN推荐模型的隐层数L=3,各层的维度分别为20,10和5,各层的dropout值为0.8,0.8,0.5,动量momentum=0.9,SGD的学习率η=0.05,批量大小batch=512,激活函数sigmoid函数,DNN模型的迭代过程通常需要20~30次可以收敛.此外,在每次循环之后以一定比例降低学习率η有助于避免预测值的大幅波动,实验中η=0.9.实验对比结果中的最佳性能用黑体字表示.

3.4 实验结果

3.4.1 不同推荐算法的性能比较

所有推荐算法都在相同的实验环境(2.9 GHz Intel Core i5处理器,8 GB 1 867 MHz DDR3内存)中进行测试,并使用了相同的输入特征信息,其中用户特征包括用户ID、性别、年龄和职业,经过One-Hot编码后,得到一个57维的向量;项目特征包括项目ID和项目类型,是一个19维的向量.本实验的测试项目是电影,电影类型包括爱情、恐怖、侦探等.所有比较算法的参数都是通过实验训练得到的,例如:正则化参数、学习率、抽象特征的维度等,实验结果如表2所示:

Table 2 Performance Comparison of Different Algorithms in the Universal Data Sets
表2 不同推荐算法在通用数据集上的性能比较

AlgorithmMovieLens-100KMovieLens-1MRMSEMAERMSEMAEPMF0.9410.7590.8770.681LibFM0.9240.7380.8980.706mSDA-CF0.9190.7410.8520.672DeepFM0.9110.7410.8780.683NFM0.8970.7210.8610.673TDHR0.8730.7010.8350.655

从表2可以看出,LibFM在MovieLens-100K数据集上的性能优于PMF,但在MovieLens-1M数据集上表现的恰好相反,这表明因子分解机模型更适合应用于数据稀疏的环境,而矩阵分解模型则更适用于数据密集型环境.此外,mSDA-CF具有比PMF模型具有更好的性能,这表明深度学习技术在抽象特征提取方面具有明显优势.基于DNN技术的推荐模型DeepFM和NFM比LibFM模型的性能要好,这进一步验证了深度学习技术在推荐领域中的应用潜力.

最后,本文方法TDHR在2个数据集上的性能表现在所有比较算法中都是最好的,其RMSE值在MovieLens-100K和MovieLens-1M数据集上分别比NFM模型低2.4%和2.6%.这样的改进程度看起来似乎并不明显,但需要指出的是,即使是1%的性能提升也可能在实际应用中带来巨大的经济收益.本文模型TDHR良好的性能表现得益于对DNN模型输入特征向量的优化,这正是本文提出的集成推荐模型的核心技术,也是本文方法区别于其他深度学习推荐模型的根本所在.

3.4.2 数据稀疏环境下不同算法的性能比较

为了进一步评估数据稀疏性对推荐性能的影响,对MovieLens-1M数据集手动选取不同规模(90%,70%,50%,30%,10%)的内容,用于模拟不同稀疏程度的训练数据集,对比算法在不同程度数据稀疏环境中的推荐性能表现如表3所示:

Table 3 Performance Comparison of Different Algorithms in Sparse Data Sets
表3 在稀疏数据集上不同推荐算法的性能比较

AlgorithmSparse Degree10%30%50%70%90%RMSEMAERMSEMAERMSEMAERMSEMAERMSEMAEPMF0.8830.6860.9020.7040.9170.7220.9240.7290.9460.748LibFM0.9010.7090.9060.7110.9080.7150.9330.7310.9420.746mSDA-CF0.8540.6740.8680.6810.8830.6920.9090.7150.9430.746DeepFM0.8820.6880.8920.6960.8960.7020.9340.7240.9490.747NFM0.8670.6790.8780.6880.8910.6940.9310.7210.9450.742TDHR0.8420.6580.8500.6640.8520.6690.8790.6880.8940.708

从表3可以看出,无论在哪种数据集上,随着评分数据稀疏程度的持续上升,所有推荐模型的性能都有相应的下降.比较而言,LibFM模型的性能相对稳定,因为它使用了用户和项目的特征属性而不是评分矩阵作为数据源;然而,在大多数情况下,LibFM模型的性能都低于基于深度学习的推荐方法.最后,与其他推荐模型相比,TDHR模型的推荐性能具有明显优势,而其他基于深度学习的推荐方法DeepFM和NFM在数据稀疏环境中的表现并不理想,这一现象表明除了附加数据源之外,对深度学习模型的输入进行相应优化也会对推荐性能产生重大影响,这正是本文研究的动机与创新所在.

3.4.3 对冷启动用户的推荐性能比较

为了进一步评估不同推荐算法对冷启动用户的推荐性能,对训练集中的每个用户随机选择1~10个评分数据予以保留,删除其余的评分数据来模拟冷启动的环境,实验结果如表4所示:

Table 4 Recommendation Performance Comparison of Different Algorithms for Cold-Start Users
表4 不同算法对冷启动用户的推荐性能比较

AlgorithmMovieLens-100KMovieLens-1MRMSEMAERMSEMAEPMF1.1190.8880.9920.780LibFM1.0080.8070.9830.784mSDA-CF1.0110.8110.9860.776DeepFM1.0160.8180.9820.782NFM1.0530.8320.9890.786TDHR0.9980.7960.9660.767

从表4可以看出,总体而言,冷启动对所有推荐方法都有重大影响.PMF方法和mSDA-CF方法受冷启动的影响尤其严重,这是因为基于评分矩阵的矩阵分解方法在处理冷启动问题时具有固有缺陷.相比之下,使用特征信息作为数据源的因子分解机模型LibFM受冷启动的影响相对较小,但性能依然不及基于深度学习的推荐方法DeepFM和NFM.本文方法TDHR在所有待比较方法中性能表现最优,这进一步表明本文方法性能表现的相对稳定性.同时也表明引入特征信息是抵抗冷启动问题的有效手段.因此,进一步探索更多更有效的附加数据源是解决数据稀疏性和冷启动问题、进一步提高推荐性能的有效手段.

3.4.4 Dropout在冷启动环境中的作用

为了进一步评估Dropout方法在冷启动环境中的性能表现,在3.4.3节中模拟的冷启动环境下,测试了本文算法TDHR在不同Dropout取值情况下的推荐性能表现,测试数据集为MovieLens-1M.为了简化测试过程,将DNN模型中各层的Dropout设置为相同的取值,实验结果如图2所示.

Fig. 2 Recommendation performance of Dropout technology in cold start environment
图2 Dropout在冷启动环境中的性能表现

从图2可以看出,在不使用Dropout的情况下,推荐性能很不理想,采用Dropout技术后,推荐性能有所改善;当Dropout为0.8时(每次迭代对其中20%的模型参数进行更新),推荐性能最优.以上实验结果表明,在深度学习模型的迭代训练过程中,只更新部分模型参数对防止过拟合、提高推荐性能具有重要意义,但选择更新的参数比例要适当,具体取值和数据特征有关,需要采用实验方法进行设定.

4 结论与展望

本文提出一种基于mSDA和DNN的两阶段深度学习推荐模型TDHR.首先,利用mSDA模型进行用户和项目高阶抽象特征向量的学习;然后,将得到的用户和项目抽象特征向量进行合并,并作为DNN模型的输入;最后,通过联合训练的方法进行集成模型的参数学习和模型优化.此外,为了对低阶特征交互进行建模,推荐模型中还集成了基于低阶特征的逻辑回归模型.通过这种方式,不仅使模型同时具有线性建模和深度学习能力,而且以优化过的抽象特征作为深度学习模型的输入可以大大减轻后续隐藏层的学习负担,并避免模型训练落入局部最优.实验研究结果表明,无论是在常规环境下,还是在数据稀疏和冷启动环境下,本文方法较传统方法都具有明显优势.

需要指出的是,本文方法是一个通用框架,指出一种对现有基于深度学习的推荐方法进行改进的思路,即使用一种低成本的深度学习模型来初始化另一种高性能的深度学习模型,从而提高整个模型的推荐性能.在该框架的基础上,完全可以采用其他类型的特征学习模型对深度学习模型的输入进行优化,重点在于用作输入向量初始化的模型必须具有较低的计算复杂性,以避免对集成模型增加过多的额外过载.

本文方法尚有需要改进的地方.目前本文仅使用了用户的人口统计学信息和项目的类型信息作为特征属性信息进行用户和项目抽象特征的提取,实际系统中还存在许多有意义的辅助信息可以利用,例如项目描述、用户评论、项目标签等.此外,来自开放数据源的语义特征属性也可以用作推荐过程中的辅助信息.另外,用户社交网络中的社交关系信息,如关注、跟随、点赞、朋友、信任等都可以用作附加数据源来处理推荐过程中的数据稀疏性问题和冷启动问题.当然,这将会涉及多学科领域的问题,我们将在未来的工作中加以讨论.

参考文献

[1]Ren Ming. Intelligent Information System: Method and Practice of Optimizing Data Modeling with Relevant Knowledge[M]. Hangzhou: Zhejiang University Press, 2012 (in Chinese)(任明. 智能信息系统: 以关联知识优化数据建模的方法和实践[M]. 杭州: 浙江大学出版社, 2012)

[2]Wang Hao, Wang Naiyan, Yeung D Y. Collaborative deep learning for recommender systems[C] //Proc of the 15th ACM SIGKDD Conf on Knowledge Discovery and Data Mining. New York: ACM, 2015. DOI: 10.1145/2783258.2783273

[3]Zhang Shuai, Yao Lina, Xu Xiwei. AutoSVD++: An efficient hybrid collaborative filtering model via contractive auto-encoders [C] //Proc of the 40th ACM SIGIR Conf on Research and Development in Information Retrieval. New York: ACM, 2017. arXiv:1704.00551v3

[4]Zhang Libo, Luo Tiejian, Zhang Fei, et al. A recommendation model based on deep neural network[J] IEEE Access, 2018, 6: 9454-9463

[5]Wang Hongxiang, Liang Guihuang, Zhang Xingming. Feature regularization and deep learning for human resource recommendation[J] IEEE Access, 2018, 6: 39415-39421

[6]Wu Hao, Zhang Zhengxin, Yue Kun, et al. Dual-regularized matrix factorization with deep neural networks for recommender systems[J] Knowledge-Based Systems, 2018, 145: 46-58

[7]Covington P, Adams J, Sargin E. Deep neural networks for YouTube recommendations[C] //Proc of the 10th ACM Conf on Recommender Systems. New York: ACM, 2016: 191-198

[8]Chen Minmin, Xu Zhixiang, Weinberger K Q, et al. Marginalized stacked denoising auto-encoders[C] //Proc of the NIPS Special on Learning Workshop. New York: ACM, 2012. DOI: 10.1.1.308.8543

[9]Cheng H T, Koc L, Harmsen J, et al. Wide & deep learning for recommender systems[C] //Proc of the Workshop on Deep Learning for Recommender Systems. New York: ACM, 2016. DOI: 10.1145/2988450.2988454

[10]Guo Huifeng, Tang Ruiming, Ye Yunming, et al. DeepFM: A factorization-machine based neural network for CTR prediction[C] //Proc of the 26th Int Joint Conf on Artificial Intelligence. New York: ACM, 2017. arXiv:1703.04247v1

[11]Lian Jianxun, Zhou Xiaohua, Zhang Fuzheng, et al. xDeepFM: Combining explicit and implicit feature interactions for recommender systems[C] //Proc of the 24th ACM SIGKDD Int Conf. New York: ACM, 2018. arXiv:1803.05170v3

[12]He Xiangnan, Liao Lizi, Zhang Hanwang, et al. Neural collaborative filtering[C] //Proc of the 26th Int Conf on World Wide Web. New York: ACM, 2017. arXiv:1708.05027v1

[13]Chen Minmin, Xu Zhixiang, Weinberger K, et al. Marginalized denoising auto-encoders for domain adaptation[C] //Proc of the 29th Int Conf on Machine Learning. New York: ACM, 2012. arXiv:1206.4683

[14]Wu Yao, DuBois C, Zheng A X, et al. Collaborative denoising auto-encoders for top-n recommender systems[C] //Proc of the ACM Int Conf on Web Search and Data Mining. New York: ACM, 2016. DOI: 10.1145/2835776.2835837

[15]Li Sheng, Kawale J, Fu Yun. Deep collaborative filtering via marginalized denoising auto-encoder[C] //Proc of the ACM Int Conf on Information and Knowledge Management. New York: ACM, 2015. DOI: 10.1145/2806416.2806527

[16]Ioffe S, Szegedy C. Batch normalization: Accelerating deep network training by reducing internal covariate shift[C] //Proc of the 32nd Int Conf on Machine Learning. New York: ACM, 2015. DOI:10.1145/2806416.2806527

[17]Abadi M, Barham P, Chen J, et al. Tensorflow: A system for large-scale machine learning[C] //Proc of the 12th USENIX Conf on Operating Systems Design and Implementation. New York: ACM, 2016: 165-283

An Integrated Recommendation Model Based on Two-stage Deep Learning

Wang Ruiqin1, Wu Zongda2, Jiang Yunliang1, and Lou Jungang1

1(School of Information Engineering, Huzhou University, Huzhou, Zhejiang 313000)2(School of Oujiang, Wenzhou University, Wenzhou, Zhejiang 325035)

Abstract In recent years, deep learning technology has been widely used in the field of recommendation systems and has achieved great success. However, the input quality of the deep learning models has a great influence on the learning results. A sparse input feature vector will not only increase the difficulty of subsequent model training, but also will lead to the learning results falling into local optimum. In this article, an integrated recommendation model based on two-stage deep learning is proposed. Firstly, two individual marginal stacked denoising auto-encoders (mSDA) models with closed-form parameter calculation are used to extract the high-level abstract features of the users and the items. Then the resulted user abstract feature and the item abstract feature are connected as the input vector of the deep neural network (DNN) model, and the parameter learning and model optimization are performed through joint training. In addition, in order to model low-order feature interactions, a logistic regression model based on original feature vector is also integrated into the recommendation model. Extensive experiments with two real-world datasets indicate that the proposed recommendation model shows excellent recommendation performance compared with the state-of-the-art methods, especially in the data sparse and the cold start environments.

Key words deep learning; marginalized stacked denoising auto-encoder; deep neural network (DNN); feature extraction

收稿日期2019-03-20;修回日期:2019-05-21

基金项目教育部人文社科规划基金项目(19YJA870013);国家自然科学基金项目(61403338);浙江省科技计划重点研发项目(2017C03047)

This work was supported by the Humantities and Social Science Project of Ministry of Education of China (19YJA870013), the National Natural Science Foundation of China (61403338), and the Zhejiang Science and Technology Major Project (2017C03047).

中图法分类号 TP391

Wang Ruiqin, born in 1979. PhD, associate professor. Member of CCF. Her main research interests include data mining and social recommendation. (angelwrq@163.com)

Wu Zongda, born in 1983. PhD, professor. Member of CCF. His main research interests include social network analysis and natural language processing.

Jiang Yunliang, born in 1967. PhD, professor. Member of CCF. His main research interests include artificial intelli-gence and data integration. (jyl@zjhu.edu.cn)

Lou Jungang, born in 1982. PhD, professor. Member of CCF. His main research interests include software reliability evaluation and dependable computing. (ljg@zjhu.edu.cn)