【社交推荐图神经网络】Graph Neural Networks for Social Recommendation
用于社会推荐的图神经网络
【原文链接】
【摘要】该文提供了一种方法来联合捕获用户-项目图中的交互和意见,并提出了框架GraphRec,该框架对两个图进行了一致建模。该模型由用户建模、项目建模和评级预测三部分组成。
【原理】第一个部分是用户建模,它是为了了解用户的潜在因素。由于社会推荐系统中的数据包括两个不同的图,即一个社会图和一个用户-项目图,提供了一个很好的机会来从不同的角度学习用户表示。
第二部分是项目建模,即学习项目的潜在因素。为了同时考虑用户-项目图中的交互和意见,引入了用户聚合,即在项目建模中聚合用户的意见。
第三部分是通过集成用户和项目建模组件,通过预测来学习模型参数。
【模型】
模型的三个部分:
1.User Modeling:了解用户的潜在因素。从社会关系图和用户项目图两个角度来学习用户的表示。从user-item图中学习item-space 的user潜因子,再从socail graph中学习social-space的user潜因子。
Item Aggregation:
用户-项目图不仅包含用户与项目之间的交互,还包含用户的意见(此处为评分),将用户的评分表示为embedding,再将项目表示为embedding,将这两个embedding丢到MLP中,得到representation vector 表示 opinion-aware interaction between ui and an item va。此后,若aggregation function使用上述得到的representation vector 的平均值,则不能反映出交互对用户的潜在因素做出不同的贡献。此处,采用来训练对于每个交互都有不同的权重。
Social Aggregation:
用户之间的联系强度可以从社交图上进一步影响用户的行为。也就是说,社会空间用户潜在因素的学习应该考虑到社会关系的异质性优势。因此,引入一个注意机制来选择具有代表性的社会朋友来表征用户的社会信息,然后对他们的信息进行聚合。为了从这个社会角度表征用户潜在因素,提出了社会空间用户潜在因素,即从社会图中聚合相邻用户的项目空间用户潜在因素。如果假设所有的邻居对用户的表示都有相同的贡献,不符合社交的特征,因此采用来训练不同用户对于目标用户的不同权重。
2. Item Modeling:通过用户聚合对项目进行项目建模,学习项目潜在因子。
项目与用户-项目图相关联,用户-项目图包含交互和用户的意见。因此,需要联合获取用户-项目图中的交互和意见,以进一步了解项目的潜在因素。同样采用来训练产生不同的权重。
3.Rating Prediction
将user modeling和item modeling的输出喂给MLP,生成预测评分。
【总结】
在社交网络和User-Item图上执行GNN:
1、文章将评分量化,生成embedding。
2、User Modeling:
Item aggregation,利用用户与item的联系加上,生成一个embedding。
Social aggregation,利用用户与用户之间的关系加上,生成一个embedding。
将上述两个embedding丢入MLP中获得用户的最终embedding
3、Item modeling:
利用用户对物品的关系与意见加上,产生物品embedding。