How raza786r/dpt-gnn works
DPT-GNN is a research pipeline for predicting lithium-ion cathode gravimetric capacity from paired charged/discharged crystal structures and eight numeric descriptors. The documented workflow loads the canonical data splits, encodes both structures with a shared graph Transformer, models their transition, fuses numeric features, and trains/evaluates capacity regression. The README describes these stages and capabilities, but notebook source was not sampled, so arrows reflect documented behavior; exact internal call wiring is not verified. CIF inputs and trained weights are not included in the tree.
Main entry points: DPT_GNN_Model.ipynb Pipeline notebook · data Processed splits · features.json Feature definitions · training_history.csv Training history
Components 15
Inputs
- Processed splits
data - Paired CIF structures
- Feature definitions
reproducibility/features.json
Representation
- Shared graph encoder
DPT_GNN_Model.ipynb - Phase relation block
DPT_GNN_Model.ipynb - Numeric feature branch
DPT_GNN_Model.ipynb
Prediction
- Capacity predictor
DPT_GNN_Model.ipynb
Training & Evaluation
- Pipeline notebook
DPT_GNN_Model.ipynb - Huber-Pearson loss
DPT_GNN_Model.ipynb - Model training
DPT_GNN_Model.ipynb - Regression metrics
DPT_GNN_Model.ipynb - Training history
reproducibility/training_history.csv - Checkpoint hash
reproducibility/checkpoint_hash.txt
Other components
- Researcher
- Materials Project
Connections 21
- Researcher → Pipeline notebook: runs
- Researcher → Materials Project: retrieves CIFs
- Materials Project → Paired CIF structures: provides structures
- Researcher → Processed splits: provides data
- Researcher → Paired CIF structures: provides structures
- Researcher → Feature definitions: configures features
- Pipeline notebook → Processed splits: loads splits
- Pipeline notebook → Paired CIF structures: uses paired structures
- Pipeline notebook → Feature definitions: uses feature list
- Pipeline notebook → Shared graph encoder: encodes both phases
- Shared graph encoder → Phase relation block: passes embeddings
- Pipeline notebook → Numeric feature branch: encodes descriptors
- Pipeline notebook → Capacity predictor: fuses representations
- Phase relation block → Capacity predictor: provides transition features
- Numeric feature branch → Capacity predictor: provides numeric features
- Pipeline notebook → Model training: trains model
- Model training → Capacity predictor: optimizes predictions
- Model training → Huber-Pearson loss: computes objective
- Model training → Training history: records epochs
- Pipeline notebook → Regression metrics: evaluates predictions
- Pipeline notebook → Checkpoint hash: verifies checkpoint