Graph neural network model training
Use when when you have a molecular dataset (e.g., SMRT retention-time pairs) that you want to model as node-and-edge graphs, a PyTorch + PyG architecture already instantiated, and need to perform supervised training with checkpoint persistence and per-epoch metric logging.From its SKILL.md
npx -y skills add HolobiomicsLab/asb-skill-collections --skill graph-neural-network-model-trainingAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 15 stars15 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its file declares
Copied from the file, not written here
The file declares its own license as CC-BY-4.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
6.4 KB, 997 tokens by cl100k_base, as published. Nobody here has run it
graph-neural-network-model-training
License: restricted — no clear open-source license detected for the underlying tool; verify licensing before commercial use or redistribution. <!-- asb-license-banner -->
Summary
Train a PyTorch-based graph neural network (GNN) on molecular retention-time prediction data using PyG primitives and TorchMetrics monitoring. This skill applies to projects that model molecular properties as graph-structured data and require supervised training with epoch-level loss and validation tracking.
When to use
When you have a molecular dataset (e.g., SMRT retention-time pairs) that you want to model as node-and-edge graphs, a PyTorch + PyG architecture already instantiated, and need to perform supervised training with checkpoint persistence and per-epoch metric logging.
When NOT to use
- Input dataset is not graph-structured or lacks molecular property annotations.
- Model architecture is not yet defined in PyTorch + PyG; use model design/prototyping skill first.
- You need transfer learning evaluation; use graph-neural-network-transfer-learning skill after training completes.
Inputs
- SMRT retention-time dataset (formatted to match train_SMRT.py input schema)
- PyTorch model architecture definition
- Training hyperparameter configuration (learning rate, batch size, epochs)
Outputs
- Trained model checkpoint (saved to disk)
- Training loss curve (per-epoch TorchMetrics logs)
- Validation metrics (loss, accuracy, or domain-specific scores per epoch)
How to apply
Execute the training entry point (python train_SMRT.py) from the repository root after verifying the train_SMRT.py script is present and the input dataset is in the format expected by the script. The training workflow instantiates a graph neural network architecture using PyTorch and PyG, feeds the SMRT retention-time dataset through the graph model, and optimizes via backpropagation over multiple epochs. Monitor training progress via TorchMetrics, which logs loss and validation metrics at each epoch. Upon convergence or when a stopping criterion is met, save the trained model checkpoint to disk for downstream transfer learning or inference tasks.
Related tools
- PyTorch (Core deep-learning framework for model instantiation, forward pass, and backpropagation during training.)
- PyG (PyTorch Geometric) (Graph neural network library; provides graph data structures, message-passing layers, and GNN primitives used in the model architecture.)
- TorchMetrics (Tracks and logs loss and validation metrics across training epochs for monitoring convergence and generalization.)
- RDKit (Molecular toolkit for preprocessing and featurizing the chemical compounds in the retention-time dataset.)
- torch-scatter, torch-sparse, torch-cluster (PyG dependencies that enable efficient aggregation and pooling operations over graph nodes and edges.)
Examples
python train_SMRT.py
Evaluation signals
- Training loss decreases monotonically or asymptotically over epochs, indicating model learning.
- Validation loss follows training loss without large divergence, suggesting absence of severe overfitting.
- Model checkpoint file is created and can be loaded back without errors (e.g., via torch.load).
- TorchMetrics output logs contain epoch-wise entries for all tracked metrics (loss, accuracy, or domain-specific scores).
- Trained model produces predictions on held-out test data with reasonable error bounds relative to ground truth retention times.
Limitations
- Training on SMRT dataset only; dataset-specific hyperparameters may not generalize to other retention-time or molecular-property prediction tasks.
- No changelog provided in the repository; reproducibility across versions may be compromised if dependencies are updated.
- Script assumes the train_SMRT.py file contains all necessary preprocessing and data-loading logic; incorrect dataset format will cause silent failures or cryptic PyTorch errors.
Evidence
- [other] The ABCoRT model is trained on the SMRT retention-time dataset by executing the command 'python train_SMRT.py'.: "execute the training entry point using Python with the command 'python train_SMRT.py', which will instantiate the graph neural network architecture (PyTorch + PyG) and train on the SMRT data"
- [other] Training is monitored via TorchMetrics for loss and validation metrics over epochs, and the model is saved after convergence.: "Monitor training via TorchMetrics for loss and validation metrics over epochs. 5. Save the trained model checkpoint to disk upon convergence or completion."
- [readme] The training script is invoked as a Python entry point after dataset preparation.: "If you want to train the Model. Please command
python train_SMRT.py
```"
- [readme] PyTorch, PyG, and related dependencies are core to the training infrastructure.: "**Pytorch**, **PyG**, **torch-scatter**, **torch-sparse**, **torch-cluster**, **torch_geometric**"
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.