卨却却印区匯匯卷卷卷匮印卡印卥卲匮卥卤卵匮卣卮
基于对抗自编码器的标签推荐算法
高悦1, 禹可2
1 北京邮电大学信息与通信工程学院,北京 匱匰匰匸匷匶
2 北京邮电大学信息与通信工程学院,北京 匱匰匰匸匷匶
摘要:为解决标签推荐系统面临的数据稀疏和冷启动的问题,本文提出使用对抗自编码
器匨十卤卶卥卲即卡卲卩卡卬 十卵却卯卥卮卣卯卤卥卲匬 十十卅匩探索大规模标签推荐数据集上的标签与物品之间的复杂共
现关系,以进行深度协同过滤。另外,引入标签平滑以缓解过拟合,并通过修改真实概率构造
来适应标签推荐系统。最后,在三个真实数据集上进行的实验表明,本文提出的方法明显优于
当前已有方法。
关键词:人工智能;对抗自编码器;标签推荐;深度协同过滤
中图分类号: 協卐匱匸匳
Adversarial autoencoder-based tag
recommendation algorithm
GAO Yue1,YU Ke2
1 卓卣卨卯卯卬 卯卦 卉卮卦卯卲卭卡却卩卯卮 卡卮卤 千卯卭卭卵卮卩卣卡却卩卯卮 卅卮卧卩卮卥卥卲卩卮卧匬 卂卥卩卪卩卮卧 单卮卩卶卥卲即卩却卹 卯卦 卐卯即却即 卡卮卤
2 卓卣卨卯卯卬 卯卦 卉卮卦卯卲卭卡却卩卯卮 卡卮卤 千卯卭卭卵卮卩卣卡却卩卯卮 卅卮卧卩卮卥卥卲卩卮卧匬 卂卥卩卪卩卮卧 单卮卩卶卥卲即卩却卹 卯卦 卐卯即却即 卡卮卤
協卥卬卥卣卯卭卭卵卮卩卣卡却卩卯卮即匬 卂卥卩卪卩卮卧 匱匰匰匸匷匶
協卥卬卥卣卯卭卭卵卮卩卣卡却卩卯卮即匬 卂卥卩卪卩卮卧 匱匰匰匸匷匶
Abstract: 卉卮 卯卲卤卥卲 却卯 即卯卬卶卥 却卨卥 印卲卯卢卬卥卭 卯卦 卤卡却卡 即印卡卲即卥卮卥即即 卡卮卤 卣卯卬卤 即却卡卲却 卩卮 却卨卥 却卡卧
卲卥卣卯卭卭卥卮卤卡却卩卯卮 即卹即却卥卭匬 卷卥 印卲卯印卯即卥即 却卯 卵即卥 却卨卥 十卤卶卥卲即卡卲卩卡卬 十卵却卯卥卮卣卯卤卥卲 匨十十卅匩 却卯 卥卸印卬卯卲卥
却卨卥 卣卯卭印卬卥卸 卣卯匭卯卣卣卵卲卲卥卮卣卥 卲卥卬卡却卩卯卮即卨卩印 卢卥却卷卥卥卮 却卡卧即 卡卮卤 卩却卥卭即 卯卮 却卨卥 卬卡卲卧卥匭即卣卡卬卥 却卡卧
卲卥卣卯卭卭卥卮卤卡却卩卯卮 卤卡却卡即卥却 卩卮 卤卥卥印 卣卯卬卬卡卢卯卲卡却卩卶卥 匌卬却卥卲卩卮卧匮 卉卮 卡卤卤卩却卩卯卮匬 卬卡卢卥卬 即卭卯卯却卨卩卮卧 卷卡即
卩卮却卲卯卤卵卣卥卤 却卯 卡卬卬卥卶卩卡却卥 卯卶卥卲匌却却卩卮卧 卡卮卤 却卯 卡卤卡印却 却卯 却卨卥 却卡卧 卲卥卣卯卭卭卥卮卤卡却卩卯卮 即卹即却卥卭 卢卹
卭卯卤卩卦卹卩卮卧 却卨卥 卣卯卮即却卲卵卣却卩卯卮 卯卦 却卲卵卥 印卲卯卢卡卢卩卬卩却卩卥即匮 卆卩卮卡卬卬卹匬 卥卸印卥卲卩卭卥卮却即 卯卮 却卨卲卥卥 卲卥卡卬 卤卡却卡即卥却即
即卨卯卷 却卨卡却 却卨卥 印卲卯印卯即卥卤 卭卥却卨卯卤 卩即 即卩卧卮卩匌卣卡卮却卬卹 卢卥却却卥卲 却卨卡卮 却卨卥 卣卵卲卲卥卮却 卭卥却卨卯卤即匮
Key words: 卡卲却卩匌卣卩卡卬 卩卮却卥卬卬卩卧卥卮卣卥医 卡卤卶卥卲即卡卲卩卡卬 卡卵却卯卥卮卣卯卤卥卲医 却卡卧 卲卥卣卯卭卭卥卮卤卡却卩卯卮医 卤卥卥印
卣卯卬卬卡卢卯卲卡却卩卶卥 匌卬却卥卲卩卮卧
0 引言
互联网中存在着大量的文章、电影、音乐等在线资源,标签系统对于实现高效的资源标记
作者简介: 高悦(1995-),女,硕士研究生,主要研究方向为深度学习。通信作者:禹可(1977-),女,副教授,主要研究方
向为异常检测,yuke@bupt.edu.cn。
匭 匱 匭
卨却却印区匯匯卷卷卷匮印卡印卥卲匮卥卤卵匮卣卮
和索引十分重要卛匱卝。标签推荐不仅能够减轻用户选择标签的负担,还能使用户对标签的使用更
加一致,从而改善用户体验、提高推荐效率。因此,在过去的几年中,标签推荐系统出现在许
多在线资源网站,也吸引了越来越多的研究者的关注。例如,豆瓣网在用户标记电影、音乐等
资源时给用户推荐合适的标签;千卩却卥单卌卩卫卥使用标签辅助数以百万计的在线文章的分类工作。
标签推荐系统往往面临着数据稀疏和冷启动的问题。一方面,用户可以使用任意标签自由
注释物品,这导致标签集合中会包含许多不受控制的词汇,例如同音异义词、同义词、任意语
言的单词等。因此标签信息往往具有稀疏、冗余的特性;另一方面,打标任务的时间和人力成
本十分高昂,这导致大量的资源中只有很少一部分是具有标签的,因此标签推荐系统面临着严
重的数据稀疏和冷启动问题,大大降低了标签推荐系统的性能。
本文针对上述问题,提出一种使用对抗自编码器进行深度协同过滤的方法卛匲卝来实现标签推
荐。十十卅是一种概率自编码器,利用生成对抗网络匨升卥卮卥卲卡却卩卶卥 十卤卶卥卲即卡卲卩卡卬 华卥却卷卯卲卫即匬 升十华匩卛匳卝,
通过将隐编码向量的聚合后验和任意先验分布进行匹配来进行变分推理[4, 5]。因此,该模型能
够超越线性模型的有限建模能力,探索大规模标签推荐数据集上的标签与物品之间的共现关
系。另外,引入了标签平滑以缓解过拟合,并通过修改真实概率的构造来适应标签推荐系统。
最后,在三个真实数据集上进行的实验表明,本文提出的方法明显优于当前最先进的方法。
1 国内外研究现状
推荐系统是能在信息过载的环境中帮助用户发现令他们感兴趣的物品的一种工具卛匶卝。现有
的推荐方法大致分为三类:基于内容的方法,基于协同过滤的方法和混合方法卛匷卝。基于内容的
方法卛匸卝仅将内容信息(如新闻摘要,视频封面和音乐内容)用于推荐。基于协同过滤方法卛匹卝不
需要用户或物品属性的详细信息,仅通过用户和物品之间的交互信息向用户推荐物品。混合方
法卛匱匰卝同时使用物品内容信息和评分信息进行推荐。
1.1 标签推荐
个性化推荐系统有很多应用,如电子商务,视频网站等,其中标签系统对于标记和索引
互联网上的丰富资源十分重要[11, 12]。在标签推荐场景下,已有大量的研究。南卡卮卧等人提出了
协同主题回归匨千卯卬卬卡卢卯卲卡却卩卶卥 協卯印卩卣 卒卥卧卲卥即即卩卯卮匬 千協卒匩卛匱匳卝的方法,使用隐狄利克雷分配匨卌卡却卥卮却
卄卩卲卩卣卨卬卥却 十卬卬卯卣卡却卩卯卮匬 卌卄十匩[14, 15]作为学习物品表示的关键模块,并使用概率矩阵分解匨卐卲卯卢卡卢卩卬卩即却卩卣
卍卡却卲卩卸 卆卡卣却卯卲卩卺卡却卩卯卮匬 卐卍卆匩卛匱匶卝处理物品匭标签共现矩阵。但卌卄十生成的物品表示通常很稀疏,
需要更高的维度才能生成有效表示;卐卍卆具有低秩假设,通常只能在相当低的隐空间维度下使
用,这与卌卄十的性质不符。
随后,南卡卮卧等人又提出了协同深度学习匨千卯卬卬卡卢卯卲卡却卩卶卥 卄卥卥印 卌卥卡卲卮卩卮卧匬 千卄卌匩作为千協卒的
改进模型[17, 18],使用贝叶斯自编码器替换千協卒中的主题模型组件。实验证明,这对于学习文
章上的潜在特征表示很有用。
南卡卮卧等人提出了关系堆叠式去噪自编码器匨卒卥卬卡却卩卯卮卡卬 卓却卡卣卫卥卤 卄卥卮卯卩即卩卮卧 十卵却卯卥卮卣卯卤卥卲匬 卒卓卄十卅匩卛匱卝。
与千卄卌非常相似,两者区别在于卒卓卄十卅用关系信息矩阵代替了卐卍卆。除此之外,千卄卌的另一
匭 匲 匭
卨却却印区匯匯卷卷卷匮印卡印卥卲匮卥卤卵匮卣卮
个扩展是协作变式自动编码器匨千卯卬卬卡卢卯卲卡却卩卶卥 卖卡卲卩卡却卩卯卮卡卬 十卵却卯卥卮卣卯卤卥卲匬 千卖十卅匩卛匱匹卝,它用变分
自编码器匨卖卡卲卩卡却卩卯卮卡卬 十卵却卯卥卮卣卯卤卥卲匬 卖十卅匩代替了千卄卌的深度神经网络部分。千卖十卅学习用于内
容信息的隐变量,可以实现视频、图像等多媒体数据源的融合。
1.2 深度协同过滤
深度协同过滤,即使用深度神经网络来完成协同过滤的任务。由于自编码器可以将高维评
分矩阵或用户隐式数据,压缩成低维隐向量。相比于传统的主成成分分析方法匨卐卲卩卮卣卩印卡卬 千卯卭匭
印卯卮卥卮却 十卮卡卬卹即卩即匬 卐千十匩,自编码器的非线性特性,可以学习到更高效的数据表示,且有更好的
泛化性能。因此,基于自编码器的方法已广泛应用到深度协同过滤任务中。
午卥等人提出了神经协同过滤匨华卥卵卲卡卬 千卯卬卬卡卢卯卲卡却卩卶卥 卆卩卬却卥卲卩卮卧匬 华千卆匩卛匲匰卝,通过神经网络建
模用户和物品潜在因子之间的非线性相互作用,扩展了传统的矩阵分解。
最近卌卩卡卮卧等人假设隐式数据遵循多项式分布卛匲匱卝,并提出的卍卵卬却匭卖十卅和卍卵卬却匭卄十卅,利用
自编码器对数据进行解码重构,实现了对隐式反馈数据的最先进的预测结果。然而,变分自编
码器有一个明显的问题是,隐向量的分布重叠很多,这可能会降低模型的预测能力。受卍卡卫卨卺卡卮卩等
人提出的对抗自编码器模型卛匲匲卝的启发,本文着重于研究如何应用对抗自编码器来解决深度协
同过滤问题。
尽管已有一些工作将深度学习用于推荐,但他们主要将其用于建模辅助信息,例如物品的
文本描述和音乐的声学特征。深度协同过滤的研究相对较少,因此本文将以卌卩卡卮卧等人的研究
为基础进行拓展,探索如何将对抗网络、自编码器及标签平滑融合进深度协同过滤框架。
2 模型设计
2.1 问题定义
定义系统中有M 个物品,表示为集合R 匽 {r1, r2..., rM};华个标签,表示为集合T 匽 {t1, t2..., tN};
物品匭标签矩阵X ∈ RM∗N 表示物品的标签记录信息,其中xij是二进制变量,如标签tj与物品ri相
关联则xij 匽 匱,反之xij 匽 匰。需要预测xi 匽 卛xi1, xi2..., xiN 卝 ∈ RN 中的缺失值。模型的输入是
向量xi,其非零元素表示物品ri的已有标签,输出是物品ri的得分向量,每个元素代表其对应
的标签得分。按得分排名,最高的前K个标签将被推荐。
2.2 TR-AAE框架
如图匱所示,模型由两个部分组成:
上部分是自编码器网络,由编码器和解码器两部分组成。编码器的输入是部分观测到的向
量xi,经过编码器部分,输出隐空间中的低维向量,这些低维隐向量保留了输入向量中最重要
的信息。随后,隐向量用作解码器的输入,并输出重构向量卞xi,最终,根据非零元素的排名,
前K的标签将被推荐。
匭 匳 匭
卨却却印区匯匯卷卷卷匮印卡印卥卲匮卥卤卵匮卣卮
图 匱区 協卒匭十十卅框架
图 匲区 各种自编码器对比
下部分是一个判别器网络,旨在为自编码器提供正则项。注意,判别器通过影响自编码器
的隐空间的分布来工作。判别器网络的功能是将隐空间分布逼近预定义的先验分布,此处使用
正态分布。
2.2.1 自编码器
在本节中,首先简要回顾一下对抗自编码器,然后介绍模型協卒匭十十卅。
通常,经典的自编码器为具有单隐藏层的神经网络(如图匲匨卡匩),它将向量x ∈ RN 作为输
入,并通过推理模型即编码器gφ匨·匩将其映射到隐空间z ∈ RK,这里,φ是一个N ∗ K的权重矩
阵。然后通过生成模型即解码器fθ匨·匩将得到的隐编码向量映射到重构矢量卞x,其中是K ∗ N 权重
矩阵。
本论文提出的方法采用了自编码器的另一种变体,即对抗自编码器(如图匲匨卣匩)。对抗自编
码器使用了生成对抗网络来完成隐空间编码向量聚合后验分布的参数学习工作,通过对抗训练
使聚合后验分布逐渐逼近任意已知的先验分布。
设p匨z匩为对隐空间施加的先验分布,q匨z|x匩是编码分布,p匨x|z匩是解码分布,pd匨x匩为数据分
布,p匨x匩为模型分布。生成模型fθ匨·匩的学习依赖于参数的学习。为此,对于每条数据,需要使
用更简单的变分分布q匨z匩来近似真实且复杂的后验分布p匨z|x匩。自编码器的编码函数q匨z|x匩定义
匭 匴 匭
了一个聚合后验分布q匨z匩,建立了自编码器的隐空间编码向量的分布。
卨却却印区匯匯卷卷卷匮印卡印卥卲匮卥卤卵匮卣卮
变分自编码器使用卋卌散度惩罚来对自编码器的隐编码向量施加先验分布(如图匲匨卢匩),而
本文使用对抗训练程序,使隐编码向量的聚合后验q匨z匩与先验分布p匨z匩相匹配来实现。具体来
说,使用对抗网络来引导q匨z匩逼近p匨z匩,对抗网络的生成器即自编码器中的编码器q匨z|x匩用以欺
骗判别网络,使其认为由q匨z匩生成的隐编码表示来自真正的先验分布p匨z匩。
点击总数Ni 匽 N
如图匱所示,通过即卯卦却卭卡卸函数进行归一化以产生在整个标签集上的概率向量卞x。假设物品ri的
j=1 xij,假设观察到的xi是从多项分布 M ult匨Ni, 卞x匩中采样得到。因此,物
x q匨z|x匩pd匨x匩 dx
匨匱匩
品ri的对数似然是:
logpθ匨xi|zi匩 匽
匱 匫
exp{fθ匨zij匩}
j exp{fθ匨zij匩}
xijlog
匨匲匩
因此,可以认为多项分布非常适合于对标签数据进行建模。物品匭标签关联矩阵的似然使
模型将概率质量放在xi中的非零项上。由卾xi中各项和须为匱,概率质量有限,这些标签必须争夺
有限的资源。因此,模型应该为更可能被使用的标签分配更多的概率质量。
2.2.2 标签平滑
这里,引入标签平滑到标签推荐中以缓解过拟合。标签平滑是一种在深度学习领域中经常
使用的技巧,尤其是在多分类任务中,标签平滑对缓解过拟合效果显著。
在训练期间,通过更新模型参数,最小化自编码器的交叉熵损失,以使真实概率分布和预
q匨z匩 匽
M
j=1
测概率分布尽可能接近。
lae匨φ, θ匩 匽 − 匱
M
匽 − 匱
M
xijlog卞xij
log卞xij
N
i=1
M
M
M
i=1
j=1
N
j∈Si
其中,Si是输入矢量xi中非零值的索引集合,|Si|即xi中非零值的个数。当
j∈Si
其他项足够小时,有最优解,这可能导致过拟合。因此,将真实概率的构造更改为:
j∈Si
k=1
i=1
匨
卾xij − |Si| · log匨
exp{卾xik}匩匩
匽 − 匱
M
卾xij 匽 inf 且
现在最优解变为:
卾xij 匽
xij 匽
1−ε|Si| ,
M−|Si| ,
ε
卩卦 j 卩卮 Si
otherwise
log匨 (1−ε)·(M−|Si|)
ε·|Si|
匩 匫 α,
α,
卩卦 j 卩卮 Si
otherwise
这里,α可以是任意真值。标签平滑鼓励了有限的输出值,因此,有更好的泛化性能。
匭 匵 匭
匨匳匩
匨匴匩
匨匵匩
匨匶匩
匨匷匩
卨却却印区匯匯卷卷卷匮印卡印卥卲匮卥卤卵匮卣卮
2.3 对抗训练策略
Algorithm 1 卌卥卡卲卮卩卮卧 卡卬卧卯卲卩却卨卭 卦卯卲 協卒匭十十卅 卷卩却卨 卓却卯卣卨卡即却卩卣 升卲卡卤卩卥卮却 卄卥即卣卥卮却
Require: 卩却卥卭匭却卡卧 卭卡却卲卩卸 X ∈ RM×N
卉卮卩却卩卡卬卩卺卥 印卡卲卡卭卥却卥卲即匨φ, θ, ω匩 卷卩却卨 卲卡卮卤卯卭 卶卡卬卵卥即
iter ⇐ 匰
while iter < max iter 卯卲 卮卯却 卣卯卮卶卥卲卧卥卤 do
卓卡卭印卬卥 卡 卢卡却卣卨 卯卦 卩却卥卭即 匊医
for all i ∈ 匊 do
千卯卭印卵却卥 卮卯卩即卹 卧卲卡卤卩卥卮却 ∇φLae 卡卮卤 ∇θLae 卷卩却卨 xi 卡卮卤 卞xi医
千卯卭印卵却卥 卮卯卩即卹 卧卲卡卤卩卥卮却 ∇ωLd 卷卩却卨 zi 卡卮卤 卞zi医
千卯卭印卵却卥 卮卯卩即卹 卧卲卡卤卩卥卮却 ∇φLg 卷卩却卨 zi医
end for
单印卤卡却卥 匨φ, θ, ω匩 卢卹 却卡卫卩卮卧 卓却卯卣卨卡即却卩卣 升卲卡卤卩卥卮却 即却卥印即医
iter ⇐ iter 匫 匱
end while
模型在重构阶段和正则化阶段交叉训练。在重构阶段,自编码器更新编码器和解码器的参
数以最小化输入的重构误差。自编码器的误差:
M
M
i=1
lae匨φ, θ匩 匽 −卛匨
匽 −卛匨
匱
M
匱
M
N
i=1
j=1
l匨xi, 卞xi匩匩 匫 λ匊匨φ, θ匩卝
xijlog卾xij匩 匫 λ匊匨φ, θ匩卝
匨匸匩
匨匹匩
这里,l是交叉熵损失函数,匊匨·匩是正则项,用来控制模型复杂度,λ是正则项的超参数。
通常情况下,匊匨φ, θ匩 匽 φ2 匫 θ2,这里·F 表示 卆卲卯卢卥卮卩卵即范数,在正则化阶段,对抗网络
首先更新其判别网络,使之能从样本中分离出真实样本与生成样本。然后,对抗网络更新其生
成网络以混淆判别网络。两个网络交叉训练直至整个训练过程结束。由于gφ匨·匩和fθ匨·匩 是非线性
的,因此该概率模型超出了线性因子模型的有限建模能力。
应用随机梯度下降来学习模型参数。算法匱提供了详细的过程。一旦训练完成,自编码器
的解码器作为一个生成模型,将强加先验分布p匨z匩映射到数据分布。
3 实验
本章通过实验评估模型的性能并分析其表现。可以在升卩却午卵卢1上获得实验的源代码。
1https://github.com/dawn310826/TR-AAE
匭 匶 匭
卨却却印区匯匯卷卷卷匮印卡印卥卲匮卥卤卵匮卣卮
表 匱区 预处理后数据集的属性
卌卡即却卦卭 千卩却卥单卌卩卫卥匭卡 千卩却卥单卌卩卫卥匭却
标签数 匲匲匱匳
物品数 匶匳匰匹
交互数 匸匵匲匸匵
稀疏性 匰匮匶匱匥
匷匳匸匲
匱匱匹匷匰
匱匹匰匳匳匶
匰匮匲匲匥
匱匰匴匰匳
匱匸匰匶匲
匲匲匰匸匸匱
匰匮匲匲匥
3.1 数据集
在实验中,使用三个真实数据集,其中一个来自卌卡即却卦卭,两个来自千卩却卥单卌卩卫卥。为了获得密
集的数据子集,这里只保留至少有五个标签的物品和至少被标记匵次的标签。预处理后,数据
集属性如表匱所示,第一个数据集卌卡即却卦卭中有匲匲匱匳个标签,匶匳匰匹个物品和匸匵匲匸匵个物品匭标签对。
第二个数据集千卩却卥单卌卩卫卥匭卡包含匷匳匸匲个标签,匱匱匹匷匰个物品和匱匹匰匳匳匶个物品匭标签对。对于千卩却卥单卌卩卫卥匭
却,为匱匰匴匰匳,匱匸匰匶匲和匲匲匰匸匸匱。
3.2 评估指标
这里,使用四个指标:協卯印匭卋召回率匨卒卥卣卡卬卬區卋匩,協卯印匭卋归一化折扣累积增益匨华卯卲卭卡卬卩卺卥卤
卄卩即卣卯卵卮却卥卤 千卵卭卵卬卡却卩卶卥 升卡卩卮區卋匬 华卄千升區卋匩,協卯印匭卋精确率匨卐卲卥卣卩即卩卯卮區卋匩和協卯印匭卋平均精度匨卍卥卡卮
十卶卥卲卡卧卥 卐卲卥卣卩即卩卯卮區卋匬 卍十卐區卋匩来衡量推荐质量。根据测试数据中物品实际采用的标签来评估
不同的方法。即对于每个物品,通过将标签的预测排名与其真实排名进行对比来计算每个指
标。定义Crec是具有最高预测值的推荐标签列表,Cadopted是物品ri关联的测试集标签的集合,
如果采用排名卲处的标签,则指示函数rel匨r匩为匱,否则为零。值得注意的是,模型预测不会采
用训练数据中出现的标签。
卒卥卣卡卬卬區卋和华卄千升區卋 召回率表示用户所接受的标签中, 有多少比例是算法推荐给用户
的标签。召回率认为排在前K的所有物品同样重要,但折扣累积增益(卤卩即卣卯卵卮却卥卤 卣卵卭卵卬卡却卩卶卥
卧卡卩卮匬 卄千升)使用单调递增的折扣来强调排名的重要性。定义物品ri的卒卥卣卡卬卬區卋和卄千升區卋为:
Recall區K 匽
|Crec ∩ Cadopted|
min匨K,|Cadopted|匩
K
DCG區K 匽
rel匨r匩
log匨r 匫 匱匩
r=1
匨匱匰匩
匨匱匱匩
华卄千升是在除以理想折扣累积增益匨卉卤卥卡卬卩卺卥卤 华卯卲卭卡卬卩卺卥卤 卄卩即卣卯卵卮却卥卤 千卵卭卵卬卡却卩卶卥 升卡卩卮匬 卉卄千升匩之
后的线性归一化的卄千升。
卐卲卥卣卩即卩卯卮區卋和卍十卐區卋 精确率表示推荐给用户的标签中,有多少比例是用户所接受的标
签。平均精确率匨十卶卥卲卡卧卥 卐卲卥卣卩即卩卯卮匬 十卐匩与华卄千升非常相似,它同样强调了推荐的顺序。平均
精确率是一种排名精确的度量标准,可为最高排名中正确推荐的标记提供更大的信用得分。十卐區卋定
匭 匷 匭
义为在被采用标签的所有位置上计算的平均精度。物品ri的卐卲卥卣卩即卩卯卮區卋和十卐區卋定义为:
卨却却印区匯匯卷卷卷匮印卡印卥卲匮卥卤卵匮卣卮
|Crec ∩ Cadopted|
N
K
k=1 P recision區K × rel匨k匩
匨匱匲匩
匨匱匳匩
P recision區K 匽
AP 區K 匽
min匨K,|Cadopted|匩
卍十卐區卋定义为所有物品的平均精确率分数的平均值。值得注意的是,这四个指标皆是通
过对所有物品上的分数来计算得到的。
3.3 实验设置
将数据集分成训练集和测试集,利用训练集中物品的全部标签来训练模型。模型评估阶
段,选取测试集物品的大部分标签,以学习物品的低维表示,然后通过对比模型在测试集上对
其余标签的预测情况和实际情况,来计算模型指标。具体地,随机选择匲匰匰匰个物品用作测试集,
其余物品用作训练集。对于每个物品,随机选择匸匰%的历史标签记录用来学习必要的物品级表
示,并计算模型在剩余匲匰%历史标签记录上的表现。
在自编码器的部分,将体系结构设置为卛N → 匱匰匰匰 → 匲匰匰 → 匱匰匰匰 → N 卝,判别网络设置
为卛匲匰匰 → 匱匰匰 → 匲匰 → 匱卝,另外,使用卲卥卬卵作为层之间的激活函数。
另外,对输入层施加扰动,一方面是为了缓解过拟合,另一方面是迫使隐藏层发现更健壮
的特征,防止网络仅学习恒等函数,退化成恒等网络。通常,有三种广泛使用的方法来破坏输
入:高斯噪声,掩蔽噪声和椒盐噪声。在掩蔽噪声下,输入向量卸中每个维度的值有p 匽 匰.匵的
概率变为匰。为了保证无偏,将未被破坏的值设置为原始值的δ 匽 1
1−p 匽 匲倍。使用十卤卡卭作
为优化算法, 并将批量大小设置为匵匰匰。 对于卌卡即却卦卭, 将训练匲匰匰轮, 在另外两个数据集上训
练匱匰匰匰轮。
3.4 基线方法对比
为验证協卒匭十十卅的性能,接下来进行性能对比实验,参与对比的模型如下:
卍卵卬却匭卄十卅卛匲匱卝:卍卵卬却匭卄十卅研究具有多项式似然的去噪自编码器匨卄卥卮卯卩即卩卮卧 十卵却卯卥卮卣卯卤卥卲匬
卄十卅匩。在训练阶段,卍卵卬却匭卄十卅需要学习一组参数来获得潜在表示gφ匨x匩。去噪自编码器由于
在输入层引入弃权并施加权重衰减而不易过拟合。通过在验证集上的卒卥卣卡卬卬區匵来选择权重衰减
参数{匰.匰匱, 匰.匱, 匱, 匱匰}。
卍卵卬却匭卖十卅卛匲匱卝:与卍卵卬却匭卄十卅不同,卍卵卬却匭卖十卅需要两组参数来学习潜在表示z匨z 匽 µφ匨x匩匫
εσφ匨x匩匩,分别用于求得变分平均值µφ匨x匩和变分方差σφ匨x匩。另外,卍卵卬却匭卖十卅使用退火算法来
调整参数, 并且不应用权重衰减。 注意, 对于卍卵卬却匭卄十卅和卍卵卬却匭卖十卅, 为了与協卒匭十十卅持一
致,将隐空间的维度卫设置为匲匰匰,将其他隐藏层维度设置为匱匰匰匰。
华千卆卛匲匰卝:华千卆通过神经网络建模物品和标签潜在因子之间的非线性相互作用,扩展了传
统的矩阵分解。华千卆的参数数量随物品和标签的数量线性增加。这里使用体系结构为卛匲匵匶 →
匱匲匸 → 匲匰卝的三个隐藏层的全连接网络,并将嵌入大小设为匱匲匸。
匭 匸 匭