前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CIKM'21「快手」视频推荐 | 概念感知的去噪图神经网络

CIKM'21「快手」视频推荐 | 概念感知的去噪图神经网络

作者头像
秋枫学习笔记
发布2022-09-19 11:30:18
8950
发布2022-09-19 11:30:18
举报
文章被收录于专栏:秋枫学习笔记

公式太长可以左右滑动哦

Concept-Aware Denoising Graph Neural Networkfor Micro-Video Recommendation https://dl.acm.org/doi/pdf/10.1145/3459637.3482417

1. 背景

本文提出的概念感知的去噪图神经网络CONDE进行短视频推荐。主要包含三个步骤:warm-up propagation, graph denoising and preference refinement。构建三方异构图:用户-视频,视频-概念

概念(concept):笔者进行了直译,具体含义无需纠结,这个所谓的概念就是从视频标题和评论中提取出来的内容,包括命名实体和语义关键短语。这部分应该可以由预训练好的nlp相关模型进行提取。示例如下:

2. 方法

image.png

2.1 Warm-up Propagation

图定义为,V和E分别表示节点和边。节点包含用户,视频和概念;边包含两类:user-item,item-concept如上图所示。通过图卷积的相关操作将concept的相关信息注入到用户和视频表征当中。对于视频和与其相关的邻居concept节点,采用GAT进行信息聚合,公式如下,其中h表示视频m在聚合后得到的特征向量,c表示视频m周围的邻居concept节点,分别表示视频和concept的embedding,表示leakyrelu激活函数,||表示拼接。采用同样的方式可以在用户-视频的子图中将信息传播给用户表征因此这部分先进行视频-concept子图,将concept的信息传播给视频;然后进行用户-视频的子图,将concept和视频的信息传播给用户表征,,M表示用户u相邻的视频节点。

\begin{aligned} \mathbf{h}_{m} &=\sigma\left(\sum_{c \in C_{m}} \alpha_{c} \mathbf{W e}_{c}\right) \\ \alpha_{c} &=\frac{\exp \left(\sigma\left(\mathbf{a}^{\top}\left[\mathbf{e}_{m} \| \mathbf{e}_{c}\right]\right)\right)}{\sum_{i \in C_{m}} \exp \left(\sigma\left(\mathbf{a}^{\top}\left[\mathbf{e}_{m} \| \mathbf{e}_{i}\right]\right)\right)} \end{aligned}

作者认为视频表征不能单纯只是注入concept,因为有些concept并不能很好地体现视频内容,因此,作者在此利用上式向视频表征中注入其周围邻居的用户信息,U表示视频节点m周围的邻居用户集合。

\mathbf{h}_{m}=A G G\left(\mathbf{h}_{m},\left\{\mathbf{h}_{u}, \forall u \in \mathcal{U}_{m}\right\}\right)

2.2 Graph Denoising

不同的用户会有不同的兴趣,在点击和concept中可能存在噪声,即用户可能存在误点,取标题和评论相关内容也不一定是完全符合的。本节采用广度优先搜索进行去噪,这里其实就是以用户节点为基点,对其周围的相邻节点进行聚合和去噪。作者利用GRU识别用户u和他的邻居视频节点之间的相关性,公式如下:

f_{u,m}=GRU(h_u,h_m), \forall m \in \mathcal{M}_{u}

在计算相关性之后,利用无替换采样进行去噪,仅保留 n 个微视频邻居:

\mathcal{M}_{u}^{\star}=\operatorname{Den}\left(\left\{\mathbf{f}_{u, m}, \forall m \in \mathcal{M}_{u}\right\}\right) \text { and }\left|\mathcal{M}_{u}^{\star}\right|=n

上述方法得到的n个视频,这 n 个微视频有望更准确地传达用户的偏好。详细地说,我们可以利用具有 softmax 函数的全连接层来推导保留每个微视频邻居 m 的可能性,如下所示:

s_{u, m}=\frac{\exp \left(\mathbf{w}^{\top} \mathbf{f}_{u, m}\right)}{\sum_{i \in \mathbf{M}_{u}} \exp \left(\mathbf{w}^{\top} \mathbf{f}_{u, i}\right)}

然后利用 Gumbel-Softmax 实例化Den()函数

\pi_{u, m}=\frac{\exp \left(\left(\log \left(s_{u, m}\right)+\epsilon_{m}\right) / \tau\right)}{\sum_{i \in \mathbf{M}_{u}} \exp \left(\left(\log \left(s_{u, m}\right)+\epsilon_{m}\right) / \tau\right)}

\epsilon_*=-log(-log(x))

,x从(0,1)的均匀分布中采样得到,τ为温度系数,τ比较小时,整体偏向于多模态分布;反之,偏向于均匀分布。在上述经过用户一阶邻居的计算之后,接下来计算用户基于视频

\mathcal{M}_{u}^{\star}

的二阶邻居,用户u的二阶邻居

\mathcal{N}_{u,m}

可以是用户也可以是concept,本文只考虑concept,混合两者一起使用效果不好。计算新的相关系数公式如下,其中

h_v=e_c

,然后采用与上述相同的方式进行去噪:

\mathcal{N}_{u, m}^{\star}=\operatorname{Den}\left(\left\{\mathbf{f}_{u, m, i}, \forall i \in \mathcal{N}_{u, m}\right\}\right)

|\mathcal{N}_{u, m}^{\star}|=n
\mathbf{f}_{u, m, v}=G R U\left(\mathbf{f}_{u, m}, \mathbf{h}_{v}\right), \forall v \in \mathcal{N}_{u, m}

经过上述去噪,可以从原始图

\mathcal{G}

中得到新的子图

\mathcal{G}^{\star}_u

,节点为

\{u,\mathcal{M}_u^{\star},\mathcal{N}_{u,m}^{\star}, \forall m \in \mathcal{M}_u^{\star}\}

2.3 Preference Refinement

从上述得到的新的子图中可以得到用户更加细化的偏好,首先细化视频表征

\mathbf{h}_{m}^{\star}=A G G\left(\mathbf{e}_{m},\left\{\mathbf{h}_{v}, \forall v \in \mathcal{N}_{u, m}^{\star}\right\}\right)

,然后细化用户表征

\mathbf{h}_{u}^{\star}=A G G\left(\mathbf{e}_{u},\left\{\mathbf{h}_{m}^{\star}, \forall m \in \mathcal{M}_{u}^{\star}\right\}\right)

,此处的AGG等计算方式与warmup propagation处一致,计算匹配分数:

\hat{y}_{u,m}=sigmoid(h_u^{\star T}h_m)

2.4 模型优化

对于每一个用户u,我们都可以通过执行k次去噪,得到k个他的子图(有种多头注意力的感觉),然后对于每一个子图计算交叉熵损失函数为下式,

\mathcal{L}_{u, m, i}=y_{u, m} \log \left(\hat{y}_{u, m}\right)+\left(1-y_{u, m}\right) \log \left(1-\hat{y}_{u, m}\right)

总损失函数如下:

\mathcal{L}=\sum_{u} \sum_{m} \sum_{i} \mathcal{L}_{u, m, i}+\lambda\|\Theta\|^{2}

3. 结果

作者在视频推荐和非视频推荐上进行了实验,结果如下。

4. 总结

本文针对视频推荐领域提出的图神经网络推荐算法,主要是通过在图神经网络中对原始数据进行去噪,从而提升模型性能。该方法主要包含三个步骤:warm-up propagation,graph denoising, preference refinement。warm-up阶段主要是在原始构造的图上进行信息传播,得到注入了concept的用户和视频表征;然后在graph denosing阶段对用户交互过程中存在的噪声进行去噪处理,主要依靠计算分数和采样的方式;最后refinement阶段可以理解为再次进行类似warm-up阶段的信息传播,得到更细化的用户和视频表征,然后计算两者分数。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-12-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 秋枫学习笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 2.1 Warm-up Propagation
  • 2.2 Graph Denoising
  • 2.3 Preference Refinement
  • 2.4 模型优化
相关产品与服务
灰盒安全测试
腾讯知识图谱(Tencent Knowledge Graph,TKG)是一个集成图数据库、图计算引擎和图可视化分析的一站式平台。支持抽取和融合异构数据,支持千亿级节点关系的存储和计算,支持规则匹配、机器学习、图嵌入等图数据挖掘算法,拥有丰富的图数据渲染和展现的可视化方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档