Hvad betyder Epoch?
En epoch er en praktisk enhed til at beskrive træning. Når modellen har arbejdet gennem det definerede træningsdatasæt én gang, er en epoch gennemført. Datasættet behandles ofte i mindre batches, så én epoch består af flere parameteropdateringer.
Flere epochs giver modellen flere muligheder for at tilpasse sig eksemplerne. Det kan forbedre læringen, men også øge risikoen for overfitting. Antallet er derfor en indstilling, som skal vurderes sammen med trænings- og valideringsresultater.
En epoch er ikke en universel mængde beregning eller viden. To datasæt kan have vidt forskellig størrelse, og to træningsopsætninger kan behandle materialet forskelligt. Ved streaming eller dynamisk genererede data kan definitionen kræve en eksplicit aftale om antal trin eller eksempler.
Følg kvaliteten gennem træningen
Registrér loss og relevante kvalitetsmål efter passende intervaller. Hvis træningsresultatet forbedres, mens valideringsresultatet forværres, kan flere gennemgange være ved at tilpasse modellen for meget til materialet.
Early stopping kan stoppe forløbet efter en defineret periode uden relevant valideringsforbedring. Det kræver et klart mål og en aftale om, hvilken modelversion der gemmes som kandidat.
Beskriv både data og opdateringer
Ved sammenligning af forsøg bør rapporten angive datasættets størrelse, batchstørrelse, antal epochs og relevante træningstrin. Ellers kan to tilsyneladende ens forløb have set forskellig mængde data eller haft meget forskellig beregningstid.
Gem checkpoints, så en valgt model kan kobles til et bestemt tidspunkt og en bestemt konfiguration. Antallet af epochs bør ikke præsenteres som et kvalitetsstempel; evalueringen på nye observationer er vigtigere.
Et eksempel fra praksis
Forestil jer et team, der tilpasser en model til produktkategorier. De planlægger et maksimalt træningsbudget, men følger valideringen løbende. Efter nogle gennemgange falder træningstabet fortsat, mens kvaliteten på nye billeder ikke forbedres.
Teamet vælger et tidligere checkpoint efter den aftalte stopregel og tester det på et særskilt sæt. De dokumenterer både det planlagte maksimum og det faktisk valgte tidspunkt. Det gør beslutningen mere gennemsigtig end blot at sige, at modellen har været trænet længe.
Typiske faldgruber
- Flere epochs kan blive forvekslet med bedre kvalitet.
- Et epoch-tal kan sammenlignes på tværs af meget forskellige datasæt uden kontekst.
- Det sidst gemte checkpoint kan blive valgt, selv om et tidligere havde bedre valideringsresultater.
Det skal I afklare
- Hvad tæller som én epoch i denne data- og træningsopsætning?
- Hvilket valideringsmål og hvilken stopregel bruges?
- Kan den valgte modelversion kobles til data, indstillinger og checkpoint?
Spørgsmål og svar
Hvor mange epochs skal en model have?
Der findes ikke et universelt antal. Det afhænger af opgave, model, data og træningsindstillinger. Brug et begrundet budget og relevante valideringsresultater.
Ser modellen præcis samme input i hver epoch?
Ikke nødvendigvis. Rækkefølgen kan ændres, og augmentation kan skabe variationer. Det bør stadig være klart, hvilket datagrundlag træningen gennemgår.
Kilder og videre læsning
De tekniske begreber bygger på nedenstående kilder. Eksemplerne er illustrative og viser, hvordan I kan arbejde med emnet.
- Google: Hyperparameters ↗Epochs, batches og træningsindstillinger.
- Google: L2 regularization ↗Early stopping og overtilpasning gennem træningsforløbet.

