chore: fix readme,md
本项目使用 Jittor 和 JittorGeometric 实现两层 GCN,完成 Cora 数据集的节点分类、 验证集评测及测试集预测。训练会自动保存最佳验证集模型,而不是使用最后一轮模型生成结果。
通过environment.yml创建环境并安装依赖(python3.10):
conda env create -f environment.yml conda activate jittorgeometric
jittor_geometric需要从github手动下载:
git clone https://github.com/AlgRUC/JittorGeometric.git cd JittorGeometric pip install .
比赛提供的 cora.pkl 不提交到 Git。请将其放到以下位置:
cora.pkl
data/ └── cora.pkl
也可以通过 --data-path /path/to/cora.pkl 指定其他位置。文件应包含:
--data-path /path/to/cora.pkl
x
(2708, 1433)
y
(2708,)
-1
edge_index
(2, num_edges)
train_mask
val_mask
test_mask
num_features
num_classes
int
默认配置位于 configs/cora_gcn.json,包含数据路径、设备、随机种子、学习率、 训练轮数、隐藏层维度及 dropout 等参数。命令行参数优先于配置文件,例如:
configs/cora_gcn.json
python gcn.py train --config configs/cora_gcn.json --seed 123 --epochs 300
python gcn.py train --config configs/cora_gcn.json
运行后会在 outputs/cora_gcn/ 保存:
outputs/cora_gcn/
best_model.pkl
result.json
config.json
command.txt
train.log
若要强制使用 CPU,可添加 --device cpu。
--device cpu
加载指定权重,输出训练集和验证集准确率并生成测试集预测:
python gcn.py predict \ --config configs/cora_gcn.json \ --checkpoint outputs/cora_gcn/best_model.pkl \ --output result.json
缺少配置、数据或权重时,脚本会给出对应文件路径和修复提示。
评测指标为节点分类准确率:
accuracy = 预测正确的节点数 / 参与评测的节点总数
固定随机种子后可提高复现性,但不同 Jittor、CUDA 和底层算子版本仍可能造成轻微 数值差异。线上成绩由比赛平台使用隐藏测试标签计算,本地无法计算测试集准确率。
. ├── configs/cora_gcn.json ├── data/README.md ├── gcn.py ├── requirements.txt ├── LICENSE └── README.md
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802047560号
Cora GCN 节点分类
本项目使用 Jittor 和 JittorGeometric 实现两层 GCN,完成 Cora 数据集的节点分类、 验证集评测及测试集预测。训练会自动保存最佳验证集模型,而不是使用最后一轮模型生成结果。
环境安装
通过environment.yml创建环境并安装依赖(python3.10):
jittor_geometric需要从github手动下载:
数据准备
比赛提供的
cora.pkl不提交到 Git。请将其放到以下位置:也可以通过
--data-path /path/to/cora.pkl指定其他位置。文件应包含:x(2708, 1433)y(2708,)-1edge_index(2, num_edges)train_mask/val_mask/test_mask(2708,)num_features/num_classesint配置
默认配置位于
configs/cora_gcn.json,包含数据路径、设备、随机种子、学习率、 训练轮数、隐藏层维度及 dropout 等参数。命令行参数优先于配置文件,例如:训练
运行后会在
outputs/cora_gcn/保存:best_model.pkl:验证集准确率最高的模型权重result.json:最佳模型对测试节点的预测config.json:本次运行的实际配置command.txt:本次运行命令train.log:训练日志若要强制使用 CPU,可添加
--device cpu。评测与推理
加载指定权重,输出训练集和验证集准确率并生成测试集预测:
缺少配置、数据或权重时,脚本会给出对应文件路径和修复提示。
结果说明
评测指标为节点分类准确率:
固定随机种子后可提高复现性,但不同 Jittor、CUDA 和底层算子版本仍可能造成轻微 数值差异。线上成绩由比赛平台使用隐藏测试标签计算,本地无法计算测试集准确率。
项目结构