Jakakaa data koulutus-, validointi- ja testijoukkoihin
Miksi tarvitsette kolme joukkoa yhden sijaan
Jakakaa data koulutus-, validointi- ja testijoukkoihin on ilmainen Deep Learning Academy-oppitunti CoddyKitissä. Tämä on oppitunti 1/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.
Yksi tietojoukko ei riitä
Jos koulutatte ja arvioitte mallia samalla datalla, opitte vain sen, että malli muisti kyseiset rivit. Jotta voitte luottaa malliin, data on jaettava eri käyttötarkoituksiin.
Tutustukaa koulutusjoukkoon
Koulutusjoukko on data, josta mallinne todella oppii. Sen painoja säädetään yhä uudelleen, jotta se sopisi juuri näihin esimerkkeihin mahdollisimman hyvin.
Tutustukaa validointijoukkoon
Validointijoukko pidetään sivussa koulutuksen aikana ja tarkistetaan sen edetessä. Se kertoo, miten malli suoriutuu datasta, jonka perusteella sen painoja ei ole koskaan päivitetty.
Tutustukaa testijoukkoon
Testijoukkoon kosketaan kerran, aivan lopussa. Se antaa rehellisen lopullisen tuloksen sen jälkeen, kun kaikki valinnat on jo tehty.
Miksi validointi pidetään erillään
Säädätte esimerkiksi oppimisnopeutta tarkkailemalla validointituloksia. Näin validointijoukko vaikuttaa huomaamatta valintoihinne, joten se ei enää voi toimia puhtaana lopullisena arvioijana.
Testijoukko pysyy suljettuna
Koska validointi ohjasi päätöksiänne, tarvitsette yhden koskemattoman joukon totuudenmukaista arviointia varten. Pitäkää testijoukko suljettuna, kunnes olette täysin valmiita.
Yleinen jako
Tyypillinen lähtökohta on noin 80/10/10: suurin osa datasta koulutukseen ja pienemmät osat validointiin ja testaukseen. Muuttakaa jakoa datan määrän mukaan.
Jaa random_splitilla
PyTorch tarjoaa random_split-toiminnon, jolla tietojoukko voidaan jakaa osiin pituuksien perusteella. Se sekoittaa näytteet puolestanne eri joukkoihin.
from torch.utils.data import random_split
train, val, test = random_split(ds, [800, 100, 100])Aseta siemen toistettavia jakoja varten
Jako on satunnainen, joten asettakaa seed, jos haluatte samat osat jokaisella suorituskerralla. Näin kokeita voi verrata keskenään eri istunnoissa.
g = torch.Generator().manual_seed(42)
train, val, test = random_split(ds, [800, 100, 100], generator=g)Stratifioi tasapainon säilyttämiseksi
Harvinaisten luokkien tapauksessa tavallinen satunnainen jako voi jättää joitakin luokkia pois. Stratifiointi pitää luokkajakauman kussakin joukossa lähellä alkuperäistä, jolloin tulokset pysyvät mielekkäinä.
Älä koskaan kurkista testijoukkoon
Kultainen sääntö on yksinkertainen: älkää antako testijoukon vaikuttaa yhteenkään päätökseen. Heti kun se vaikuttaa, lopullinen lukunne ei ole enää luotettava.
Pikatarkistus
Mitä joukkoa pitäisi tarkastella vain kerran, aivan lopussa?
Kertaus
Kolme joukkoa, kolme tehtävää: koulutus opettaa mallia, validointi ohjaa säätämistä ja testaus antaa rehellisen lopullisen tuloksen. Pitäkää testijoukko suljettuna loppuun asti. 🎯
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 ”Jakakaa data koulutus-, validointi- ja testijoukkoihin” ilmainen?
Kyllä – oppitunnin ”Jakakaa data koulutus-, validointi- ja testijoukkoihin” 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 ”Jakakaa data koulutus-, validointi- ja testijoukkoihin”?
Miksi tarvitsette kolme joukkoa yhden sijaan 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 1/4.
Kuinka kauan ”Jakakaa data koulutus-, validointi- ja testijoukkoihin”-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
- Jakakaa data koulutus-, validointi- ja testijoukkoihin
- Epoch-silmukka validoinnilla
- Tallentaminen ja lataaminen state_dictillä
- Early stopping validointihäviön perusteella