Dictionary

Train-test split

Een train-test split verdeelt data in een trainingsset en testset. Het model leert op het ene deel en wordt beoordeeld op data die het niet tijdens training zag.

Wat is een train-test split?

Een train-test split verdeelt je dataset in minstens twee delen: een trainingsset en een testset. Het model leert op de trainingsset. Daarna beoordeel je het op de testset, die het niet tijdens training zag.

Dat is nodig omdat een model op zijn eigen trainingsdata te rooskleurig scoort. Je wil weten hoe het presteert op nieuwe voorbeelden.

In Python ziet de basis er vaak zo uit:

from sklearn.model_selection import train_test_split

X_train, X_test, y_train, y_test = train_test_split(
    X, y, test_size=0.2, random_state=42
)

De exacte verhouding is minder belangrijk dan de vraag of de split past bij je productiegebruik.

Train, validation en test

Vaak gebruik je drie delen. De trainingsset leert het model. De validatieset helpt kiezen tussen instellingen of modellen. De testset blijft apart tot de eindbeoordeling.

Als je de testset telkens gebruikt om keuzes te maken, wordt ze zelf onderdeel van het ontwikkelproces. Dan meet ze niet meer eerlijk hoe het model op nieuwe data werkt.

Random split, tijdsplit of groepssplit?

Een random split werkt goed wanneer rijen onafhankelijk zijn en de toekomst lijkt op het verleden. Bij tijdsgebonden problemen is dat vaak niet zo.

Voor forecasting, churn en risico-inschatting gebruik je meestal een tijdsplit: trainen op het verleden, testen op latere data. Bij klanten, toestellen of patiënten gebruik je vaak een groepssplit, zodat records van dezelfde entiteit niet aan beide kanten zitten.

Train-test split en data leakage

Veel leakage ontstaat doordat preprocessing vóór de split gebeurt. Als je gemiddelden, encodings of featureselectie berekent op de volledige dataset, gebruikt training indirect informatie uit de testset.

De veilige volgorde is: split maken, preprocessing leren op training, preprocessing toepassen op validatie en test.

Train-test split versus cross-validation

Een train-test split gebruikt één verdeling. Cross-validation herhaalt het proces over meerdere folds en geeft een stabieler beeld van modelprestatie.

Toch blijft een aparte testset nuttig voor de eindcheck, zeker wanneer je veel modellen probeerde.

Waar moet je op letten bij train-test split

  • Splits zoals productie werkt. Een model dat toekomstige orders voorspelt, test je op latere orders.

  • Hou zeldzame klassen zichtbaar. Gebruik stratification wanneer klassen ongelijk verdeeld zijn.

  • Bewaar de split. Anders vergelijk je experimenten op andere testdata.

  • Raak de testset zo weinig mogelijk aan. Ze is je laatste eerlijke meetpunt.

Laatst Bijgewerkt: July 9, 2026 Terug naar Woordenboek
Trefwoorden
train-test split machine learning supervised learning data leakage cross-validation model training data sampling mlops