Check and clean a dataset

Find what's wrong with a dataset before training does it for you, and fix it with rules you can rerun.

Label typos, empty images, duplicates across splits, blurry frames and mislabeled objects are cheap to fix before training and expensive to discover after. OvalBee has nodes that profile a dataset, point at the suspicious parts, and fix what the findings show — all as regular nodes, so the same checks run again on the next batch of data.

Profile a dataset

Dataset Annotation quality

The Dataset quality control template is the smallest useful flow in OvalBee: a dataset and an Annotation quality node. Its report shows how many images carry labels, how classes balance across splits, how objects are sized and placed, and a list of findings that need a look — unlabeled images, labels outside the frame, duplicate images, leakage between splits, rare and possibly misspelled classes.

Two more nodes look at other sides of the data:

  • Image quality measures every image from its pixels — sharpness, exposure, flat or broken files — so it works on data nobody has labeled yet.
  • Dataset insights reads the statistics and findings of the other nodes and writes a short verdict on what they mean for training. It uses an LLM and needs an Anthropic API key stored as a secret.

See it running: live example · case study: reading a quality report

Fix it with rules

Dataset Annotation quality Filter images Transform annotations Cleaned dataset Annotation quality

The Filter-based data cleanup template turns findings into fixes and proves they worked: profile the dataset, remove the images that should carry labels but don’t with Filter images, rename a misspelled class with Transform annotations, and profile the cleaned copy next to the original. The source dataset is never changed, so the two reports compare directly.

Other rule-based tools for the same job:

See it running: live example · case study

Look deeper with embeddings

Some problems don’t show in statistics: two classes that look the same, an object labeled as the wrong class, a batch of images unlike anything the model trained on. The embedding nodes compare images and objects by what they look like. Start with AI index embeddings, which embeds a dataset into the workspace’s index — every node below reads from that index.

NodeWhat it finds
Similar pairsExact and near duplicates inside a dataset, or leakage between a training and a test set.
Label diagnosticsObjects that look unlike the rest of their class, and classes that look like each other — likely label errors.
Embedding anomaliesImages far from everything else, or from a reference set you trust — outliers and drift.
Embedding mapAn interactive map of what the dataset contains, with named clusters and rare subgroups.

Each writes its candidates into a review dataset, so the natural next step is a labeling stage where someone confirms or corrects them.

Let the model point at label errors

Once you have a model, its confident disagreements with the ground truth are a strong signal. After Evaluate object detection, Review suspected label errors collects the images the evaluation flagged as probable label mistakes into a dataset a labeler can open. Find annotation gaps does the same for objects the model finds confidently but nobody labeled.

Make it yours

  • Check every batch. Put the quality nodes after your import, so each new batch of data gets a report before it enters labeling.
  • Gate labeling. Send the review datasets of Similar pairs or Label diagnostics into a labeling stage with outcomes such as Keep, Fix and Remove.
  • One verdict for everything. Pass the reports of Annotation quality, Similar pairs and Label diagnostics to Dataset insights through its Findings from other nodes input, and get one summary instead of three reports.