How yuyangw/molclr works
MolCLR is a molecular graph representation-learning project. Its main workflow reads molecular structures, creates paired augmented graph views, trains a GCN or GIN encoder with a contrastive objective, and saves pretrained weights. A second workflow loads those weights to fine-tune molecular property predictors on benchmark datasets and report classification or regression results. The README also documents node, subgraph, and mixed augmentation and provides pretrained GCN/GIN checkpoints. Some wiring is inferred from documented entry points because excerpts are partial; uncertain internal links are omitted.
Main entry points: molclr.py Pretrain runner · finetune.py Fine-tune runner · dataset.py Pretrain loaders · dataset_subgraph.py Subgraph views
Components 18
Molecular data
- Molecule data
- Node views
dataset/dataset.py - Subgraph views
dataset/dataset_subgraph.py - Mixed views
dataset/dataset_mix.py - Pretrain loaders
dataset/dataset.py - Benchmark data
- Benchmark loader
dataset/dataset_test.py
Contrastive pretraining
- Pretrain runner
molclr.py - GCN encoder
models/gcn_molclr.py - GIN encoder
models/ginet_molclr.py - NT-Xent loss
utils/nt_xent.py
Property fine-tuning
- Fine-tune runner
finetune.py - GCN predictor
models/gcn_finetune.py - GIN predictor
models/ginet_finetune.py - Property metrics
finetune.py
Model state
- Pretrained weights
ckpt/pretrained_gcn/checkpoints/model.pth - GIN weights
ckpt/pretrained_gin/checkpoints/model.pth
Other components
- Researcher
Connections 21
- Researcher → Pretrain runner: starts pretraining
- Researcher → Fine-tune runner: starts fine-tuning
- Molecule data → Node views: reads structures
- Molecule data → Subgraph views: reads structures
- Molecule data → Mixed views: reads structures
- Node views → Pretrain loaders: creates graph views
- Subgraph views → Pretrain loaders: creates graph views
- Mixed views → Pretrain loaders: creates graph views
- Pretrain runner → Pretrain loaders: requests batches
- Pretrain runner → GCN encoder: selects model
- Pretrain runner → GIN encoder: selects model
- Pretrain runner → NT-Xent loss: computes objective
- Pretrain runner → Pretrained weights: saves checkpoints
- Pretrain runner → GIN weights: saves checkpoints
- Benchmark data → Benchmark loader: reads benchmarks
- Fine-tune runner → Benchmark loader: builds dataset
- Fine-tune runner → GCN predictor: selects model
- Fine-tune runner → GIN predictor: selects model
- Pretrained weights → Fine-tune runner: loads weights
- GIN weights → Fine-tune runner: loads weights
- Fine-tune runner → Property metrics: reports metrics