Mallin Arviointi
Datan jakaminen
Neuroverkon kouluttamisen jälkeen on olennaista arvioida, kuinka hyvin se suoriutuu näkemättömällä datalla. Tämä arviointi auttaa selvittämään, onko malli oppinut merkityksellisiä rakenteita vai onko se vain ulkoa opetellut koulutusdatan esimerkit. Tätä varten aineisto jaetaan kahteen osaan:
- Koulutusjoukko — käytetään neuroverkon kouluttamiseen säätämällä sen painoja ja bias-arvoja takaisinkytkennän avulla;
- Testijoukko — käytetään koulutuksen jälkeen arvioimaan, kuinka hyvin malli yleistää uuteen, näkemättömään dataan.
Yleinen jako on 80 % koulutukseen ja 20 % testaukseen, vaikka suhde voi vaihdella aineiston koon ja monimutkaisuuden mukaan.
Datan jako tehdään tyypillisesti käyttämällä train_test_split()-funktiota sklearn.model_selection -moduulista:
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=...)
test_size-parametri määrittää testaukseen varatun datan osuuden. Esimerkiksi asettamalla test_size=0.1 tarkoittaa, että 10 % datasta käytetään testaukseen ja 90 % koulutukseen.
Jos malli suoriutuu hyvin koulutusdatalla mutta huonosti testidatalla, kyseessä voi olla ylisovittaminen — malli oppii liian tarkasti koulutusdatan piirteet eikä yleisty uusiin esimerkkeihin. Tavoitteena on saavuttaa hyvä suoritus molemmissa aineistoissa, jotta malli yleistyy hyvin.
Kun data on jaettu ja malli koulutettu, suorituskyky tulisi mitata sopivilla arviointimittareilla, jotka riippuvat luokittelutehtävän luonteesta.
Luokittelumittarit
Luokitteluongelmissa mallin ennusteiden arviointiin voidaan käyttää useita keskeisiä mittareita:
- Tarkkuus;
- Precision (osuvuus);
- Recall (herkkyys);
- F1-pisteet.
Koska perceptroni suorittaa binääriluokittelua, sekaannusmatriisin laatiminen auttaa ymmärtämään näitä mittareita paremmin.
Sekaannusmatriisi on taulukko, joka tiivistää mallin luokittelusuorituksen vertaamalla ennustettuja luokkia todellisiin luokkiin. Se antaa tietoa oikeiden ja väärien ennusteiden määrästä kummallekin luokalle (1 ja 0).
Tarkkuus mittaa oikein luokiteltujen näytteiden osuuden kaikista näytteistä. Jos malli luokittelee oikein 90 sadasta kuvasta, sen tarkkuus on 90 %.
accuracy=allcorrect=TP+TN+FP+FNTP+TNVaikka tarkkuus on hyödyllinen mittari, se ei aina anna kattavaa kuvaa—erityisesti epätasapainoisissa aineistoissa. Esimerkiksi aineistossa, jossa 95 % näytteistä kuuluu yhteen luokkaan, malli voi saavuttaa 95 % tarkkuuden ennustamalla aina enemmistöluokan—ilman, että se oppii mitään hyödyllistä. Tällaisissa tapauksissa tarkkuus, recall tai F1-pisteet voivat olla informatiivisempia.
Tarkkuus (precision) on oikein ennustettujen positiivisten tapausten osuus kaikista ennustetuista positiivisista. Tämä mittari on erityisen hyödyllinen, kun väärät positiiviset ovat kalliita, kuten roskapostin tai petosten tunnistuksessa.
precision=predicted positivecorrect positive=TP+FPTPRecall (herkkyys) mittaa, kuinka monta todellisista positiivisista tapauksista malli tunnistaa oikein. Korkea recall on tärkeää tilanteissa, joissa vääriä negatiivisia tulee välttää, kuten lääketieteellisissä diagnooseissa.
recall=all positivecorrect positive=TP+FNTPF1-pisteet ovat harmoninen keskiarvo tarkkuudesta ja palautuksesta, tarjoten tasapainoisen mittarin silloin, kun sekä väärät positiiviset että väärät negatiiviset ovat tärkeitä. Tämä on hyödyllistä, kun aineisto on epätasapainoinen, eli yksi luokka esiintyy huomattavasti useammin kuin toinen.
F1=precision+recall2×precision×recall1. Mikä on tärkein syy jakaa aineisto opetus- ja testijoukkoihin?
2. Miksi F1-pisteet voivat olla parempi valinta kuin tarkkuus epätasapainoisessa aineistossa?
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Awesome!
Completion rate improved to 4
Mallin Arviointi
Pyyhkäise näyttääksesi valikon
Datan jakaminen
Neuroverkon kouluttamisen jälkeen on olennaista arvioida, kuinka hyvin se suoriutuu näkemättömällä datalla. Tämä arviointi auttaa selvittämään, onko malli oppinut merkityksellisiä rakenteita vai onko se vain ulkoa opetellut koulutusdatan esimerkit. Tätä varten aineisto jaetaan kahteen osaan:
- Koulutusjoukko — käytetään neuroverkon kouluttamiseen säätämällä sen painoja ja bias-arvoja takaisinkytkennän avulla;
- Testijoukko — käytetään koulutuksen jälkeen arvioimaan, kuinka hyvin malli yleistää uuteen, näkemättömään dataan.
Yleinen jako on 80 % koulutukseen ja 20 % testaukseen, vaikka suhde voi vaihdella aineiston koon ja monimutkaisuuden mukaan.
Datan jako tehdään tyypillisesti käyttämällä train_test_split()-funktiota sklearn.model_selection -moduulista:
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=...)
test_size-parametri määrittää testaukseen varatun datan osuuden. Esimerkiksi asettamalla test_size=0.1 tarkoittaa, että 10 % datasta käytetään testaukseen ja 90 % koulutukseen.
Jos malli suoriutuu hyvin koulutusdatalla mutta huonosti testidatalla, kyseessä voi olla ylisovittaminen — malli oppii liian tarkasti koulutusdatan piirteet eikä yleisty uusiin esimerkkeihin. Tavoitteena on saavuttaa hyvä suoritus molemmissa aineistoissa, jotta malli yleistyy hyvin.
Kun data on jaettu ja malli koulutettu, suorituskyky tulisi mitata sopivilla arviointimittareilla, jotka riippuvat luokittelutehtävän luonteesta.
Luokittelumittarit
Luokitteluongelmissa mallin ennusteiden arviointiin voidaan käyttää useita keskeisiä mittareita:
- Tarkkuus;
- Precision (osuvuus);
- Recall (herkkyys);
- F1-pisteet.
Koska perceptroni suorittaa binääriluokittelua, sekaannusmatriisin laatiminen auttaa ymmärtämään näitä mittareita paremmin.
Sekaannusmatriisi on taulukko, joka tiivistää mallin luokittelusuorituksen vertaamalla ennustettuja luokkia todellisiin luokkiin. Se antaa tietoa oikeiden ja väärien ennusteiden määrästä kummallekin luokalle (1 ja 0).
Tarkkuus mittaa oikein luokiteltujen näytteiden osuuden kaikista näytteistä. Jos malli luokittelee oikein 90 sadasta kuvasta, sen tarkkuus on 90 %.
accuracy=allcorrect=TP+TN+FP+FNTP+TNVaikka tarkkuus on hyödyllinen mittari, se ei aina anna kattavaa kuvaa—erityisesti epätasapainoisissa aineistoissa. Esimerkiksi aineistossa, jossa 95 % näytteistä kuuluu yhteen luokkaan, malli voi saavuttaa 95 % tarkkuuden ennustamalla aina enemmistöluokan—ilman, että se oppii mitään hyödyllistä. Tällaisissa tapauksissa tarkkuus, recall tai F1-pisteet voivat olla informatiivisempia.
Tarkkuus (precision) on oikein ennustettujen positiivisten tapausten osuus kaikista ennustetuista positiivisista. Tämä mittari on erityisen hyödyllinen, kun väärät positiiviset ovat kalliita, kuten roskapostin tai petosten tunnistuksessa.
precision=predicted positivecorrect positive=TP+FPTPRecall (herkkyys) mittaa, kuinka monta todellisista positiivisista tapauksista malli tunnistaa oikein. Korkea recall on tärkeää tilanteissa, joissa vääriä negatiivisia tulee välttää, kuten lääketieteellisissä diagnooseissa.
recall=all positivecorrect positive=TP+FNTPF1-pisteet ovat harmoninen keskiarvo tarkkuudesta ja palautuksesta, tarjoten tasapainoisen mittarin silloin, kun sekä väärät positiiviset että väärät negatiiviset ovat tärkeitä. Tämä on hyödyllistä, kun aineisto on epätasapainoinen, eli yksi luokka esiintyy huomattavasti useammin kuin toinen.
F1=precision+recall2×precision×recall1. Mikä on tärkein syy jakaa aineisto opetus- ja testijoukkoihin?
2. Miksi F1-pisteet voivat olla parempi valinta kuin tarkkuus epätasapainoisessa aineistossa?
Kiitos palautteestasi!