Views
No views yet
Status: Pre-publication release. Author list, contact email, and paper link are placeholders and will be updated upon paper acceptance. See CITATION.md for the current placeholder citation.
evhost_best.pt contains the trained FusionClassifier weights and all hyperparameters required for inference.FusionClassifier — a multi-layer perceptron that fuses a 1920-dim Evo2 embedding (post-projection) with 211-dim hand-crafted genomic features (CUB, dinucleotide, CPB, AA frequency, host adaptation, zoonotic) through a 512-dim hidden layer.src/evhost/models/fusion.py for the implementation.1mkdir -p models
2curl -L "https://huggingface.co/Adorably/EVHost/resolve/main/evhost_best.pt" -o models/evhost_best.pthuggingface_hub1from huggingface_hub import hf_hub_download
2import torch
3
4ckpt_path = hf_hub_download(
5 repo_id="Adorably/EVHost",
6 filename="evhost_best.pt",
7 local_dir="models",
8)
9checkpoint = torch.load(ckpt_path, map_location="cpu", weights_only=False)1import torch
2from evhost.models import FusionClassifier
3checkpoint = torch.load("models/evhost_best.pt", map_location="cpu", weights_only=False)
4model = FusionClassifier(
5 d_evo=checkpoint["d_evo"],
6 k_bio=checkpoint["k_bio"],
7 d_bio=checkpoint["d_bio"],
8 fusion_hidden=checkpoint["fusion_hidden"],
9 evo_reduced_dim=checkpoint["evo_reduced_dim"],
10 cpb_dim=checkpoint["cpb_dim"],
11 cpb_compressed_dim=checkpoint["cpb_compressed_dim"],
12).to("cpu")
13model.load_state_dict(checkpoint["model_state_dict"])
14model.eval()
15# `embedding` is a 1920-dim Evo2 vector, `cpb` is a 256-dim codon-pair-bias vector,
16# `non_cpb` is a (211 - 256 → after compression) -dim concatenated feature vector.
17with torch.no_grad():
18 logit = model(embedding, cpb, non_cpb)
19 probability = torch.sigmoid(logit).item()examples/simple_prediction.py and scripts/predict_host.py.Homo sapiens host records); 64,081 unlabeled (all other hosts).nnPU correction (β = 0.1). An architecture-matched binary-cross-entropy variant (EVHost(BC)) is also trained for direct comparison with baselines.scripts/train/, configuration under configs/.| Model | F1 | Recall | Precision | ROC-AUC |
|---|---|---|---|---|
| EVHost (PU) | 0.789 | 0.994 | 0.665 | 0.953 |
| EVHost (BC) | 0.901 | 0.934 | 0.870 | 0.958 |
| BERT-infect (DNABERT) | 0.891 | 0.956 | 0.834 | — |
| BERT-infect (VIBE) | 0.813 | 0.955 | 0.706 | — |
| DeePaC-vir | 0.724 | 0.663 | 0.798 | — |
| Zoonotic rank | 0.928 | 0.955 | 0.903 | — |
| BLAST | 0.844 | 0.942 | 0.764 | — |
| kNN | 0.893 | 0.929 | 0.860 | — |