Expertise hub / Testen
Testen 9 min lezen

Waarom traditioneel testen niet werkt voor AI-systemen

Een druk op de knop, een vergelijking met het verwachte resultaat, geslaagd of gefaald. Dat model werkt al vijftig jaar voor software. Voor AI-systemen werkt het niet meer. Dat is geen kwestie van meer testen, maar van anders testen.

Voor AI-systemen botst dat model op een fundamenteel probleem: er bestaat geen vast verwacht resultaat om tegen af te toetsen. Dat lijkt een technisch detail, maar het verandert alles aan hoe je testkwaliteit beoordeelt.

Het oracle-probleem

Een testcase heeft een oracle nodig: een manier om te bepalen of de uitkomst correct is. Bij traditionele software is dat eenvoudig: de specificatie beschrijft precies wat de output moet zijn. Bij een machine learning-model is de output een voorspelling, geen berekening. Twee correcte modellen kunnen op dezelfde input een ander, evengoed verdedigbaar antwoord geven.

01

Geen vast verwacht resultaat

Een model voorspelt een waarschijnlijkheid, geen zekerheid. "Fout" en "onverwacht" zijn niet hetzelfde.

02

Gedrag hangt af van data

Dezelfde code, andere trainingsdata, ander gedrag. De testbasis verschuift met elke retraining.

03

Kwaliteit verandert na oplevering

Een test die vandaag slaagt, kan over drie maanden falen, zonder dat er iets aan het model veranderde.

Dat laatste punt is voor de meeste teams het meest onwennige: software die je niet aanraakt, blijft normaal gezien doen wat ze deed. Een model dat je niet aanraakt, kan stilaan minder goed presteren omdat de wereld eromheen verandert. Daarover meer in ons artikel over model drift.

Het verschil zit niet in "meer testen". Het zit in een andere vraag: niet "is dit antwoord correct", maar "is dit gedrag aanvaardbaar, consistent en binnen de verwachte grenzen".

Wat daadwerkelijk wel werkt

Wat er niet verandert

De componenten rond het model (de API die het aanroept, de databank die resultaten opslaat, de interface die ze toont) blijven gewoon deterministische software. Die test je zoals je altijd al testte. Het is enkel het model zelf dat een andere aanpak vraagt. Wie dat onderscheid niet maakt, test óf te weinig op het model, óf veel te veel op de rest.

Een voorbeeld uit de praktijk

Bij een klant met een tekstclassificatiemodel voor klantfeedback (positief, neutraal, negatief) bleek een klassieke test met een vaste lijst van "verwachte" classificaties na elke modelupdate voortdurend te falen, zonder dat het model daadwerkelijk slechter presteerde. Elke retraining verschoof net genoeg om exacte matches te breken.

// In plaats van een exacte match te verwachten, // testen we een metamorfe relatie: origineel: "De levering was traag maar de kwaliteit was top." → classificatie: gemengd/neutraal gewijzigd: "De levering was ZEER traag maar de kwaliteit was top." → verwachting: classificatie blijft gemengd/neutraal, of verschuift licht negatiever, maar mag niet naar "positief" omslaan

In plaats van te controleren of het model exact het label "neutraal" teruggeeft, controleren we of een logische versterking van het sentiment (traag → zeer traag) de classificatie niet tegen de verwachting in verschuift. Die test overleeft een retraining, een exacte-match-test niet.

Wat dit in de praktijk oplevert

// Andere aanpak, geen ad-hoc oplossing

Weet je zeker dat je AI-systeem grondig getest is?

We nemen je testaanpak door en tonen je waar "het werkt op mijn testset" tekortschiet.

Plan een gesprek
// Lees ook