Overfitting
Stryg for at vise menuen
Overfitting
Overvej de to regressionslinjer nedenfor. Hvilken er bedst?
Målingerne antyder, at den anden model er bedre, så vi bruger den til at forudsige X_new = [0.2, 0.5, 2.7]. Men efter at have sammenlignet forudsigelserne med de faktiske værdier, klarer den første model sig bedre.
Dette sker, fordi den anden model overfitter — den er for kompleks og tilpasser sig træningsdataene for tæt, hvilket resulterer i manglende evne til at generalisere til nye tilfælde.
Underfitting
Underfitting opstår, når en model er for simpel til selv at tilpasse træningsdataene, hvilket også fører til dårlige forudsigelser på ukendte data.
Vi kan derfor forsøge visuelt at afgøre, om modellen underfitter eller overfitter.
Da vi ikke kan visualisere højdimensionelle modeller, har vi brug for en anden metode til at opdage overfitting eller underfitting.
Opdeling i trænings- og testdatasæt
For at estimere ydeevnen på usete data opdeles datasættet i et træningssæt og et testsæt med kendte målvariable.
Vi træner på træningssættet og beregner metrikker på både trænings- og testsættet for at sammenligne ydeevnen.
Opdelingen skal være tilfældig. Typisk går 20–30% til testdatasættet, og 70–80% bruges til træning. Scikit-learn tilbyder en nem metode til dette.
For eksempel, for at opdele træningssættet i 70% træning/30% test, kan følgende kode anvendes:
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)
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat