Korsvalidering är en teknik som används för att bedöma prestandan hos övervakade inlärningsmodeller. Det hjälper till att säkerställa att modellen generaliserar väl till osynliga data genom att partitionera datamängden i flera undergrupper för utbildning och testning. Genomföra korsbekräftelse korrekt kan förbättra tillförlitligheten av modellutvärdering.

Förstå korsbeviljande

Korsvalidering innebär att dela dataset i flera delar, eller veck. Modellen är utbildad på en delmängd av dessa veck och testas på den återstående vikningen. Denna process upprepas flera gånger, med olika veck som används för att testa varje gång. Resultaten är sedan i genomsnitt för att ge en övergripande prestanda metrisk.

Typer av korsbefruktning

De vanligaste typerna inkluderar:

  • ]k-Fold Cross-Validation:] delar data i k lika delar, utbildning på k-1 delar och testning på den återstående delen.
  • ]Stratificerad k-Fold:] garanterar att varje veck upprätthåller klassdistributionen av hela datasetet.
  • ]] Lämna en utgångspunkt (LOO):[ Använder en enda datapunkt för testning och resten för träning, upprepad för varje datapunkt.

Genomföra korsbefruktning i praktiken

De flesta maskininlärningsbibliotek ger inbyggda funktioner för tvärvalidering. Till exempel i Pythons scikit-learn förenklar funktionen processen. Du måste ange modellen, datamängden och antalet veck.

Exempelkodsnippet:

] från sklearn.model selection import cross val score

]]scores = cross val score(modell, X, y, cv=5)[]

Denna kod utför 5-faldigt korsbekräftelse och returnerar poängen för varje veck.