Views
No views yet
| Model | Dataset | Features | AUROC | F1 | Size |
|---|---|---|---|---|---|
xgb_precomputed.json | songlab/clinvar | 8 precomputed scores | 0.982 | 0.941 | ~391 KB |
rf_protein.pkl | Rain021217/clinvar-pathogenicity | 20 protein features | 0.888 | 0.509 | ~19 MB |
lr_protein.pkl | Rain021217/clinvar-pathogenicity | 20 protein features | 0.880 | 0.356 | ~1 KB |
1import pickle
2import numpy as np
3import xgboost as xgb
4
5# Load XGBoost model (best AUROC)
6model = xgb.XGBClassifier()
7model.load_model("xgb_precomputed.json")
8
9# Load preprocessing artifacts
10with open("xgb_precomputed_imp.pkl", "rb") as f:
11 imputer = pickle.load(f)
12with open("xgb_precomputed_scaler.pkl", "rb") as f:
13 scaler = pickle.load(f)
14
15# Example input: [GPN-MSA, CADD, phyloP-100v, phyloP-241m, phastCons-100v, ESM-1b, NT, HyenaDNA]
16# (obtain from VEP / precomputed tracks / songlab/clinvar)
17sample = np.array([[1.5, 0.3, 0.7, -1.2, 0.1, -2.5, -0.8, 0.0]])
18sample_imp = imputer.transform(sample)
19sample_scaled = scaler.transform(sample_imp)
20proba = model.predict_proba(sample_scaled)[0, 1]
21print(f"Pathogenic probability: {proba:.3f}")python inference.py --model xgb --input my_variants.csv --output scored_variants.csvpython app.pyopentargets/clinical_evidence:0.4*(max_phase/4) + 0.4*min(n_trials/10,1) + 0.2*min(n_datasources/5,1)therapy_score = 0.5*pathogenicity_proba + 0.3*has_known_trait + 0.2*consequence_severity| File | Description |
|---|---|
xgb_precomputed.json | Best model: XGBoost on precomputed scores (AUROC 0.982) |
rf_protein.pkl / lr_protein.pkl | Fallback models on protein features (no precompute needed) |
inference.py | Production inference script (--model xgb or rf) |
app.py | Gradio demo (single variant + batch CSV scoring) |
gene_disease_evidence.csv | 71,419 gene-disease pairs with evidence scores |
plots/*.png | ROC, PR, confusion matrix, feature importance, distributions, precision@k |
metrics_summary.json / extended_metrics.json | Full experiment results |
research_memo.md | Literature review + integration recommendation |



plots/ for all 6 evaluation figures.class_weight="balanced" for RF/LR; dataset is naturally ~55:45 for exp2Patient VCF
│
▼
[VEP Annotation]
│
├─► Precomputed scores available? ──► XGBoost (AUROC 0.982)
│
└─► Only protein sequence? ──► Random Forest (AUROC 0.888)
│
▼
[Gene-Disease Lookup] ──► OpenTargets evidence score
│
▼
[Tier Assignment] ──► Tier 1/2/3/4
│
▼
[OmniBiMol Backend API] ──► Top-k + confidence + evidence
│
▼
[UI Report] ──► Sortable table → drug repurposing → wet-lab handoff1@misc{omnibimol_variant_priority,
2 title = {OmniBiMol Variant Priority Pipeline},
3 author = {OmniBiMol Team},
4 year = {2025},
5 howpublished = {\url{https://huggingface.co/omshrivastava/omnibimol-variant-priority}}
6}