A year ago, a single open-source AI image detector was used in production for a fact-checking pipeline, but its accuracy in real-world scenarios was lacking. The same image would be classified differently across multiple runs when preprocessing varied, and images from newer generators were often misclassified. False positives were also high for heavily compressed authentic photos.
To improve the system, an ensemble of six open-source models, plus one fine-tuned model, was implemented, along with a layer of non-ML signals. The combined system has proven to be more stable and accurate than any single model. The six base models were assigned specific roles, including one strong on diffusion-generated images, one on GAN artifacts, one focused on frequency-domain features, one trained on a different data distribution, one specialized on faces, and one general-purpose model.
These models do not always agree, and disagreement between them is actually a useful signal. When all six models agree, confidence is high, but when they disagree, the image is sent to human review or to the fine-tuned model. The fine-tuning pipeline runs continuously, with updates whenever a new generator is released or quality degrades on a known one.
A non-ML layer, including C2PA metadata, EXIF traces, compression history, and watermark signatures, also plays a crucial role in tightening the ensemble’s confidence. However, the system still struggles with images that have undergone multiple compression cycles, edited post-generation, or are extracted from video frames.
The question remains: what is the optimal retraining cadence for ensemble models, and when should a model be retired or replaced? The current heuristic is to retire models based on performance, but more research is needed to determine the best approach.
Photo by Wolfgang Weiser on Pexels
Photos provided by Pexels
