Skip to content

zichunhao/RINO

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 

Repository files navigation

RINO: Renormalization Group Invariance with No Labels

Self-supervised representation learning for jets using multi-scale kT clustering views and DINO self-distillation.

Setup

conda env create -f environment.yml
conda activate parcel

Data Preparation

See configs/data-README.md for dataset download and preprocessing instructions.

Pretraining

# RINO pretraining (DINO + iBOT on kT-clustered QCD jets)
python dino/dino_train.py -c configs/dino/<config>.yaml

# Multi-GPU with Accelerate
accelerate launch dino/dino_train.py -c configs/dino/<config>.yaml

Finetuning

# Classification finetuning (LP-FT protocol)
python dino/classification_train.py -c configs/dino/<finetune-config>.yaml

Inference and Evaluation

# Run inference on test set
python dino/dino_inference.py -c configs/dino/<finetune-config>.yaml

# Per-class and ensemble evaluation
python dino/eval_per_class.py --exp-dir experiments/<exp-dir>/<model>

Baselines

All SSL baselines (MPMv1, MPMv2, OmniJet-alpha, JetCLR, JetCLR-scale) are in baselines/ with a shared backbone and finetuning protocol. See baselines/ for implementation details.

Repository Structure

dino/                   # RINO framework (training, inference, models, losses)
baselines/              # SSL baseline implementations
configs/                # All YAML configs (pretraining, finetuning, dataloaders)
environment.yml         # Conda environment specification
test_run.sh             # Quick sanity check

About

RINO: Renormalization Group Invariance with No Labels

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages