Deep Learning Academy · Oppitunti

Early stopping validointihäviön perusteella

Pysäyttäkää koulutus ennen ylisovittamista

Oppitunti 4/413 vaihetta

Early stopping validointihäviön perusteella on ilmainen Deep Learning Academy-oppitunti CoddyKitissä. Tämä on oppitunti 4/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Deep Learning Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Deep Learning Academy-kurssilla on yhteensä 4 oppituntia.

Liian pitkä koulutus haittaa

Useammat epookit eivät aina ole parempia. Tietyn pisteen jälkeen malli alkaa muistaa kohinaa ja validointitulokset heikkenevät. Early stopping lopettaa koulutuksen parhaassa kohdassa.

Seuraa validointilossia

Seurattava signaali on validointiloss. Niin kauan kuin se pienenee, malli yleistyy edelleen paremmin, joten koulutusta kannattaa jatkaa.

Käännekohta

Lopulta koulutusloss pienenee edelleen, mutta validointiloss saavuttaa pohjan ja alkaa kasvaa. Tämä noususuunta on hetki, jolloin ylisovittaminen ottaa vallan.

Muista paras tulos

Pidä muuttujassa tähän asti havaittu paras validointihäviö. Vertaa uutta tulosta siihen jokaisella epookilla ja päätä näin, tapahtuiko edistystä.

best_loss = float('inf')

Laske epookit ilman parannusta

Kun epookki ei päihitä parasta tulosta, kasvata laskuria. Nollaa laskuri heti, kun validointihäviö jälleen paranee.

if val_loss < best_loss:
    best_loss = val_loss
    counter = 0
else:
    counter += 1

Aseta kärsivällisyys

Kärsivällisyys tarkoittaa sitä, kuinka monta huonoa epookkia siedät ennen lopettamista. Pieni arvo lopettaa nopeasti, kun taas suurempi arvo kestää paremmin kohinaiset notkahdukset.

patience = 5

Lopeta kärsivällisyyden loppuessa

Kun laskuri saavuttaa kärsivällisyysarvon, lopeta silmukka. Tämä break lopettaa koulutuksen ennen kuin malli käyttää aikaa huononemiseen.

if counter >= patience:
    break

Tallenna paras matkan varrella

Kirjoita tarkistuspiste aina, kun validointitulos paranee. Kun lopulta lopetat, tallennettu tiedosto sisältää parhaimman mallin eikä viimeisintä mallia.

if val_loss < best_loss:
    torch.save(model.state_dict(), 'best.pt')

Lisää min_delta

Pienet heilahtelut voivat näyttää valheelliselta edistykseltä. min_delta edellyttää kynnysarvoa suurempaa parannusta ennen kärsivällisyyslaskurin nollaamista.

if val_loss < best_loss - min_delta:
    best_loss = val_loss

Palauta paras lopuksi

Lataa silmukan jälkeen tallennettu tarkistuspiste, jotta otat todella käyttöön parhaan mallin. Aikainen lopettaminen on turhaa, jos säilytät huonommat lopulliset painot.

model.load_state_dict(torch.load('best.pt'))

Ilmainen regularisointikeino

Aikainen lopettaminen ei maksa mitään ylimääräistä, mutta torjuu ylisovittamista regularisaattorin tavoin. Se sopii hyvin yhteen dropoutin ja painojen vaimennuksen kanssa, jolloin koulutus on vielä vakaampaa.

Pikatarkistus

Mitä kärsivällisyysasetus ohjaa aikaisessa lopettamisessa?

Kertaus

Seuraa validointihäviötä, laske parannuksettomat epookit, lopeta kärsivällisyyden loppuessa ja palauta paras tarkistuspiste. Aikainen lopettaminen säästää aikaa ja hillitsee ylisovittamista. ⏹️

Aloita maksutta

Opi Python tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
30
Oppitunnit
120

Usein kysytyt kysymykset

Onko oppitunti ”Early stopping validointihäviön perusteella” ilmainen?

Kyllä – oppitunnin ”Early stopping validointihäviön perusteella” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Deep Learning Academy-kurssin, päivitä CoddyKit PROhon. Deep Learning Academy-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Early stopping validointihäviön perusteella”?

Pysäyttäkää koulutus ennen ylisovittamista Harjoittelet Deep Learning Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Deep Learning Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Deep Learning Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 4/4.

Kuinka kauan ”Early stopping validointihäviön perusteella”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Deep Learning Academy-oppitunnilla?

Kyllä. Jokainen Deep Learning Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Jakakaa data koulutus-, validointi- ja testijoukkoihin
  2. Epoch-silmukka validoinnilla
  3. Tallentaminen ja lataaminen state_dictillä
  4. Early stopping validointihäviön perusteella
← Takaisin: Deep Learning Academy