Beyond Random Splits: Evaluating Drug-Target Affinity Models Under Chemically and Biologically Motivated Distribution Shifts Copy
Organizations: Georgia Institute of Technology
Abstract
Drug-target affinity (DTA) prediction is widely used to prioritize candidate compounds before costly experimental screening. DTA models are often compared under a single data split, even though deployment may require extrapolation to new chemical series, new protein targets, or both. We ask whether the distribution shift used for evaluation changes which architecture appears best. We curate 718,800 unique drug-protein pairs from the ChEMBL and BindingDB datasets. We compare a Morgan-fingerprint + protein-CNN baseline with 12 controlled architectures that combine four drug representations with three ESM-2 interaction modes. Mean validation RMSE increases from 0.950 and 0.945 under scaffold and fingerprint-cluster OOD to 1.299 and 1.321 under protein-cluster and dual OOD. Model rankings are similar across the two chemical shifts (tau = 0.79), but agreement with scaffold OOD falls under protein OOD (tau = 0.39) and reverses under dual OOD (tau = -0.55). Held-out evaluation, repeated seeds, group-aware bootstrap analysis, and a size-matched control support the same conclusion: architecture selection depends on the form of extrapolation, not only on average error or training-set size. DTA benchmarks should therefore match the chemical and target shifts expected at deployment.
Figures & tables
Appendix figures & tables7 assets
Supplementary material from the paper’s appendix.
Appendix
| Regime pair | Spearman |
|---|---|
| Scaffold vs. Fingerprint | 0.895 |
| Scaffold vs. Protein | 0.448 |
| Scaffold vs. Dual OOD | -0.727 |
| Fingerprint vs. Protein | 0.434 |
| Fingerprint vs. Dual OOD | -0.769 |
| Protein vs. Dual OOD | -0.476 |
| Split | Validation RMSE | Held-out test RMSE |
|---|---|---|
| Scaffold | 1.0355 | 1.1175 |
| Fingerprint | 1.0968 | 1.1802 |
| Protein | 1.2505 | 1.3359 |
| Dual OOD | 1.4700 | 1.4853 |
| Model | Protein 511k | Protein 352k | Dual 352k |
|---|---|---|---|
| ECFP+AttnPool | 1.2728 | 1.3652 | |
| GCN+CrossAttn | 1.3595 | 1.2728 |
| Architecture | Drug encoder | Protein / fusion mode | Batch size | Trainable params |
|---|---|---|---|---|
| ECFP+MeanPool | ECFP4 | MeanPool MLP | 2048 | 1.04M |
| ChemBERTa+MeanPool | ChemBERTa | MeanPool MLP | 2048 | 0.62M |
| ECFP+AttnPool | ECFP4 | Dot-product AttnPool | 128 | 1.17M |
| ECFP+CrossAttn | ECFP4 | CrossAttn | 128 | 2.09M |
| ChemBERTa+AttnPool | ChemBERTa | Dot-product AttnPool | 128 | 0.74M |
| ChemBERTa+CrossAttn | ChemBERTa | CrossAttn | 128 | 1.66M |
| Architecture | Scaffold | Fingerprint | Protein | Dual OOD |
|---|---|---|---|---|
| ECFP + MeanPool | 0.9523 | 0.9511 | 1.2977 | 1.3221 |
| ChemBERTa + MeanPool | 0.9633 | 0.9490 | 1.2858 | 1.3286 |
| ECFP + AttnPool | 0.8815 | 0.9034 | 1.2728 | 1.3652 |
| ECFP + CrossAttn | 0.9286 | 0.9441 | 1.2749 | 1.3604 |
| ChemBERTa + AttnPool | 0.9362 | 0.9250 | 1.2925 | 1.3112 |
| ChemBERTa + CrossAttn | 0.9192 | 0.9186 | 1.3091 | 1.3341 |
| Architecture | Scaffold | Fingerprint | Protein | Dual OOD |
|---|---|---|---|---|
| ECFP + MeanPool | 0.9872 | 0.9615 | 1.3823 | 1.3599 |
| ECFP + AttnPool | 0.9234 | 0.8905 | 1.3713 | 1.4948 |
| ECFP + CrossAttn | 0.9738 | 0.9551 | 1.3703 | 1.4349 |
| ChemBERTa + MeanPool | 0.9969 | 0.9469 | 1.3360 | 1.4143 |
| ChemBERTa + AttnPool | 0.9622 | 0.9307 | 1.4080 | 1.3625 |
| ChemBERTa + CrossAttn | 0.9594 | 0.9228 | 1.3098 | 1.3883 |