Page 255 - 《软件学报》2021年第12期
P. 255
田震 等:深度矩阵分解推荐算法 3919
征进行多层次的抽象,最终帮助模型更好的线性划分不同类型的数据.深度神经网络因为其对更高层次、更抽
象特征的学习能力,使得越来越多的工作开始尝试将矩阵分解与深度神经网络结合进行推荐任务.文献[10]结
合了矩阵分解和深度卷积网络,将通过应用 WMF [11] 得到的潜在因子向量作为训练预测模型的基真值来训练深
度卷积神经网络,从而进行音乐的推荐任务.Zhang 等人利用异构网络嵌入和深度学习嵌入方法,从知识库的结
构知识、文本知识和视觉知识中自动提取语义表示,然后结合协同过滤中的矩阵分解模型来进行推荐 [12] .Wang
等人提出了 CDL 模型 [13] ,通过对内容信息进行深度表示学习和对评分矩阵进行协同过滤,使得模型具有很好的
表达能力.这些方法通过深度神经网络很好地建模用户和物品之间的复杂的非线性高阶交互,赋予了模型学习
用户和物品之间更抽象关系的能力,很好地提升了模型的表达能力,但是对于协同过滤部分仍采用 MF,通过简
单的线性内积结合用户和物品的特征向量,一定程度上限制了模型的推荐性能.
此外,针对以往的 MF 方法大多只采用显式评分进行个性化推荐,忽略了用户和信息项的隐式反馈的重要
性问题,Zhou 等人 [14] 提出了基于深度神经网络的矩阵分解模型 HDMF.同时利用显式评分和隐式反馈作为输
入,并结合深度神经网络获取潜在因子.同时,应用递归神经网络(RNN)将文本数据转换为辅助因子特征,以促进
项目的表达,进一步提升了矩阵分解模型的推荐性能.为了方便、高效地集成各种辅助信息,Yi 等人提出了深度
矩阵分解模型 DMF.基于提出的隐式反馈嵌入(IFE)方法和 one-hot 编码,DMF 能够获取融合多种辅助信息的用
户和物品的向量表示,然后通过多层感知器(MLP)分别对用户和物品向量进行特征转换,最终完成基于矩阵分
解的推荐任务 [15] .为了充分学习用户和物品的特征表示向量,Ma 等人 [16] 提出了偏置深度矩阵分解模型 BDMF,
该模型利用深层神经网络强大的表示学习能力,建模用户和项目的抽象特征表示,同时借鉴 BiasedSVD 将偏差
引入用户和项目的特征表示中,进而将用户和项目从评分矩阵映射到低维空间.尽管以上 3 个模型结合深度神
经网络对矩阵分解算法性能进行了进一步的改善,但是他们的关注重点是利用深度神经网络强大的非线性学
习能力帮助模型去学习用户和物品的抽象特征表示,在建模用户和物品的交互关系时,仍然只考虑了用户和物
品的二阶交互,导致包含更多抽象信息的高阶交互被忽略.所以,本文提出了深度矩阵分解模型,通过在 GMF 之
上添加隐藏层,既能解决矩阵分解简单线性内积对模型的限制问题,又能利用深层神经网络来建模用户和物品
之间的非线性高阶交互.
2 深度矩阵分解模型
2.1 问题定义
基于可读性,我们在表 1 中列出了本文使用的重要数学符号.
Table 1 Symbol definition
表 1 符号定义
符号 描述 符号 描述
U={u 1,u 2,u 3,…,u M} 用户集合 p u 用户 u 潜在特征向量
I={i 1,i 2,i 3,…,i N} 项目集合 q i 物品 i 潜在特征向量
Y M×N 用户-物品评分矩阵 W L− T 1 第 L−1 层隐藏层网络链接权重矩阵
M 用户数目 a L−1 第 L−1 层隐藏层网络激活函数
N 物品数目 b L−1 第 L−1 层隐藏层网偏置向量
P M×K 用户潜在特征矩阵 z L−1 第 L−1 层隐藏层网络输出
Q N×K 物品潜在特征矩阵 ˆ y 用户 u 对物品 i 的预测评分
ui
K 潜在特征维度
基于这些符号,我们对问题进行了形式化定义.
问题定义. 假设有用户集 U={u 1 ,u 2 ,u 3 ,…,u M },项目集 I={i 1 ,i 2 ,i 3 ,…,i N },其中,M 为用户数目,N 为物品数目.
Y M×N 为用户-物品评分矩阵.现给定用户 u∈U、物品 i∈I,其中,用户 u 未与物品 i 产生交互.我们的目标是根据用
户评分矩阵 Y M×N 中用户 u 的历史评分记录,建模用户 u 的偏好,进而预测用户 u 对物品 i 的偏好评分,再根据预
测值对商品排名,最终为用户推荐前 n 个物品.