A valid SMILES string, a drug-like property profile and a favourable docking-style score are three different achievements.

None is a biological result.

That distinction is the most important lesson from revisiting my university project on target-conditioned molecule generation for FGFR2 in intrahepatic cholangiocarcinoma.

The project connected a conditional variational autoencoder, a multimodal protein representation, a modified binding-score predictor and TeachOpenCADD-inspired filtering into one computational pipeline. It generated structures, calculated molecular descriptors, applied a project-defined threshold and passed selected examples into an optimisation stage.

As a software project, it demonstrated that the components could be integrated.

As a drug-discovery claim, the original report sometimes moved too quickly from generated to promising, and from predicted score to language resembling efficacy. A more defensible reconstruction separates every rung of the evidence ladder.

This article does that reconstruction. It also corrects the clinical context around FGFR2 and defines what a stronger second iteration would need to prove.

1. Start with the evidence ladder

A de novo molecular pipeline can produce several kinds of success.

They should not be collapsed.

Stage Question Example evidence What it does not prove
Decode validity Is the generated representation chemically parseable? RDKit accepts the SMILES and valence rules Novelty, activity or synthesizability
Uniqueness Is it non-duplicate within the generated set? Canonical structure not repeated Difference from training data or known chemistry
Novelty Is it absent from the chosen comparison set? No match under the defined lookup Useful novelty or freedom to operate
Property screen Does it fall inside chosen descriptor ranges? MW, LogP, TPSA, QED, Lipinski-style rules Target binding, safety or efficacy
Predicted interaction Does a model or docking function rank it favourably? Score, pose or learned affinity estimate Measured binding or selectivity
Experimental hit Does it bind or modulate the target in an assay? Biochemical or cellular result Exposure, safety or clinical benefit
Lead Can potency, selectivity and developability be improved reproducibly? Iterative medicinal chemistry and assays A medicine
Candidate or treatment Does the full preclinical and clinical evidence support use? Regulatory-quality evidence Guaranteed benefit for every patient

The project reached the first five computational stages in a limited form.

It did not reach an experimental hit.

That does not make the work worthless. It changes the correct nouns.

The outputs are generated molecules, retained records, screen passes and model-ranked examples. They are not validated drugs.

2. The target was selected manually

The original project title referred to automated target selection, but the methodology selected FGFR2 manually from the intrahepatic cholangiocarcinoma literature.

That is an important correction.

FGFR2 was a reasonable case study because fusions or rearrangements in the gene define an actionable molecular subgroup of intrahepatic cholangiocarcinoma. The clinical relevance of the target is supported by FGFR inhibitors developed for previously treated patients with qualifying alterations.

But selecting a known actionable target from published evidence is not the same task as discovering and validating a target automatically.

A genuine target-selection system would need to integrate and rank evidence such as:

  • genetic association and tumour dependency;
  • disease-specific expression;
  • pathway position;
  • tractability and binding sites;
  • existing chemical matter;
  • safety liabilities;
  • patient prevalence;
  • resistance mechanisms;
  • and independent biological validation.

It would also need prospective tests showing that its ranking identifies targets better than simpler baselines.

The project began after that decision. It was a target-conditioned generation and screening study.

3. The clinical comparators need precise labels

The original report grouped several targeted therapies too loosely.

The corrected context is:

  • pemigatinib is an FGFR1–3 inhibitor approved for previously treated unresectable locally advanced or metastatic cholangiocarcinoma with an FGFR2 fusion or other rearrangement;
  • futibatinib is an FGFR inhibitor approved for a corresponding FGFR2 fusion/rearrangement population;
  • ivosidenib targets mutant IDH1, not FGFR2;
  • infigratinib was historically approved for FGFR2-altered cholangiocarcinoma in the United States, but that indication was withdrawn in May 2024.

These are not cosmetic corrections. A target-conditioned model should be evaluated against the biology and chemistry of the target it claims to address.

The original report’s comparison with infigratinib can remain as a dated record of what was used in the coursework. The current article should not describe it as a presently approved benchmark.

4. What the implemented pipeline did

The project drew on TargetVAE’s idea of conditioning ligand generation on a protein representation.

The referenced architecture used a Protein Multimodal Network to combine sequence and three-dimensional structural information. Ligands were represented through graph and fingerprint branches, and a variational autoencoder generated molecular representations conditioned on the target.

The project explored an additional condition pathway and connected the generator to a multi-stage workflow:

01
Manual target selection
02
Protein sequence and structure representation
03
Conditional molecular generation
04
Validity and descriptor calculation
05
Project-defined property score
06
Predicted interaction score
07
Analogue or optimisation stage
08
Retained output

TeachOpenCADD was useful here as a model for transparent, modular computational workflows. It is a teaching and pipeline-template platform, not a guarantee that a particular assembled workflow has been validated for a new target.

The project also modified the final head of a binding-score network from one scalar output to multiple outputs intended to include an affinity-style score and pose-distance values.

Both models were trained under constrained conditions:

  • ConditionalVAE: one fold, 130 epochs;
  • binding-score model: one fold, 100 epochs;
  • laptop Nvidia RTX 3070;
  • limited time and no systematic hyperparameter or seed study.

The correct conclusion is implementation feasibility, not generalisation.

5. The denominators matter more than the headline

The report states that the generation run requested or produced 1,000 molecular entities.

The archived property table used for the public analysis contains 100 valid molecular records.

Seventeen of those 100 records met the project-defined threshold:

The project’s composite screen used a threshold of drug_score_total0.7\mathrm{drug\_score\_total} \ge 0.7.

The defensible statement is therefore:

Seventeen of the 100 valid archived records passed the project’s composite property screen.

The following statements are not supported without a complete manifest:

  • the generator had 10% validity;
  • 17 of all 1,000 generations were druggable;
  • 17% of the full run were active against FGFR2.

The missing information is the disposition of every requested output.

A generation manifest should include:

Field Purpose
generation_id Stable identity for every request
raw_decode Preserves model output
parse_status Valid or invalid representation
canonical_smiles Deduplication key
duplicate_of Explains removal
retained_for_analysis Defines the archive
rejection_reason Makes filtering auditable
model_checkpoint Reproduces source model
random_seed Reproduces sampling
target_id Confirms conditioning target

Without that table, the 1,000 and 100 counts describe different populations.

6. Generator metrics and screen metrics answer different questions

The archived set reported:

  • diversity: 0.92;
  • uniqueness: 1.00;
  • novelty: 1.00;
  • validity: 1.00.

Those values can be useful when their definitions and reference sets are explicit.

Validity

Validity asks whether the retained representation can be interpreted as a chemically valid molecule under the software’s rules.

Because the table already contains valid retained records, 1.00 archived validity may partly reflect selection into the archive. It should not be projected onto the unobserved full generation run.

Uniqueness

Uniqueness asks whether canonicalised outputs repeat within the analysed set. It says nothing about whether the molecules are useful.

Novelty

Novelty depends on the comparison set and matching rule. Absence from one training set or database does not establish scientific novelty, patentability or synthetic accessibility.

Diversity

Diversity measures spread under a chosen molecular similarity representation. A diverse set can still occupy an irrelevant region of chemical space.

Property screen

The project combined descriptors such as molecular weight, hydrogen-bond donors and acceptors, LogP, TPSA, rotatable bonds, saturation, QED and Lipinski-style compliance.

These are triage signals. They help remove implausible or inconvenient structures and describe the distribution of the generated set.

They do not test FGFR2 activity.

A compound can satisfy every rule and fail to bind. A useful drug can also fall outside simple oral-drug heuristics. The screen should therefore be named after the implemented rule, not treated as a clinical category.

That is why the public chart now uses:

  • Met project screen
  • Did not meet project screen

rather than druggable and non-druggable.

Split violin plots of eleven molecular properties for 100 valid archived records, comparing 83 molecules that did not meet the project screen with 17 that did, plus a summary panel. Threshold drug_score_total greater than or equal to 0.7. Diversity 0.92, uniqueness, novelty and validity 1.00 within the archived set.Split violin plots of eleven molecular properties for 100 valid archived records, comparing 83 molecules that did not meet the project screen with 17 that did, plus a summary panel. Threshold drug_score_total greater than or equal to 0.7. Diversity 0.92, uniqueness, novelty and validity 1.00 within the archived set.
Property distributions for the 100 valid archived records. Seventeen met the project screen (drug_score_total ≥ 0.7). Summary metrics are scoped to this archived analysed set.

7. A predicted score is a ranking signal

The appendix reports an example change from −4.8 to −5.1 kcal/mol between an input and an optimised output.

The output also changed several calculated descriptors:

Property Input Output
Molecular weight 205.305 245.37
LogP 1.72 3.13
QED 0.72 0.82
Total project score 0.80 0.86
TPSA 41.06 18.51

This shows that the optimisation code changed the molecule in the direction preferred by its objective.

It does not establish an affinity improvement of 0.3 kcal/mol in the physical world.

Docking and learned scoring functions are approximations. Their performance varies by target class, data distribution, pose quality and training labels. A score can be useful for ranking within a carefully controlled workflow while remaining poorly calibrated as an absolute free energy.

A stronger interpretation is:

Under the project’s own computational objective, the example output ranked more favourably than the input.

The next test should be independent.

For example:

  • rescore with a method not used during optimisation;
  • compare multiple poses;
  • estimate uncertainty;
  • test against known actives and property-matched decoys;
  • check whether the model retrieves held-out FGFR2 ligands;
  • then perform a biochemical assay on a small prospective set.

Using the same score to optimise and validate a molecule creates circular evidence.

8. One fold cannot establish generalisation

The project used a single fold because time and compute were limited.

That is understandable for coursework, but it leaves several unanswered questions:

  • Would the result survive a different random seed?
  • Does performance depend on close analogues appearing in both train and test data?
  • Does the model generalise to unseen protein targets?
  • Does it generalise to new molecular scaffolds?
  • Is the modified head better than the original scalar head?
  • Is the conditional path better than an unconditional generator followed by filtering?
  • Does the model beat a nearest-neighbour or simple fingerprint baseline?

MoleculeNet and later benchmark work emphasise that split strategy matters. Random splits can make molecular prediction appear stronger when close chemical neighbours leak across the boundary. Scaffold-aware and target-held-out tests are more informative for the claims this project wanted to make.

A redesigned evaluation should include:

  • multiple seeds;
  • scaffold splits;
  • target-held-out splits where appropriate;
  • unmodified architecture baselines;
  • simple similarity and fingerprint baselines;
  • confidence intervals;
  • a frozen prospective evaluation set.

9. The next pipeline should preserve rejection evidence

Generative projects often publish only the molecules that survive.

That makes the system difficult to audit.

The improved pipeline should preserve every rejection stage:

01
Requested
02
Decoded
03
Parsed
04
Canonicalised
05
Deduplicated
06
Property-complete
07
Screen-passed
08
Interaction-scored
09
Independently rescored
10
Selected for assay

Each arrow should have a count and a reason code.

A useful run report would look like:

Stage Count Main rejection reasons
Requested samples
Parsed molecules invalid valence, decode failure
Unique molecules duplicate canonical structure
Property-complete calculation failure
Passed descriptor screen threshold components
Passed structural alerts reactive or undesirable motifs
Independently rescored pose or score failure
Selected for assay diversity and uncertainty rule

The current archive supports the middle of this table, not the complete funnel.

10. A defensible validation plan

A stronger second iteration would use four independent layers.

Layer 1: software and data integrity

  • immutable dataset versions;
  • canonical target identifiers;
  • complete generation manifest;
  • deterministic descriptor calculation;
  • saved seeds and checkpoints;
  • unit tests for filtering and deduplication.

Layer 2: retrospective computational validation

  • known FGFR2 actives and property-matched decoys;
  • scaffold and target splits;
  • multiple seeds;
  • baseline models;
  • enrichment and ranking metrics;
  • uncertainty and calibration.

Layer 3: prospective computational triage

  • generate against a frozen model;
  • remove duplicates and training-set neighbours;
  • structural-alert and synthesizability checks;
  • independent docking or rescoring;
  • cluster for diversity;
  • select molecules before seeing assay outcomes.

Layer 4: experimental validation

  • confirm identity and purity;
  • biochemical FGFR2 binding or inhibition assay;
  • counterscreens against related FGFRs and unrelated targets;
  • cellular activity in an appropriate model;
  • early ADME and toxicity tests.

Only the fourth layer can turn a model-ranked structure into an experimental hit.

11. What the original project was good for

The strongest part of the project was not that it discovered a drug.

It was that it exposed the interfaces between several computational stages:

  • protein representation;
  • molecular generation;
  • descriptor calculation;
  • property filtering;
  • predicted interaction;
  • optimisation;
  • and result archiving.

Once those interfaces exist, the evaluation can be improved without rebuilding everything.

The project also taught a broader lesson that applies beyond drug discovery:

A pipeline is not validated because every component runs. It is validated when each transition has evidence appropriate to the claim made after it.

A parser validates syntax. A descriptor validates a calculation. A benchmark evaluates prediction. A biochemical assay measures activity. A clinical study evaluates a treatment.

Replacing one with another is not acceleration. It is a category error.

12. Final assessment

The project should be presented as a computational research prototype.

It successfully connected target-conditioned generation, property analysis and model-based ranking. It produced an archived set of valid molecules, separated 17 of 100 records under a declared property threshold and demonstrated an example optimisation under its own scoring objective.

It did not validate automated target discovery, FGFR2 binding, selectivity, developability or treatment efficacy.

That narrower conclusion is stronger because it is reproducible and falsifiable.

The next version should not start by making the generator larger. It should start by making the evidence chain complete.

References

[1] P. Adejo, “Automated target selection and de novo drug generation: report and appendix,” 2025. [Online]. [Accessed: Aug. 2, 2026].

[2] P. Adejo, “fgfr2-generative-drug-discovery repository,” GitHub. [Online]. [Accessed: Aug. 2, 2026].

[3] Ngo and Hy, “Multimodal protein representation learning and target-aware variational auto-encoders for protein-binding ligand generation.”

[4] D. Sydow et al., “TeachOpenCADD,” 2022.

[5] Z. Wu et al., “MoleculeNet: a benchmark for molecular machine learning.”

[6] Handa et al., “On the difficulty of validating molecular generative models.”

[7] U.S. Food and Drug Administration, “Pemigatinib (PEMAZYRE) prescribing information,” 2020. [Online]. [Accessed: Aug. 2, 2026].

[8] U.S. Food and Drug Administration, “Futibatinib (LYTGOBI) prescribing information,” 2022. [Online]. [Accessed: Aug. 2, 2026].

[9] U.S. Food and Drug Administration, “Ivosidenib (TIBSOVO) for IDH1-mutated cholangiocarcinoma,” 2021. [Online]. [Accessed: Aug. 2, 2026].

[10] U.S. Food and Drug Administration, “Withdrawal of the infigratinib (TRUSELTIQ) cholangiocarcinoma indication,” May 2024. [Online]. [Accessed: Aug. 2, 2026].

[11] Guedes et al., “New machine learning and physics-based scoring functions for drug discovery.”