Luokittelumallin laadun mittaaminen

Luokittelumallin laadun miittaamisen syyt:

  • Luokittelumallien vertailu
    Tarve vertailla kahden tai useamman luokittelumallin suoriutumista luokittelemisesta
  • Luokittelumallin tuloksen tarkastelu
    Halutaan tietää onko yksittäisen luokittelumallin tulos tarpeeksi korkea, jotta sitä voisi käyttää

Jotta luokittelumalleja voidaan vertailla, täytyy olla olemassa dataa, jonka oikeat luokat tiedetään. Tätä luokiteltua dataa kutsutaan termillä kultakanta (eng. Gold standard). Ilman oikeita luokkia ei luonnollisesti voi tarkastella luokittelumallin suoriutumista.

Luokittelumallin laadun mittaamisessa halutaan tarkastella kuinka hyvä on luokittimen sisällä oleva malli datasta. Malli on hyvä, jos se kuvaa hyvin dataa, mutta malli voi olla myös liian yksinkertainen tai monimutkainen, jolloin luokittimen tulokset ovat huonoja. Alta löytyy lisäksi kuva hyvästä mallista sekä yli- ja aliopituista malleista.

Liian yksinkertaisella mallilla luokitustulokset ovat sekä opetus että testidatalla huonoja. Malli ei siis kuvaa dataa järkevästi.

Liian monimutkaisen mallin vaara on se, että se on oppinut opetusdatan liiankin hyvin. Malli ei siis yritä summittaisesti vetää rajaviivoja eri luokkien datapisteiden välille, vaan on nysvännyt ihmeellisen tarkan kuvauksen oppimisdatasta, jolla mallin suoriutuminen on todella hyvä. Malli kuitenkin suoriutuu huonosti testidatalla, koska malli ei ole pystynyt riittäviin yleistyksiin. Jotta mallin ylioppiminen voidaan huomata, luokintinta ei saa testata opetusdatalla!

SvmOverfitting.jpg Lähde: http://www.dtreg.com/svm.htm

Esimerkkejä käyttötarkoituksesta

Luokittimia luodaan erilaisia käyttötarkoituksia varten. Yleisiä luokittimien sovelluskohteita on:

  • Spämmin tunnistaminen
    Yritetään sähköpostin avulla selvittää onko viesti spämmiä vai ei. Tietoturvayhtiöillä on omat luokittimensa spämmin tunnistamiseen.
  • Virustartunnan testaaminen
    Tutkimalla saatua näytettä luokitellaan henkilö sairaaksi tai terveeksi.
  • Lainan tai luoton myöntäminen
    Pankeilla on luokittimia, joiden avulla voidaan määrittää kuuluuko asiakas riskiryhmään, jolle ei lainaa tai luottoa myönnetä.
  • Puheentunnistus
    Ihmisen puheesta tunnistetaan foneemeja ja niistä yritetään päätellä mitä puhuttiin.

Käytön edellytykset ja oletukset

Luokittelumallin laadun mittaamiseen tarvitaan:

  • Luokittelumalli
    • Luokittelee datapisteitä luokkiin C1,..., CN, missä N>1. Jokainen datapiste voi kuulua vain yhteen luokkaan.
  • Aineisto
    • Datapisteitä
      • Data voi olla esimerkiksi tekstidokumentteja, geenejä, mittaustuloksia
      • Ennen luokittelumallin käyttöä dataa esikäsitellään sellaiseen muotoon, että data muuttuu datapisteiksi
    • Kultakanta (eng. Gold Standard)
      • Datapisteiden oikeat luokat
    • Aineisto jaetaan kahteen osaan:
      • opetusaineistoon, jota käytetään mallin opettamisessa
        Opetusaineistosta yleensä lohkotaan erilaisin menetelmin ylimääräinen testiaineisto, jota käytetään muun muassa mallin paranteluun ja parametrien säätöön.
      • testiaineistoon, jolla lopullista mallia evaluoidaan

Saman opetus- ja testiaineiston käyttäminen
Eri luokittimilla tuotettuja evaluaatiomittojen arvot ovat keskenään vertailukelpoisia vain jos evaluaatiomitan tuloksen laskentaan on käytetty samaa opetus- ja testiaineistoa.

Edustava opetus- ja testiaineisto
Jos opetus- ja testiaineisto ei edusta ongelman oikeaa dataa, eivät evaluaatiomittojen tulokset kerro miten luokitin selviytyisi varsinaisesta ongelmasta.

Mallin laadun mittaaminen

Sekaannusmatriisi

Sekaannusmatriisin avulla voidaan esittää miten käsitteiden luokittelu vastasi oikeaa kultakannan luokittelua. Luokitellun aineiston sekaannusmatriisin avulla voidaan laskea muun muassa saanti, tarkkuus sekä F-mitta. Sekaannusmatriisi on aina diagonaalinen: sekä rivejä että sarakkeita on yhtä monta kuin luokkia.

2-luokan tapaus

    Ennustettu luokka  
    Positivinen Negatiivinen Yht
Varsinainen luokka Positiivinen tp: true postiive
varsinainen positiivinen
fn: false negative
väärä negatiivinen
p
Negatiivinen fp: false postiive
väärä positiivinen
tn: true negative
varsinainen negatiivinen
n
Total   p' n' N

Sanallinen esimerkki

testin mukaan sairas
oikeasti sairas
testin mukaan terve
oikeasti sairas
testin mukaan sairas
oikeasti terve
testin mukaan terve
oikeasti terve

Numeerinen esimerkki

110 20
30 120

Lähde: Alpaydin, Ethem. Introduction to Machine Learning. 2004. 2nd ed. MIT press.

n-luokan tapaus

n-luokan tapauksessa sekaannusmatriisi luodaan vastaavasti kuin 2-luokan tapauksessa.

Esimerkki kolmen luokan tapauksesta:

Ennustettu luokka
A B C
Varsinainen luokka A 5 3 0
B 2 3 1
C 0 2 1

http://en.wikipedia.org/wiki/Confusion_matrix

R-esimerkki

> # Oikeat luokat
> tr <- c(1,2,2,3,3,3,2,4,1,1)
> # Ennustetut luokat
> pr<-c(1,2,1,3,3,3,1,2,1,2)
> # Sekaannusmatriisi, jossa oikeat luokat ovat riveillä ja ennustetut sarakkeissa
> cm = table(tr, pr)
> print(cm)
   pr
tr  1 2 3
  1 2 1 0
  2 2 1 0
  3 0 0 3
  4 0 1 0
> # Kuinka monta kappaletta luokan 4 esiintymiä ennustettiin luokkaan 2 kuuluvaksi
> print(cm[4,2])
[1] 1

Tärkeimmät erityispiirteet suhteessa muihin

Toisin kuin tilastollisissa menetelmissä, ei testata tilastollista merkitsevyyttä, vaan vertaillaan tai todetaan luokittimen hyvyyttä.

Evaluaatiomenetelmien palauttamat arvot ja niiden tulkinta

Pääsääntöisesti evaluaatiomenetelmistä tulevat arvot skaalataan välille [0,1]. Jossain menetelmissä luku on suoraan prosenttiluku luokitustuloksesta, mutta joillain menetelmillä arvo ei ole yhtenevä luokitustulosten osuuksiin.

2-luokan tapauksessa vaihtelu on käytännön syistä välillä [0.5, 1]. Tämä on sen takia, että jos luokittimen luokitustarkkuus on alle 50% 2-luokan tapauksessa (eli suurin osa luokitellaan väärään luokkaan) on järkevää vaihtaa luokituksessa luokat päittäin, jolloin tulos on joka tapauksessa yli 50%.

Käytetyt lähteet

  • [[http://en.wikipedia.org/wiki/Gold_standard_(test)][Wikipedia: Gold standard]
  • [[http://en.wikipedia.org/wiki/Statistical_classification][Wikipedia: Statistical classification]

Alustava kommentti Leolta

Hyviä ja selkeitä graafeja, ymmärretävää kieltä. Tykkäsin myös lopun vaihteluvälien selvennyksestä. Palaan kommentoimaan tarkemmin kun sivu on valmis smile

Ensimmäinen kommentti

Toinen kommentti

-- SiniPessala - 2012-10-03

Topic attachments
I Attachment Action Size Date Who Comment
JPEGjpg SvmOverfitting.jpg manage 28.3 K 2012-10-04 - 10:37 UnknownUser  
Topic revision: r8 - 2012-10-11 - SiniPessala
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2018 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback