作者 | 对白
出品 | 对白的算法屋
编者寄语:
本文看完,相信你也能熟练掌握这些基于GNN的推荐模型。
大家好,我是对白。
图神经网络(GNN)相信大家也不陌生了,在还没有Graph Embedding之前,节点的属性信息可以通过Item2vec这种序列化Embedding的方式去学习,效果虽然不错,但它忽略了节点的结构信息。而GNN能够自然地整合节点属性信息和拓扑结构信息,因此在许多领域广泛应用。
在推荐系统中,目前的主要挑战是从用户-物品交互以及辅助信息中学习有效的User-Item Embedding。由于大部分的信息本质上都是图结构,并且GNN在表示学习方面具有先天优势,因此在推荐系统中蓬勃发展。
本文对基于GNN的推荐算法进行了总结,汇总了从2018至2020年期间工业界和学术界比较有代表性的29个基于的GNN推荐模型****。此外,我从近三年KDD的论文中挑选了六篇值得一读的GNN推荐模型为大家解读,分别是4篇阿里的论文,1篇滴滴的论文和1篇亚马逊的论文,话不多说,让我们一起欣赏一下GNN在推荐系统中的花式玩法吧~
Neighbor Aggregation:区分邻居的影响大小,比mean-pooling,degree normalization效果好
Information Update:当后续没有显式的特征交叉步骤时,mean pooling, sum pooling表现足够好,若有,则concat能保留更多信息
Final Node representation:有些使用GNN的最后一层向量作为表示,有些则用所有层(可能表示更好一些)
Influence modeling:区分社交网络不同的好友的影响力可以提升效果,进一步的,考虑朋友在不同的Item上的影响力也不一样,可以在item稀疏时提升较大
**Preference Integration:**将social network 和user-item bipartite 两个图分开建模和统一建模都可,没有明显区别。
Graph simplification:为了将GNN较为高效地应用于KG,需要对图进行简化(同时图信息有损),例如AKGE利用最短路径来重构子图,IntentGC仅保留一部分结点来构造i2i和u2u
Multi-relation propagation:KG有多重类型的边,因此需要使用attention 机制来聚集来自邻居的信息
User intergration:有些工作利用GNN来学习item表示,假设用户具有静态的表示;另外的则将user作为KG中一种entity来学习
Graph construction:将sequence 转为graph,转化的方法决定了GNN的效果,一般将按时序出现的相邻K(一般K=2)个item之间进行连边
Information propagation:在聚集邻居特征时,相比mean-pooling, GRU在序列建模中效果更好一些
Sequential preference:将序列的结点表示集成为最终的结点表示,attention, GRU皆可
DGRec:使用LSTM来抽取用户的动态兴趣,再使用GAT来对不同好友的影响进行聚集
论文标题:Billion-scale Commodity Embedding for E-commerce Recommendation in Alibaba
论文来源:KDD2018,Alibaba
论文目标:将图表示学习应用到推荐中,初步解决scalability, sparsity and cold start等问题
图数据的构建方法:session-based users’ behaviors中相邻的item连接一条有向边
模型架构:
模型特点:
**base model