Skip to content

Latest commit

 

History

History
217 lines (158 loc) · 9.77 KB

README.md

File metadata and controls

217 lines (158 loc) · 9.77 KB

异质图神经网络开源工具包

GitHub release (latest by date) Documentation Status GitHub visitors Total lines

启智社区(中文版)Github Community (English)Space4HGNN [SIGIR2022]Benchmark&Leaderboard | Slack Channel

OpenHGNN是一个基于 DGL [Deep Graph Library]PyTorch 的开源异质图神经网络工具包,集成了异质图神经网络的前沿模型。

新闻

2022-08-02 论文接收

我们的论文 OpenHGNN: An Open Source Toolkit for Heterogeneous Graph Neural Network 在CIKM2022 short paper track接收。

2022-06-27 开源0.3版本

我们开源了0.3版本。

  • 新增模型
  • 支持API调用
  • 简化定制数据集和模型流程
  • 异质图信息可视化工具
2022-02-28 开源0.2版本

我们开源了0.2版本。

2022-01-07 加入启智社区
启智社区用户可以享受到如下功能:
  • 全新的中文文档
  • 免费的计算资源—— 云脑使用教程
  • OpenHGNN最新功能
    • 新增模型:【KDD2017】Metapath2vec、【TKDE2018】HERec、【KDD2021】HeCo、【KDD2021】SimpleHGN、【TKDE2021】HPN、【ICDM2021】HDE、fastGTN
    • 新增日志功能
    • 新增美团外卖数据集

关键特性

  • 易用:OpenHGNN提供了了易用的接口在给定的模型和数据集上运行实验,且集成了 optuna 进行超参数优化。
  • 可扩展:用户可以定义定制化的任务/模型/数据集来对新的场景应用新的模型。
  • 高效:底层的DGL框架提供了提供了高效的API。

开始使用

环境要求

  • Python >= 3.6

  • PyTorch >= 1.9.0

  • DGL >= 0.8.0

  • CPU 或者 NVIDIA GPU, Linux, Python3

1. Python 环境 (可选): 推荐使用 Conda 包管理

conda create -n openhgnn python=3.6
source activate openhgnn

2. 安装Pytorch: 参考 PyTorch安装文档 根据你的操作系统和CUDA版本选择合适的安装命令。例如:

pip install torch torchvision torchaudio

3. 安装DGL: 参考 DGL安装文档 根据你的操作系统和CUDA版本选择合适的安装命令。例如:

pip install dgl -f https://data.dgl.ai/wheels/repo.html

4. 安装 openhgnn:

  • 从pypi安装
pip install openhgnn
  • 从源码安装
git clone https://github.com/BUPT-GAMMA/OpenHGNN
# If you encounter a network error, try git clone from openi as following.
# git clone https://git.openi.org.cn/GAMMALab/OpenHGNN.git
cd OpenHGNN
pip install .

在已有的评测上运行已有的基线模型 数据集

python main.py -m model_name -d dataset_name -t task_name -g 0 --use_best_config --load_from_pretrained

使用方法: main.py [-h] [--model MODEL] [--task TASK] [--dataset DATASET] [--gpu GPU] [--use_best_config]

可选参数:

-h, --help 展示帮助信息并退出

--model -m 模型名

--task -t 任务名

--dataset -d 数据集名

--gpu -g 控制你使用哪一个GPU,如果没有GPU,设定 -g -1。

--use_best_config use_best_config 意味着你使用该模型在该数据集下最优的配置,如果你想要设定不同的超参数,请手动修改 配置文件。使用最佳配置会覆盖配置文件中的参数。

--load_from_pretrained 从默认检查点加载模型。

示例:

python main.py -m GTN -d imdb4GTN -t node_classification -g 0 --use_best_config

提示: 如果你对某个模型感兴趣,你可以参考下列的模型列表。

请参考 文档 了解更多的基础和进阶的使用方法。

特定任务下支持的模型

表格中的链接给出了模型的基本使用方法.

模型 节点分类 链路预测 推荐
TransE[NIPS 2013] ✔️
TransH[AAAI 2014] ✔️
TransR[AAAI 2015] ✔️
TransD[ACL 2015] ✔️
Metapath2vec[KDD 2017] ✔️
RGCN[ESWC 2018] ✔️ ✔️
HERec[TKDE 2018] ✔️
HAN[WWW 2019] ✔️ ✔️
KGCN[WWW 2019] ✔️
HetGNN[KDD 2019] ✔️ ✔️
HeGAN[KDD 2019] ✔️
HGAT[EMNLP 2019]
GTN[NeurIPS 2019] & fastGTN ✔️
RSHN[ICDM 2019] ✔️ ✔️
GATNE-T[KDD 2019] ✔️
DMGI[AAAI 2020] ✔️
MAGNN[WWW 2020] ✔️
HGT[WWW 2020]
CompGCN[ICLR 2020] ✔️ ✔️
NSHE[IJCAI 2020] ✔️
NARS[arxiv] ✔️
MHNF[arxiv] ✔️
HGSL[AAAI 2021] ✔️
HGNN-AC[WWW 2021] ✔️
HeCo[KDD 2021] ✔️
SimpleHGN[KDD 2021] ✔️
HPN[TKDE 2021] ✔️ ✔️
RHGNN[arxiv] ✔️
HDE[ICDM 2021] ✔️
HetSANN[AAAI 2020] ✔️
ieHGCN[TKDE 2021] ✔️

候选模型

贡献者

OpenHGNN团队[北邮 GAMMA 实验室]、DGL 团队和鹏城实验室。

贡献者名单

引用OpenHGNN

欢迎在您的工作中用如下的方式引用OpenHGNN:

@inproceedings{han2022openhgnn,
  title={OpenHGNN: An Open Source Toolkit for Heterogeneous Graph Neural Network},
  author={Hui Han, Tianyu Zhao, Cheng Yang, Hongyi Zhang, Yaoqi Liu, Xiao Wang, Chuan Shi},
  booktitle={CIKM},
  year={2022}
}