OpenHGNN现已上线最新的0.8版本,欢迎大家从启智社区、GitHub或通过pip下载使用!OpenHGNN是一个基于 DGL和 PyTorch的开源异质图神经网络工具包,集成了异质图神经网络的前沿模型。新版本我们增加了10个新的异质图神经网络模型。另外,我们构建了新的预训练-微调Pipeline,目的是让预训练和下游阶段分离,更灵活的控制预训练和下游任务的运行过程。新版本还新增了json格式的配置文件和基于fastargs的参数读取模块,方便用户灵活地调整模型参数,减少命令行阶段需要的参数输入。最后,我们新增了跨域预训练知识迁移功能,在预训练阶段实现多个数据集的联合训练,提高了异质图模型的知识迁移效果。
一、新增图神经网络模型、数据集
OpenHGNN 0.8版本新增10种异质图模型算法
-
新增基于异质图的元学习冷启动推荐模型MetaHIN [KDD 2020]
-
新增基于行为模式的异质图神经网络模型BPHGNN [KDD 2023]
-
新增处理多路径网络关系异质性的图卷积模型MHGCN [KDD 2022]
-
新增基于外部知识的虚假新闻检测模型CompareNet [ACL 2021]
-
新增多组件图卷积协同过滤模型MCCF [AAAI 2020]
-
新增基于对比学习的异质图预训练模型CPTHG [CIKM 2021]
-
新增基于主题感知的异质图链接预测模型THGNN [CIKM 2021]
-
新增基于多层面数据增强的异质图表示学习模型MAHGA [WWW 2023]
-
基于结构聚类的异质图自监督预训练模型SHGP [NIPS 2022]
-
新增基于序列化节点表示学习的异质图神经网络模型SeqHGNN [SIGIR 2023]
OpenHGNN 0.8版本新增数据集:
-
新增异质图数据集:dbook,BPHGNN_dataset,dblp4MHGCN,imdb4MHGCN,alibaba4MHGCN
二、新的预训练-微调Pipeline
在之前的版本当中,OpenHGNN集成了大量端到端模型和预训练-微调模型。在之前的预训练-微调pipeline中,模型的上游预训练阶段和下游微调阶段都集成在同一个trainerflow当中。这种运行方式存在很大局限性,用户无法自由设置预训练阶段和下游阶段的模型参数。而且预训练模型只能适用于一种下游任务,不具备跨任务泛化能力。 为了解决这个问题,我们在新版本集成了预训练和下游阶段分离的pipeline,能够允许用户自由选择不同的下游任务和模型参数,使得预训练模型能够在各类图任务上进行知识迁移,大大提高了预训练模型的泛化能力。
三、json格式配置文件
在之前的版本当中,大部分模型采用ini文件来读取模型参数,将所有模型参数集中在同一个ini文件当中。这样做便于模型参数的统一管理,但是缺点是不利于模型参数的调整和超参数测试,同时也存在部分特殊类型的参数无法直接读取。 为了解决这个问题,我们在新版本引入了json格式的参数配置文件和基于fastargs库的参数读取方法。能够方便的读取各种不同类型的参数,并且具备参数类型检查、合法性检查、文件夹自动创建等辅助功能,便于用户自由设置模型参数。
模块 |
|
---|---|
|
|
|
|
|
|
四、跨域预训练和知识迁移功能
目前在异质图神经网络领域,预训练模型通常用于实现跨任务知识迁移,即上游阶段和下游阶段是基于同一个数据集的。这种方式训练出来的模型不具备跨域泛化能力,在新的下游数据集上往往会存在负迁移现象,严重影响模型迁移效果。 为了解决这个问题,我们参考了近期的图跨域预训练工作,基于协调器节点来完成预训练阶段的多图联合训练,提高预训练模型的知识全面性,使其具有泛化到不同下游任务和不同下游数据集的能力,提高了异质图预训练模型的知识迁移效果。
模块 |
|
---|---|
|
|
|
|
|
|
|
|
结语
欢迎大家将自己的算法集成到OpenHGNN当中
感谢大家一直以来对OpenHGNN算法库的支持,我们将继续努力,不断创新,为用户提供更好的工具和解决方案。如果你在使用过程中有任何问题或者有任何模型、功能上的建议,欢迎提交issue或者通过邮件来联系我们。
Github地址:https://github.com/BUPT-GAMMA/OpenHGNN
启智社区地址:https://openi.pcl.ac.cn/GAMMALab/OpenHGNN
Email: [email protected]
原文始发于微信公众号(北邮 GAMMA Lab):OpenHGNN发布0.8版本
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论