AI 101

Mikä on sekaannusmatriisi?

mm

Yksi tehokkaimmista analytiikkatyökaluista koneoppimisessa ja data-analytiikassa on sekaannusmatriisi. Sekaannusmatriisi kykenee antamaan tutkijoille yksityiskohtaisia tietoja siitä, miten koneoppimisen luokittelija on suorittanut kohde-luokkien suhteen aineistossa. Sekaannusmatriisi osoittaa esimerkit, jotka on luokiteltu oikein ja väärin. Tarkastellaan tarkemmin, miten sekaannusmatriisi on rakennettu ja miten sitä voidaan tulkita.

Mikä on sekaannusmatriisi?

Aloittaen antamalla yksinkertaisen määritelmän sekaannusmatriisille. Sekaannusmatriisi on ennustavan analytiikan työkalu. Se on taulukko, joka näyttää ja vertaa todellisia arvoja mallin ennustettujen arvojen kanssa. Koneoppimisen kontekstissa sekaannusmatriisi käytetään mittana, jolla analysoidaan, miten koneoppimisen luokittelija on suorittanut aineistossa. Sekaannusmatriisi luo visualisoinnin mittareista, kuten tarkkuudesta, täsmällisyydestä, spesifisyydestä ja kutsuvuudesta.

Sekaannusmatriisi on erityisen hyödyllinen, koska se, toisin kuin muut luokittelumetrikat, kuten yksinkertainen tarkkuus, antaa täydellemmän kuvan siitä, miten malli on suorittanut. Käyttämällä vain tarkkuutta voidaan joutua tilanteeseen, jossa malli luokittelee yhden luokan täysin ja jatkuvasti väärin, mutta tämä menee huomaamatta, koska keskimääräinen suorituskyky on hyvä. Sekaannusmatriisi antaa vertailun eri arvojen välillä kuten väärät negatiiviset, oikeat negatiiviset, väärät positiiviset ja oikeat positiiviset.

Määritellään sekaannusmatriisin edustamat eri mittarit.

Kutsuvuus sekaannusmatriisissa

Kutsuvuus on oikeiden positiivisten esimerkkien määrä jaettuna väärien negatiivisten ja oikeiden positiivisten esimerkkien yhteismäärällä. Toisin sanoen kutsuvuus edustaa oikeiden positiivisten esimerkkien osuutta, jonka koneoppimismalli on luokitellut. Kutsuvuus ilmoitetaan prosentteina positiivisista esimerkeistä, joita malli pystyi luokittelemaan oikein kaikkien positiivisten esimerkkien joukosta aineistossa. Tämä arvo voidaan myös kutsua “osumaksi” ja siihen liittyvä arvo on “herkkyys“, joka kuvailee todennäköisyyttä kutsuvuudelle eli oikeiden positiivisten ennusteiden todennäköisyyttä.

Tarkkuus sekaannusmatriisissa

Kuten kutsuvuus, tarkkuus on arvo, joka seuraa mallin suorituskykyä positiivisten esimerkkien luokittelussa. Toisin kuin kutsuvuus, tarkkuus on kiinnostunut siitä, kuinka moni esimerkki, jonka malli on merkinnut positiiviseksi, oli todella positiivinen. Tämän laskemiseen tarvitaan oikeiden positiivisten esimerkkien määrä jaettuna väärien positiivisten ja oikeiden positiivisten esimerkkien yhteismäärällä.

Jotta ero kutsuvuuden ja tarkkuuden välillä selvenisi, tarkkuus pyrkii määrittämään prosentuaalisen osuuden kaikista positiiviseksi merkityistä esimerkeistä, jotka olivat todella positiivisia, kun taas kutsuvuus seuraa prosenttia kaikista todellisista positiivisista esimerkeistä, joita malli pystyi tunnistamaan.

Spesifisyyden määrittely sekaannusmatriisissa

Kun kutsuvuus ja tarkkuus ovat arvoja, jotka seuraavat positiivisia esimerkkiä ja oikeiden positiivisten arvoja, spesifisyyden määrittely mittaa todellisen negatiivisen arvon eli niiden esimerkkien määrää, joita malli on määritellyt negatiivisiksi ja jotka olivat todella negatiivisia. Tämä lasketaan jakamalla esimerkkien määrä, jotka on luokiteltu negatiivisiksi, väärien positiivisten ja oikeiden negatiivisten esimerkkien yhteismäärällä.

Sekaannusmatriisin ymmärtäminen

Kuva: Jackverr via Wikimedia Commons, (https://commons.wikimedia.org/wiki/File:ConfusionMatrix.png), CC BY SA 3.0

Sekaannusmatriisin esimerkki

Määriteltyämme tarvittavat termit kuten tarkkuus, kutsuvuus, herkkyys ja spesifisyyden määrittely, voimme tarkastella, miten nämä eri arvot ovat edustettuina sekaannusmatriisissa. Sekaannusmatriisi luodaan luokittelutilanteissa, ja se on sovellettavissa, kun on kaksi tai useampi luokka. Sekaannusmatriisi voi olla yhtä korkea ja leveä kuin tarpeen, ja se voi sisältää halutun määrän luokkia, mutta selkeyden vuoksi tarkastelemme 2×2 sekaannusmatriisia binääriselle luokittelutehtävälle.

Esimerkiksi oletetaan, että luokittelija käytetään määrittämään, onko potilaalla tietty sairaus. Ominaisuudet syötetään luokittelijaan, ja luokittelija palauttaa yhden kahdesta eri luokittelusta – joko potilaalla ei ole sairautta tai hänellä on.

Aloittaen sekaannusmatriisin vasemmasta reunasta. Vasen puoli edustaa luokittelijan tekemiä ennusteita yksittäisille luokille. Binäärisessä luokittelutehtävässä on kaksi riviä. Ylärivi seuraa todellisia arvoja, aineiston todellisia luokka-etikettejä.

Sekaannusmatriisin tulkinta voidaan tehdä tarkastelemalla, missä kohdassa rivit ja sarakkeet leikkaavat toisensa. Vertaa mallin ennusteita mallin todellisiin etiketteihin. Tässä tapauksessa oikeiden positiivisten arvojen sijainti on ylävasemmalla kulmassa. Väärät positiiviset löytyvät yläoikeasta kulmasta, missä esimerkit ovat todella negatiivisia, mutta luokittelija on merkinnut ne positiivisiksi.

Alavasemman kulman ruutu näyttää esimerkit, joita luokittelija on merkinnut negatiivisiksi, mutta jotka olivat todella positiivisia. Lopulta, sekaannusmatriisin alaoikean kulman ruutu sisältää oikeat negatiiviset arvot eli ne esimerkit, jotka ovat todella negatiivisia.

Kun aineistossa on enemmän kuin kaksi luokkaa, matriisi kasvaa luokkien määrän mukaan. Esimerkiksi, jos on kolme luokkaa, matriisi on 3×3-matriisi. Riippumatta sekaannusmatriisin koosta, sen tulkintatapa on aina sama. Vasen puoli sisältää ennustetut arvot, ja todelliset luokka-etiketit ovat ylärivissä. Oikein ennustetut esimerkit sijaitsevat vinottain ylävasemman kulman ja alaoikean kulman välillä. Tarkastelemalla matriisia voidaan erottaa edellä mainitut neljä ennustemittaria.

Esimerkiksi voidaan laskea kutsuvuus ottamalla oikeat positiiviset ja väärät negatiiviset, lisäämällä ne yhteen ja jakamalla tuloksen oikeiden positiivisten esimerkkien määrällä. Vastaavasti tarkkuus voidaan laskea yhdistämällä väärät positiiviset ja oikeat positiiviset ja jakamalla tulos oikeiden positiivisten esimerkkien määrällä.

Vaikka voisi kuluttaa aikaa manuaalisen laskemiseen mittareita kuten tarkkuus, kutsuvuus ja spesifisyyden määrittely, nämä mittarit ovat niin yleisesti käytettyjä, että useimmat koneoppimiskirjastot sisältävät menetelmiä, joilla ne voidaan näyttää. Esimerkiksi Scikit-learn-kirjasto Pythonissa sisältää funktion, joka luo sekaannusmatriisin.

Blogger ja ohjelmoija, jolla on erityisalat Machine Learning ja Deep Learning -aiheissa. Daniel toivoo pystyvänsä auttamaan muita käyttämään tekoälyn voimaa sosiaaliseen hyvään.