Deep Learning Academy · Lektion

Dela upp träning, validering och test

Varför ni behöver tre mängder, inte en

Lektion 1 av 413 steg

Dela upp träning, validering och test är en gratis lektion i Deep Learning Academy på CoddyKit. Detta är lektion 1 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för Deep Learning Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Deep Learning Academy innehåller totalt 4 lektioner.

En enda datamängd räcker inte

Om du tränar och bedömer en modell på samma data lär du dig bara att den memorerade dessa rader. För att kunna lita på modellen måste du dela upp datan i separata roller.

Möt träningsmängden

Träningsmängden är den data som modellen faktiskt lär sig från. Dess vikter justeras om och om igen för att passa just dessa exempel väl.

Möt valideringsmängden

Valideringsmängden hålls undan under träningen och kontrolleras längs vägen. Den visar hur modellen presterar på data som den aldrig har uppdaterats med.

Möt testmängden

Testmängden används en gång, allra sist. Den ger ett ärligt slutgiltigt resultat efter att alla val redan har gjorts.

Varför valideringen är separat

Du justerar parametrar som inlärningsfrekvens genom att studera valideringsresultaten. Då läcker valideringsmängden i det tysta in i dina val, så den kan inte längre vara en opartisk slutlig bedömare.

Testmängden förblir förseglad

Eftersom valideringen vägledde dina beslut behöver du en orörd mängd som ger sanningen. Håll testmängden förseglad tills du är helt klar.

En vanlig uppdelning

En vanlig utgångspunkt är ungefär 80/10/10: merparten av datan till träning och mindre delar till validering och test. Anpassa efter hur mycket data du har.

Dela upp med random_split

PyTorch ger dig random_split för att dela en datamängd i delar efter längd. Den blandar åt dig vilka exempel som hamnar i varje mängd.

from torch.utils.data import random_split
train, val, test = random_split(ds, [800, 100, 100])

Använd seed för reproducerbara uppdelningar

Uppdelningen är slumpmässig, så ange ett seed om du vill få samma delar vid varje körning. Det gör experiment jämförbara mellan sessioner.

g = torch.Generator().manual_seed(42)
train, val, test = random_split(ds, [800, 100, 100], generator=g)

Stratifiera för balans

Med ovanliga klasser kan en vanlig slumpmässig uppdelning lämna vissa klasser utanför. Stratifiering håller klassfördelningen i varje mängd nära originalets, så att resultaten förblir meningsfulla.

Tjuvkika aldrig på testmängden

Gyllene regeln är enkel: låt inte testmängden påverka något beslut. Så fort den gör det är ditt slutliga resultat inte längre tillförlitligt.

Snabbkontroll

Vilken mängd ska du titta på endast en gång, allra sist?

Sammanfattning

Tre mängder, tre uppgifter: träningen lär modellen, valideringen vägleder dina justeringar och testningen ger det slutliga ärliga resultatet. Håll testmängden förseglad tills slutet. 🎯

Gratis att börja

Lär dig Python med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
30
Lektioner
120

Vanliga frågor

Är lektionen ”Dela upp träning, validering och test” gratis?

Ja – hela texten till ”Dela upp träning, validering och test” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i Deep Learning Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i Deep Learning Academy innehåller totalt 4 lektioner.

Vad lär jag mig i ”Dela upp träning, validering och test”?

Varför ni behöver tre mängder, inte en Ni övar på Deep Learning Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Deep Learning Academy?

Du behöver inga förkunskaper. Utbildningen i Deep Learning Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 1 av 4.

Hur lång tid tar lektionen ”Dela upp träning, validering och test”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Deep Learning Academy-lektionen?

Ja. Varje Deep Learning Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Dela upp träning, validering och test
  2. En epoch-loop med validering
  3. Spara och läs in med state_dict
  4. Early stopping på valideringsförlust
← Tillbaka till Deep Learning Academy