Pharmacophore-conditioned diffusion model generating 3D molecular graphs that satisfy a given pharmacophore hypothesis without a target structure.
No providers recorded yet. Browse all providers
PharmaDiff is a pharmacophore-conditioned diffusion model for 3D molecular generation, developed by Amira Alakhdar, Barnabas Poczos, and Newell Washburn at Carnegie Mellon University. It addresses the case that dominates early drug discovery for less-studied targets: no experimental structure of the protein is available, but medicinal chemists can articulate a pharmacophore — the spatial arrangement of hydrogen-bond donors and acceptors, hydrophobic groups, and aromatic rings that a ligand must present in order to bind.
Prior pharmacophore-guided generators worked mostly in SMILES space. PGMG conditions on a 3D pharmacophore hypothesis but emits a string, so the spatial constraint is only approximately honored and must be recovered afterward by conformer generation; TransPharmer and REINVENT 4 condition on fingerprints or reference-molecule similarity rather than geometry. PharmaDiff instead generates atoms directly in 3D Euclidean space, with the pharmacophore represented as an atom-level graph and injected into every layer of the denoiser, so the constraint is enforced by the same coordinates the model is producing.
Because the conditioning signal is a pharmacophore rather than a pocket, PharmaDiff occupies a different niche from pocket-conditioned generators such as PocketXMol and from multimodal designers like Molexar: it can be pointed at a target for which only ligand-derived knowledge exists, and it needs no protein structure at sampling time.
PharmaDiff extends the MiDi architecture, a stack of 12 SE(3)-equivariant graph transformer layers combining relaxed equivariant message passing with encoding and decoding MLPs, and adds cross-attention between the generated molecular graph and the pharmacophoric graph. Training used GEOM-DRUGs — over 450,000 drug-sized molecules averaging 44.4 atoms (24.9 heavy) and reaching 181 atoms — split 80/10/10, with the five lowest-energy conformers per molecule and a random 3-to-7-feature pharmacophore subset extracted by RDKit per conformer. On the ligand-based benchmark, PharmaDiff records validity 0.8823, uniqueness 0.9933, novelty 0.9989, mean match score 0.8964, and a perfect-match rate of 0.6990, with 80.5% of molecules scoring at least 0.8; validity trails SMILES-based baselines that exceed 0.94 but is in line with other 3D generators. On the structure-based benchmark against DiffSBDD-cond across VEGFR2 (1YWN), CDK6 (2EUF), BRD4 (3MXF), and TGFB1 (6B8Y), it wins average Vina score on all four targets and top-100 score on three, with consistently lower synthetic accessibility scores.
The model suits early-stage hit generation against targets with ligand data but no usable structure — orphan GPCRs, membrane proteins, and newly implicated targets — where a pharmacophore can be distilled from known actives or from the literature. Because the output is a 3D conformer already positioned against the hypothesis, generated molecules can be docked or scored without a separate embedding step. Computational chemists can also use it for scaffold hopping, holding a pharmacophore fixed while sampling structurally unrelated molecules that satisfy it.
PharmaDiff shows that geometric pharmacophore conditioning, applied inside a 3D diffusion process, recovers much of the binding-affinity signal normally obtained from an explicit pocket — a useful result for the large fraction of targets that structural methods cannot reach. The evaluation is entirely in silico, resting on docking scores and RDKit-derived property estimates with no experimental validation, and the structure-based comparison covers four targets. The work is an arXiv preprint and has not been peer reviewed. Training and sampling code are released under the MIT license, with QM9 and GEOM checkpoints distributed via Google Drive and the processed GEOM training data deposited on Zenodo under CC BY 4.0.
Much of this page is generated or calculated automatically. Flag anything that looks off and we will re-run it.