Lipophilicity from structure
Predict octanol-water distribution (lipophilicity) for 4,200 AstraZeneca compounds, scored by mean absolute error.
State the problem, from Therapeutics Data Commons ADMET benchmark group
Browse files+55 −0 README.md added View file
| @@ -0,0 +1,55 @@ | ||
| 1 | +# Lipophilicity from structure | |
| 2 | + | |
| 3 | +Lipophilicity — how a compound divides itself between oil and water — sets much of the rest of a drug’s behaviour: how it dissolves, how fast it is metabolised, where it ends up. This benchmark asks for the measured value from the structure. | |
| 4 | + | |
| 5 | +## Task | |
| 6 | + | |
| 7 | +Given a compound as a SMILES string, predict its lipophilicity, reported by TDC as a log-ratio (the labels run from $-1.5$ to $4.5$). Submissions are scored by mean absolute error on the held-out test set, so lower is better. | |
| 8 | + | |
| 9 | +## Background | |
| 10 | + | |
| 11 | +The dataset comes from AstraZeneca’s 2016 release of in vitro DMPK and physicochemical measurements on publicly disclosed compounds, and reached wide use through MoleculeNet; TDC includes 4,200 of those compounds. It is measured on one assay in one laboratory, which makes it unusually consistent for a public ADMET set — the residual error is closer to real model error than to disagreement between data sources. | |
| 12 | + | |
| 13 | +## Data and evaluation | |
| 14 | + | |
| 15 | +TDC ships the group as one archive (`admet_group`, Harvard Dataverse file 4426004), loaded with | |
| 16 | +`admet_group(path='data/')` from the `tdc.benchmark_group` module. The group’s `lipophilicity_astrazeneca` folder holds 3,360 `train_val` and 840 `test` rows (4,200 distinct SMILES, matching TDC’s page). | |
| 17 | + | |
| 18 | +The split is a scaffold split: TDC holds out a fixed 20% test set (here 840 of 4,200 rows in | |
| 19 | +the group’s files), and the remaining `train_val` part is split again per seed by | |
| 20 | +`group.get_train_valid_split(benchmark=name, split_type='default', seed=seed)` into 87.5% training | |
| 21 | +and 12.5% validation. The leaderboard asks for five independent runs with seeds 1, 2, 3, 4 and 5; | |
| 22 | +`group.evaluate_many` then reports the mean and the standard deviation of the per-seed test scores, | |
| 23 | +rounded to three decimals. The test set never changes, so only the training split moves with the seed. | |
| 24 | + | |
| 25 | +The metric is mean absolute error, $\mathrm{MAE} = \frac{1}{n}\sum_{i=1}^{n} |y_i - \hat{y}_i|$, computed by TDC’s `Evaluator(name='mae')` on the test set; lower is better. | |
| 26 | + | |
| 27 | +Official evaluation code: [`tdc/benchmark_group/base_group.py`](https://github.com/mims-harvard/TDC/blob/main/tdc/benchmark_group/base_group.py) | |
| 28 | +in the TDC repository (MIT licence), whose `evaluate` and `evaluate_many` methods are what the | |
| 29 | +leaderboard numbers come from. The dataset page gives the licence as "Not Specified. CC BY 4.0". | |
| 30 | + | |
| 31 | +## What is known | |
| 32 | + | |
| 33 | +- Best on the leaderboard: MiniMol, MAE $0.456 \pm 0.008$ (Kläser, Banaszewski et al., 2024). | |
| 34 | +- Next: Chemprop-RDKit, $0.467 \pm 0.006$, then plain Chemprop, $0.470 \pm 0.009$ (Yang et al., 2019). | |
| 35 | +- Twenty-one entries are listed, from MAE $0.456$ to $0.743$. The leading four sit within $0.025$ of each other, and graph neural networks hold all of them. | |
| 36 | + | |
| 37 | +## What would count as progress | |
| 38 | + | |
| 39 | +- A mean MAE on TDC’s fixed test set that beats MiniMol (MAE 0.456), averaged over the official | |
| 40 | + seeds 1-5 and produced by `group.evaluate_many`, with the five per-seed numbers reported as well. | |
| 41 | +- The training and inference code, the environment and the fitted model, so that the five runs can be | |
| 42 | + repeated end to end from the `train_val` part alone. | |
| 43 | +- Evidence that the gain is larger than run-to-run noise: the gap between the top two entries here is | |
| 44 | + 0.011 log units, so a difference smaller than the reported standard deviation is not a result. | |
| 45 | + | |
| 46 | +## References | |
| 47 | + | |
| 48 | +1. AstraZeneca, "Experimental in vitro DMPK and physicochemical data on a set of publicly disclosed compounds" (2016), deposited in ChEMBL as AZ_dataset. [doi:10.6019/CHEMBL3301361](https://doi.org/10.6019/CHEMBL3301361) | |
| 49 | +2. Wu, Z. et al., "MoleculeNet: a benchmark for molecular machine learning", *Chemical Science* 9 (2018), 513–530. [doi:10.1039/C7SC02664A](https://doi.org/10.1039/C7SC02664A) | |
| 50 | +3. Kläser, K., Banaszewski, B. et al., "MiniMol: A Parameter-Efficient Foundation Model for Molecular Learning", arXiv:2404.14986 (2024). [arxiv.org/abs/2404.14986](https://arxiv.org/abs/2404.14986) | |
| 51 | +4. Yang, K. et al., "Analyzing Learned Molecular Representations for Property Prediction", *Journal of Chemical Information and Modeling* 59 (2019), 3370–3388. [doi:10.1021/acs.jcim.9b00237](https://doi.org/10.1021/acs.jcim.9b00237) | |
| 52 | + | |
| 53 | +## Source | |
| 54 | + | |
| 55 | +Imported from [TDC ADMET benchmark group, Lipophilicity_AstraZeneca](https://tdcommons.ai/benchmark/admet_group/05lipo/), curated by Therapeutics Data Commons (Harvard). Open according to the source as of 2026-10-20. The statement above is written in our own words; see the source for the original wording, history and discussion. | |