SamWalker: Social Recommendation with Informative Sampling Strategy

Authors: Jiawei Chen, Can Wang, Sheng Zhou, Qihao Shi, Yan Feng, Chun Chen

WWW'19 浙江大学


0. 总结

这篇文章提出了一个利用社交网络信息的推荐模型SamWalker。SamWalker可以建模用户和物品之间的曝光概率,并提出用社交网络随机游走进行负采样的方式来替代曝光概率的计算,降低模型计算复杂度。此外,模型还可以利用等效的卷积神经网络来优化社交连接强度。在三个数据集上,SamWalker都取得了超过所有baseline的性能,并结合Ablation study等实验证明了模型的性能。

1. 研究目标

利用社交信息建模曝光概率,提高推荐准确率和模型稳定性。

2. 问题背景

在隐式反馈数据中,一个用户没有与一个物品发生交互,可能是因为用户对物品没有兴趣,也可能是因为用户没有看到这个物品。因此,将所有未观测到的交互都作为负样本进行采样,会损害推荐系统的性能,这也被称为推荐系统中的exposure bias。现有的方法通过对未观测数据进行降权来缓解exposure bias,但这些方法存在两个问题:(1)权重通常是人工赋予的,缺乏灵活性和准确性。(2)数据中包含的信息很少,难以准确预测曝光概率。

3. 方法

为了解决上述问题,本文提出了SamWalker,利用社交信息来推断曝光概率,并指导采样过程。

用户会从朋友/关注的人那里获得有关物品的信息(例如朋友之间的推荐),因此,用户的社交信息会影响物品对用户的曝光概率。一个物品在用户的社交网络中越流行,用户看到这个物品的概率就越高。

由于社交网络很复杂,基于社交网络计算所有user-item对的曝光概率复杂度很高。本文采用在社交网络上随机游走的方式指导负采样。

3.1 问题定义

假设我们有用户集U,包含n个用户;物品集I,包含m个物品;隐式反馈交互记录X,矩阵维度为\(n*m\),其中每个元素\(x_{ij}\)表示用户i与物品j是否发生了交互(1或0);社交信息矩阵T,矩阵维度为\(n*n\),其中每行元素\(\tau_i\)表示用户i的社交链接,\(\tau_{ij}\)表示用户i与用户j是否有社交联系。

3.2 EXMF分析

EXMF是2016年提出的建模曝光概率的推荐模型,具体请参考博文【论文笔记】Modeling User Exposure in Recommendation

(3.3变分分析这部分我还没看明白,等后面懂了再来写详细过程orz)

EXMF的缺点

  • EXMF建模曝光概率的参数过多(m*n),工业场景下不可实现;且大部分曝光概率都很小,对模型优化贡献很小。
  • EXMF认为曝光概率与用户的特征无关,但实际上用户的社交网络对曝光概率也有着极大的影响。

3.3 SamWalker 概述

为了降低参数量,使用一个传播模型来建模社交信息对曝光概率的影响,从第t步到第t+1步的曝光概率传播方式如下:

\[\begin{align}
\gamma_{i j}^{(t+1)}=(1-c) x_{i j}+\sum_{k \in \mathcal{T}_{i}} c \varphi_{i k} \gamma_{k j}^{(t)}
\end{align}
\]

其中i表示用户i,j表示物品j,\(\gamma_{i j}^{(t+1)}\)表示第t+1步的曝光概率,\(x_{ij}\)表示训练集的标签(0或1,表示是否交互),\(\varphi_{i k}\)表示用户i和用户k之间的连接强度,满足\(\sum_{k\in\tau_i}\varphi_{ik} = 1\),c是调节社交信息权重的参数。

总的来说,曝光概率收敛公式为:

\[\begin{align}
Y=g_{\varphi}(X, T) \equiv \lim _{t \rightarrow \infty} Y^{(t)}=(I-c \Phi)^{-1}(1-c) X
\end{align}
\]

\(Y^{(t)}_{ij}\) = \(\gamma_{i j}^{(t)}\),是第t步的曝光概率矩阵;\(\phi_{ij} = \varphi_{ij}\),是社交连接强度矩阵 。

3.4 基于随机游走的个性化负采样方法

作者证明了当采样概率\(p_{ij}\)正比于曝光概率\(\gamma_{i j}^{(t)}\)时,采样方差更小,且梯度估计更快(就是用负采样阶段的设计来替代loss函数中的曝光概率计算)。

那怎样能够做到正比于曝光概率\(\gamma_{i j}^{(t)}\)的负采样呢?

一个直观的想法就是计算出所有的曝光概率,再进行负采样,但这样计算复杂度太高。

曝光概率的计算迭代公式可以展开为:

\[\begin{aligned}
Y &=(I-c \Phi)^{-1}(1-c) X \\
&=\left(1+c \Phi+(c \Phi)^{2}+(c \Phi)^{3} \ldots\right)(1-c) X
\end{aligned}
\]

基于上式,对于user i,我们给出如下随机游走规则进行负采样,使得负采样概率正比于推导出的曝光概率:

  • 在第t步随机游走时,假设我们游走到了user u。

  • 我们有两种选择:

    • (1)这一步不进行游走,随机选择u的一定比例(\(\beta\))的邻居物品i作为负样本。概率为c。
    • (2)根据社交连接强度\(\varphi_{uv}\)进行随机游走,游走至用户节点v,并随机选择v的一定比例(\(\beta\))的邻居物品i作为负样本。概率为(1-c)。
  • 直至游走\(\alpha\)步,随机游走结束,负采样结束。

  • 在每次随机游走过程中,如果游走到距离很远的user,社交信息就变得很少了。具体来说,如果当前节点与初始节点i的距离\(t>t_m\),则直接在所有user中随机选择,进行游走。

3.5 社交连接强度\(\varphi\)的优化

由于不同的社交连接对用户的影响是不同的,例如由于朋友之间联系的密切程度不同,朋友之间的推荐频率和推荐强度也不同。而曝光概率\(\gamma_{i j}^{(t)}\)的推导是基于社交连接强度矩阵的,而这个矩阵需要我们进行优化。

为了优化连接强度,设计一个卷积神经网络来计算曝光概率,网络中的权重就是user之间的连接强度。这样可以在优化推荐loss的时候回传梯度,达到优化连接强度的目的。

3.6 方法讨论

由于用户不仅会受到直接好友的影响,还会受到大众舆论的影响。因此,可以在模型中加入一个节点,代表所有用户对一个用户行为的影响。随机游走的设计也需要做出响应改变,即增加一个直接在所有用户中随机选择节点的概率。

4. 实验

4.1 数据集

实验采用了EpinionsCiaoLastFM三个数据集。其中Epinions和Ciao是从产品评论网站抓取的信息,含有用户之间的“信任”信息;LastFM是从音乐网站爬取的,含有用户之间的好友数据。

4.2 推荐性能

实验结果表明,在三个数据集上,SamWalker都优于所有baseline。

4.3 采样器性能

实验结果表明,SamWalker设计的社交网络随机游走采样器可以降低梯度的方差,获得更稳定的模型。

4.4 Ablation study

实验表明,学习个性化的连接强度、引入社交信息和全局社交信息都有助于提升模型性能。图中SamWalker-ho表示所有社交连接强度都是一样的;SamWalker-l表示只考虑社交信息,不考虑全局user;SamWalker-g表示只考虑全局user,不考虑社交信息。

4.5 \(t_m\)对模型性能的影响

\(t_m\)表示随机游走的最大长度,当随机游走超过此长度时,会在所有用户中随机选择节点进行游走。

随着\(t_m\)的增加,性能呈现先上升后下降的特点。在\(t_m\)比较小的时候,增加\(t_m\)可以提供更广的社交信息。但随着\(t_m\)的进一步增大,带来的有用社交信息开始减少,噪声开始增多,模型性能会开始出现下降。实际上,在社交网络中,从一个节点出发,6跳就可以基本覆盖所有人,因此过长的随机游走效果不好。

![image-20211217170751341](1211-Samwalker Social Recommendation with Informative Sampling Strategy.assets/image-20211217170751341.png)

5. 不懂的问题

变分法

6. 进一步阅读

[5] Rocío Cañamares and Pablo Castells. 2018. Should i follow the crowd?: A probabilistic analysis of the effectiveness of popularity in recommender systems. In The 41st International ACM SIGIR Conference on Research & Development in Information Retrieval. ACM, 415–424

[6]Pablo Castells, Neil J Hurley, and Saul Vargas. 2015. Novelty and diversity in recommender systems. In Recommender Systems Handbook. Springer, 881–918.

[12]Jingtao Ding, Fuli Feng, Xiangnan He, Guanghui Yu, Yong Li, and Depeng Jin. 2018. An improved sampler for bayesian personalized ranking by leveraging view data. In Companion of the The Web Conference 2018 on The Web Conference 2018. International World Wide Web Conferences Steering Committee, 13–14.

[17]Xiangnan He, Lizi Liao, Hanwang Zhang, Liqiang Nie, Xia Hu, and Tat-Seng Chua. 2017. Neural collaborative filtering. In Proceedings of the 26th International Conference on World Wide Web. International World Wide Web Conferences Steering Committee, 173–182.

[18]Xiangnan He, Hanwang Zhang, Min-Yen Kan, and Tat-Seng Chua. 2016. Fast matrix factorization for online recommendation with implicit feedback. In Proceedings of the 39th International ACM SIGIR conference on Research and Development in Information Retrieval. ACM, 549–558.

[26]Chen Jiawei, Feng Yan, Ester Martin, Zhou Sheng, Chen Chun, and Can Wang. 2018. Modeling Users’ Exposure with Social Knowledge Influence and Consumption Influence for Recommendation. In Proceedings of the 27th ACM International on Conference on Information and Knowledge Management. ACM, 953–962

【论文笔记】SamWalker: Social Recommendation with Informative Sampling Strategy的更多相关文章

  1. 【论文笔记】Social Role-Aware Emotion Contagion in Image Social Networks

    Social Role-Aware Emotion Contagion in Image Social Networks 社会角色意识情绪在形象社交网络中的传染 1.摘要: 心理学理论认为,情绪代表了 ...

  2. 【论文笔记】用反事实推断方法缓解标题党内容对推荐系统的影响 Click can be Cheating: Counterfactual Recommendation for Mitigating Clickbait Issue

    Click can be Cheating: Counterfactual Recommendation for Mitigating Clickbait Issue Authors: 王文杰,冯福利 ...

  3. A Neural Influence Diffusion Model for Social Recommendation 笔记

    目录 一.摘言 二.杂记 三.问题定义和一些准备工作 四.模型真思想 五.实验部分 六.参考文献 一.摘言 之前协同过滤利用user-item交互历史很好的表示了user和item.但是由于用户行为的 ...

  4. Multimodal —— 看图说话(Image Caption)任务的论文笔记(一)评价指标和NIC模型

    看图说话(Image Caption)任务是结合CV和NLP两个领域的一种比较综合的任务,Image Caption模型的输入是一幅图像,输出是对该幅图像进行描述的一段文字.这项任务要求模型可以识别图 ...

  5. Video Frame Synthesis using Deep Voxel Flow 论文笔记

    Video Frame Synthesis using Deep Voxel Flow 论文笔记 arXiv 摘要:本文解决了模拟新的视频帧的问题,要么是现有视频帧之间的插值,要么是紧跟着他们的探索. ...

  6. 论文笔记:Mastering the game of Go with deep neural networks and tree search

    Mastering the game of Go with deep neural networks and tree search Nature 2015  这是本人论文笔记系列第二篇 Nature ...

  7. Self-paced Clustering Ensemble自步聚类集成论文笔记

    Self-paced Clustering Ensemble自步聚类集成论文笔记 2019-06-23 22:20:40 zpainter 阅读数 174  收藏 更多 分类专栏: 论文   版权声明 ...

  8. 深度学习论文笔记:Fast R-CNN

    知识点 mAP:detection quality. Abstract 本文提出一种基于快速区域的卷积网络方法(快速R-CNN)用于对象检测. 快速R-CNN采用多项创新技术来提高训练和测试速度,同时 ...

  9. Deep Learning论文笔记之(四)CNN卷积神经网络推导和实现(转)

    Deep Learning论文笔记之(四)CNN卷积神经网络推导和实现 zouxy09@qq.com http://blog.csdn.net/zouxy09          自己平时看了一些论文, ...

随机推荐

  1. JDBC数据库的使用操作总结

    JDBC是一组能够执行SQL语句的API 由于传统的数据库操作方式需要程序员掌握各个不同的数据库的API,极其不便 因此java定义了JDBC这一标准的接口和类,为程序员操作数据库提供了统一的方式 J ...

  2. html+css第八篇滑动门和可爱的css精灵

    滑动门: 滑动门并不是一项全新的技术,它是利用背景图像的可层叠性,并允许他们在彼此之上进行滑动,以创造一些特殊的效果. CSS精灵 CSS Sprites在国内很多人叫CSS精灵,是一种网页图片应用处 ...

  3. 洛谷 P6772 - [NOI2020]美食家(广义矩阵快速幂)

    题面传送门 题意: 有一张 \(n\) 个点 \(m\) 条边的有向图,第 \(0\) 天的时候你在 \(1\) 号城市,第 \(T\) 天的时候你要回到 \(1\) 号城市. 每条边上的边权表示从城 ...

  4. 有关[Http持久连接]的一切,撕碎给你看

    上文中我的结论是: HTTP Keep-Alive 是在应用层对TCP连接进行滑动续约复用, 如果客户端/服务器稳定续约,就成了名副其实的长连接. 目前所有的Http网络库都默认开启了HTTP Kee ...

  5. 【R】调整ggplot图例大小

    图例太多时,会挤压正图,显得正图展示区域很小,这时有必要缩小图例. ################# # 减小ggplot图例 ################# library(ggplot2) ...

  6. Linux—Linux系统目录结构

    登录系统后,在当前命令窗口下输入命令:  ls /  你会看到如下图所示: 树状目录结构: 以下是对这些目录的解释: /bin:bin是Binary的缩写, 这个目录存放着最经常使用的命令. /boo ...

  7. nrf51822 RAM不足分析

    之前了解过STM32 的内存分配问题,对于蓝牙芯片51822的内存分配问题把项目中,遇到了.bss和.data部分超了的问题,这其实就是声明的变量和stask 及 heap的大小总和超出了单片机的RA ...

  8. Mssql主备见证的弊端及主备模式主down掉怎么恢复

    mssql主备见证有个没有解决的问题,mssql的主备是针对单个库的,有时候单个或多个库主备切换了,但是整个主数据库并没有挂掉,并且还运行着其他的库,程序检测到的数据库连接是正常的,只是部分库连接不了 ...

  9. 大数据学习day31------spark11-------1. Redis的安装和启动,2 redis客户端 3.Redis的数据类型 4. kafka(安装和常用命令)5.kafka java客户端

    1. Redis Redis是目前一个非常优秀的key-value存储系统(内存的NoSQL数据库).和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list ...

  10. tomcat在eclipse上发布,Perference下的server找不到解决办法

    help--->Install New software得到如下所示 下面work with选项的内容与你的eclipse版本有关 我的eclipse版本为eclipse-java-2019-0 ...