论文题目:Local Matrix Approximation based on Graph Random Walk
论文作者:Xuejiao Yang and Bang Wang
引言
评分预测一直是推荐系统领域的一个经典问题。对于一个用户物品-评分矩阵,评分预测的目的就是预测矩阵中的空缺值,因此也可以把这种评分预测问题表述为矩阵补全或矩阵近似问题。
矩阵分解技术一直是评分预测问题的一个经典解决方案,它的主要思想是将用户-物品评分矩阵分解成两个低秩矩阵:用户因子矩阵P
和物品因子矩阵Q
的乘积,其中
。通过训练,让P和Q的乘积尽可能还原R中原始的评分,就能达到对空缺项的预测。
下面将对几种经典的SVD算法进行介绍。
1. FunkSVD,它是矩阵分解的初代版本,它构建的优化目标为最小化真实评分与预测评分的误差,通过梯度下降法进行训练。
2. PMF,它从概率的角度对FunkSVD进行了推导。他认为用户因子和物品因子向量符合高斯先验分布,从最大后验概率的视角,推出了和FunkSVD等价的损失函数。
3. BiasSVD,它认为最终的评分不完全来自用户和物品的交互,还受到用户和物品本身特质的影响,因此它将预测评分拆分成以下几个部分的和,再通过梯度下降进行训练。
4. SVD++,它通过用户的隐性反馈对对用户进行建模,从而对用户的因子向量进行补充。
上述方法都曾在推荐系统的历史上留下浓墨重彩的一笔,但是随着推荐系统成为移动互联网应用的标配,其所面临的用户和物品规模都不再是以往可以比拟的。因此整个用户-物品因子矩阵变得非常大而稀疏,经典的矩阵分解面临着很大的挑战。正因如此,许多研究者开始研究如何将对庞大的评分矩阵进行拆分,成为若干个独立的局部矩阵,再用这些经典的矩阵分解方法进行预测。
论文概述
我们的论文提出了一种新颖的局部矩阵构建方法,不需要涉及任何距离计算。论文的基本思想是利用图随机游走实现对大矩阵的拆分。首先我们要将用户-物品评分矩阵转化成一个带权二分图,利用二分图上的随机游走确定锚点。接下来,一种从锚点出发的重启动随机游走算法被用来确定每个用户和物品与锚点的相近关系,从而确定锚点的用户和物品邻域,并构建相应的局部矩阵。最后我们通过平均每个局部矩阵的近似结果,得到全局矩阵的近似。
相关工作
近些年随着持续增长的用户和物品,用户-物品评分矩阵变得非常庞大和稀疏,因此许多研究开始关注于如何将大的评分矩阵拆解成若干个局部矩阵进行模型构建。这些研究主要可以分为两类:
(1)分割成彼此分离的子矩阵,例如ACCAMS[1]通过加性联合聚类算法对大矩阵进行分割,通过一种迭代拟合残差的方法缩小每次近似误差。
(2)分割成彼此重叠的子矩阵,例如[2]提出的DFC算法,通过随机行列选择构建局部矩阵,在局部矩阵中进行建模;