关键词:
序列推荐
变分自动编码器
对抗网络
自注意力机制
摘要:
序列推荐算法能够从用户的历史互动中捕捉用户的动态兴趣,在推荐系统中发挥着至关重要的作用。虽然基于深度学习的序列推荐算法取得了良好的进展,但是现有算法通常依赖于序列预测任务来优化大量的参数,面对稀疏数据时,很难学习到高质量的用户表示。基于变分自动编码器(Variational Autoencoder,VAE)的生成模型能够有效解决序列推荐算法面临的数据稀疏问题,在序列推荐中显出独特的优势,变分自动编码器因其能强大的生成能力,在序列推荐中被广泛应用,但现有基于变分自动编码器的序列推荐算法依然面临如下挑战。首先,大多算法不具有捕捉用户序列长期和局部依赖的能力,只关注于捕捉用户的单一兴趣,未考虑用户多方面的兴趣,严重影响了模型的推荐性能。其次,现有的基于变分自动编码器的序列推荐模型忽略了降噪处理,导致现有模型的鲁棒性较差。再次,变分自动编码器学习模型的核心是相似性度量,其主要通过重建误差目标提供训练信号。然而,变分自动编码器的重构趋向生成非真实的输出,这会使得模型的生成样本质量较低,从而影响推荐的准确率。
为了解决上述挑战,本文提出两个基于VAE的序列推荐算法:
(1)基于降噪多头注意力VAE的序列推荐(DAVAE),该算法将多头自注意力机制引入变分自动编码器进行序列推荐,不仅能捕捉用户的不确定性也能捕捉用户序列长期和局部的依赖,提高了推荐性能。多头注意力机制同时能够对用户多个感兴趣的视图对用户偏好进行建模,将其引入编码器和解码器中,捕获用户多个兴趣点,而不是单一兴趣点。其次该模型在原始数据加入一些噪声,用来对模型降噪处理,避免了数据噪声对推荐性能的影响,加强模型的鲁棒性。最后通过在两个不同类型的数据集上进行充分验证,验证该模型的推荐性能优于现有的基线模型。
(2)基于Wasserstein对抗VAE的序列推荐(WAVAE),该算法将变分自动编码器和生成对抗网络结合起来进行序列推荐,通过对抗性训练提高生成样本的质量,减少重建损失,使变分自动编码器重构趋向于真实,提高推荐精度。其次为了避免对抗性网络梯度的消失,使用Wasserstein损失训练来辅助对抗性网络,确保生成器和判别器处于平衡状态,保证模型的能够正常训练。然后为了控制生成的内容,将原始样本与标签连接起来,输入到编码器中,使生成的样本更逼真。最后在三个数据集上对上述提出的模型做了一系列实验和参数分析,通过充分的实验证明该模型在序列推荐的有效性。