从矩阵分解到GNN:社会化推荐的演化

2020-04-15 15:24:33 浏览数 (1)

写在前面:社会化推荐(social recommendation)的简介和几篇相关论文,包含经典模型SoRec(CIKM, 2008),SocialMF(SocialMF, 2010)和TrustSVD(AAAI, 2015)的简述,及使用图神经网络解决社会化推荐问题的GraphRec(WWW,2019)和DiffNet(SIGIR,2019)。

一、问题简述

百科定义:社会化推荐通过社交网络、社交搜索、社交媒体、社会书签、社会新闻、社会知识共享、社交游戏、博客、维基、推荐系统、问答社区、查询日志、标签等获取社交行为数据,利用计算机技术,例如机器学习、数据挖掘、自然语言处理等进行研究,挖掘出集体智慧。这种服务方式不同于传统的信息推荐服务,它将社会网络、社交媒体视为信息推荐的主要平台,使用户的隐性知识在社会化推荐过程中与其他用户进行交互,形成交流。

与传统协同过滤推荐比较:传统协同过滤利用user-item交互历史表示user和item,由于用户行为的稀疏性,限制了模型的效果。社会化推荐利用user的周围邻居的偏好减轻用户稀疏性,从而得到更好嵌入表示模型。

解释性:一个人的偏好总是与和他存在社会关系的人相似或者受到后者的影响,因此在推荐系统中引入社会关系对提高推荐准确率有重要意义

模型基本形式:社会化推荐问题的最终目标同协同过滤一样,也是对用户—物品矩阵R中的缺失项进行预测,可利用的信息包括两类:

1、用户历史评分信息

2、用户的社交关系信息

常用数据集:

  • Epinions:规模较大,包含用户对电影的评分信息,同时包含用户间的信任社交信息,值得注意的是,该数据集同时还包括不信任关系信息。
  • Yelp:规模大,需要手动提取自己需要的信息,包含评价评分信息,用户信息,商品信息,建议信息等。
  • Filmtrust:规模较小,包含用户对电影的评分信息,同时包含用户间的信任社交信息。
  • Ciao
  • Flickr

二、矩阵分解时代的社会化推荐

1.SoRec(CIKM, 2008)

一句话概括:同时分解评分矩阵和用户社交矩阵

2.SocialMF(SocialMF, 2010)

一句话概括:在矩阵分解中引入信任传播,用户表示接近其信任的用户

3.TrustSVD(AAAI, 2015)

一句话概括:在SVD 中引入信任关系,SVD 结合SoRec

三、图神经网络时代的社会化推荐

1.GraphRec(WWW,2019)

  • 图神经网络 注意力机制 捕获user-user 和user-item之间信息
  • 评分等级Embedding

这篇论文在之前有过详细笔记:zhuanlan.zhihu.com/p/99

2.DiffNet(SIGIR,2019)

一句话总结:用图神经网络模型模拟社交影响力传播过程,从而能更好的表示user和item

模型总体框架:

模型框架

嵌入层与融合层

传播层

预测层

损失函数:基于pair-wise ranking 的损失函数

实验数据集:

与其他模型对比结果:

模型参数分析:(传播层数K,是否使用辅助特征(X、Y),是否使用one-hot向量(P、Q))

写在后面:社会化推荐与图神经网络结合的方法值得进一步思考,如何充分利用社交网络信息为推荐更好的服务。

最后附上本文提到的所有论文原文:

wolfkin-hth/Recommender-systems-papergithub.com

学习路漫漫,狼崽在路上~

0 人点赞