Training
Training utilities expect PyTorch Geometric Data samples whose target is
stored as data.y. Datasets, splits, and loaders are caller-controlled; TOML
configuration builds models and trainer settings but does not discover data.
Trainer setup
TrainingConfig controls epochs, batch size, optimizer, scheduler, device,
checkpoint directory, early stopping, gradient clipping, and DataLoader
options. Trainer validates the config, creates the optimizer and scheduler,
writes config.json, stores training history, and saves checkpoints.
TOML setup
load_training_config() returns a ConfiguredTrainingSetup containing a
GATBiLSTMNet, TrainingConfig, loss, metrics, tracking configuration, and
sanitized tracking metadata. create_trainer_from_config() creates a
Trainer from the same TOML file.
Model data contract
Model inputs follow the graph contract in Graph Conversion. Batched
graph-level training needs data.batch. Temporal modes of GATBiLSTMNet
require data.time_bin as a node-aligned tensor. The training dataset must
provide data.y for loss computation.
Outputs
Training writes checkpoints and history.json under save_dir. The final
checkpoint is always saved; best-checkpoint behavior is controlled by
save_best_only. Checkpoints are complete PyTorch project artifacts, so resume
only from trusted checkpoint files produced by your own training runs.