MitoInteract

Research recovery in progress. The published v1 checkpoint is deprecated and must not be used to rank compounds or guide experiments.

MitoInteract is an experimental protein-ligand binding-affinity project. Its primary data-quality track now derives exact Kd source records directly from SHA-256-pinned BindingDB curated-article exports, preserving units, censoring, assay joins, citations, and source identities. The earlier BALM/BALM-benchmark BindingDB_filtered configuration remains the prior derived pKd benchmark and the only track with current split/baseline results.

A separate forensic track uses a generic pAffinity target from jglaser/binding_affinity. That source combines Ki, Kd, IC50, and EC50; it is not pKd and is retained only for failure analysis and pipeline diagnostics. See recovery/DATA_PROVENANCE.md.

The published v1 checkpoint did not complete a meaningful training run. Its validation correlations were negative, its evaluation set contained only 16 pairs, and its model card overstated the architecture and intended use. The weights remain for provenance only. See AUDIT.md.

Current status

The recovery branch provides:

  • immutable Kd-only and mixed-affinity source revisions with SHA-256 checksums;
  • a source-aware BindingDB 202607 adapter that emitted 87,315 provenanced records and 2,432 exact, assay-joined Kd source records over 2,198 unique pairs;
  • ligand canonicalization and exact protein-ligand pair aggregation;
  • replicate counts, IQRs, ranges, and source-row identifiers;
  • random-pair, exact cold-protein, MMseqs2 homology-cold, and cold-scaffold manifests;
  • train-mean and single-modality controls;
  • character n-gram ridge and Morgan/protein-descriptor LightGBM baselines;
  • a corrected LayerNorm-based v2 head with standardized targets;
  • pinned ESM-2 and ChemBERTa revisions, long-protein chunking, and cached frozen embeddings;
  • safe safetensors output for new trainable weights;
  • tested default guards against unsafe or scientifically invalid v1 inference.

No v2 neural checkpoint has earned a performance claim.

Primary source-aware Kd data track

The BindingDB 202607 curated-articles pilot processes 93,712 publisher rows into 87,315 source records while preserving measurement type, relation operator, assay mapping, citation, source release, and deterministic source-row identity. Its strict projection contains 2,432 exact, assay-joined Kd source records over 2,198 canonical protein–ligand pairs. These records have not been aggregated across assays, split, benchmarked, or used to train a model. See recovery/BINDINGDB_SOURCE_AWARE.md and the checked source audit.

Prior derived Kd benchmark

Source:

  • dataset: BALM/BALM-benchmark, configuration BindingDB_filtered;
  • revision: 84e07e27a093181ee89c97a0d7a45482803aa9bd;
  • source SHA-256: d0f8691a96876f09766e574c5600df55f0d0b1c11cfd1705faf841d924f89f20;
  • 24,700 source rows and 20,477 canonical protein-ligand pairs;
  • 1,069 unique protein sequences and 9,163 canonical ligands;
  • 2,020 duplicated pairs, of which 2,019 have differing labels;
  • median pKd aggregation per canonical pair.

The released CSV does not retain original Kd values, units, censoring operators, assays, or source records. Its Kd-only status therefore depends on BALM/TDC provenance and cannot be independently reconstructed from the file.

Morgan/protein-descriptor LightGBM

These are development results on fixed 70/10/20 manifests. They are not an external or prospective benchmark.

Split Mean RMSE ↓ Combined RMSE ↓ Pearson ↑ Spearman ↑
Random pair 1.4698 0.8452 0.8196 0.7846
Exact protein-disjoint 1.5118 1.2276 0.6014 0.5493
Protein-similarity-disjoint, MMseqs2 50% 1.4247 1.3181 0.3881 0.3069
Ligand scaffold-disjoint 1.4352 1.0103 0.7095 0.6501

The combined descriptor model beats the mean and both ligand-only and protein-only descriptor controls by RMSE on every manifest. This is the minimum baseline a neural model must beat. Full details and reproduction commands are in recovery/KD_RECOVERY.md.

Run the recovery checks

cd recovery
uv sync --dev
uv run pytest -q

Prepare the immutable Kd-only benchmark:

uv run python scripts/prepare_balm_kd.py \
  --csv /path/to/BindingDB_filtered/data.csv \
  --output-dir artifacts/balm-kd

uv run python scripts/cluster_proteins.py \
  --data-dir artifacts/balm-kd \
  --min-seq-id 0.5 \
  --coverage 0.8 \
  --seed 42 \
  --threads 8

uv run python scripts/run_baselines.py \
  --data-dir artifacts/balm-kd \
  --target-key pkd \
  --target-name pKd \
  --output artifacts/balm-kd/baselines.json

uv run python scripts/run_descriptor_baselines.py \
  --data-dir artifacts/balm-kd \
  --target-key pkd \
  --target-name pKd \
  --output artifacts/balm-kd/descriptor-baselines.json

MMseqs2 is required for the sequence-similarity split. Generated data, embeddings, predictions, and weights are intentionally excluded from Git.

v2 architecture under evaluation

The bounded neural recovery experiment uses frozen, revision-pinned encoders:

  • protein: facebook/esm2_t12_35M_UR50D;
  • ligand: DeepChem/ChemBERTa-77M-MLM;
  • fusion: projected protein and ligand vectors plus elementwise product and absolute difference;
  • regression: LayerNorm-based MLP over a training-standardized target;
  • serialization: trainable head in safetensors, with encoder revisions and target scaler stored separately.

Proteins longer than ESM-2's context are divided into residue chunks and pooled with length weighting instead of being silently truncated. This is reproducible, but it does not prove the representation captures a binding site.

Release gates

A neural checkpoint cannot replace v1 until it:

  1. Beats the descriptor baseline and both single-modality controls on homology-cold and ligand-similarity-cold splits.
  2. Passes a cold-both protein-cluster × ligand-cluster stress test.
  3. Reports micro and macro-target metrics with cluster-bootstrap confidence intervals.
  4. Repeats grouped split seeds and neural training seeds.
  5. Validates on data retaining original Kd values, units, relation operators, assay identifiers, and dates.

Intended use

Acceptable use:

  • reproducing the failure analysis;
  • testing protein-ligand affinity pipelines;
  • comparing leakage-aware splitting strategies;
  • developing and auditing computational baselines.

Unacceptable use:

  • ranking compounds for laboratory work;
  • estimating clinical activity, safety, dosage, or efficacy;
  • claiming specificity for mitochondrial apoptosis proteins;
  • treating a predicted pKd or pAffinity as experimental evidence;
  • loading full_model.pt from an untrusted source.

Legacy v1 facts

Item Recovered value
Training pairs 32
Validation pairs 16
Optimizer steps approximately 16
Configured warmup steps 500
Pearson -0.9107
Spearman -0.5000
RMSE 7.0257 in the undocumented legacy target scale
MAE 6.8183 in the undocumented legacy target scale

The original README claimed ESM-2 650M, while the checkpoint used ESM-2 35M. The original full_model.pt is a Python pickle loaded with weights_only=False; it is retained only as a legacy artifact. model.py blocks that load and blocks invalid legacy inference unless the caller explicitly acknowledges the risks.

References

Downloads last month
75
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Datasets used to train ethanolivertroy/MitoInteract

Paper for ethanolivertroy/MitoInteract