论文中提供了两个数据集。
【重要】具体实现时只使用其中一个得分-20%。
位于data/transfer/
下,包含:
chn.cites/usa.cites
两张图中节点的连边信息(有向边),每行为一条边(前者指向后者)chn.content/usa.content
两张图中节点的信息,每行表示一个节点,包括:- 第一个元素为节点编号
- 中间的17801个元素为节点的原始特征(标题和摘要的词袋)
- 最后一个元素为节点的标签(论文领域:AI&DM/HC/CA/CN)
china_result.txt/usa_result.txt
为每篇论文(图中节点)的标题/摘要。对.content
不满意可以自行生成原始特征。
位于data/transfer3/
下,包含:
chn.cites/usa.cites
同上chn.content/usa.content
同上(但我们不用这里面的标签)chn.multilabel/usa.multilabel
为各个节点的标签集合,每行为四个0/1的数字,表示各节点的标签集合(作者涉足的邻域)(用这个标签)
【重要】论文中在很多问题上做了实验,如Unsupervised Domain Adaption和Semi-supervised Domain Adaption等。 我们这里统一解决如下问题:
- 给定源网络和目标网络的结构,以及源网络上所有节点的标签
- 我们的模型需要预测目标网络上所有节点的标签,以Macro-F1为标准
- 我们认为源网络上节点为训练集,无验证集,目标网络上的节点为测试集;固定训练轮数,取最后一轮的测试集结果
此外,本次作业的目标是:
- 对于一个具体的图网络问题,体验不同类型的表示学习方法;
- 尝试发散思维,解决一个新问题
因此,不要求能够复现论文中的结果,只要实验结果能自圆其说即可。
从Deepwalk/LINE/Node2Vec等方法中选择一种。
推荐操作方法:
- 使用transductive方法为两张图中的所有节点生成embedding(该过程不需要标签)
- 用SVM或其他分类模型,在源网络上训练,在目标网络上测试
从GCN/GAT/GraphSAGE等方法中选择一种。
推荐操作方法:
- 无监督方法:类似transductive推荐操作方法
- 有监督方法:在源网络上训练一个节点分类模型直接应用于目标网络上
- ……
自由发挥,可以但不限于:
- MMD (Maximum Mean Discrepancy):计算复杂度高,效果一般但很稳定
- GAN:伟大的发明,效率非常高,但很难调,谁用谁知道
切记训练过程中不能使用目标网络上的标签!
见code/
,作者提供的未经整理的代码,仅供参考。
如需使用需要移动至根目录下。
截止日期:1.25 23:59
提交至:swyang@pku.edu.cn,邮件标题为“学号-姓名”。
提交内容:[我是分数]
- 作业报告,pdf格式,3-10页(建议4页左右),包含:[100]
- 简要概述DANE论文是如何实现域适应网络表示学习的[20]
- 使用transductive方法的效果,并分析结果[20]
- 使用inductive方法的效果,并分析结果[20]
- 设计图网络迁移方法,说明思路、实现、效果,并分析结果[20]
- 2-4各方法的可视化结果(参考原论文Fig.7),并分析结果[5]
- 实现过程中遇到的问题以及如何成功解决[5]
- 课程感想[10]
- 代码文件,zip/rar/tar格式,包含:
- 代码(建议是python)
- 一个txt/pdf文件,包含环境配置/库版本,以及代码的使用方法或复现需要的操作