GNN在推荐系统的应用——>GC-MC与STAR-GCN
GNN ——> 推荐系统(两个算法)
文章目录
- GNN ——> 推荐系统(两个算法)
- 前言
- 一、GC-MC
- 1、总体结构
- 2、Graph Encoder部分
- 3、Graph Decoder部分
- 4、损失函数
- 5、实验结果
- 6、不足
- 二、STAR-GCN
- 1、总体架构(比较)
- 2、Transductive 和 Inductive(归纳和直推)
- 如何实现直推?——mask
- 3、LOSS部分
- 4、leakage Issue的避免
- 5、实验结果
前言
部分资源来自于Youtube
一、GC-MC
1、总体结构
首先进行one-hot编码,得到X矩阵,结合M(用户-商品交互矩阵)进行编码工作,得到U和V矩阵
然后对U和V进行解码工作,得到一个新的交互矩阵,其中原本的空白值也得到了填充
2、Graph Encoder部分
对一个用户u来说,评分过的商品得到了不同的分数,将相同评分的商品统一的利用Wi矩阵进行转化取平均,将不同分数得到的向量结果进行累加、激活,和矩阵W进行相乘,就得到了hui的表示,如下图所示(对于商品v也一样)
3、Graph Decoder部分
对于useri和Itemj对不同的评分定义为Mij,对应的不同概率通过softmax计算出来,Qr和QS都是可训练的参数矩阵,便于结合u和v的维度
最后将基于不同评分下的预测矩阵进行有权值的累加,就得到了最后的预测值
4、损失函数
损失函数的定义如下:
通过已知的评分对预测结果进行误差计算,即评分对应的Mij概率p对应的logp作为损失进行梯度下降,注意这里的概率p是0~1区间的,logp<0
5、实验结果
6、不足
输入维度过高,和用户、商品数息息相关
对于新的用户和商品有冷启动问题
二、STAR-GCN
根据以上的不足,STAR-GCN做了很多改进
1、总体架构(比较)
比GCMC相对而言,stacking了很多对编码器和解码器,并且权重矩阵是共享的
2、Transductive 和 Inductive(归纳和直推)
GC-MC是transductive
STAR-GCN 是 Inductive
如何实现直推?——mask
训练过程中一定几率下把部分的输入节点的embedding变成全0,这样模型就有了可以对低信息节点预测的能力,当新进来节点的时候,只需要少量的连接关系产生,就可以产生还不错的预测结果
下图可以直观的看出两个模型解码器的区别,GCMC如前文所说,主要是对已知评分链路的预测,而STAR-GCN主要是对X矩阵的还原(图中绿色的公式)
3、LOSS部分
L是所有编码解码器对中产生的Lt和Lr累加产生的公式
Lt是在编码后根据预测值产生的误差。公式在下图中可以看到,其实就是通过编码之后产生的User与Item的embedding进行内积运算(我们认为这就是我们需要的预测值,很常见的想法),然后与真实的评分作差值
Lr是在解码后与原本X相比产生的误差
公式如下图所示
4、leakage Issue的避免
预测的时候可能会遇到这样的问题:预测值已经在训练中就已经被纳入计算了
这个事GCN常见的问题,因为GCN训练的时候会将所有的边通过邻接矩阵纳入进来,答案就被涵盖进来,就会出现过拟合问题
如何解决:把需要预测的边直接拿掉
下图中U1和V1之间有边,但是训练时候不能放进去
5、实验结果
从实验结果来看可以发现,Lr和Leakage Issue的避免都是有显著作用的
recurrent指标代表的是每对编解码器是否通用参数,但是不同数据下是否相同差别不是很明显,所以为了降低时间复杂度,可以共享参数
可用的训练数据的信息越大,对模型的提升效果不明显,代表了该算法较好地解决了cold start的问题。
GNN在推荐系统的应用——>GC-MC与STAR-GCN相关推荐
- 图神经网络GNN在推荐系统的应用:综述
参考: 论文1: <Graph Neural Networks in Recommender Systems: A Survey> https://arxiv.org/pdf/2011.0 ...
- 【GNN】GCMC:GNN 在推荐系统中的应用
今天学习的是 KDD18 的一篇论文<Graph Convolutional Matrix Completion>,作者是阿姆斯特大学的同学,Thomas N. Kipf 大佬是二作. 前 ...
- 推荐系统与GNN的火花
作者:十方,公众号:炼丹笔记 推荐系统会存储大量的用户与items交互数据,这些数据可以用二部图呈现.二部图对消除推荐系统中数据稀疏性和冷启动有着巨大的帮助.这篇主要总结了3个典型的GNN方法在推荐系 ...
- 《强化学习周刊》第6期:强化学习应用之推荐系统
No.06 智源社区 强化学习组 强 化 学 习 研究 观点 资源 活动 关于周刊 强化学习作为人工智能领域研究热点之一,它在推荐系统领域中的应用的研究进展与成果也引发了众多关注.为帮助研究与工程人 ...
- 一文了解推荐系统中的图神经网络
来源:RUC AI Box本文约4600字,建议阅读9分钟 本文主要介绍推荐系统中的图神经网络,欢迎交流探讨! [ 引言 ]近年来,GNN技术由于其在图数据学习方面的出色表现,在许多领域得到了广泛的应 ...
- 浅谈推荐系统中的图神经网络
前言 近年来,GNN技术由于其在图数据学习方面的出色表现,在许多领域得到了广泛的应用.在推荐系统中,大部分信息本质上具有图结构,而由于GNN对于表示学习具有一定的优势,所以GNN在推荐系统相关领域的应 ...
- WSDM‘23 推荐系统论文梳理
之前把2022年已公布的推荐系统相关顶会梳理一遍 ,历史推荐系统顶会论文梳理系列文章可以参考公众号或知乎,快捷合辑详见<2022推荐系统顶会论文梳理系列>. WSDM'23已公布录用结果, ...
- 15-关于GNN的局限性以及其解决办法
图机器学习(关于GNN的局限性以及其解决办法) 1.前言 1. 图神经网络局限性一 两个节点有相同邻居或邻域结构,按理其表征应该相同: 但是实际上不一定,因为有些邻域相同但是表征不应该相同,特别是对称 ...
- KDD‘22推荐系统论文梳理(24篇研究36篇应用论文)
2022推荐系统论文梳理系列 推荐系统相关顶会整理 AAAI'22推荐系统论文梳理 IJCAI'22 推荐系统论文梳理 ICML/ICLR'22 推荐系统论文梳理 WWW'22 推荐系统论文之序列推荐 ...
最新文章
- 研华物联网论坛和ARM技术研讨会随笔
- Java新手问题集锦
- Web项目中文件上传Filter处理
- 12_Android中HttpClient的应用,doGet,doPost,doHttpClientGet,doHttpClient请求,另外借助第三方框架实现网络连接的应用,
- Docker日志大小限制
- java 系统类型_Java获取操作系统类型
- Cow Picnic(POJ-3256)
- POJ 1845 Sumdiv 【逆元】
- supervisor-3:xml_rpc
- pb预览状态下的pagecount_QuickLook高效文件预览神器,方便到令你意想不到
- 2014年读过的那些书
- thinkphp 3.+ Apache url重写问题(.htaccess)
- 装载list的时候 一定要把每一个实体放到for里面
- 云计算技术简述及发展分析
- 计算机教学提问的观课量表,观课议课|如何使用观察和记录量表
- 如何在safri查看网页源代码
- Python-百度经纬度转高德经纬度
- 关于谷歌的一个简单工具以及chrome浏览器更新方法
- 【高等数学基础进阶】导数与微分
- 教师计算机课教学反思范文,信息技术课优秀教学反思
热门文章
- pandas 筛选行 整行复制粘贴
- 街机游戏-FC游戏的hack修改rom
- elasticsearch进阶(3)—— ilm policy
- postgresql中sql查询语句报错处理——ERROR: failed to find conversion function from unknown to text
- 电脑笑脸蓝屏问题 也许你可以尝试一下这个
- Conflux 的自我进化:从 DAG 到树图| 对话伍鸣
- 从头开始设计我的网游
- 黑鲨3能用鸿蒙系统吗,黑鲨游戏手机3支持语音操控:没有三头六臂照样吃鸡
- 实验部分小结:数据集处理部分
- Sticky 黏性定位 兼容性css3