13 KiB
13 KiB
工作计划
总体计划
- 2020.12~2021.3 继续阅读相关文献,考虑改进方法
- 2021.3~2021.7 实现现有的异构图神经网络模型
- 2021.7~2021.10 改进异构图神经网络模型,完成与现有方法的对比实验
- 2021.9~2021.10 构造学术网络数据集,实现基于图神经网络的推荐算法
- 2021.10~2021.11 整理实验结果,实现可视化系统,撰写毕业论文初稿
- 2021.11~2021.12 准备毕业答辩
论文阅读
异构图表示学习
综述
- 2020 Heterogeneous Network Representation Learning: A Unified Framework with Survey and Benchmark
- 2020 A Survey on Heterogeneous Graph Embedding: Methods, Techniques, Applications and Sources
图神经网络
- 2014 KDD DeepWalk
- 2016 KDD node2vec
- 2017 KDD metapath2vec
- 2017 ICLR GCN
- 2018 ESWC R-GCN
- 2018 ICLR GAT
- 2019 KDD HetGNN
- 2019 WWW HAN
- 2020 WWW MAGNN
- 2020 WWW HGT
- 2020 HGConv
- 2020 KDD GPT-GNN
- 2020 ICLR GraphSAINT
- 2020 SIGN
- 2020 NARS
- 2021 ICLR SuperGAT
- 2021 R-HGNN
自监督/预训练
- 2020 Self-Supervised Graph Representation Learning via Global Context Prediction
- 2020 ICML When Does Self-Supervision Help Graph Convolutional Networks?
- 2020 ICLR Strategies for Pre-Training Graph Neural Networks
- 2021 WWW Self-Supervised Learning of Contextual Embeddings for Link Prediction in Heterogeneous Networks
- 2021 KDD HeCo
其他
- 2021 ICLR C&S
基于图神经网络的推荐算法
综述
- 2020 IEEE A Survey on Knowledge Graph-Based Recommender Systems
- 2020 Graph Neural Networks in Recommender Systems: A Survey
基于嵌入的方法
基于路径的方法
- 2013 IJCAI Hete-MF
- 2014 ICDM Hete-CF
- 2013 RecSys HeteRec
- 2015 CIKM SemRec
- 2019 WWW RuleRec
- 2018 KDD MCRec
- 2018 RecSys RKGE
嵌入和路径结合的方法
复现模型
异构图表示学习
基于图神经网络的推荐算法
- 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) + α
- 可视化系统:实现查看论文详情、学者详情等基本功能
- 开始写毕业论文
- 第一章 绪论
- 精排部分GNN模型训练思路:
- 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.14
- 异构图表示学习
- 增加oag-cs期刊分类数据集
- 完成消融实验
- 推荐算法精排部分
- 训练:目前的评价方式有问题,改为先召回论文再计算相关学者与领域的相似度(即与预测步骤相同)
- 预测:对于召回的论文构造子图,利用顶点嵌入计算查询词与学者的相似度,实现学者排名
- 异构图表示学习