实验一: 只是单纯地添加了, e_e公式的部分, 没有dropout, 没有加层. (只跑到epoch30, 在普通笔记本上)

结果:两个模型是可比的

  • GCN: loss表现更好
  • NGCF: 在度量指标HR, ndcg上表现更好
  • (因为是在自己的电脑上跑的, 所以听到NGCF运行的时候声音更大, 风扇和硬盘读写啊,  感觉自己的心在滴血......我还是很爱惜自己的笔记本的)

GCN:

NGCF:

实验二: GCN 对比  GCN+e_e

结果:  ...总体来说结果还是可比的

损失函数: 34623:30574

HR: 0.7238:0.7267

NDCG: 0.4694:0.4736

  • GCN:

  • 实验设置

  • 第0个epoch:

  • 第20个epoch:

  • 第40个epoch:

  • 第60个epoch:

  • 第63个epoch提前终止:

34623.57

0.7238

0.4694

  • NGCF: + e_e:

  • 开始:

  • 第0个epoch:

  • 第10个epoch:

  • 第20个epoch:

  • 第30个epoch:

  • 第40个epoch:

  • 第50个epoch:

  • 终止epoch:

实验三: 加层数:  三层VS一层  (在GCN的基础上加了e_e)

  • 实验结果:

  • 最明显的一点: 层数增加了, 模型收敛的速度也变慢了:原本是50~60个epoch就可以收敛, 但是现在增加到 91 个epoch才停止

  • 就度量结果而言是"不升反降!!!!!!!"

  • 损失函数: 19959:30574  (TODO: 是不是epoch不一样, 就不可比)

    HR: 0.7174:0.7267

    NDCG: 0.4662:0.4736

  • 开始:
  • 第0个epoch:
  • 第10个epoch:
  • 第20个epoch:
  • 第30个epoch:
  • 第40个epoch:
  • 第50个epoch:
  • 第60个epoch:
  • 第70个epoch:
  • 第80个epoch:
  • 第90个epoch:
  • 结束epoch:

实验四:  加node_dropout:   有VS无

TODO:  理解node_dropout是什么东西??????感觉让原来的矩阵更稀疏了

实验结果: 不升反降

损失函数: 20508.25:19959.09

HR: 0.7047: 0.7174

NDCG: 0.4689 : 0.4662

  • 开始:

  • 第0个epoch:

  • 第10个epoch:

  • 第20个epoch:

  • 第30个epoch:

  • 第40个epoch:

  • 第50个epoch:

  • 第60个epoch:

  • 第70个epoch:

  • 第80个epoch:

  • 第90个epoch:

  • 最后epoch:

20508.25

0.7047

0.4689

实验五: 加message_dropout     有VS无

实验结果:  还是可比的 (个人任务可能是因为任务不同, 再看损失函数和CF任务的关系)

损失函数:    22586.43  : 20508.25

HR:  0.7090 : 0.7047

ndcg:  0.4634 : 0.4689

  • 开始:

  • 第0个epoch:

  • 第10个epoch:

  • 第20个epoch:

  • 第30个epoch:

  • 第40个epoch:

  • 第50个epoch:

​​​​​​​

  • 第60个epoch:

​​​​​​​

  • 第70个epoch:

​​​​​​​

  • 第80个epoch:

​​​​​​​

  • 第90个epoch:

​​​​​​​

  • 第100个epoch:

​​​​​​​

  • 第110个epoch:

​​​​​​​

  • 最后epoch:

22586.43

0.7090

0.4634

实验六: embedding_size的影响

embedding_size==16:

实验结果:

最后一个训练loss:  15595.49

HR: 0.7241

ndcg: 0.4724

  • 开始epoch:

​​​​​​​

  • 第0个epoch:

​​​​​​​

  • 第10个epoch:

​​​​​​​

  • 第20个epoch:

​​​​​​​

  • 第30个epoch:

​​​​​​​

15595.49

0.7241

0.4724

embedding_size==32:

  • 开始epoch:

  • 第0个epoch:

  • 第10个epoch:

  • 结束epoch:

10429.84

0.7343

0.4844

embedding_size==64:

实验结果:

6805.64

0.7378

0.4873

  • 开始epoch:

  • 第0个epoch:

  • 第10个epoch:

  • 结束epoch:

6805.64

0.7378

0.4873

embedding_size==96:

实验结果:  总体来说和64个epoch是可比的

loss: 5442.47

HR: 0.7362

ndcg: 0.4880

  • 开始epoch:

  • 第0个epoch:

  • 第10个epoch:

  • 最后epoch:

​​​​​​​

5442.47

0.7362

0.4880

embedding_size==132:

实验结果:

明显感觉到训练一个epoch的时间变长了

  • 开始epoch:

  • 第0个epoch:

  • 最后epoch:

实验七: GCN去掉参数, 去掉损失函数, 改LightGCN

实验结果: 比embedding-size之前的魔改要好, 但是比原本的GCN要差

​​​​​​​最后一个train loss: 22453.94

HR: 0.7177

NDCG: 0.4722

  • 画图:

​​​​​​​

  • 开始epoch:

  • 第0个epoch:

  • 第10个epoch:

  • 第20个epoch:

  • 第30个epoch:

  • 第40个epoch:

  • 第50个epoch:

  • 第60个epoch:

  • 第70个epoch:

  • 第80个epoch:

  • 第90个epoch:

  • 第100个epoch:

  • 最后epoch:

​​​​​​​22453.94

0.7177

0.4722

实验八: 上一个LightGCN的基础上:  embedding_size:64

实验结果:取得了目前为止所有模型最好的效果

  • 开始epoch:

  • 第0个epoch:

  • 第10个epoch:

  • 最后epoch:

​​​​​​​​​​​​​​

7214.93

0.7359

0.5002

增补实验:将最初的GCN模型:  1.设置为3层,  2.将embedding_size由4改为64

实验结果: 和最好的LightGCN  HR可比,  ndcg差了

  • 最后epoch:

7643.53

0.7355

0.4905

增补实验:将最初的GCN模型:  1.还原为1层(初始设置),  2.将embedding_size由4改为64

实验结果: 和上面的结果对比, 层数层加结果会明显变好

9436.05

0.7297

0.4758

(以下为最初始的GCN没有任何改动:  层数为一, embedding_size为4)

实验结果:   目前看embedding_size的大小设置 对结果的影响还是比较大, 一个可能的原因是两次的embedding_size的大小相差太大了

34623.57

0.7238

0.4694

推荐系统----GCN和NGCF, LightGCN实验结果对比相关推荐

  1. (实验结果对比图)将水平分布的图像进行局部放大(PPT)

    ps:一开始本人用了最蠢的方法,以至于浪费了我一下午+一晚上时间... 以下教程全是以我的目标需要为例 ①首先,一开始复制进PPT的一组图是叠在一起的,我们只需要选中第一张 ②然后把该图第一张拉到最左 ...

  2. 【推荐系统学习总结 NCF => NGCF => LightGCN】

    推荐系统学习总结 NCF => NGCF => LightGCN NCF(别名 NeuMF) 背景 动机 创新点 模型框架 损失函数 核心代码实现 NGCF 背景 动机 创新点 模型框架 ...

  3. 推荐系统User-Item Embedding图算法

    在做推荐算法任务时,在(user, item)的交互数据集中进行建模是常见的方式,本文基于GNN对User侧和Item侧进行embedding的思路,介绍3篇相关论文.这三篇文章分别来自SIGIR 2 ...

  4. SIGIR‘21|SGL基于图自监督学习的推荐系统

    本篇文章主要介绍王翔.何向南老师团队在SIGIR2021上发表的文章SGL,Self-supervised Graph Learning for Recommendation[1].这篇文章提出了一种 ...

  5. 一文了解推荐系统中的图神经网络

    来源:RUC AI Box本文约4600字,建议阅读9分钟 本文主要介绍推荐系统中的图神经网络,欢迎交流探讨! [ 引言 ]近年来,GNN技术由于其在图数据学习方面的出色表现,在许多领域得到了广泛的应 ...

  6. 技术动态 | 图对比学习的最新进展

    转载公众号 | DataFunSummit 分享嘉宾:朱彦樵 中国科学院自动化研究所 编辑整理:吴祺尧 加州大学圣地亚哥分校 出品平台:DataFunSummit 导读:本文跟大家分享下图自监督学习中 ...

  7. 图对比学习的应用(NCL,SimGRACE,ClusterSCL)

    博主以往已经整理过图神经网络用于推荐系统,整理过对比学习用于推荐系统. 图神经网络用于推荐系统问题(PinSage,EGES,SR-GNN) 图神经网络用于推荐系统问题(NGCF,LightGCN) ...

  8. SIGIR20|LightGCN: Simplifying and Powering Graph Convolution Network for Recommendation

    SIGIR20|LightGCN: Simplifying and Powering Graph Convolution Network for Recommendation 文章链接:https:/ ...

  9. 图神经网络用于推荐系统问题(PinSage,EGES,SR-GNN)

    针对推荐系统的稀疏性问题,图方法还真的很适合. 推荐系统中存在很多的图结构,如二部图,序列图,社交关系图,知识语义图等 GNN比传统的随机游走等有更好的表现 PinSage和EGES都是很好的落地实践 ...

最新文章

  1. 前端设计模式责任链模式
  2. 转载 详解go语言GC
  3. 12.流水线设计方式
  4. 【原创】CGAL使用心得
  5. 加载JDBC驱动程序
  6. 函数部分编程大作业(持续更新)
  7. windows 认证机制
  8. 雷军:相信自己,一往无前(MI10周年演讲精彩语录)
  9. 怎么把html转成mp4,怎么把其他视频格式转成常用的mp4形式?
  10. 解决C#调用Excel接口时报错,提示:Microsoft.Office.Interop.Excel.ApplicationClass”的 COM 对象强制转换为接口类型“Microsoft.Offi
  11. (整理)吊炸天的CNNs,这是我见过最详尽的图解!(下)
  12. 用Chrome浏览器模拟手机,andriord,iphone,ipad访问网站
  13. win10解决没有照片查看器的办法
  14. 香港20年十大最具影响力电影
  15. DDOS与DDOS追踪的介绍
  16. 使用 FRP 搭建内网穿透,流畅运行远程桌面!
  17. 广州市天河区2021-2022学年九年级第一学期期末考试英语试题
  18. Python换钱的最少货币数
  19. php人事考勤系统,基于PHPMySQL的考勤系统
  20. 名编辑电子杂志大师教程 | 如何把制作好的电子杂志保存下来发给客服输出?

热门文章

  1. 【论文】【ACL2018】Neural Document Summarization by Jointly Learning to Score and Select Sentences
  2. Python那些让我疑惑许久的代码
  3. 蚂蚁金服面试题及答案-总结
  4. 容联云通讯php短信接口,短信查询接口_开发文档_容联云通讯
  5. 安卓搭建http文件服务器,如何在安卓上搭建http服务器
  6. 从零开始学习软件测试
  7. direct wifi 投屏_告别Wifi直接投AOC无线投屏显示器轻松用
  8. EasyExcel标题加批注和标题字体填充红色
  9. uniapp调用百度地图导航
  10. 【联盛德W806上手笔记】八、SPI及其DMA