Seuraava artikkeli auttaa sinua: Tarkkuus ei ole paras mittari epätasapainoisille tiedoille
Mitä on tarkkuus? Se on saavutetun tuloksen ja todellisen arvon läheisyysaste, niin ainakin matematiikan opettajamme opetti. Mutta onko tarkkuus aina oikea mittari tietojen tarkistamiseen? ML-luokituksen tapauksessa se ei todellakaan näytä siltä.
Tässä malli ennustaa ensin tietojoukon esimerkit yksitellen ja sitten vertaa niitä annettujen esimerkkien tunnettuihin nimikkeisiin. Siinä tapauksessa tarkkuus on – oikeat ennusteet÷ kokonaisennusteet.
Otetaan esimerkki: Jos olettaisimme, että kaikki junat olivat ajoissa ja yrittäisimme ennustaa tulevaa lopputulosta nimeämällä oikeaan aikaan kulkevien junien lukumäärän tiedoksi “Päivystys (1)” ja myöhässä olevat junat nimellä ” Myöhässä (0)’, silloin ‘Ajoissa’ junien tarkkuus olisi 100 % ja ‘myöhässä olevien’ junien tarkkuus 0 %.
Koska tarkkuusmalli on helppo ymmärtää ja käyttää, se on yksi markkinoiden eniten käytetyistä malleista. Siinä on kuitenkin ongelmia; sitä ei voi käyttää epätasapainoisessa tietojoukossa.
Jos molemmissa tapauksissa huomioitu data on yhtä suuri, kutsumme sitä tasapainotetuksi dataksi. Jos esimerkiksi ‘On-time(1)’-tapahtumien data on 50 % ja ‘Late(0)’ on 50 %, sitä voidaan kutsua tasapainotetuksi tiedoiksi. Vastaavasti epätasapainoiset tiedot olisivat, jos ‘On-time(1)’-tiedot kattavat noin 99 %+ ja ‘Late(0)’-tiedot kattaisivat loput.
Tässä ongelma syntyy. ML-luokituksessa tarkkuus ei vain ole paras vaihtoehto epätasapainoisten tietojen tarkistamiseen. “On-time(1)” -tietojoukossa voi olla huomioitu 20 000 tapausta ja vain 200 “Late(0)” -tietojoukossa. Järjestelmä jättää huomiotta toisen tietojoukon ja ennustaa, että 100 % junista on “on Time”, mutta todellisuudessa se on tutkinut vain pienen määrän dataa toisessa tapauksessa.
Tietojen epätasapaino tapauksissa, kuten 1:5 tai 1:20, ei vaikuta tulokseen yhtä paljon kuin tapauksissa 1:10 000. ML-mallit pyrkivät saavuttamaan tarkkuuden ja suuren datan epätasapainon tapauksessa se nimittää suuremman datan tapauksessa 1 “normaaliksi” ja pienemmän datan tapauksessa 2 “epänormaaliksi”. Lisäksi malli jättää huomioimatta pienemmät tiedot ja keskittyy suurempiin tietoihin saadakseen korkean tarkkuuden.
Tietojen epätasapaino yllä olevassa esimerkissä voi aiheuttaa ongelmia. Koska järjestelmä päätyi 100-prosenttisesti “on-time” junien lopputulokseen jättäen huomioimatta pienen “Myöhäisten” junien tietojoukon, tulevat matkustajat kärsisivät.
Tällaisten virheiden välttämiseksi on suositeltavaa käyttää F1-pistemäärää tai Oma asiakaskeskus -mittaria. Vaikka Oma asiakaskeskus -mittari on kiistanalainen, sitä pidetään usein luotettavampana kuin F1-pisteitä. Molemmat ovat yksiarvoisia mittareita ja tiivistävät hämmennysmatriisin. F1-pisteet kuitenkin jättävät huomiotta todelliset negatiivit, kun taas Oma asiakaskeskus -mittari on paljon kattavampi.
Mutta ensin, mikä on hämmennysmatriisi? Kuten aiemmin todettiin, malli ennustaa testinäytteessä annetut esimerkit ja sovittaa sitten yhteen esimerkin annettujen nimikkeiden kanssa. Se voidaan näyttää taulukkomuodossa ja sitä kutsutaan sekaannusmatriiksi.
Katsotaanpa nyt F1-pisteiden ja MCC-matriisin kaavoja:
Kuten näemme, Oma asiakaskeskus -mittari ottaa huomioon kaikki neljä sekaumamatriisin merkintää ja saa siten parempia tuloksia. Jos esimerkiksi katsomme annettua sekaannusmatriisia Oman asiakaskeskuksen Wikipedia-sivulla:
TP = 90, FP = 4; TN = 1, FN = 5
Tässä tapauksessa tarkkuus oli 91% ja F1-pisteet noin 95%, mikä ensi silmäyksellä näyttää täydelliseltä. Mutta jos käytämme tässä Oma asiakaskeskus -mittaria, arvoksi tulee 0,14, mikä osoittaa, että malli toimii huonosti.
Vastaavasti, jos TP=0, FP=0; TN=5, FN=95, F1-pisteet olisivat 0 %, mutta sama ei päde Oman asiakaskeskuksen mittariin.
“Näistä syistä pyrimme voimakkaasti arvioimaan jokaisen testin suorituskyvyn Matthews-korrelaatiokertoimen (MCC) avulla tarkkuuden ja F1-pisteiden sijaan kaikissa binääriluokitteluongelmissa”, sanoo Davide Chicco, Ten Quick Tips for -julkaisun kirjoittaja. Koneoppiminen laskennallisessa biologiassa.