Protein-ligand binding affinity scorer using an SE(3)-equivariant graph network trained on 741,706 co-folded complexes with target-disjoint splits.
No providers recorded yet. Browse all providers
Pool protein-ligand complexes from many targets, correlate prediction against measured affinity, and a scoring function can look strong while knowing nothing about ligands. On the PDBbind v2020 refined set, 84.4% of the label variance sits between targets, so a predictor that emits each target's mean and ignores the ligand reaches r = 0.92. PandaDock-GNN is a binding-affinity model from Pritam Kumar Panda at Stanford University, reported explicitly against that trap with controls separating ligand knowledge from target memorization.
The model is the learned component of PandaDock, an open-source docking platform whose pose search is classical: ligand flexibility is a torsion tree, poses are sampled by Monte Carlo with Metropolis acceptance and relaxed by L-BFGS using analytic gradients from the derivative of the SO(3) exponential map, all scored against precomputed affinity grids. That engine carries no learned weights. PandaDock-GNN is the pretrained part — one fixed checkpoint, trained on 741,706 co-folded complexes and applied to complexes it never saw.
The division of labor is enforced. The empirical function selects poses; the GNN estimates the affinity of a pose already chosen, and the author documents that it does not transfer to pose ranking. That matters, because EquiScore, the closest architectural relative in the catalog, is built for exactly the rescoring job PandaDock-GNN is documented as unsuited to.
pandadock-gnn predict scores a pose from a checkpoint, with training
a separate command; the bundled download-model helper points at a v4.0.0 tag that was
never published, so the weights have to be fetched by hand from the v4.1.1 release.The network encodes protein and ligand atoms as 56-dimensional node features — element, SYBYL type, partial charge, hybridization, donor/acceptor flags and residue identity — and interactions as 23-dimensional edges with a Gaussian radial-basis expansion of distance. Six heterogeneous E(n)-equivariant layers at 256 hidden dimensions update features and coordinates, eight-head hierarchical attention pools the two graphs, and two heads predict pEC50 and a binary activity label from roughly seven million parameters. Training used AdamW with cosine annealing and early stopping, finishing in 39-45 hours on a single A10G. Preprocessing SAIR yielded 921,670 usable complexes, split by sequence into 741,706 training, 89,745 validation and 90,219 test complexes over 3,864, 483 and 483 disjoint targets; at inference the receptor is cut to 10 Å around the ligand centroid, as in training.
On the held-out SAIR split the paper reports pooled r = 0.407 with a median
within-target r of 0.237, against 0.541 for the target-mean control and 0.383 for the
ligand-only baseline. It transfers off its training distribution: r = 0.467 on 202
independent crystal structures with measured Ki, Kd, IC50 or EC50, and r = 0.531 on the
PDBbind v2020 refined set (n = 4,640), which appears nowhere in SAIR. A sibling checkpoint
trained on PDBbind alone reaches r = 0.690 on its own 624 held-out complexes. The checkpoints
attached to the v4.1.1 release appear to predate that evaluation: none has been updated since
2026-07-29, three weeks before the preprint posted, and the training configuration embedded in
pandadock_gnn_v4.pt — batch size 32, dropout 0.1, a 200-epoch budget stopped at epoch 61 with
a best validation Pearson r of 0.776, under a checkpoint directory named combined_200epochs —
does not match the protocol the paper describes.
The intended workflow is affinity estimation on geometry already committed to: dock a series with the empirical engine, or import poses from Vina, Glide or GOLD, then score the selected pose. That fits medicinal-chemistry triage, where the question is which analog to make next rather than where the ligand sits. The platform covers pose generation too — on 814 complexes across 14 target families the empirical function recovers a sub-2 Å pose for 33.7% of cases at rank 1 and 57.0% within the returned ensemble — so both halves come from one MIT-licensed Python package.
PandaDock is an unusually candid release. An earlier reported r = 0.88 on PDBbind was
withdrawn after being traced to a script that scored 50 alphabetically selected complexes and
rescaled predictions using the labels it then correlated against; a ULVSH result went the same
way once 96.1% of that dataset's compounds proved to share one censored label. The
remaining numbers are correspondingly modest: median within-target correlation runs 0.24 to
0.36, GNN rescoring picks worse poses than the empirical function (5.36 Å versus 2.09 Å median
RMSD), and on an independent 30-compound GABA-A series the GNN scores below AutoDock Vina.
Because SAIR structures carry no hydrogens, the released model is a heavy-atom model, not
interchangeable with checkpoints trained on protonated data. The preprint has not been peer
reviewed, but the released code and weights make most of each claim checkable — though the
per-complex predictions the availability statement places in benchmarking/ are not in the
repository, which carries the evaluation scripts and summary plots but no prediction tables.
Much of this page is generated or calculated automatically. Flag anything that looks off and we will re-run it.