This is a PyTorch implementation of T-GCN in the following paper: T-GCN: A Temporal Graph Convolutional Network for Traffic Prediction.
A stable version of this repository can be found at the official repository.
- numpy
- matplotlib
- pandas
- torch
- pytorch-lightning>=1.3.0
- torchmetrics>=0.3.0
- python-dotenv
# GCN
python main.py --model_name GCN --max_epochs 3000 --learning_rate 0.001 --weight_decay 0 --batch_size 64 --hidden_dim 100 --settings supervised --gpus 1
# GRU
python main.py --model_name GRU --max_epochs 3000 --learning_rate 0.001 --weight_decay 1.5e-3 --batch_size 64 --hidden_dim 100 --settings supervised --gpus 1
# T-GCN
python main.py --model_name TGCN --max_epochs 3000 --learning_rate 0.001 --weight_decay 0 --batch_size 32 --hidden_dim 64 --loss mse_with_regularizer --settings supervised --gpus 1You can also adjust the --data, --seq_len and --pre_len parameters.
Run tensorboard --logdir lightning_logs/version_0 to monitor the training progress and view the prediction results.
В папке examples находятся .ipynb, которые показывает следующие данные:
-
ARIMA.ipynb Хранит в себе 3 реализации предсказания трафика:
Ha,SVR,ARIMA -
graph clustering.ipynb Реализованы кластеризация Лувена и спектральная кластеризация для изучения параметов графа. Также проверяются такие данные, как
Betweenness,Closenessи средняя скорость на узлах. -
graph visualization.ipynb Реализованы график средней скорости на всем графе и направленный граф.
-
main_review.ipynb Реализованы кластерация Лувена, средняя скорость на кластерах и GIF-анимация изменения скорости на узлах графа с течением времени.
-
T-GCN.ipynb Собственная реализация
TGCNизtorch_geometric_temporal -
traffic_prediction.ipynb Реализация использования модели
A3TGCN