Vitiligo Relational GNN (RGAT-4H + ComplEx) & Stage-2 Wide-and-Deep Curative Reranker
A heterogeneous multi-relational Graph Attention Network (RGAT-4H + asymmetric ComplEx Hermitian decoder) and Stage-2 Wide-and-Deep Cross-Encoder Reranker (DenseCurativeReranker) built by The Vitiligo Initiative for disease-modifying vitiligo drug discovery, $CD8^+ T_{\text{RM}}$ resident-memory disarmament, melanocyte stem-cell (McSC) mobilization, PDE4B non-responder barrier suppression, and mechanistically orthogonal combination synergy screening.
- Source Code: github.com/recepsirin/vitiligo-initiative
- Knowledge Graph: re-cep/vitiligo-knowledge-graph (18,494 entities, 92,420 relations)
- Relation Extractor Checkpoint: re-cep/vitiligo-relation-extractor
1. Architecture Overview
Standard vitiligo therapies (such as topical corticosteroids or monotherapy JAK inhibitors) provide repigmentation, but relapse occurs in over 40% of patients upon drug cessation because pathogenic resident memory T cells ($CD8^+ T_{\text{RM}}$) remain anchored in the epidermis, while non-responding lesions face molecular barriers (such as PDE4B elevation by $+9.09 \log_2\text{FC}$ in GSE256271).
Stage 1: Multimodal Relational Graph Attention Network (relational_gnn.pt)
- 1,936-Dimensional Multimodal Node Representations across 18,494 Entities:
- 768-D Contextual Text Embeddings: Fine-tuned BioRED BiomedBERT encoder (
re-cep/vitiligo-relation-extractor). - 1,024-D Chemical Structural Fingerprints: Morgan / ECFP4 bit-vectors ($r=2$) extracted from canonical SMILES (PubChem + ChEMBL) via RDKit.
- 128-D Protein Functional Families: Multi-hot protein domain representations from HGNC/UniProt.
- 16-D Multi-Cohort Human Transcriptomics & Genetics (18 GEO Series, 622 Patient Samples):
GSE311770: 105 human 1mm skin punch biopsies (lesional vs. non-lesional $\log_2\text{FC}$ and $-\log_{10} p$).GSE256271: Paired responder vs. non-responder clinical biopsy RNA-seq (PDE4B$+9.09 \log_2\text{FC}$ barrier).GSE150954: Hair follicle bulge melanocyte stem cell (McSC) phototherapy mobilization ($\log_2\text{FC}$).GSE344141: Fluoxetine 5-HT1A serotonergic McSC melanogenesis fold-change.GSE298871: Single-cell RNA-seq pseudobulk differentials across Melanocytes, $CD8^+ T_{\text{RM}}$, Keratinocytes, Fibroblasts, Tregs, and Langerhans/cDC1 cells.- Inverse-variance DerSimonian-Laird random-effects meta-analysis across 12 human bulk case-control cohorts ($Z$-score, pooled $\log_2\text{FC}$, direction consistency, cross-cohort SD) + quantitative GWAS Catalog risk locus weights.
- 768-D Contextual Text Embeddings: Fine-tuned BioRED BiomedBERT encoder (
- 4-Head Relational Graph Attention (
RGAT-4H) +ComplExHermitian Link Decoder in $\mathbb{C}^{64}$:- Edge-weighted message passing scaled by causal hierarchy (
posted_resultRCTs $\rightarrow$chembl_mechanism$\rightarrow$geo_punch_biopsies$\rightarrow$wikipathways/go$\rightarrow$ literature assertions). - Asymmetric Hermitian inner product in $\mathbb{C}^{64}$: $$\text{score}(h, r, t) = \text{Re}\left( \langle h, r, \bar{t} \rangle \right)$$
- Trained with mini-batch SGD (
batch_size=8,192), inverse square-root relation-frequency balancing, and tail-typed self-adversarial negative sampling ($\beta = 1.0$).
- Edge-weighted message passing scaled by causal hierarchy (
Stage 2: Wide-and-Deep Cross-Encoder Reranker (dense_reranker.pt)
A standardized Wide-and-Deep cross-encoder ($1,172\text{D} \rightarrow 32\text{D} \rightarrow 1\text{D}$ with per-fold $z$-score feature standardization and $L_2$ weight decay $= 0.15$) fusing:
- 1,024-D Morgan (ECFP4) chemical structural fingerprints
- 128-D
RGAT-4H + ComplExlatent node representations - Direct
(Drug, TREATS, Vitiligo)link prediction score - 8-D $T_{\text{RM}}$ durability disarmament profile (
IL15,JAK1,JAK3,STAT1,STAT3,CD8A,ITGAE,CGAS) - 7-D Melanocyte stem-cell regeneration profile (
CTNNB1,WNT1,MITF,EDNRB,KIT,HTR1A,TYR) - 3-D Non-responder barrier suppression profile (
PDE4B,PDE4A,PLA2G12A) - 1-D Transcriptomic signature alignment with
GSE256271responder-exclusive genes
2. Benchmark Performance
Stage 1 GNN Link Prediction (Held-Out Test Split, 9,231 Edges)
| Metric / Relation | Filtered MRR | Type-Constrained MRR | Hits@1 | Hits@3 | Hits@10 |
|---|---|---|---|---|---|
| Global All-Relation (Test) | 0.1016 | 0.1129 | 7.18% | 10.62% | 19.31% |
INVESTIGATES (Trial $\rightarrow$ Disease) |
1.0000 | 1.0000 | 100.0% | 100.0% | 100.0% |
TREATS (Drug $\rightarrow$ Disease) |
0.5112 | 0.5250 | 49.6% | 52.0% | 53.9% |
CAUSES (Adverse/Trigger $\rightarrow$ Disease) |
0.3519 | 0.3694 | 31.7% | 36.2% | 40.2% |
EXPRESSED_IN (Target $\rightarrow$ Cell Type) |
0.1906 | 0.4150 | 10.7% | 21.4% | 39.3% |
ACTIVATES (Drug/Target $\rightarrow$ Target) |
0.1353 | 0.1610 | 10.7% | 15.0% | 22.3% |
INHIBITS (Drug/Target $\rightarrow$ Target) |
0.1087 | 0.1235 | 7.4% | 11.1% | 21.7% |
CO_EXPRESSED_WITH (Gene $\leftrightarrow$ Gene) |
0.0495 | 0.0680 | 2.2% | 4.6% | 11.8% |
PARTICIPATES_IN (Target $\rightarrow$ Pathway) |
0.0258 | 0.0652 | 0.8% | 2.0% | 5.9% |
Stage 2 Wide-and-Deep Curative Reranker (5-Fold Stratified Out-of-Fold CV)
- 5-Fold Stratified Out-of-Fold AUROC:
0.9490(separating targeted disease-modifying & regenerative therapeutics from acute palliative corticosteroids and non-dermatologic decoys) - 5-Fold Out-of-Fold Accuracy:
85.7%
3. Top Stage-2 Reranked Curative Candidates
| S2 Rank | S1 Rank | Candidate Drug | Prob | Rerank Logit | Curative Triad Alignment | Key Targets (* = Verified in KG) |
|---|---|---|---|---|---|---|
| 1 | 183 | baricitinib | 0.999 |
7.08 |
Pillar 1: TRM Disarmament + Pillar 2: Stem-Cell Regeneration | JAK1 (Inh*), JAK3 (Inh*), STAT1 (Inh*), STAT3 (Inh*), CD8A (Inh*) |
| 2 | 219 | temsirolimus | 0.999 |
6.97 |
Supportive Immunomodulator | JAK1 (Inh), PDE4A (Inh) |
| 3 | 65 | itacitinib | 0.999 |
6.87 |
Pillar 1: TRM Disarmament + Pillar 3: PDE4B Barrier Suppression | JAK1 (Inh*), PDE4A (Inh) |
| 4 | 18 | ruxolitinib | 0.999 |
6.49 |
Pillar 1: TRM Disarmament | IL15 (Inh*), JAK1 (Inh*), JAK3 (Inh*), STAT3 (Inh*), CD8A (Inh*) |
| 5 | 259 | apremilast | 0.998 |
6.21 |
Pillar 1: TRM Disarmament + Pillar 3: PDE4B Barrier Suppression | JAK1 (Inh*), PDE4B (Inh*), PDE4A (Inh*) |
| 6 | 176 | Povorcitinib phosphate | 0.998 |
6.10 |
Supportive Immunomodulator | JAK1 (Inh), PDE4A (Inh) |
| 7 | 280 | cyclosporine | 0.998 |
6.02 |
Pillar 1: TRM Disarmament | CD8A (Inh*) |
| 8 | 207 | afamelanotide | 0.997 |
5.89 |
Supportive Immunomodulator | MITF (Act), TYR (Act) |
| 9 | 300 | tofacitinib | 0.997 |
5.83 |
Pillar 1: TRM Disarmament + Pillar 3: PDE4B Barrier Suppression | IL15 (Inh*), JAK1 (Inh*), JAK3 (Inh*), STAT1 (Inh*), CD8A (Inh*) |
| 10 | 432 | SIROLIMUS | 0.997 |
5.70 |
Pillar 1: TRM Disarmament + Pillar 2: Stem-Cell Regeneration + Pillar 3: PDE4B Barrier Suppression | CD8A (Inh*), MITF (Act*), TYR (Act*), JAK1 (Inh), PDE4A (Inh) |
| 13 | 677 | methotrexate | 0.996 |
5.43 |
Pillar 1: TRM Disarmament | JAK1 (Inh*), ITGAE (Inh*), IL15 (Inh), CD8A (Inh) |
| 14 | 705 | tacrolimus | 0.995 |
5.35 |
Pillar 1: TRM Disarmament + Pillar 2: Stem-Cell Regeneration | CD8A (Inh*), MITF (Act*), EDNRB (Act*), KIT (Act*), TYR (Act*) |
| 15 | 837 | upadacitinib | 0.995 |
5.35 |
Pillar 1: TRM Disarmament | JAK1 (Inh*), JAK3 (Inh*), CD8A (Inh*) |
| 16 | 137 | crisaborole | 0.995 |
5.32 |
Pillar 2: Stem-Cell Regeneration + Pillar 3: PDE4B Barrier Suppression | TYR (Act*), PDE4B (Inh*), PDE4A (Inh*) |
| 17 | 11 | Roflumilast | 0.995 |
5.26 |
Pillar 3: PDE4B Barrier Suppression | PDE4B (Inh*), PDE4A (Inh*) |
| 18 | 341 | CERDULATINIB | 0.994 |
5.11 |
Pillar 1: TRM Disarmament + Pillar 3: PDE4B Barrier Suppression | JAK1 (Inh*), JAK3 (Inh*), CD8A (Inh), PDE4A (Inh) |
| 19 | 636 | latanoprost | 0.994 |
5.09 |
Pillar 2: Stem-Cell Regeneration | TYR (Act*), JAK1 (Inh) |
| 20 | 212 | RITLECITINIB TOSYLATE | 0.994 |
5.09 |
Pillar 1: TRM Disarmament + Pillar 2: Stem-Cell Regeneration + Pillar 3: PDE4B Barrier Suppression | JAK3 (Inh*), JAK1 (Inh), MITF (Act), PDE4A (Inh) |
4. Top Mechanistically Orthogonal 2-Drug Synergistic Regimens
| Rank | Immune Reset ($T_{\text{RM}}$ Disarmer) | Regenerative / Barrier Adjuvant | Score | Mechanism Synergy (* = Verified) |
Delivery & Safety Rationale |
|---|---|---|---|---|---|
| 1 | ruxolitinib | Roflumilast | 3.913 | JAK1*, IL15*, CD8A* + PDE4A (Inh*), PDE4D (Inh*), PDE4B (Inh*) |
Orthogonal Dual Regimen: JAK1/2 $T_{\text{RM}}$ reset + PDE4B non-responder barrier reversal |
| 2 | tofacitinib | Roflumilast | 3.885 | JAK1*, IL15*, CD8A* + PDE4A (Inh*), PDE4D (Inh*), PDE4B (Inh*) |
Orthogonal Dual Regimen: JAK1/3 reset + PDE4B barrier reversal |
| 3 | ruxolitinib | crisaborole | 3.719 | JAK1*, IL15*, CD8A* + TYR (Act*), PDE4A (Inh*), PDE4D (Inh*) |
Targeted Oral/Topical + Topical PDE4/Melanogenic Adjuvant |
| 4 | tofacitinib | crisaborole | 3.692 | JAK1*, IL15*, CD8A* + TYR (Act*), PDE4A (Inh*), PDE4D (Inh*) |
Targeted Oral + Topical Adjuvant |
| 5 | baricitinib | Vilazodone Hydrochloride | 3.528 | JAK1*, CD8A*, JAK3* + HTR1A (Act*), PDE4A (Inh), PDE4D (Inh) |
Orthogonal Dual Regimen: JAK1/2 reset + 5-HT1A serotonergic McSC awakening |
| 6 | delgocitinib | Vilazodone Hydrochloride | 3.527 | JAK1*, STAT3*, JAK3* + HTR1A (Act*), PDE4A (Inh), PDE4D (Inh) |
Pan-JAK topical reset + 5-HT1A McSC mobilization |
| 7 | baricitinib | apremilast | 3.463 | JAK1*, CD8A*, JAK3* + PDE4A (Inh*), PDE4D (Inh*), PDE4B (Inh*) |
Orthogonal Dual Regimen: JAK1/2 reset + oral PDE4B barrier suppression |
| 8 | delgocitinib | apremilast | 3.462 | JAK1*, STAT3*, JAK3* + PDE4A (Inh*), PDE4D (Inh*), PDE4B (Inh*) |
Topical pan-JAK + oral PDE4B barrier suppression |
| 9 | CERDULATINIB | Rosiglitazone | 3.364 | JAK1*, JAK3*, CD8A + EDNRB (Act*), MITF (Act), DCT (Act) |
Dual SYK/JAK reset + PPAR$\gamma$/EDNRB melanocyte stem-cell activation |
| 10 | CERDULATINIB | fluoxetine | 3.362 | JAK1*, JAK3*, CD8A + HTR1A (Act*), MITF (Act), TYR (Act) |
Dual SYK/JAK reset + 5-HT1A serotonergic melanogenesis (GSE344141) |
5. Usage
from vitiligo.gnn.dataset import load_graph_dataset
from vitiligo.gnn.train import load_trained_gnn
from vitiligo.gnn.rerank import rerank_curative_candidates
from vitiligo.gnn.screen import screen_candidates
# 1. Load enriched 18,494-node dataset and trained RGAT-4H + ComplEx GNN
dataset = load_graph_dataset()
model = load_trained_gnn("relational_gnn.pt")
# 2. Run Stage-1 Functional Screen & Orthogonal Combination Synergy Engine
screen = screen_candidates(model=model, dataset=dataset, top_k=20)
# 3. Run Stage-2 Wide-and-Deep Cross-Encoder Reranking
reranked = rerank_curative_candidates(gnn_model=model, dataset=dataset, top_stage1=80, top_final=20)
for cand in reranked["top_candidates"]:
print(f"Rank {cand.stage2_rank}: {cand.drug_name} | Prob: {cand.probability:.3f} | {cand.curative_triad_alignment}")
6. Citation & License
Developed as part of The Vitiligo Initiative under the MIT License. Repository: github.com/recepsirin/vitiligo-initiative.