Peer-reviewed research · 2024
GANsemble
A 210-image, severely imbalanced dataset is too small to train a classifier that generalizes.
Overview
The problem. A 210-image, severely imbalanced dataset is too small to train a classifier that generalizes.
Why it matters. Microplastics research — and a lot of applied science — runs on datasets this size. If synthetic data can lift accuracy there, the method transfers to every domain where labelling is the bottleneck.
My contribution
Co-developed the augmentation search and the class-conditional GAN pipeline.
- Co-developed a pipeline combining factorial augmentation search, transfer learning, and a class-conditional GAN.
- Automated synthetic-data generation for a 210-image imbalanced dataset and measured the downstream effect on classification.
Constraints
What the design had to work around.
- 210 images total, severely class-imbalanced — the constraint the whole method exists to work around.
- Transfer learning is required because the dataset cannot support training from scratch.
Architecture
Models, tools, state, evaluation, and the paths the system takes when something fails.
01 · Source
02 · Search
03 · Generate
04 · Measure
Accuracy vs. baselines → Factorial augmentation search— accuracy decides which augmentation configuration is kept
- Storage
- Evaluation
- Model
Text description of this diagram
The pipeline starts from 210 real, class-imbalanced images. A factorial augmentation search determines which transformations actually help on a dataset this small. Those augmentations feed a class-conditional GAN, initialised through transfer learning because the dataset is too small to train from scratch, which generates synthetic images for the underrepresented classes. A downstream classifier is then trained and its accuracy compared against two baselines: duplication-based oversampling, and no oversampling at all. That accuracy is the return signal that decides which augmentation configuration is kept — the generated images are judged by what they do for the classifier, not by how they look.
Evaluation
Fields marked Not reported are absent from the source material. They are listed rather than dropped so the gaps in the evidence stay visible.
- Dataset
- 210 images, severely class-imbalanced (microplastics)
- Baselines
- Duplication-based oversampling; no oversampling
- Metric
- Downstream classification accuracy
- Result
- 91.5% — +4 points vs. duplication oversampling, +5.5 vs. none
- Validation protocol
- Not reported
- Repeated runs / variance
- Not reported
Results
Training a classifier on the generated data beat both simply duplicating the rare examples and doing nothing at all.
- 91.5% downstream classification accuracy.
- 4 percentage points over duplication-based oversampling.
- 5.5 percentage points over no oversampling.
Failure modes and limitations
What this work does not establish, and where it stops being reliable.
- The validation protocol and the number of repeated runs are not reported in the material available in this repository, so the stability of the 91.5% cannot be characterised here.
- A 4-point gap on a 210-image dataset is within the range where run-to-run variance matters; without variance figures the margin should be read as suggestive.
- Results are for one microplastics dataset. Transfer to other small, imbalanced domains is plausible but untested here.
Artifacts
Building an agent that must work outside the demo?
I work on evaluation, grounded tool use, failure recovery, and auditable agent workflows.