Pharmprint Evolution: 10K Bit Triplet Fingerprints

From Combined Bits to Individual Conformer Matching

Based on the original PharmPrint method (McGregor & Muskal, 1999, 2000)

3-Point Pharmacophore Triangles → 10K Bits

Each pharmacophore is a triangle of 3 features with specific distances:

d2 d3 d1 p1 p3 p2

7 Pharmacophore Types: A (acceptor), D (donor), N (negative), P (positive), H (hydrophobic), R (aromatic), X (other)

6 Distance Ranges: 2.0-4.5, 4.5-7.0, 7.0-10.0, 10.0-14.0, 14.0-19.0, 19.0-24.0 Å

~10,549 possible triangular pharmacophores → Each gets 1 bit → 10K bit fingerprint

Original Pharmprint
Many conformers
C1
C2
C3
C4
Individual 10K bit fingerprints
C1:
... (10K bits)
C2:
... (10K bits)
C3:
... (10K bits)
C4:
... (10K bits)
All conformer shapes superposed:
OR ALL BITS
Combined 10K bit fingerprint
... (10K bits)
Problem: Cannot identify which conformer matched
Polypharmprint Method
Hundreds of conformers
C1
C2
C3
C4
Keep each 10K bit fingerprint separate
Individual conformer shapes (kept separate):
C1 C2 C3 C4
Individual 10K bit fingerprints (kept separate)
C1:
... (10K bits)
C2:
... (10K bits)
C3:
... (10K bits)
C4:
... (10K bits)
Advantage: Can trace back to exact conformer that matched
Polypharmprint Matching Process
Query Molecule
C1
...
C2
...
C3
...
C4
...
BEST MATCH
Hit Molecule
C1
...
C2
...
C3
...
C4
...
Key Breakthrough:
We can access the exact starting 3D conformation of the matching conformer pharmprint, enabling dramatically more efficient exploration of the conformational space when aligning query and hit molecules. This transforms molecular alignment from a computationally expensive global search into a targeted, efficient process.

PharmCast version 10 · Eidogen-Sertanty

PharmCast: predicting the 3D fingerprint from the flat structure

This section follows the paper by Muskal and McGregor (2026) and reports PharmCast version 10.

A three-dimensional pharmacophore fingerprint records the binding features a molecule can present. It is a description of a hand in search of a glove. Because it is defined by presented features instead of two-dimensional structure, it identifies pharmacophoric similarity between structurally distinct compounds, which is what scaffold hopping and non-obvious me-too design require. The descriptor has nevertheless stayed a niche tool for thirty years, because its cost is dominated by conformer generation. We removed the conformational stage. PharmCast is a feedforward neural network that predicts all 10,549 bits of a PharmPrint ensemble fingerprint directly from a SMILES string.

This is not a new way of mapping pharmacophores. The features, the triplets and the 10,549-bit encoding are exactly the method described above. What changes is the cost of asking how similar two molecules are, and that cost is what has always bounded how much chemistry a comparison-driven pipeline could afford to look at.

Where the cost actually sits

Timed on catalog compounds, the conventional route requires 2.86 s per molecule, of which 2.82 s is conformer generation and 0.039 s is the fingerprint calculation itself. At that rate a five million compound collection is roughly five and a half core months. Since the bit calculation is only 1.7% of the total, accelerating it changes nothing; anything that materially moves the economics has to remove the conformational stage. PharmCast does that, and one fingerprint costs 0.288 ms in a library-scale batch. Starting from two SMILES strings, we obtain a similarity in 0.584 ms against 5.71 s for the conventional route.

RouteOne fingerprintFull screening collection, 4,653,831 compounds
Conformer ensemble plus reference calculation2.86 s3,697 core hours
PharmCast from SMILES0.288 ms29.3 minutes

All timings were measured on one machine, an Apple M3 Ultra with 28 CPU cores, 20 performance and 8 efficiency, a 60 core GPU and 256 GB of unified memory, running macOS 26.5.1 with PyTorch 2.9.1 on CPU. The GPU was not used, and both routes were timed on the same hardware. The 29.3 minute value was measured end to end against a reference at 2,644 compounds per second on six worker processes, including catalog reading and featurization; the 3,697 core-hour value is extrapolated from the per-molecule rate. Per-molecule cost depends on the batch regime: 0.288 ms in a library-scale batch, 0.357 ms processed alone.

0.980Pearson agreement with the reference calculation on screening collection chemistry
0.881median per molecule agreement on screening collection chemistry, as Matthews correlation coefficient
0.584 mstwo SMILES strings to a similarity, against 5.71 s
5,887,229molecules in the version 10 training set

The model

PharmCast is deliberately simple. The network takes a 2,048 bit binary Morgan fingerprint of radius 2 alongside 11 whole molecule descriptors, 2,059 inputs in all, and predicts all 10,549 pharmacophore bits through two hidden layers of 1,024 and 512 units, for 8.05 million parameters, trained by minimizing binary cross entropy. More elaborate learned representations, including graph convolutional and message-passing networks, may improve performance; we used a plain architecture to establish a reproducible baseline.

The approach is plausible for a specific reason. The ensemble fingerprint is an OR over conformations, so a bit records that a molecule can present a given triangle in some accessible conformation, without asserting that it presents it in any particular pose. That is closer to a property of molecular constitution than of any single geometry, and constitution is what a two-dimensional structure encodes. It is a weaker claim than predicting a conformer, which is why it is tractable where conformer prediction remains hard.

What it is trained on

Version 10 was trained on 5,887,229 molecules drawn from the three source sets, which together hold 5,946,696; a molecular-weight-stratified one percent was held back for early stopping, because mass is the principal axis on which the sources differ. Training ran for 100 epochs and restored the weights of epoch 68. The three sources carry different jobs: (i) the Enamine screening collection sets the catalog-like domain and supplies most of the mass; (ii) activity-backed ChEMBL compounds from 142 to 1000 Da bring chemistry that was synthesized, purified and assayed, which the catalog ingest filter excludes; and (iii) short protein loops excised from crystal structures supply conformational freedom, the median loop carrying 16 rotatable bonds against 5 for a collection compound.

SourceReference fingerprintsMass range
Screening collection4,609,48874 to 600 Da
ChEMBL, activity backed1,214,214142 to 1000 Da
Loop peptides136,494116 to 988 Da
Total5,960,19674 to 1000 Da

Each peptide fingerprint ORs together every deposited conformation of that loop alongside 100 computed conformers, so the record carries observed geometry as well as computed geometry. The peptide source contributes 136,494 reference fingerprints, of which 122,994 were used for training and 13,500 reserved for testing. The source sets continue to be fingerprinted as they grow, and subsequent models can incorporate the expanded sets.

How it is tested

Version 10 is evaluated on three chemically distinct populations, because pooling would conceal their different failure modes, and all three are unseen during training. (i) The screening collection set is drawn from 157,335 real, purchasable Enamine compounds from the June 2026 catalog that the training-set ingest filter excluded; canonical SMILES were compared against all 4,617,292 screening collection structures and the two matches removed, and of these 155,648 were fingerprinted and scored while 1,687 could not be embedded. (ii) ChEMBL is 139,700 activity-backed molecules not present in the version 10 training set. (iii) Loop peptides are 13,500 molecules, 9.9% of the full peptide set, reserved for testing and never trained on; sampling was stratified by sequence length, by molecular-weight quintile and by how many crystal conformations are deposited for that peptide, so the holdout and the training set share a median molecular weight of 576.6 Da. Pair statistics are estimated from five million pairs drawn from each population, and ranking accuracy from one million molecule triples.

How well it does

Accuracy is reported against the reference calculation's own reproducibility. Repeating that calculation on the same molecules with a different embedding seed gives a fingerprint error of 0.006 at Pearson 0.995, and no surrogate can be expected to do better than the target's own noise floor.

PopulationMolecules testedMedian MCCMedian errorPairs within 0.05Pearson rRanking accuracy
Screening collection155,6480.8810.00889.3%0.9800.936
Loop peptides13,5000.9140.01688.3%0.9840.952
ChEMBL, activity backed139,7000.8600.02774.8%0.9360.889
Reference against itself--0.006-0.995ceiling

Fingerprint error is the absolute difference between the predicted and the real Tanimoto for a pair of molecules; ranking accuracy is the fraction of molecule triples the surrogate orders as the reference calculation does. Pair statistics are estimated from five million pairs drawn from the whole of each population. Each population is reported separately, since pooling would obscure their different failure modes.

On the screening collection the median error of 0.008 sits close to the reference calculation's own reproducibility of 0.006. ChEMBL is the weakest population, with a median error of 0.027 and roughly one pair in four falling outside 0.05. The MCC column is agreement taken one molecule at a time, between the predicted and the real fingerprint bits; we use it in place of plain accuracy because the fingerprints are sparse, so a score over 10,549 bits would otherwise be carried by the bits that are zero in both.

The applicability domain

Error does not increase uniformly with molecular weight, so we stratified the held out molecules by mass. Screening collection agreement runs from 0.844 above 700 Da to 0.899 at 500 to 600 Da, and peptide agreement from 0.938 at 300 to 400 Da down to 0.867 above 700 Da. ChEMBL is measured only from 300 to 400 Da, where it reads 0.860 against 0.887 for screening collection compounds of the same size. Molecular weight alone therefore does not define the boundary; coverage and chemical class both matter, and ChEMBL is the most heterogeneous of the three sources. We state the applicability domain accordingly: version 10 is calibrated across 74 to 1000 Da, most tightly on screening collection chemistry and on loop peptides, and least tightly on the diversity of activity-backed ChEMBL chemistry. The model card shipped with the weights reports this, so a downloaded model is self describing.

It is predicting geometry, not restating its input

A surrogate given a two-dimensional fingerprint as input could simply restate two-dimensional similarity, which would make it useless for the one job a pharmacophore fingerprint exists to do. We tested that directly by stratifying pairs across bands of Morgan similarity, sampling equally by band so that the dissimilar majority cannot dominate the comparison. The 5,000 held out molecules form 12,497,500 pairs, and the figure draws 6,000 from each of the bands 0 to 0.1, 0.1 to 0.2, 0.2 to 0.3 and 0.3 to 0.5, together with all 1,165 pairs above 0.5, for 25,165 in total. Pearson agreement is 0.966, 0.981, 0.973, 0.959 and 0.942 across those bands, from the least 2D similar to the most. The draw has to be stratified because the library is not: in a uniform draw from the same split, 97.5% of pairs fall below 0.20, which would leave the 2D similar end of the panel nearly empty. This result is required for scaffold hopping, since a method that recovers only two-dimensional similarity cannot identify matches across unrelated scaffolds.

Sequence does not determine structure

Building the peptide corpus produced a result that runs against a common assumption. The sequence LGGK appears 217 times across 61 Protein Data Bank entries, and the 201 instances sharing the same 25 heavy atoms span a maximum backbone RMSD of 2.59 Angstrom. Their 20,100 pairwise comparisons have a median of 0.829 and fall into three families, near 0.31, near 0.58, and a dominant one near 0.87.

Using it as a search objective

A fast pharmacophore comparison can be used as a search objective. Using Orforglipron , an 883 Da non-peptidic reference, we screened the complete 4,653,831 compound catalog in 29.3 minutes and rescored the leading compounds with the reference calculation. The highest-scoring purchasable compound has an ensemble Tanimoto of 0.786 at 591 Da and a two-dimensional Morgan similarity of 0.113 to the reference, which supports a scaffold hop and not analog retrieval. Because 0.786 derives from the reference calculation, it is independent of the model version used for ranking.

Where it is weakest. The model predicts the ORed ensemble fingerprint. Where an application requires the matching geometry of a particular conformer, that must come from the reference calculation, which retains per conformer records; the surrogate stands in for the ensemble and not for the conformers behind it. Performance is lowest outside catalog-like chemistry, and agreement declines at the upper end of the mass range, where the corpus is thinnest. Predicted similarities carry a small positive bias from systematic overprediction of set bits, which does not affect ranking but should be considered when applying absolute thresholds. Predicted similarity also inflates under optimization pressure, since a search that maximizes it selects the molecules the model overestimates; we therefore recommend the surrogate for ranking, the reference calculation for final decisions, and a broad survivor set for rescoring. The screening collection has a median nearest-neighbor similarity of 0.714, so held-out molecules drawn from it are not fully independent of the training corpus, and the in-domain values describe performance on chemistry of the same kind.

PharmCast is joint work with Malcolm McGregor, and the method underneath is the PharmPrint work described above, published with him in J. Chem. Inf. Comput. Sci. 1999, 39, 569-574 and 2000, 40, 117-125. The code, model utilities and documentation are public at github.com/smuskal/pharmcast under Apache-2.0, which covers both code and model weights. Trained weights are distributed from pharmcast.ai. For the library these models are trained and tested on, see the screening collection profile. For a campaign that uses pharmacophoric similarity as its objective, see the ChIP project.

References

Original PharmPrint Method: