Skip to content
DataCourt AI
Sign inAudit a dataset

DataCourt AI

Put your dataset on trial before your model pays the price.

Find the data hurting your model, understand why, review what matters first, and prove whether the fix actually helps.

Image classification datasets as ZIP folders. Private by default. No model training on your data outside your workspace.

Case #0014 · illustrativePossible relabel

train/circle/img_0412.png is labelled “circle”.

Prosecution

Out-of-fold baseline predicts “triangle” (p = 0.91); 9 of 10 nearest neighbours are triangles.

Defence

Image quality is normal; the sample is not isolated, so a rare-but-valid explanation is weak.

Jury ruleR5 · consistent alternative label
Witness reliability (kNN / baseline)0.71 / 0.64
Suggested actionRelabel → triangle (needs human)
MeasuredModel predictionHeuristicHuman decision
The problem

Models inherit every flaw in their data, and most tools stop at a list of suspicious images.

Flagging is the easy part. What teams actually need is to know which findings are real, which matter for the model, which to look at first with limited review time, and whether fixing them improves anything measurable.

Leakage inflates metrics

A resized copy of a training image in the test split makes the model look better than it is.

Mislabels teach the wrong thing

A few percent of wrong labels move decision boundaries and hide real errors.

Shortcuts pass validation

If every “star” has a blue border, the model can learn the border and still score well.

Rare is not wrong

Unusual but valid examples look like outliers. Deleting them makes the model more brittle.

Evidence, not guesses

Every number says where it came from.

DataCourt labels each output with its type. Scores and verdicts come from deterministic, versioned algorithms. An optional language model can phrase an explanation, but it never produces a score or a verdict, and numbers it adds that are not in the evidence get flagged.

Audits record the exact algorithm versions and configuration they ran with, so results can be reproduced and compared across releases.

Measuredhashes, image statistics, split overlap
Heuristicversioned rules and thresholds
Model predictionout-of-fold baseline predictions
Model estimateinfluence, what-if effects
LLM explanationplain-language summaries only
Human decisionthe only thing that changes data
The DataCourt workflow

From suspicion to a proven, versioned fix.

  1. 01
    Find

    Quality defects, duplicate families, split leakage, suspicious labels, shortcuts, coverage gaps and privacy flags.

  2. 02
    Explain

    Every finding carries its evidence: which witness said what, how reliable that witness is, and the thresholds used.

  3. 03
    Prioritise

    A deterministic jury turns evidence into cases, and the Review Budget orders them by expected value per minute.

  4. 04
    Review

    Humans decide with keyboard-first review, multi-reviewer consensus and expert adjudication.

  5. 05
    Test

    The What-if Lab retrains the baseline on the changed dataset and measures a preserved holdout set.

  6. 06
    Prove

    Hash-chained evidence ledger, versioned algorithms, Dataset Debt, preflight gate and an audit report.

  7. 07
    Export

    A new dataset version built from final human decisions, with manifest, action log and checksums.

Case Court

Findings become cases with a prosecution, a defence and a rule-based jury.

A case shows the evidence for the problem and the evidence against it, including the rare-but-valid hypothesis. A deterministic jury weighs witnesses by how reliable they proved to be on this dataset and records which rule fired. Nothing is deleted or relabelled automatically.

Witnessesbaseline, kNN, centroid, dynamics, influence
Witness weightchance-corrected reliability on this dataset
Juryordered rules R1–R10 with a full trace
VerdictsKEEP · REVIEW · STRONG REVIEW · POSSIBLE RELABEL · LIKELY RARE · …
Final sayhuman reviewers, with consensus and adjudication
Review Budget

Spend review time where it changes the most.

Given a budget in minutes or items, the optimiser picks cases by expected impact per minute, with diminishing returns so one duplicate family or one class cannot absorb the whole budget. You can optimise for label errors, leakage or a balance.

Measured on DataCourt’s synthetic benchmark with injected, known errors. Real-world gains depend on the dataset. See evaluation.

55
reviews to find 80% of injected label errors
vs. ~895 in random order (synthetic benchmark)
26
reviews to find 50%
vs. ~560 in random order
Model-to-Data Blame Map

Trace model failures back to the training data that caused them.

For each evaluation error, DataCourt estimates which training samples pushed the model toward the wrong answer, and connects them to open cases. Influence is an approximation on a linear head, labelled as a model estimate. It is not a causal proof.

Evaluation failurea star predicted as “circle”
Harmful training samplesranked by TracIn on the baseline head
Linked evidenceopen label cases and duplicate families
Failure Replayretrain after fixes and see whether it flips
What-if Lab

Test a cleanup before you commit to it.

Apply proposed changes to a copy, retrain the baseline and compare metrics on a holdout set that no action touched. DataCourt says plainly when an improvement is within training noise instead of claiming a win.

Actionsrelabel · remove copies · move leakage · protect rare
Evaluation setsoriginal · preserved holdout · cleaned
Uncertaintypaired training bootstrap + evaluation CI
Controlsrandom-removal baseline for comparison
Dataset Debt

A running balance of what is wrong with your data.

Debt has published formulas and thresholds. It goes down as reviewers resolve cases, is snapshotted per version, and feeds a preflight gate (ready, ready with warnings, or blocked) and data contracts that CI can query.

Leakage debtevaluation samples with training copies
Label debtunresolved strong label cases
Redundancy debtexcess copies within families
Shortcut debtstrength of class–cue associations
Coverage & quality debtgaps and defective images
Active Collection Planner

Know what to collect next, not just what to delete.

A coverage map groups the embedding space into regions and compares classes and conditions such as lighting, resolution and background. Under-covered combinations become concrete collection requests.

Gap typeclass × condition, sparse region, rare class
Exampletriangles are rarely photographed in low light
Recommendationhow many more to collect, and of what
Evidencecoverage map regions and condition tables
Version Intelligence

Every export is a new version, compared against the last one.

Clean exports are registered and audited automatically, so you can see what a cleanup actually changed, whether debt fell, and whether the data drifted in ways nobody intended.

Difffiles · labels · splits · classes
Issuesleakage fixed / new · label cases resolved / new
Dataset DNAversioned fingerprint and drift signals
Contaminationoverlap with your benchmark versions
Security & privacy

Your data stays in your workspace.

Originals are immutable and every change is traceable in a hash-chained ledger. Reports are technical audit aids, not legal or compliance certifications. Read the security model.

Tenancyorganisation-scoped, role-based access
UploadsZIP bomb, path traversal and type checks
Storageprivate bucket, short-lived signed URLs
SessionsHttpOnly cookies, CSRF header, rate limits
Deletionworkspace and account deletion, retention policy
Privacy scanface / text detectors, no identity recognition
Methodology

Measured on a benchmark with known answers.

A seeded generator plants duplicates, cross-split leakage, label errors, rare valid examples, a colour shortcut, quality defects and coverage gaps, then scores DataCourt against the ground truth. The numbers come from the built-in CPU descriptor backend. They show the method works on controlled data, not how it will perform on any given real dataset.

Methodology · Full evaluation and limitations

1.00 / 0.98
duplicate pair precision / recall
exact, resized, photometric, flipped, cropped
1.00 / 1.00
leakage pair precision / recall
0.74
label-error average precision
random ranking ≈ 0.04
0%
rare-but-valid samples recommended for removal

Open, inspectable, reproducible.

The source, algorithms, benchmark generator and evaluation scripts are on GitHub. Run the benchmark yourself and check every number on this page.