Overfitting
Veeg om het menu te tonen
Overfitting
Bekijk de twee regressielijnen hieronder. Welke is beter?
De statistieken suggereren dat het tweede model beter is, dus gebruiken we dit om te voorspellen voor X_new = [0.2, 0.5, 2.7]. Maar na het vergelijken van de voorspellingen met de werkelijke waarden, presteert het eerste model beter.
Dit gebeurt omdat het tweede model overfit — het is te complex en past te nauw op de trainingsgegevens, waardoor het niet goed generaliseert naar nieuwe gevallen.
Underfitting
Underfitting treedt op wanneer een model te eenvoudig is om zelfs de trainingsgegevens te benaderen, wat ook leidt tot slechte voorspellingen op onbekende data.
We kunnen dus visueel proberen te bepalen of het model onderfit of overfit.
Omdat we modellen met hoge dimensies niet kunnen visualiseren, hebben we een andere methode nodig om overfitting of underfitting te detecteren.
Train-test splitsing
Om de prestaties op onbekende data te schatten, splitsen we de dataset in een trainingsset en een testset met bekende doelwaarden.
We trainen op de trainingsset en berekenen statistieken op zowel de trainings- als testsets om de prestaties te vergelijken.
De verdeling moet willekeurig zijn. Gewoonlijk gaat 20–30% naar de testset en wordt 70–80% gebruikt voor training. Scikit-learn biedt een eenvoudige manier om dit te doen.
Bijvoorbeeld, om de trainingsset te splitsen in 70% training/30% test, kun je de volgende code gebruiken:
from sklearn.model_selection import train_test_split # import the function
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3)
Bedankt voor je feedback!
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.