基于列表级排序的深度生成推荐方法

孙肖依 刘华锋 景丽萍 于 剑

(交通数据分析与挖掘北京市重点实验室(北京交通大学) 北京 100044)(北京交通大学计算机与信息技术学院 北京 100044)(sunxiaoyi@bjtu.edu.cn)

摘 要 变分自编码器(variational autoencoder, VAE)近年来在推荐领域有着很成功的应用.这种非线性概率模型的优势在于它可以突破线性模型有限的建模能力,而线性模型目前仍然在协同过滤研究中占主导地位.尽管基于变分自编码器的推荐方法已经取得了优越的表现,但仍存在一些未解决的问题,例如无法针对隐式反馈的推荐数据为用户生成个性化的推荐排序列表.因此,通过借助多项式似然对变分自编码器实施基于列表的排序策略,提出了一种深度生成推荐模型.该模型具有同时生成点级隐式反馈数据并为每个用户创建列表式偏好排序的能力.为了将排序损失与变分自编码器损失结合起来,采取归一化累计损失增益(normalized cumulative loss gain, NDCG)作为排名损失,并通过平滑函数进行近似.在3个真实世界数据集上(MovieLens-100k,XuetangX和Jester)进行了实验.实验结果表明:结合了列表级排序的变分自编码器在推荐个性化列表所有评价指标上,相比于其他基线模型拥有更出色的表现.

关键词 个性化推荐;深度生成模型;排序学习;隐式反馈;列表级排序

随着互联网上的信息快速增长,推荐系统在信息过载的时代变得越来越不可或缺.推荐系统的主要目的是帮助用户在大量的物品中选择出他们可能感兴趣的物品.一些推荐系统中还包括了对前N个物品(top-N)推荐,这些方法被广泛应用于生成用户的个性化推荐列表.例如在电子商务或者在线教育领域,系统通常只为用户推荐一部分商品或课程,并根据系统推荐的前N个物品表现对推荐系统进行评估.

在已有的研究当中,协同过滤方法[1]由于只依赖于用户过去的行为数据而在推荐系统中得到了广泛的应用.其中基于隐因子模型(latent factor model, LFM)[2-5]的协同过滤方法因为其具有对隐藏的因果关系建模的能力而在诸多方法中备受关注.然而由于这些模型本质上都是线性模型,所以其建模能力有限.文献[6]证明了在隐因子模型中添加非线性特征能够显著提高推荐的效果.所以在近些年,越来越多的方法提出将深度神经网络应用到协同过滤中[7-12].然而与一般的深度模型相比,基于深度生成概率模型具有更强的灵活性,在推荐上取得了更好的效果.例如Mult-VAE[13]是一个具有多项式条件似然的深度生成模型,并使用贝叶斯推断进行参数估计.然而,上述大多数模型并没有为隐式反馈数据生成个性化的排序推荐列表.

因此本文提出了一个将列表级排序学习应用到深度生成模型上的方法去解决上述问题.我们用深度生成方法在隐式反馈数据上为每个用户生成评分向量,并通过直接优化信息检索中常用的评价指标归一化折损累积增益(normalized discounted cumulative gain, NDCG)对评分进行建模.对于向用户推荐有序的推荐列表来说,NDCG是对推荐结果度量非常重要的评价指标.

本文的主要贡献有3个方面:

1) 提出了一种将列表级排序学习方法应用到深度生成模型上的方法,在隐式反馈数据上为用户生成个性化排序推荐列表;

2) 利用一个平滑函数来近似NDCG评价指标,解决了NDCG评价指标是非平滑函数不能直接求导的问题;

3) 在3个不同领域的数据集上进行实验验证.结果表明我们所提出的模型相比于现有的一些推荐方法,能够使用户潜在感兴趣的物品排在前面,从而提供更好的用户体验.

1 相关工作

项目推荐的研究重点是预测用户最喜欢的一组项目的个性化排名列表,其中协同过滤[1]是最常用的方法之一.在协同过滤方法的框架下,大多数推荐系统都致力于预测评分.隐因子模型LFM[2-5]是一种基于矩阵分解(matrix factorization, MF)方法的模型,已被证明在评分预测问题上有显著的效果.这种隐表示建模对于表示用户的历史行为偏好非常有效.这些工作将推荐任务表述为一种回归或多分类问题,推荐系统从训练数据当中学习回归或分类函数后对项目进行评分.这些方法统称为点级推荐方法,与其不同的是,某些对项目推荐的研究方法着重于直接优化每个用户的项目个性化排名.文献[14]提出了一种贝叶斯个性化对级排序学习方法(Bayesian personal ranking, BPR),该方法根据用户对于成对物品的相对偏好来优化模型;文献[15]提出了一种通过整合用户购买评分信息来推荐前N个物品的稀疏线性方法.不同于传统的对级排序方法;文献[16]通过直接最大化平均倒排名(mean reciprocal rank, MRR)评价指标来提升top-N推荐的性能.

近些年来的研究主要集中在非线性的特征学习,尤其是深度学习方面.相较于传统方法,非线性模型能够突破线性模型建模能力的限制.在一些早期基于深度模型的推荐方法中,例如基于神经网络的协同过滤方法集中于利用用户显示反馈数据作为训练集对物品做评分预测[8-9,17-18].Wide & Deep[19]是一个基于上下文的推荐模型,它利用多层感知机(multi-layer perceptron, MLP)来获得隐表示.神经协同过滤(neural collaborative filtering, NCF)则将协同过滤中用户和物品的隐表示之间点乘的操作,扩展成非线性的交互.文献[7]在NCF的框架下提出了NeuMF,将MF和MLP统一在一个模型中,解决了MLP在获取低秩关系时效率较低的问题.该模型以用户嵌入和项目嵌入的组合作为MLP模型的输入来进行预测.相比于NeuMF,NNCF[20]则在NCF框架的基础上额外引入了用户和物品的信息作为输入.

与上述模型相比,深度生成模型可以有效结合线性隐因子模型与非线性深度网络模型,因此我们可以探索由神经网络驱动的非线性概率隐变量模型.文献[18]提出了受限制玻尔兹曼机(restricted boltzmann machine, RBM),它是一种随机递归神经网络,本质上是二分图结构的无向图模型;文献[21]提出E-RBM模型,它为每个用户计算出top-N的物品推荐列表,弥补了RBM缺乏对推荐结果的可解释性问题;文献[22-23]利用堆栈式去噪自编码器(stacked denoised autoencoder, SDAE)分别扩展了概率矩阵分解和逻辑回归方法,并提出了统一的协同深度学习.最近,变分自编码器(variational autoencoder, VAE)框架[24-25]在推荐系统中的应用使深度模型和隐变量模型关系更加紧密.协同变分自编码器(CVAE)[26]将用户和物品的低维表示与VAE生成的物品隐表示相结合,以获得用户的偏好矩阵.Mult-VAE[13]通过将原始的高斯似然替换为多项式似然来模拟隐式反馈数据的生成过程.然而,大多数深度生成推荐模型仅仅以重构偏好数据为目的,而无法显式地为每个用户学习个性化排序推荐列表.

本文提出了一个基于列表级排序方法的深度生成推荐模型.用平滑的函数近似NDCG,并使用随机梯度下降方法完成深度生成模型的训练过程.该模型能够为用户生成个性化排序推荐列表,具有很大的实际应用价值.

2 基于列表级排序的深度生成推荐模型

基于列表级排序的深度生成推荐方法包括点级隐式反馈数据生成和列表级排序列表生成2部分.模型结构如图1所示.之后我们将介绍用来近似NDCG的平滑函数.

Fig. 1 The architecture of the proposed model
图1 本文所提出模型结构图

本文考虑使用隐式反馈数据进行学习,并将用户的点击矩阵作为用户与物品的交互矩阵进行二值化.文中用u∈{1,2,…,U}表示用户,i∈{1,2,…,I}表示物品.zu是二进制向量,它索引了用户在每个物品上点击的历史记录.

2.1 点级隐式反馈数据生成

我们提出的深度生成概率模型由VAE组成.每个VAE都利用编码器将输入压缩为变分分布,然后解码器通过接受从后验概率分布中采样的隐变量来获得生成分布进行预测.

2.1.1 编码器

为已观测数据构建一个生成隐变量模型,首先假设用户与物品交互数据点击历史eu=fφ(xu)可以从用户的隐变量rj(在d维隐空间),其中zu可以从以标准高斯分布为先验分布中采样得到:

zuN(0,Id).

(1)

然后引入变分分布qφ(zu|xu),该分布由参数化的对角高斯分布表示得出,去近似真实的后验分布p(zu|xu).最后整个编码器的推断过程可以整理过程为:

1) 对于每个用户u,重构一个已观测数据的向量表示eu

eu=fφ(xu).

(2)

2) 参数化用户隐变量zu的变分分布:

[μφ(xu),σφ(xu)]=lφ(eu)∈2d

(3)

其中,非线性函数fφ为适用于观测数据的神经网络,lφ为计算变分分布参数的线性变换,φfφlφ的参数集合.

2.1.2 解码器

通过隐变量来生成预测的概率分布并且重构观测数据,解码器的生成过程为:

1) 从变分后验分布qφ(zu|xu)中采样得到zud.

2) 通过参数为θ的MLP和softmax函数生成所有物品上的概率分布πuI

πu∝exp(fθ(zu)).

(4)

3) 从多项式分布中生成重构观测数据xu

xu~Mult(Nu,πu).

(5)

这里非线性函数fθ可以是任意类型参数为θ的前向感知机.为用户u的点击总数,其中I为物品的总数.θfθ的参数集合.因此,在隐因子zu的整个分布范围内,最大化用户点击行为数据xu的边际似然函数的期望是学习隐变量分布合适的目标函数:

(6)

因为xu是从概率为πu的多项式分布中采样得到的,所以用户u的对数似然为

(7)

2.2 列表级排序列表构建

多项式分布中的概率分布值πu可以看作是用户u对所有物品的喜好程度,因此它可以被用于为每个用户构建所有物品的列表级排序列表.

我们可以通过最大化排序评价指标NDCG来构建列表级排序.但由于NDCG不可导,不能直接使用评价指标来作为损失函数进行优化求解,所以我们用连续可导的损失函数对评价指标进行近似.

具体来说,NDCG@k是一种用于评估排名列表前k个位置推荐效果的评价指标,它的定义为

(8)

其中,Nk表示的最大值,rj表示在第j个位置物品的相关程度.g(rj)表示增益函数,例如可以是g(rj)=2rj-1.d(j)表示贴现函数,例如d(j)=1/lb(1+j).将增益函数和贴现函数带入到NDCG@k中,即可得到评价指标的形式为

(9)

由此可以看到NDCG评价指标是基于位置的,但是在训练过程中,物品的位置会不断发生变化,这使得对NDCG的处理变得更加困难.为了解决这个问题,我们需要使用索引重新定义NDCG.将NDCG重写成:

(10)

其中,r(x)表示物品x的相关程度,r(x)越大表示物品越相关,等于0时为不相关物品.s(x)表示物品x当前的位置.但由于s(x)函数是非连续、不可导的,所以我们需要对它进行近似.利用深度生成模型得到的概率分布πu来重新表示s(x):

(11)

其中,πux,y=πux-πuy.即位置可以看作是排名函数的输出.但由于指数函数也是非连续不可导的,所以用逻辑函数来近似指示函数1{πux,y<0}:

,

(12)

其中,α>0是一个度量常数.然后我们可以用近似后的函数来表示位置函数s(x):

(13)

这样即为一个连续且可导的函数.由此可以得到近似之后的NDCG:

(14)

2.3 模型学习

按照文献[27]的标准,我们使用变分推断来学习隐变量模型,取数据的对数边际似然的下界.这就形成了寻求最大化用户u的目标,而数据集总体的目标函数是通过对所有用户的目标函数求平均得到的:

log p(xu;θ)≥Eqφ(zu|xu)[log pθ(xu|zu)]-
KL(qφ(zu|xu)‖p(zu))≅L(xu;θ,φ),

(15)

不等号右边即为变分下界(evidence lower bound, ELBO).ELBO是参数为θφ的函数,我们可以通过采样zuqφ来获得ELBO的无偏估计,然后通过随机梯度下降法进行优化.也可以从另外一个角度来解读ELBO:第1项可以解释为重构误差,第2项KL散度可以看作是参数的正则化项.那么我们可以为正则化项加上度量参数β来进行约束.这样得到点级隐式反馈生成模型的目标函数:

LG(xu;θ,φ)=Eqφ(zu|xu)[log pθ(xu|zu)]-
β×KL(qφ(zu|xu)‖p(zu)).

(16)

为了建立个性化排序模型,我们定义了负的列表级排序模型的损失函数:

(17)

目标是最小化ELBO式(16)和排序损失式(17),可以通过最小化最终的目标函数来实现:

L(xu;θ,φ)=Eqφ(zu|xu)[log pθ(xu|zu)]-
β×KL(qφ(zu|xu)‖p(zu))-

(18)

这里参数γ控制列表级排序学习对整体模型的影响程度.整体模型的训练通过随机梯度下降法来完成.

3 实验与结果

本节通过在3个真实数据集上的一系列实验衡量我们所提出的基于列表级排序的深度生成推荐模型的表现,并将其与其他方法做对比.

3.1 数据集

我们在3个来自不同领域的真实数据集上进行了实验:

MovieLens-100k(ML-100k).该数据集包含多个用户对多部电影的评分.我们将用户评分大于等于4的视为用户偏好置为1,其余置为0.并且我们只保留至少看过5部电影的用户.

XuetangX[28].该数据来自于中国最大的MOOC平台之一的学堂在线,其中包括了用户和他们学习过的课程.我们只保留了至少学习过5门课程的用户.

Jester.这些数据包含了Jester笑话推荐系统中用户对笑话的匿名评分.我们将这些评分映射到0~5的区间上,并且同ML-100k一样划分评分并保留至少评过5次分的用户.

表1总结了实验中使用的3个数据集的统计信息.

Table 1 Statistics of the Datasets
表1 数据集的统计信息

DatasetUsersItemsInteractionsInteractions Ratio∕%Held-out UsersML-100k1×1031.6×103100×1036.305150XuetangX83×1031.3×103458×1030.4278×103Jester59×1031401761×10321.2775×103

3.2 度量标准

我们采用了2个在top-N推荐上常用的评价指标来评估所提出的模型:Recall@RNDCG@R.在我们的工作中,这2个指标都比较了留出用户对所有物品的预测排序列表和真实排序列表.用ω(r)来表示在列表中第r个位置的物品,[·]是指示函数,Iu是留出用户u所点击的物品集.

用户uRecall@R表示为

(19)

其中,min(,)表示R和用户点击物品数目的最小值.当用户所有点击的物品都排在前R个位置,Recall@R将达到最大值为1.

DCG@R的表示为

(20)

NDCG@RDCG@R的归一化版本,所以NDCG@R的取值范围在[0,1]之间.当用户所有点击的物品都排在前R个位置,NDCG@R将达到最大值为1.

3.3 实验设置

我们随机将所有用户分为训练集、验证集和测试集,采用训练集用户的全部点击历史来训练模型.为了对模型进行评估,通过获取留出用户(验证和测试)的点击历史来学习模型的必要用户级表示,然后通过对留出用户和其未被观测到的点击历史进行排序来计算度量结果.表1的最后一列列出了每个数据集的留出用户数量.对于每个留出用户,随机选取80%的点击历史记录来学习必要的用户级表示,并使用其余的点击历史记录来进行预测.

我们通过在验证集用户上评估NDCG@1来选择模型的超参数和结构.对于所提出的模型,用于编码器和解码器的神经网络具有对称的体系结构,有3层感知机与结构[m→600→d→600→m],这里m表示物品的个数.在实验中,我们将根据不同的数据集来选择d的值.基于交叉验证实验,在3个数据集上都设置了α=10.使用tanh作为神经网络层之间的激活函数.采用dropout[29]以0.5的概率应用于输入层,并且不对任何部分应用权重衰减.使用Adam[30]对模型进行训练,在ML-100k数据集上,设置批大小为150个用户,在XuetangX和Jester数据集上设置批大小为2 000个用户,在3个数据集上分别对模型训练200次.

3.4 对比方法

我们将所提出模型的实验结果与3种类别的推荐模型做对比,包括传统模型、深度神经网络模型和深度生成模型:

1) 传统模型.WMF[31]是用于隐式反馈的线性低秩模型;SLIM[24]也是一种学习稀疏物品到物品相似矩阵的线性模型,满足了top-N推荐系统所要求的高质量和高效率.

2) 深度神经网络模型.NCF[7]通过神经网络探索用户和物品之间的非线性交互;CDAE[9]是第一个将去噪自编码器应用于top-N推荐问题的模型,它通过在输入中加入每个用户的潜在因子来提高降噪自编码器的标准.

3) 深度生成模型:Mult-VAE[13]是一个具有多项式似然的生成模型,利用贝叶斯推断进行参数估计,将变分自编码器应用于隐式反馈的协同过滤.

3.5 实验结果与分析

首先进行一系列实验来测试不同参数设置对模型结果的影响;其次定量地比较了我们所提出的方法与各种基线模型的排序估计.

3.5.1 参数影响

第1个实验调查了隐空间大小d对推荐结果的影响.图2显示了在3个数据集上,d的大小从50变化至300时对Recall@10和NDCG@10结果的影响.正如我们所预期的,在一开始随着d的增加,我们所提出的模型在每个数据集上的性能均会提高,并且ML-100k和XuetangX数据集在d=100,Jester数据集在d=150时分别达到最好的结果.当d的值在ML-100k和XuetangX数据集上超过100,在Jester数据集上超过150时,模型的表现就会下降.较大的d表示将在较高维的空间中表示用户,但当较低维度的空间有足够能力捕获隐属性时,增大d则会降低模型的泛化能力,不利于推荐性能的提高.

Fig. 2 Effect of the latent space size d in terms of NDCG@10 and Recall@10
图2 隐空间大小dNDCG@10和Recall@10的影响

图3显示了正则化系数β在3个数据集上对Recall@10和NDCG@10评价指标的影响.结果表明随着β值大小的增加,模型的表现变得更好,并且当ML-100k数据集上β=0.2,XuetangX数据集上β=0.03和Jester数据集上β=0.1时,模型结果最优,在此后随着β的增大,模型的表现也随之下降.这是因为较小的β可以充分利用zu的先验和后验之间的关系,而较大的β可能过于关注能力的限制,从而降低推荐的有效性.

Fig. 3 Effect of egularization coefficient β in terms of NDCG@10 and Recall@10
图3 正则化系数βNDCG@10和Recall@10的影响

图4显示了排序损失系数γ在3个数据集上对Recall@10和NDCG@10评价指标的影响.结果表明了随着γ值的增加,模型表现变得更优,并且当ML-100k数据集上γ=0.3,XuetangX数据集上γ=0.002和Jester数据集上γ=0.01时模型结果最好,在此后随着γ的增大,模型的表现也随之下降.结果表明,当γ增加时,我们所提出的个性化排名损失对于生成一个用户的排序列表是有效的.但是当γ过大时模型性能会下降,这说明过大的γ会使个性化排名在模型的学习过程中占主导地位.

Fig. 4 Effect of ranking loss coefficient γ in terms of NDCG@10 and Recall@10
图4 排序损失系数γNDCG@10和Recall@10的影响

3.5.2 性能分析

本节将所提出的模型与3.4节提到的5个模型进行了实验对比.我们在不同数量的推荐列表长度中计算了Recall和NDCG的结果,并记录在表2~4中.最佳和次佳的结果分别用加粗和下划线标记出来.从实验结果可以看出,包括我们所提出的模型在内的多数深度模型(Mult-VAE,CDAE,NCF)比传统模型(SLIM,WMF)在大多数实验结果上表现得更好,这表明非线性的特征能够有助于提升推荐效果.然而SLIM在ML-100k数据集上的实验结果上好于一些深度模型,因为SLIM对稀疏数据上的top-N推荐更有效.此外,在大多数实验结果中,包括我们所提出的模型和Mult-VAE在内的深度生成模型表现要优于其他深度模型CDAE,NCF,这表明了点级数据匹配的生成过程有助于学习更有效的用户隐表示.我们所提出的模型在所有实验上优于其他的深度方法Mult-VAE,CDAE,NCF,这表明了同时考虑隐式反馈数据生成和列表级排序可以提高推荐的有效性.

Table 2 Comparison Between Various Baselines and Our Proposed Method for ML-100k Dataset
表2 在ML-100k数据集上基线模型与我们所提出的方法的对比

MetricsRecall@1Recall@5Recall@10NDCG@5NDCG@10WMF0.021050.071570.093680.203400.43988SLIM0.367610.284020.300390.304550.27607NCF0.145760.223750.251240.242760.23196CDAE0.271470.226320.244170.293460.22542Mult-VAE0.340000.300440.340780.300240.30900Our Method0.393330.314890.353870.324610.32671

Note: The best results are in bold and the suboptimal results are underlined.

Table 3 Comparison Between Various Baselines and Our Proposed Method for XuetangX Dataset
表3 在XuetangX数据集上基线模型与我们所提出的方法的对比

MetricsRecall@1Recall@5Recall@10NDCG@5NDCG@10WMF0.062000.165810.132030.153850.18803SLIM0.322400.418380.451920.332300.35312NCF0.284850.382530.448190.334900.34906CDAE0.285700.390300.459120.326220.35757Mult-VAE0.331500.458770.539970.395450.42083Our Method0.337900.460960.546580.396310.42569

Note: The best results are in bold and the suboptimal results are underlined.

Table 4 Comparison Between Various Baselines and Our Proposed Method for Jester Dataset
表4 在Jester数据集上基线模型与我们所提出的方法的对比

MetricsRecall@1Recall@5Recall@10NDCG@5NDCG@10WMF0.063620.127560.170060.133480.18375SLIM0.157230.333600.428200.322460.34543NCF0.294320.355500.459880.324450.34695CDAE0.271470.331800.430400.333460.34471Mult-VAE0.337000.443140.567790.383830.43194Our Method0.343600.452580.589590.391750.44482

Note: The best results are in bold and the suboptimal results are underlined.

4 总 结

本文提出了一种将列表级排序学习方法应用到深度生成推荐模型中,生成隐式反馈数据的个性化排序推荐列表的方法.该模型可以作为联合深度生成方法,采用多项式分布对隐式反馈数据进行特征描述,利用列表级排序模型对排序列表进行学习.实验表明,该模型在一些场景下具有为用户生成个性化排名列表的能力,例如课程、电影推荐.在所有实验情况下,该模型在3个实际数据集上的表现均优于现有的一些排序模型.

参考文献

[1]Adomavicius G, Tuzhilin A. Toward the next generation of recommender systems: A survey of the state-of-the-art and possible extensions[J]. IEEE Transactions on Knowledge and Data Engineering, 2005, 17(6): 734-749

[2]Hofmann T. Latent semantic models for collaborative filtering[J]. ACM Transactions on Information Systems, 2004, 22(1): 89-115

[3]Kabbur S, Ning Xia, Karypis G. FISM: Factored item similarity models for Top-N recommender systems[C] //Proc of the 19th ACM SIGKDD Int Conf on Knowledge Discovery and Data Mining. New York: ACM, 2013: 659-667

[4]Mnih A, Salakhutdinov R R. Probabilistic matrix factorization[C] //Advances inNeural Information Processing Systems. Montreal: Curran Associates, Inc, 2008: 1257-1264

[5]Wang Chong, Blei D M. Collaborative topic modeling for recommending scientific articles[C] //Proc of the 17th ACM SIGKDD Int Conf on Knowledge Discovery and Data Mining. New York: ACM, 2011: 448-456

[6]Liang Dawen, Altosaar J, Charlin L, et al. Factorization meets the item embedding: Regularizing matrix factorization with item co-occurrence[C] //Proc of the 10th ACM Conf on Recommender Systems. New York: ACM, 2016: 59-66

[7]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: 173-182

[8]Sedhain S, Menon A K, Sanner S, et al. Auto rec: Auto encoders meet collaborative filtering[C] //Proc of the 24th Int Conf on World Wide Web. New York: ACM, 2015: 111-112

[9]Wu Yao, DuBois C, Zheng A X, et al. Collaborative denoising auto-encoders for top-N recommender systems[C] //Proc of the 9th ACM Int Conf on Web Search and Data Mining. New York: ACM, 2016: 153-162

[10]Zheng Yin, Tang Bangsheng, Ding Wenkui, et al. A neural autoregressive approach to collaborative filtering[J]. arXiv preprint arXiv:1605.09477, 2016

[11]Zhang Wen, Du Yuhang, Yoshida T, et al. DeepRec: A deep neural network approach to recommendation with item embedding and weighted loss function[J]. Information Sciences, 2019, 470: 121-140

[12]Huang Zhenhua, Shan Guangxu, Cheng Jiujun, et al. TRec: An efficient recommendation system for hunting passengers with deep neural networks[J]. Neural Computing and Applications, 2019, 31(1): 209-222

[13]Liang Dawen, Krishnan R G, Hoffman M D, et al. Variational autoencoders for collaborative filtering[C] //Proc of the 2018 World Wide Web Conf. New York: ACM, 2018: 689-698

[14]Rendle S, Freudenthaler C, Gantner Z, et al. BPR: Bayesian personalized ranking from implicit feedback[J]. arXiv preprint arXiv:1205.2618, 2012

[15]Ning Xia, Karypis G. Sparse linear methods with side information for top-N recommendations[C] //Proc of the 6th ACM Conf on Recommender systems. New York: ACM, 2012: 155-162

[16]Shi Yue, Karatzoglou A, Baltrunas L, et al. CLiMF: Learning to maximize reciprocal rank with collaborative less-is-more filtering[C] //Proc of the 6th ACM Conf on Recommender Systems. New York: ACM, 2012: 139-146

[17]Georgiev K, Nakov P. A non-iid framework for collaborative filtering with restricted boltzmann machines[C] //Proc of the 30th Int Conf on Machine Learning. New York: ACM, 2013: 1148-1156

[18]Salakhutdinov R, Mnih A, Hinton G. Restricted Boltzmann machines for collaborative filtering[C] //Proc of the 24th Int Conf on Machine Learning. New York: ACM, 2007: 791-798

[19]Cheng Heng-Tze, Koc L, Harmsen J, et al. Wide & deep learning for recommender systems[C] //Proc of the 1st Workshop on Deep Learning for Recommender Systems. New York: ACM, 2016: 7-10

[20]Bai Ting, Wen Jirong, Zhang Jun, et al. A neural collaborative filtering model with interaction-based neighborhood[C] //Proc of the 2017 ACM on Conf on Information and Knowledge Management. New York: ACM, 2017: 1979-1982

[21]Abdollahi B, Nasraoui O. Explainable restricted boltzmann machines for collaborative filtering[J]. arXiv preprint arXiv:1606.07129, 2016

[22]Wang Ruiqin, Wu Zongda, Jiang Yunliang, et al. An integrated recommendation model based on two-stage deep learning[J]. Journal of Computer Research and Development, 2019, 56(8): 1661-1669.(in Chinese)(王瑞琴, 吴宗大, 蒋云良, 等. 一种基于两阶段深度学习的集成推荐模型[J]. 计算机研究与发展, 2019, 56(8): 1661-1669)

[23]Wang Hao, Wang Naiyan, Yeung Dit-Yan. Collaborative deep learning for recommender systems[C] //Proc of the 21st ACM SIGKDD Int Conf on Knowledge Discovery and Data Mining. New York: ACM, 2015: 1235-1244

[24]Kingma D P, Welling M. Auto-encoding variational bayes[J]. arXiv preprint arXiv:1312.6114, 2013

[25]Rezende D J, Mohamed S, Wierstra D. Stochastic backpro-pagation and approximate inference in deep generative models[J]. arXiv preprint arXiv:1401.4082, 2014

[26]Li Xiaopeng, She J. Collaborative variational autoencoder for recommender systems[C] //Proc of the 23rd ACM SIGKDD Int Conf on Knowledge Discovery and Data Mining. New York: ACM, 2017: 305-314

[27]Blei D M, Kucukelbir A, McAuliffe J D. Variational inference: A review for statisticians[J]. Journal of the AmericanStatistical Association, 2017, 112(518): 859-877

[28]Zhang Jing, Hao Bowen, Chen Bo, et al. Hierarchical reinforcement learning for course recommendation in MOOCs[C] //Proc of the AAAI Conf on Artificial Intelligence. Menlo Park, CA: AAAI, 2019, 33: 435-442

[29]Srivastava N, Hinton G, Krizhevsky A, et al. Dropout: a simple way to prevent neural networks from overfitting[J]. The Journal of Machine Learning Research, 2014, 15(1): 1929-1958

[30]Kingma D P, Ba J. Adam: A method for stochastic optimization[J]. arXiv preprint arXiv:1412.6980, 2014

[31]Hu Yifan, Koren Y, Volinsky C. Collaborative filtering for implicit feedback datasets[C] //Proc of the 8th IEEE Int Conf on Data Mining. Piscataway, NJ: IEEE, 2008: 263-272

Deep Generative Recommendation Based on List-Wise Ranking

Sun Xiaoyi, Liu Huafeng, Jing Liping, and Yu Jian

(Beijing Key Laboratory of Traffic Data Analysis and Mining (Beijing Jiaotong University), Beijing 100044)(School of Computer and Information Technology, Beijing Jiaotong University, Beijing 100044)

Abstract Variational autoencoders have been successfully applied in recommendation field in recent years. The advantage of this kind of nonlinear probabilistic model is that it can break through the limited modeling ability of linear model, which is still dominant in collaborative filtering research. Although the recommendation method based on variational autoencoder has achieved excellent performance, there are still some unresolved problems, such as the inability to generate personalized recommendation ranking lists for users based on the recommendation data of implicit feedback. Therefore, in this paper, we propose a depth generation recommendation model for variational autoencoder by using polynomial likelihood to implement list-based ranking strategies. The model has the ability to simultaneously generate point-wise implicit feedback data and create a list-like ranking list for each user. To seamlessly combine ranking loss with variational autoencoder loss, the normalized cumulative loss gain (NDCG) is adopted here and approximated with a smoothed function. A series of experiments on three real-world datasets (MovieLens-100k, XuetangX and Jester) have been conducted. Experimental results show that the variational autoencoder combined with list-wise ranking method has better performance in generate a personalized recommendation list.

Key words personalized recommendation; deep generative model; learning to rank; implicit feedback; list-wise ranking

中图法分类号 TP181

收稿日期2020-06-16;修回日期:2020-07-03

基金项目国家自然科学基金项目(61822601,61773050,61632004);北京市自然科学基金项目(Z180006);北京市科委项目(Z181100008918012);国家重点研发计划项目(2017YFC1703506);中央高校基本科研业务费专项资金(2019JBZ110)

This work was supported by the National Natural Science Foundation of China (61822601, 61773050, 61632004), the Beijing Natural Science Foundation (Z180006), the Program of Beijing Municipal Science & Technology Commission (Z181100008918012), the National Key Research and Development Program of China (2017YFC1703506), and the Fundamental Research Funds for the Central Universities (2019JBZ110).

通信作者景丽萍(lpjing@bjtu.edu.cn)

Sun Xiaoyi, born in 1996. Master candidate at Beijing Jiaotong University, China. Her main research interest is intelligent recommendation.

Liu Huafeng, born in 1994. PhD candidate at Beijing Jiaotong University, China. Student member of CCF. His main research interest is intelligent recommendation.

Jing Liping, born in 1978. Received her PhD degree in applied mathematics from the University of Hong Kong, in 2007. Currently professor at Beijing Jiaotong University, China. Member of CCF. Her main research interests include machine learning and its applications.

Yu Jian, born in 1969. Received his BSc and MSc degrees in mathematics and the PhD degree in applied mathematics from Peking University, Beijing, China, in 1991, 1994, and 2000, respectively. Currently professor at Beijing Jiaotong University, China. Fellow of CCF. His main research interests include machine learning, image processing, and pattern recognition.