推荐系统论文 ATBRG SIGIR2020
简介
从题目上看,自适应目标行为关系图神经网络来提高推荐系统的表现。
- 自适应:
区别于在整个KG上进行random sampling或者盲目使用neighbors,需要自适应地针对用户行为与目标item在KG上保存有效信息 - 目标行为关系图:
一针对每一个user-item的子图,捕捉它们的相互作用
Current Method
这里说的是KG和Recommender结合的现有方法主要是两种:
- 探索U和I的独立子路径
缺点是:很难全面的捕捉信息 - 使用GNN来产生U和I的表示
缺点是:但用邻居节点来丰富emb表示的时候就忽略了用户商品之间的相互影响。
换句话说就是不同的用户对于邻居节点的专注其实是不同的。
此时如何选取目标U和I在KG上的结构关系就变得非常重要。
第一种很明显就是有很多信息都被遗漏了。
对于GNN来说,由于没有考虑用户的兴趣,所以在选择邻域的时候就会引入很多的无效信息。
Main Work
-
提出ATBRG
通过KG捕捉更多的结构信息
将目标商品和用户历史行为更具KG相结合 -
图连接和图剪枝算法
用来构建自适应目标行为关系图 -
线上提升CTR 5%
ATBRG
两个部分组成
- Graph construction part
- Model Part
Graph construction part
给定U和I
- 用户行为B_ui和目标item i在KG上穷举搜索多层实体邻居
- 连接实体和item的路径恢复成图G_ui,这样便通过多个重合的实体将用户行为和目标item连接起来了
- 如果G中的实体,如果没有连接不同的item就剪枝
- 然后得到了U和I的关系图
Model Part
- Embedding
将entity转为Emb向量
- Relation-aware Extractor layer
分别将target i和用户行为点击的ib作为根节点,然后自底向上的进行emb的传播,每一次都需要使用relation-aware attention。
这里就是参考transformer encoder的结构,但是这里并不是self-attention,首先xh cat xt 就相当于encoder的输入,然后通过f进行线性变换得到一个Key,然后xr经过一个W就是Query,然后就很好理解了,softmax是因为需要输出概率。
- Representation Activation layer
蓝色表示target i,黄色是behavior i,然后进行上述操作
可以理解为利用一个attention来找到用户行为中影响力比较高的部分,然后利用这些部分得到user emb。
- Feature Interaction layer
这里就是将用户和item的其他特征进行concat然后输入到predictor,得到的就是点击的概率。
Experiments
实验的部分这里不在多介绍,我觉得干货还是在模型的部分。