[paper阅读] 度量分解: 矩阵分解之下的推荐(三)

实验

由于评分预测和物品排序一般都是使用不同的评估标准分别研究的, 因此, 作者分别在这两个任务上进行了探究. 设计本实验来验证提出方法主要是为了回答以下三个研究问题:

  • 在物品排序中, FML是否优于神经网络和度量学习?
    -相较于基于MF以及基于神经网络的模型, FML能否实现更精确的评分预测?
    超参如何影响模型的性能?

物品排序的评估

数据集描述 . 为了评估FML在隐式反馈中的排序性能, 作者们在下面四个真实的数据集上组织了实验, 具体的隐式反馈处理方式可以参考资料3中的方法:
Yahoo研究数据集: 由两个数据集组成- 雅虎电影和雅虎音乐. 两个数据集均由Yahoo Research Alliance Webscope program提供. 音乐偏好数据集从雅虎音乐服务中收集.
FilmTrust: FilmTrustGuo等人从一个电影分享和评分网站上爬取的数据. 本文中没有使用到可信度信息.
EachMovie: EachMovie 是推荐评估中广泛使用到的标准电影数据集.

度量指标. 为了评估排序的精准性和质量, 本文采用了五种广泛使用的指标:
Recall@n: top-n中出现的用户喜欢的物品占用户喜欢物品的百分比:
– $\text{Recall}@n=\frac{tp}{tp + fn}$
Precision@n: top-n中召回的物品占用户喜欢的物品的比例:
– $\text{Precision}@n = \frac{tp}{tp + fp}$
MAP(Mean Average Precision, 平均精度均值): 一种比较受欢迎的度量方式, 计算方式如下:
$\text{MAE}=\frac{1}{|\mathcal{T}|}\sum_{(u,i)\in \mathcal{T}}|\hat{r}{ui}-r{ui}|$
MRR( Mean Reciprocal Rank): 第一个匹配的结果得分为1, 第二个为1/2, 以此类推, 第n个为1/n; 最终的分数为所有得分之和,
NDCG(Normalized Discounted Cumulative Gain): 信息检索领域的度量方式, 其中位置通过对数进行计算. 假设每个用户u从被通缉件的物品i中有一个”增加”: $g_{ui}$, 那么对于列表J物品的平均DCG(Discounted Cumulative Gain )定义如下:

$\text{DCG}=\frac{1}{N} \sum_{u=1}^{N}{\sum_{j=1}^J{\frac{g_{ui_j}}{\max (1, \log_b j)}}}$

其中, 对数基数是一个游离的参数, 一般在210之间. 一般使用一个2为底的对数来保证所有位置都有降权. NDCGDCG归一化后的值:

$\text{NDCG}=\frac{\text{DCG}}{\text{DCG}^*}$

其中, $\text{DCG}^*$是理想的DCG.

更多详细的指标可以参考资料16.

基线方法: 在本文中. 作者将FML和下面经典/先进的基线方法进行了比较:

  • BPR: 这是一个通用的成对优化原则, 非常适用于MF. BPR优化准则目标在于最大化负样本和正样本之间的区别(具体细节参考资料7)
  • WRMF: 一个用于隐式反馈非常高效的排序模型. 使用点积来对用户/物品交互模式进行建模(具体细节参考资料8)
  • NeuMF: NeuMF将多层感知机与泛化的矩阵分解结合在一起, 然后使用一个神经层而不是点积来计算排序分数. 它将排序问题当做一个分类任务, 然后通过最小化交叉熵损失优化模型(具体细节参考资料9)
  • CDAE: CDAE 从交互矩阵和自动编码机中学习用户和物品的分布表示. 利用降噪技术来提高泛化能力以避免过拟合. 在这里, 作者们使用了逻辑回归来优化网络, 因为在原始论文中, 该方法实现了最佳性能(具体细节参考资料10)
  • CML: CML是一个有竞争力的基线. 在这里, 作者们使用了两种类型的损失: 成对的hinge loss以及WAPR(weighted approximate-rank pairwise loss, 加权近似排序成对损失)来训练模型. 注意: 由于对负样本的预计算, WAPR损失非常占用计算资源(具体细节参考资料12)

总的说来, BPRWRMF都是基于矩阵分解的模型; NeuMFCDAE都是基于神经网络的模型; CML-PAIRCML-WAPR则是基于度量学习的模型.

实现细节: 对于BPRWRMF, 作者们采用了Mymedialite的实现, 以及NeuMF作者提供的源码. 作者们使用tensorflow实现了其它所有的模型. 数据方面, 将数据集随机分成五份, 使用80%的交互数据作为训练集, 而将余下的20%当作测试集, 然后比较平均结果. 使用点格检索方法来确定超参, 以保证所有的基线方法都实现了它们最佳的性能. FMLCML中用户/物品向量的维度在{80, 100, 120, 150, 200}之间调整. FML的学习率设置为0.05. CML-PAIRCML-WARP的边缘设置在{0.5, 1.0, 1.5, 2.0}之中. 距离扩展因素aFilmTrust中设置为2.25, YahooMovieEachMovie中设置为2.0, 而YahooMusic中设施为0.5. 所有数据集的$w_{ui}$均设置为$R_ui$. FilmTrust中的置信级别$\alpha$设置为4, 而其它数据集则设置为2. dropout对排序效果的影响不是很大, 因此在物品排序任务中没有使用.

性能比较: 多个标准排序度量的排序性能展示在表1中. 观察可以获得以下几个发现:
– 首先, 提出的方法在所有数据集中均能实现最佳的性能. 验证了FML在物品排序上的高效性, 整体的性能与WRMF模型相比整整提高了20.8%
– 尽管FMLCML都是基于度量学习的方法, FML仍然优于CML高达8.7%, 这就意味着: FML可以更精确地反映出用户和物品之间的距离关系
– 基于欧式距离的模型(FMLCML)效果优于基于点乘的推荐系统和神经网络模型, 与之前论文中的结果一致, 这也验证了使用欧式距离来获取交互模式的优越性
– 基于神经网络的模型CDAE是一个非常优秀的基线. 一般会由于BPRWRMF, 而NeuMF的效果看起来不如CDAE. 但是, 在与FML之间仍然有一个巨大的性能差异, 这也意味着: 增加非线性还是不够的.

1 不同方法在四个数据集中物品排序任务的MAP, MRR, NDCG, Precision以及Recall的性能比较. 最佳的性能为加粗的数据, 而次优的性能下面有下划线

总的说来, 这些观察体现了从度量向量空间分解角度来考虑推荐问题的优势. 足以回答前面提出的第一个问题: 就物品排序而言, FML由于神经网络的方法和度量学习的方法.

参考资料

  1. 机器学习中的数学基础:向量篇
  2. Hulu机器学习问题与解答系列 | 第五弹:余弦距离
  3. Neural Collaborative Filtering
  4. Matrix Factorization Techniques for Recommender Systems
  5. Probabilistic Matrix Factorization
  6. Bayesian probabilistic matrix factorization using Markov chain Monte Carlo
  7. Bayesian Personalized Ranking from Implicit Feedback
  8. Collaborative Filtering for Implicit Feedback Datasets
  9. Neural Network Matrix Factorization
  10. Collaborative Denoising Auto-Encoders for Top-N Recommender Systems
  11. Deep Learning based Recommender System: A Survey and New Perspectives
  12. Collaborative Metric Learning
  13. Distance Metric Learning for Large Margin Nearest Neighbor Classification
  14. 机器学习中正则化项L1和L2的直观理解
  15. Comparisons Instead of Ratings: Towards More Stable Preferences
  16. Evaluating Recommendation Systems
打赏

mickey

记录生活,写给几十年后的自己。

发表评论

电子邮件地址不会被公开。 必填项已用*标注