Skip to content
This repository has been archived by the owner on Dec 17, 2021. It is now read-only.

Latest commit

 

History

History
254 lines (249 loc) · 14.1 KB

plan.md

File metadata and controls

254 lines (249 loc) · 14.1 KB

工作计划

总体计划

  • 2020.12~2021.3 继续阅读相关文献,考虑改进方法
  • 2021.3~2021.7 实现现有的异构图神经网络模型
  • 2021.7~2021.10 改进异构图神经网络模型,完成与现有方法的对比实验
  • 2021.9~2021.10 构造学术网络数据集,实现基于图神经网络的推荐算法
  • 2021.10~2021.11 整理实验结果,实现可视化系统,撰写毕业论文初稿
  • 2021.11~2021.12 完成毕业论文,准备毕业答辩

论文阅读

异构图表示学习

综述

图神经网络

自监督/预训练

其他

  • 2021 ICLR C&S

基于图神经网络的推荐算法

综述

基于嵌入的方法

基于路径的方法

嵌入和路径结合的方法

复现模型

异构图表示学习

基于图神经网络的推荐算法

  • CKE
  • RippleNet
  • KGCN
  • KGAT

具体计划

  • 2020.12.21~12.25
    • 阅读论文CKE
    • 实现GCN
    • 阅读论文R-GCN
  • 2020.12.28~2021.1.1
    • 实现R-GCN
    • 阅读论文RippleNet
    • 阅读论文Hete-MF
  • 2021.1.4~1.8
    • 实现GAT
    • 实现HAN
    • 阅读论文Hete-CF
    • 阅读论文CFKG
  • 2021.1.11~1.15
    • 实现MAGNN
    • 阅读论文KGCN
    • 阅读论文HeteRec
  • 2021.1.18~1.22
    • 阅读论文KGAT
    • 使用OGB数据集做实验
  • 2021.2.22~2.26
    • 实现ogbn-mag数据集baseline: MLP和Full-batch GCN
    • 查找最新异构图表示学习论文
  • 2021.3.1~3.5
    • 实现ogbn-mag数据集 R-GCN模型
    • 阅读论文HGConv
  • 2021.3.8~3.12
    • 实现ogbn-mag数据集 HGConv模型
    • 尝试解决ogbn-mag数据集 HAN模型内存占用过大的问题
    • 阅读论文NARS
  • 2021.3.15~3.19
    • 阅读论文SIGN
    • 阅读论文GraphSAINT
    • 阅读论文SuperGAT
  • 2021.3.22~3.26
    • 继续看上周的论文(找实习面试好难啊😢)
    • 2021.4.1 人生中第一个offer🎉
  • 2021.4.5~4.9
    • 重新训练ogbn-mag数据集 HGConv模型
    • 实现SuperGAT
  • 2021.4.12~4.18
    • 阅读论文GPT-GNN
    • 实现metapath2vec
  • 2021.4.19~4.25
    • 使用子图采样的方法在ogbn-mag数据集上训练HAN模型
    • 使用metapath2vec预训练ogbn-mag数据集的顶点特征,重新跑HGConv模型
    • 阅读综述A Survey on Heterogeneous Graph Embedding
  • 2021.4.26~5.9
    • 实现HGT
    • 实现HetGNN
    • 实现ogbn-mag数据集 HGT模型
    • 实现ogbn-mag数据集 HetGNN模型
    • 尝试改进:HetGNN的内容聚集+HGConv
  • 2021.5.10~5.16
    • 阅读论文Strategies for Pre-Training Graph Neural Networks
    • 阅读论文Self-Supervised Graph Representation Learning via Global Context Prediction
  • 2021.5.17~5.23
    • 继续尝试异构图表示学习模型的改进
    • 阅读论文Self-Supervised Learning of Contextual Embeddings for Link Prediction in Heterogeneous Networks
    • 整理OAG数据集
  • 2021.5.24~5.30
    • 实习第一周
    • 阅读论文R-HGNN
  • 2021.5.31~6.6
    • 实现R-HGNN
  • 2021.6.7~6.13
    • 利用OAG数据集构造计算机领域的子集
  • 2021.6.14~6.20
    • 阅读论文C&S
    • 完成SciBERT模型的fine-tune,获取OAG-CS数据集的paper顶点输入特征
  • 2021.7.5~7.18
    • 实现C&S
    • 阅读论文HeCo
  • 2021.7.19~7.25
    • 实现HeCo
  • 2021.7.26~8.1
    • 尝试改进HeCo:mini-batch训练、元路径编码器改为其他方式、Loss增加分类损失
    • 7.29 和吴嘉伟讨论HeCo的改进思路
      • 正样本选择策略:在下游任务上预训练一个两层HGT,第二层的注意力权重是一阶邻居对目标顶点的权重, 第一层的注意力权重是二阶邻居对一阶邻居的权重,取类型与目标顶点相同的二阶邻居,并将两个权重相加, 得到二阶邻居(同类型)对目标顶点的权重,取top-k作为目标顶点的正样本
      • 使用上面得到的正样本可以构造一个目标类型顶点的同构图,用于替换元路径编码器中基于元路径的同构图
    • 确认HGT中对注意力权重做softmax的方式(同类型/跨类型)→同类型
  • 2021.8.2~8.8
    • 实现使用预训练的HGT计算的注意力权重选择HeCo的正样本的方法
    • 将HeCo迁移到ogbn-mag数据集上,尝试效果 → 24.67%
      • 元路径视图编码器替换为正样本图上的GCN编码器
      • 适配mini-batch训练
  • 2021.8.9~8.15
    • 将HeCo训练方式改为半监督(loss增加分类损失),尝试效果 → 26.32%
    • 尝试C&S Baseline在ogbn-mag数据集上的效果 → 不加Correct步骤能提升更多,正样本图>引用图
    • 尝试增加C&S后处理步骤(重点是标签传播图的构造)
      • R-HGNN+C&S → 正样本图上微提升,引用图上下降
      • HeCo+C&S → 26.32% -> 27.7%
  • 2021.8.16~8.22
    • 尝试HeCo的最终嵌入使用z_sc → 提升10%!
    • 尝试将HeCo的网络结构编码器替换为R-HGNN
  • 2021.8.23~8.29
    • 写中期报告
  • 2021.8.30~9.5
    • 尝试将RHCO的网络结构编码器改为两层 → 提升4.4%
    • 尝试其他构造正样本图的方法:训练集使用真实标签,验证集和测试集使用HGT预测 → 提升0.6%
  • 2021.9.6~9.12
    • 尝试将构造正样本图的方法改为使用预训练的R-HGNN模型计算的注意力权重、训练集使用真实标签 → 下降2.6%
    • 使用metapath2vec预训练oag-cs数据集的顶点嵌入,备用
  • 2021.9.13~9.19
    • RHCO模型删除输入特征转换和dropout(网络结构编码器已包含)、增加学习率调度器(对比损失权重为0时应该达到与R-HGNN相似的性能) → +10%
    • 设计推荐算法:使用SciBERT+对比学习实现召回:一篇论文的标题和关键词是一对正样本,使用(一个或两个)SciBERT分别将标题和关键词编码为向量, 计算对比损失,以此方式进行微调;使用微调后的SciBERT模型将论文标题和输入关键词编码为向量,计算相似度即可召回与查询最相关的论文
  • 2021.9.20~9.26
    • 在oag-cs数据集上使用SciBERT+对比学习进行微调
    • 实现输入关键词召回论文的功能
  • 2021.9.27~10.10
    • 实现推荐算法的精排部分
      • 重新构造oag-cs数据集,使field顶点包含所有领域词
      • 在oag-cs数据集上训练RHCO模型(预测任务:期刊分类),获取顶点表示向量
        • 修改训练代码,使其能够适配不同的数据集
      • TODO 预测任务改为学者排名相关(例如学者和领域顶点的相似度),需要先获取ground truth:学者在某个领域的论文引用数之和,排序
    • 初步实现可视化系统
      • 创建Django项目(直接使用当前根目录即可)
      • 创建数据库,将oag-cs数据导入数据库
      • 实现论文召回的可视化
  • 2021.10.11~10.17
    • 精排部分GNN模型训练思路:
      • (1)对于领域t召回论文,得到论文关联的学者集合,通过论文引用数之和构造学者排名;
      • (2)从排名中采样N个三元组(t, ap, an),其中学者ap的排名在an之前,采样应包含简单样本(例如第1名和第10名)和困难样本(例如第1名和第3名);
      • (3)计算三元组损失triplet_loss(t, ap, an) = d(t, ap) - d(t, an) + α
    • 可视化系统:实现查看论文详情、学者详情等基本功能
    • 开始写毕业论文
      • 第一章 绪论
  • 2021.10.18~10.24
    • 异构图表示学习:增加ACM和DBLP数据集
    • 写毕业论文
      • 第二章 基础理论
      • 第三章 基于对比学习的异构图表示学习模型
  • 2021.10.25~10.31
    • 完成毕业论文初稿
      • 第四章 基于图神经网络的学术推荐算法
      • 第五章 学术推荐系统设计与实现
    • 异构图表示学习
      • 正样本图改为类型的邻居各对应一个(PAP, PFP),使用注意力组合
      • 尝试:网络结构编码器由R-HGNN改为HGConv → ACM: -3.6%, DBLP: +4%, ogbn-mag: -1.86%
  • 2021.11.1~11.7
    • 异构图表示学习
      • 完成参数敏感性分析
    • 推荐算法精排部分
      • 抓取AMiner AI 2000的人工智能学者榜单作为学者排名验证集
      • 参考AI 2000的计算公式,使用某个领域的论文引用数加权求和构造学者排名ground truth训练集,采样三元组
      • 训练:使用三元组损失训练GNN模型
  • 2021.11.8~11.21
    • 异构图表示学习
      • 增加oag-cs期刊分类数据集
      • 完成消融实验
    • 完善毕业论文第三章实验部分
    • 推荐算法精排部分
      • 训练:目前的评价方式有问题,改为先召回论文再计算相关学者与领域的相似度(即与预测步骤相同)
        • 训练论文召回GNN模型:连接预测,领域k和该领域top学者关联的该领域的论文之间的边是正样本
        • 训练学者排名GNN模型:三元组损失
      • 预测:对于召回的论文构造子图,利用顶点嵌入计算查询词与学者的相似度,实现学者排名(效果不好,需要继续优化)
  • 2021.11.22~11.28
    • 继续优化推荐算法中论文召回和学者排名的代码
    • 完善毕业论文第四章实验部分,增加对比实验!!!
      • 直接使用论文相似度求和
      • KGCN
      • learn to rank
    • 完成毕业论文终稿