Split Unit

A split unit is the entity that must stay on one side of a train, validation, or test split. It is often broader than one example.

If maps example to a split unit, then a leakage-safe split requires:

Examples sharing the same split unit should not be separated across train and test.

Examples

Task TypeCandidate Split UnitClaim It Tests
Molecule propertystandardized molecule, scaffold, molecular clustergeneralization beyond near-duplicate chemistry
Molecule-target activityscaffold, target, assay, source, target familynew chemistry, new target, or new assay context
Protein sequencesequence identity cluster, protein family, domain familygeneralization beyond close homologs
Structure-based modelingprotein family, ligand scaffold, complex pair, pocket familynew proteins, new ligands, or new binding contexts
Docking and pose rankingreceptor, ligand scaffold, complex, generated pose grouppose quality on unseen complexes rather than duplicate decoys
Genome sequencelocus, chromosome, region cluster, species, time/source batchnew genomic regions rather than overlapping windows
Document tasksource document, author, collection, time periodnew sources rather than memorized passages
User-event taskuser, session, device, time blocknew users or periods rather than event duplicates

Checks

  • What entity defines the generalization claim?
  • Is the split unit broader than the row identifier?
  • Are near-duplicates grouped before splitting?
  • Are preprocessing, scaling, and threshold choices fit only on train?
  • Does the paper or benchmark report the split unit explicitly?
  • Does validation use the same unit type as the final test claim?
  • Are multiple unit types needed, such as scaffold and protein family?

Multi-Axis Splits

Some datasets need more than one grouping axis. For protein-ligand modeling, a leakage-safe split may require grouping both sides:

The split rule should state whether it holds out new proteins, new ligands, new pairs, new assays, or a combination.

Generalization Claims

A split unit is not only a data-engineering choice. It names the claim that the result can support.

Split RuleSupported ClaimUnsupported Claim
random row splitinterpolation over similar observed rowsnovel scaffold, novel family, or deployment shift
scaffold splitnew molecular seriesnew protein target unless targets are also held out
protein-family splitnew protein familiesnew chemistry unless ligand similarity is controlled
time splitfuture-like deployment from past datatarget or scaffold novelty unless grouped
source splitrobustness across datasets or assaysbroad biological generalization without label harmonization
paired holdoutnew entity pair combinationsnew entities unless each side is also held out

When a paper reports a headline metric, read it as:

The score is weaker or stronger depending on what the split unit excludes.

Split Before Preprocessing

Grouping should happen before any operation that can collapse or leak information across train and test:

  • Deduplicate and standardize identifiers according to the public contract.
  • Build grouping keys such as scaffold, sequence cluster, target family, assay source, or locus.
  • Assign groups to train, validation, and test.
  • Fit scalers, vocabularies, thresholds, feature selectors, or imputers on training data only.
  • Generate or cache representations with split-aware provenance.