feat: organize GCN competition code
本项目基于 Jittor 和 JittorGeometric 实现两层图卷积网络(GCN),用于 Cora 引文网络的节点分类任务。
代码包含数据加载、特征归一化、GCN 模型训练、验证集评估,以及测试节点预测结果导出流程。
. ├── src/ │ └── gcn.py # GCN 训练、验证与预测脚本 ├── data/ │ └── README.md # 数据说明;cora.pkl 不上传 ├── outputs/ # 运行生成的结果目录,不上传 ├── requirements.txt # Python 依赖 ├── .gitignore ├── LICENSE └── README.md
建议使用 Python 3.8 或更高版本。
pip install -r requirements.txt
Jittor 与 JittorGeometric 的安装请参考官方说明:
本代码默认启用 CUDA。若没有 NVIDIA GPU 或 CUDA 环境,请根据本机环境修改 src/gcn.py 中的 jt.flags.use_cuda 配置。
src/gcn.py
jt.flags.use_cuda
从比赛平台下载 cora.pkl,并放置为:
cora.pkl
data/cora.pkl
数据文件不包含在本仓库中。
数据包含以下主要字段:
x
(2708, 1433)
y
-1
edge_index
(2, num_edges)
train_mask
val_mask
test_mask
num_classes
num_features
在项目根目录运行:
python src/gcn.py
脚本固定随机种子为 42,默认训练 200 个 epoch,并每 20 个 epoch 输出训练集准确率和当前最佳验证集准确率。
42
训练结束后,脚本会预测测试节点的类别,并输出:
outputs/result.json
该文件使用 JSON 格式保存,键为测试节点编号,值为预测类别。
5e-4
训练过程中以验证集准确率(Validation Accuracy)作为主要指标。由于测试集标签在 cora.pkl 中为 -1,本地不能计算测试集准确率,仅生成测试节点的预测结果。
使用本项目时,请遵守比赛规则、数据集许可和第三方项目许可证。
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802047560号
Jittor GCN Cora 节点分类
本项目基于 Jittor 和 JittorGeometric 实现两层图卷积网络(GCN),用于 Cora 引文网络的节点分类任务。
代码包含数据加载、特征归一化、GCN 模型训练、验证集评估,以及测试节点预测结果导出流程。
项目结构
环境安装
建议使用 Python 3.8 或更高版本。
Jittor 与 JittorGeometric 的安装请参考官方说明:
数据准备
从比赛平台下载
cora.pkl,并放置为:数据文件不包含在本仓库中。
数据包含以下主要字段:
x(2708, 1433)y-1edge_index(2, num_edges)train_maskval_masktest_masknum_classesnum_features训练与验证
在项目根目录运行:
脚本固定随机种子为
42,默认训练 200 个 epoch,并每 20 个 epoch 输出训练集准确率和当前最佳验证集准确率。推理结果
训练结束后,脚本会预测测试节点的类别,并输出:
该文件使用 JSON 格式保存,键为测试节点编号,值为预测类别。
模型配置
5e-4结果说明
训练过程中以验证集准确率(Validation Accuracy)作为主要指标。由于测试集标签在
cora.pkl中为-1,本地不能计算测试集准确率,仅生成测试节点的预测结果。第三方资源
使用本项目时,请遵守比赛规则、数据集许可和第三方项目许可证。