Downloads · 30 days
0
lighteternal/psychgnn-masked-edge-imputation-model
psychgnn-masked-edge-imputation-model is a tabular classification model from lighteternal. Use it for the tabular classification task on the model card, and read the license before you ship it in a product. It is set up for pytorch. The card lists the license as cc-by-4.0.
This repository contains a heterogeneous graph neural network trained to recover masked SNP-disorder links within a psychiatric cross-disorder graph.
Downloads · 30 days
0
Access
Public
Updated Apr 8, 2026
Repo size
8.2 MB
Likes
0
Public
Click a slice to open those files.
.pt4.1 MB · 100%
From the Hugging Face model README
This repository contains a heterogeneous graph neural network trained to recover masked SNP-disorder links within a psychiatric cross-disorder graph.
The model is intended for variant-level research use. It does not predict patient-level diagnosis, prognosis, or treatment response.
The training and evaluation task is disorder-conditional masked-edge imputation:
This task answers a specific question:
given a psychiatric variant already represented in the graph, can the model recover missing cross-disorder links from the rest of the graph structure?
The checkpoint was trained on:
The harmonized dataset was derived from public OpenMed / PGC Hugging Face repositories, including:
The underlying graph contains 11 modeled disorder groups:
At inference time the checkpoint can score any of these disorders for variants present in the graph artifact.
The model is a custom heterogeneous GraphSAGE-style network over three node types:
Message passing uses:
This release uses no disorder-disorder edges.
The checkpoint contains two task heads:
Best hyperparameters:
19230.27.5e-41e-51Checkpoint metadata:
745-0.0018490.094672Graph metadata for this release:
18,9791,2051122,68765,63405e-8100,000 bpPrimary masked-edge benchmark:
0.98050.98180.93790.9759Per-disorder benchmark coverage:
| Disorder | AUROC | AP | Test edges |
|---|---|---|---|
| ADHD | 0.9707 | 0.9698 | 56 |
| Anxiety | 0.9907 | 0.9920 | 350 |
| Bipolar | 0.9929 | 0.9919 | 544 |
| MDD | 0.9899 | 0.9898 | 244 |
| Schizophrenia | 0.9623 | 0.9674 | 604 |
Disorders not included in the masked-edge metric table because the current graph did not provide enough stable maskable positives for this benchmark:
| Baseline | Test AUROC | Test AP |
|---|---|---|
| Disorder prevalence | 0.5000 | 0.5000 |
| Variant degree | 0.5661 | 0.6184 |
| Additive prior | 0.5430 | 0.5402 |
| Low-rank SVD | 0.5994 | 0.6413 |
The checkpoint expects:
These are provided by the associated public graph artifact.
For a scored (variant, disorder) pair, the model produces:
The primary output of this release is the masked-edge link score.
Minimal checkpoint loading:
import torch
from huggingface_hub import hf_hub_download
ckpt_path = hf_hub_download(
"lighteternal/psychgnn-masked-edge-imputation-model",
"model.pt",
repo_type="model",
)
checkpoint = torch.load(ckpt_path, map_location="cpu", weights_only=False)
print(checkpoint["hyperparams"])
print(checkpoint["feature_dims"])
print(checkpoint["report"]["masked_split"]["test_auroc"])
To run inference, instantiate a heterogeneous GraphSAGE-style model matching the architecture above, load checkpoint["state_dict"], and score variant-disorder pairs against lighteternal/psychgnn-psychiatric-graph.
model.ptevaluation_report.jsonReasonable uses:
Inappropriate uses: