How dls5-omics/cellnavi works
CellNavi is a gene-graph-aware deep-learning framework for predicting perturbation genes from single-cell transcriptomic profiles. Its main workflow prepares cells and graph-derived features, fine-tunes a pretrained encoder to classify perturbations, and evaluates predictions or emits per-gene logits. The graph also retains the documented pretraining capability and key inference branches. Source excerpts show dataset preparation, model calls, and training; tutorial validation and result-generation internals were not sampled, so those entrypoints are represented only at the documented level.
Main entry points: trainer.py Fine-tune trainer · dataset.py Cell dataset · pretrain_model.py Pretrained encoder · load_results.py Perturbation logits
Components 21
Data preparation
- Training dataset
- Test dataset
- Gene graphs
- Cell dataset
cellnavi/data_provider/dataset.py - Training loader
cellnavi/data_provider/train_loader.py - Validation loader
cellnavi/data_provider/validation_loader.py
Modeling
- Pretrained weights
- Perturbation classifier
cellnavi/model/finetune_model.py - Pretrained encoder
cellnavi/model/pretrain_model.py - Transformer layers
cellnavi/model/attention.py - Count encoding
cellnavi/model/rawcount_encoding.py
Training
- Launch training
tutorials/launch_train.sh - Run configuration
config.json - Fine-tune trainer
cellnavi/trainer/trainer.py - Model checkpoints
Evaluation and results
- Run validation
tutorials/start_validate.py - Generate logits
tutorials/load_results.py - Validation metrics
tutorials/start_validate.py - Perturbation logits
tutorials/load_results.py - Biological applications
Other components
- Researcher
Connections 23
- Researcher → Launch training: launches
- Researcher → Run validation: requests metrics
- Researcher → Generate logits: requests logits
- Launch training → Fine-tune trainer: starts training
- Fine-tune trainer → Run configuration: reads settings
- Cell dataset → Training dataset: reads profiles
- Cell dataset → Test dataset: reads profiles
- Cell dataset → Gene graphs: reads graph matrices
- Training loader → Cell dataset: loads batches
- Validation loader → Cell dataset: loads batches
- Fine-tune trainer → Training loader: iterates
- Fine-tune trainer → Validation loader: initializes
- Fine-tune trainer → Perturbation classifier: trains
- Fine-tune trainer → Model checkpoints: loads and saves
- Fine-tune trainer → Pretrained weights: loads if needed
- Perturbation classifier → Pretrained encoder: encodes cells
- Pretrained encoder → Transformer layers: applies layers
- Pretrained encoder → Count encoding: encodes counts
- Run validation → Validation metrics: evaluates
- Generate logits → Perturbation logits: produces
- Validation metrics → Test dataset: evaluates on
- Perturbation logits → Test dataset: scores perturbations
- Perturbation logits → Biological applications: supports discovery