Kasvilajien tunnistaminen tukivektorikoneen avulla



Samankaltaiset tiedostot
Kaksiluokkainen tapaus, lineaarinen päätöspinta, lineaarisesti erottuvat luokat

Testejä suhdeasteikollisille muuttujille

1. LINEAARISET LUOKITTIMET (jatkoa)

1. OHJAAMATON OPPIMINEN JA KLUSTEROINTI

Tässä luvussa käsitellään optimaalisten piirteiden valintaa, luokittelijan optimointia ja luokittelijan suorituskyvyn arviointia.

1. OHJAAMATON OPPIMINEN JA KLUSTEROINTI

Matriisit ja vektorit Matriisin käsite Matriisialgebra. Olkoon A = , B = Laske A + B, , 1 3 3

4. Tukivektorikoneet

Demo 1: Simplex-menetelmä

Osakesalkun optimointi. Anni Halkola Turun yliopisto 2016

Neuroverkkojen soveltaminen vakuutusdatojen luokitteluun

1. TILASTOLLINEN HAHMONTUNNISTUS

805306A Johdatus monimuuttujamenetelmiin, 5 op

f(x, y) = x 2 y 2 f(0, t) = t 2 < 0 < t 2 = f(t, 0) kaikilla t 0.

Yhtälöryhmä matriisimuodossa. MS-A0004/A0006 Matriisilaskenta. Tarkastellaan esimerkkinä lineaarista yhtälöparia. 2x1 x 2 = 1 x 1 + x 2 = 5.

Ilkka Mellin Tilastolliset menetelmät. Osa 3: Tilastolliset testit. Tilastollinen testaus. TKK (c) Ilkka Mellin (2007) 1

1/6 TEKNIIKKA JA LIIKENNE FYSIIKAN LABORATORIO V

54. Tehdään yhden selittäjän lineaarinen regressioanalyysi, kun selittäjänä on määrällinen muuttuja (ja selitettävä myös):

1 Rajoittamaton optimointi

TEEMU ROOS (KALVOT MUOKATTU PATRIK HOYERIN LUENTOMATERIAALISTA)

S Laskennallinen Neurotiede

Johdatus tekoälyyn. Luento : Koneoppiminen. Patrik Hoyer. [ Kysykää ja kommentoikaa luennon aikana! ]

1 2 x2 + 1 dx. (2p) x + 2dx. Kummankin integraalin laskeminen oikein (vastaukset 12 ja 20 ) antaa erikseen (2p) (integraalifunktiot

Regressioanalyysi. Vilkkumaa / Kuusinen 1

Operatioanalyysi 2011, Harjoitus 3, viikko 39

Osa 2: Otokset, otosjakaumat ja estimointi

Regressioanalyysi. Kuusinen/Heliövaara 1

Otoskoko 107 kpl. a) 27 b) 2654

MAY1 Tehtävien ratkaisut Kustannusosakeyhtiö Otava päivitetty Julkaiseminen sallittu vain koulun suljetussa verkossa.

SGN-2500 Johdatus hahmontunnistukseen 2007 Luennot 4 ja 5

Talousmatematiikan perusteet: Luento 12. Lineaarinen optimointitehtävä Graafinen ratkaisu Ratkaisu Excel Solverilla

805306A Johdatus monimuuttujamenetelmiin, 5 op

Metsämuuronen: Tilastollisen kuvauksen perusteet ESIPUHE... 4 SISÄLLYSLUETTELO METODOLOGIAN PERUSTEIDEN KERTAUSTA AINEISTO...

Ei välttämättä, se voi olla esimerkiksi Reuleaux n kolmio:

RANTALA SARI: Sairaanhoitajan eettisten ohjeiden tunnettavuus ja niiden käyttö hoitotyön tukena sisätautien vuodeosastolla

Talousmatematiikan perusteet: Luento 11. Lineaarinen optimointitehtävä Graafinen ratkaisu Ratkaisu Excel Solverilla

Preliminäärikoe Tehtävät Pitkä matematiikka / 3

MS-A0204 Differentiaali- ja integraalilaskenta 2 (ELEC2) Luento 7: Pienimmän neliösumman menetelmä ja Newtonin menetelmä.

Johdatus tilastotieteeseen Estimointi. TKK (c) Ilkka Mellin (2005) 1

Sovellettu todennäköisyyslaskenta B

Tilastotieteen kertaus. Vilkkumaa / Kuusinen 1

MONISTE 2 Kirjoittanut Elina Katainen

SPSS-pikaohje. Jukka Jauhiainen OAMK / Tekniikan yksikkö

Lineaariset luokittelumallit: regressio ja erotteluanalyysi

Ilkka Mellin Tilastolliset menetelmät Osa 2: Otokset, otosjakaumat ja estimointi Estimointi

7. laskuharjoituskierros, vko 10, ratkaisut

031021P Tilastomatematiikka (5 op) kertausta 2. vk:een

Tilastollinen testaus. Vilkkumaa / Kuusinen 1

ASUINKERROSTALON ÄÄNITEKNISEN LAADUN ARVIOINTI. Mikko Kylliäinen

Laskennallinen data-analyysi II

Sovellettu todennäköisyyslaskenta B

1 Ensimmäisen asteen polynomifunktio

JOHDATUS TEKOÄLYYN TEEMU ROOS

Testit järjestysasteikollisille muuttujille

Avainsanojen poimiminen Eeva Ahonen

Luento 1: Optimointimallin muodostaminen; optimointitehtävien luokittelu

Numeeriset menetelmät

JOHDATUS TEKOÄLYYN TEEMU ROOS

MS-A0502 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

1. Lineaarinen optimointi

9. Tila-avaruusmallit

Kimppu-suodatus-menetelmä

1. LINEAARISET LUOKITTIMET

Harjoitus 7: NCSS - Tilastollinen analyysi

Otannasta ja mittaamisesta

S OPTIIKKA 1/10 Laboratoriotyö: Polarisaatio POLARISAATIO. Laboratoriotyö

Väliestimointi (jatkoa) Heliövaara 1

w + x + y + z =4, wx + wy + wz + xy + xz + yz =2, wxy + wxz + wyz + xyz = 4, wxyz = 1.

k=0 saanto jokaisen kolmannen asteen polynomin. Tukipisteet on talloin valittu

Yhtälöryhmä matriisimuodossa. MS-A0007 Matriisilaskenta. Tarkastellaan esimerkkinä lineaarista yhtälöparia. 2x1 x 2 = 1 x 1 + x 2 = 5.

Solmu 3/2001 Solmu 3/2001. Kevään 2001 ylioppilaskirjoitusten pitkän matematiikan kokeessa oli seuraava tehtävä:

Sovellettu todennäköisyyslaskenta B

MTTTA1 Tilastomenetelmien perusteet 5 op Luento Kokonaisuudet johon opintojakso kuuluu

Introduction to Machine Learning

Sisällysluettelo ESIPUHE 1. PAINOKSEEN... 3 ESIPUHE 2. PAINOKSEEN... 3 SISÄLLYSLUETTELO... 4

FUNKTIONAALIANALYYSIN PERUSKURSSI Johdanto

2 Osittaisderivaattojen sovelluksia

12. Hessen matriisi. Ääriarvoteoriaa

Oulun seitsemäsluokkalaisten matematiikkakilpailu Tehtävät ja ratkaisut

NAO- ja ENO-osaamisohjelmien loppuunsaattaminen ajatuksia ja visioita

Harjoitus 9: Excel - Tilastollinen analyysi

Osakesalkun optimointi

Älykäs datan tuonti kuljetusongelman optimoinnissa. Antoine Kalmbach

Estimointi. Estimointi. Estimointi: Mitä opimme? 2/4. Estimointi: Mitä opimme? 1/4. Estimointi: Mitä opimme? 3/4. Estimointi: Mitä opimme?

r = n = 121 Tilastollista testausta varten määritetään aluksi hypoteesit.

Luento 1: Optimointimallin muodostaminen; optimointitehtävien luokittelu

Mittaustulosten tilastollinen käsittely

Tämän luvun sisältö. Luku 6. Hahmontunnistuksen perusteita. Luokittelu (2) Luokittelu

Likimääräisratkaisut ja regularisaatio

Teema 3: Tilastollisia kuvia ja tunnuslukuja

LIITE 1 VIRHEEN ARVIOINNISTA

Piiri K 1 K 2 K 3 K 4 R R

Matematiikan tukikurssi

, on säännöllinen 2-ulotteinen pinta. Määrää T x0 pisteessä x 0 = (0, 1, 1).

} {{ } kertaa jotain

Diskriminanttianalyysi I

Harha mallin arvioinnissa

TUTKIMUSOPAS. SPSS-opas

Tilastollisen analyysin perusteet Luento 1: Lokaatio ja hajonta

2.2 Gaussin eliminaatio. 2.2 Gaussin eliminaatio. 2.2 Gaussin eliminaatio. 2.2 Gaussin eliminaatio

Transkriptio:

Kasvilajien tunnistaminen tukivektorikoneen avulla TURUN YLIOPISTO Informaatioteknologian laitos Tietojenkäsittelytiede Pro gradu -tutkielma Joulukuu 2006 Jussi Toivonen

TURUN YLIOPISTO Informaatioteknologian laitos TOIVONEN, JUSSI: Kasvilajien tunnistaminen tukivektorikoneen avulla Pro gradu -tutkielma, 46 sivua, 10 liitesivua Tietojenkäsittelytiede Joulukuu 2006 Kasviyksilöiden automaattista lajintunnistusta pidetään tärkeänä tutkimusalueena tarkkuusmaanviljelyn kannalta. Jos se saadaan toimimaan tarpeeksi tehokkaasti ja luotettavasti käytännön olosuhteissa, siitä on hyötyä esimerkiksi levitettäessä kasvimyrkkyjä ja muita kemikaaleja. Kameran kuvan tai värisävyn perusteella kasvien tunnistaminen on kuitenkin vaikeaa. Sen sijaan kasvin sisältämien lehtivihreämolekyylien emittoiman klorofylli a -fluoresenssin vaihtelun mittaaminen on osoittautunut hyvin tehokkaaksi tunnistusmenetelmäksi. Kahdessa aiemmassa tutkimuksessa on kokeiltu neuroverkkoluokittimen käyttöä eri kasvilajeista mitattujen klorofyllifluoresenssisignaalien tunnistamiseen. Toisessa opetus- ja testausnäytteet on kerätty samanaikaisesti, toisessa on kerätty useita testausaineistoja viikkoja luokittimen opetuksen jälkeen. Tulokset olivat molemmissa tutkimuksissa hyviä. Tässä tutkielmassa tarkastellaan näitä kahta erilaista aineistoa, ja sovelletaan niiden luokitteluun neuroverkon sijaan tukivektorikonetta. Tukivektorikone on uudehko hahmontunnistusmenetelmä, jota pidetään yleisesti tehokkaana. Tutkielmassa selostetaan menetelmän toimintaa. Lisäksi kokeillaan luokitteluun käytettävien piirteiden vaihtamista ja esittämistä eri muodoissa. Tutkielmassa selvitetään automaattista piirrevalintaa osana luokittimen muodostamista. Saatuja tuloksia vertaillaan aiempien tutkimusten tuloksiin. Tehdyissä kokeissa tukivektorikoneen avulla saatiin yleisesti suunnilleen yhtä hyvät tulokset kuin neuroverkoilla. Piirteitä vaihtamalla saatiin parannettua tuloksia hieman. Asiasanat: hahmontunnistus, kasvintunnistus, klorofyllifluoresenssi, tukivektorikoneet.

UNIVERSITY OF TURKU Department of Information Technology TOIVONEN, JUSSI: Plant identification with support vector machines Master s Thesis, 46 pages, 10 appix pages Computer Science December 2006 Automatic identification of plant species is considered an important area of research in precision farming. It will be helpful, for example, when spreading herbicides and other chemicals, if high enough level of efficiency and reliability will be reached in practical conditions. However, plant identification based on machine vision or reflection spectra is difficult. Measuring the chlorophyll a fluorescence emitted by plant leaves on the other hand has proved to be a very efficient method for identification. In two previous studies, neural network classifiers have been used for identification of chlorophyll fluorescence signals. In the first of these studies, all samples used for training and testing the classifier were collected simultaneously. In the second one, several test samples were collected weeks after the training process. The results were quite good for both studies. In this thesis, these previous studies are examined, and support vector machines instead of neural networks are then applied as means of classification of the same data. Support vector machines are a relatively new method for pattern recognition, and are generally considered efficient. The results are compared with the earlier ones. In addition, the features used for classification are transformed and extracted differently in order to make the classification more accurate. This requires selecting a small subset of useful features from a large number of candidates. The automatic feature selection method used is described in this thesis. The classification results for support vector machines were generally about as good as those obtained earlier with neural networks. Slightly better prediction accuracy was gained by using different kind of features. Key words: pattern recognition, plant identification, chlorophyll fluorescence, support vector machines.

Sisältö 1 Johdanto 1 1.1 Klorofylli a -fluoresenssi...................... 1 1.2 Kasvien tunnistus fluoresenssikäyrästä.............. 2 1.3 Hahmontunnistus ja tukivektorikoneet.............. 3 1.4 Tutkielman tavoite ja rakenne................... 4 2 Luokittelu tukivektorikoneilla 6 2.1 Lineaarisesti erottuvat luokat................... 6 2.2 Lineaarisesti erottumattomat luokat................ 9 2.3 Epälineaarinen luokitin....................... 11 2.4 Usean luokan aineisto........................ 12 2.5 Testaus ja validointi........................ 13 3 Piirrevalinta 15 3.1 Taustaa............................... 15 3.2 Piirteiden vertailu.......................... 17 3.2.1 Tilastollinen testaus.................... 17 3.2.2 ROC-käyrä......................... 17 3.3 Piirrejoukkojen vertailu....................... 19 3.4 Piirrealijoukon hakualgoritmit................... 20 4 Aiemmista tutkimuksista 22 4.1 Samanikäisten näytteiden luokittelu................ 22 4.1.1 Aineisto........................... 22 4.1.2 Menetelmät......................... 24 4.1.3 Tulokset........................... 25 4.2 Kasvien iän vaikutus luokitteluun................. 25 4.2.1 Aineisto ja menetelmät................... 26

4.2.2 Tulokset........................... 27 5 Tukivektorikoneiden soveltaminen aineistoon 28 5.1 Käytetty ohjelmisto......................... 28 5.2 Luokittimen mallin valinnasta................... 29 5.3 Samanikäisten näytteiden luokittelu................ 30 5.3.1 Luokittelu tukivektorikoneella............... 30 5.3.2 Vaihtoehtoiset regressiopiirteet............... 32 5.3.3 Fourier-muunnetut käyrät................. 33 5.3.4 Piirteiden määrän vähentäminen............. 35 5.4 Kasvien iän vaikutus luokitteluun................. 36 6 Yhteenveto 42 6.1 Samanikäisten näytteiden luokittelu................ 43 6.2 Kasvien iän vaikutus luokitteluun................. 44 Lähteet 45

1 Johdanto Automaattinen kasvintunnistus tarkoittaa toimenpidettä, jossa tietokone luokittelee itsenäisesti tuntemattomia kasvinäytteitä eli sijoittaa niitä ennalta määritettyihin luokkiin. Luokat voivat edustaa esimerkiksi yksittäisiä kasvilajeja tai rikka- ja hyötykasveja. Kasvintunnistus edellyttää jonkinlaisen hahmontunnistusmenetelmän käyttöä, jossa kone opetetaan erottamaan eri luokkiin kuuluvat kasvinäytteet sensoreista saatujen havaintojen perusteella. Kasvintunnistuksen hyödyt ovat maanviljelyssä. Erityisesti rikkakasvien tunnistusta kasvimyrkkyjä käytettäessä on tutkittu merkittävänä sovellusalueena. Jos kasvimyrkyt voidaan ruiskuttaa valikoivasti vain niihin kohtiin, joissa kasvaa rikkakasveja, tällä on positiivinen vaikutus kasvien terveellisyyteen sekä myrkyistä aiheutuviin ympäristöhaittoihin ja taloudellisiin kustannuksiin. Kasvintunnistuksessa käytettäväksi mittausmenetelmäksi on aiemmin kokeiltu ainakin valokuvaa ja värisävyä. Kasvien tunnistaminen valokuvan perusteella on vaikeaa, koska se on hyvin herkkä menetelmä esimerkiksi valaistuksen epätasaisuuksille ja lehdille, jotka osittain peittävät toisensa. Lisäksi se vaatii paljon laskentatehoa. Valaistuksen epätasaisuudet aiheuttavat ongelmia myös silloin, kun kasvi pyritään tunnistamaan sen heijastaman värisävyn perusteella, eikä tämä menetelmä ole riittävän toimiva rikkakasvien erottamiseen viljakasveista. [11] Klorofyllifluoresenssikäyrän käyttö automaattiseen kasvintunnistukseen on melko uusi menetelmä, joka on tuottanut erittäin hyviä tuloksia laboratorioolosuhteissa. 1.1 Klorofylli a -fluoresenssi Yhteyttämisprosessi eli fotosynteesi on biokemiallinen reaktio, jota tapahtuu kasveissa, levissä ja joissakin bakteereissa. Siinä klorofylli- eli lehtivihreämolekyylit muuttavat vettä ja hiilidioksidia glukoosiksi ja hapeksi käyttäen ener- 1

gianlähteenä auringonvaloa. Kun klorofyllimolekyyli absorboi valoa, suurin osa valon energiasta kuluu yhteyttämisreaktioon. Osa energiasta muuttuu lämmöksi, ja pieni osa emittoituu takaisin fluoresenssina. Klorofyllimolekyylit jaetaan rakenteensa perusteella eri tyyppeihin, jotka myös tuottavat erilaista fluoresenssia. Näistä tyypeistä tärkein on klorofylli a. Kun kasvin lehteä on pidetty pimeässä ja se altistetaan äkisti valolle, klorofylli a -fluoresenssin voimakkuus nousee ensin nopeasti ja laskee sitten hitaasti. Tätä ilmiötä kutsutaan löytäjänsä mukaan Kautskyn ilmiöksi (Kautsky phenomenon). Mittausprosessia, jossa fluoresenssin voimakkuuden vaihtelua tarkkaillaan ajan funktiona, kutsutaan fluoresenssi-induktioksi, ja vaihtelun graafista esitystä fluoresenssi-induktiokäyräksi tai Kautskyn käyräksi (Kautsky curve). [15] 1.2 Kasvien tunnistus fluoresenssikäyrästä Tietyllä tavalla mitattu klorofyllifluoresenssikäyrä on pääpiirteissään saman muotoinen kaikilla kasveilla. Kytkettäessä valo päälle fluoresenssin voimakkuus nousee ensin nopeasti tietylle minimitasolle, nousee sitten hieman hitaammin maksimitasolle, ja laskee lopulta hitaasti vakiotasolle. Fluoresenssikäyrän tarkka muoto vaihtelee kuitenkin eri kasvilajeilla ja kasviyksilöillä. Lisäksi siihen vaikuttavat ulkoiset tekijät, kuten esimerkiksi sääolosuhteet, ilmansaasteet ja kasvimyrkyt. Kasvinäytteen fluoresenssikäyrästä voidaan pyrkiä tunnistamaan kasvin laji siten, että käyrästä erotetaan ennalta määrätty joukko yksityiskohtia, ja sovelletaan niihin jotain hahmontunnistusmenetelmää. Käyrästä voidaan saada esiin enemmän tunnistusta helpottavia yksityiskohtia käyttämällä fluoresenssiinduktiossa useita eri vaiheita, joiden välillä käytetyn valonlähteen voimakkuus ja aallonpituus vaihtelee. Tyystjärven ym. [15] tutkimuksessa on kokeiltu kasvilajien tunnistusta kymmenestä erilaisia kasvinäytteitä edustavasta luokasta. Piirteinä on käytetty kolmen sekunnin pituisiin klorofyllifluoresenssikäyriin sovitettuja regressiosuoria. Luokitteluun kokeiltiin kolmea hahmontunnistusmenetelmää, joista tehokkaimmaksi todettiin kaksikerroksinen neuroverkko. Sitä käyttäen pystyttiin luokittelemaan oikein yli 95 prosenttia testiaineiston näytteistä. Tutkimuksen tulosten perusteella voidaan siis sanoa, että klorofyllifluoresenssi-induktio sopii kasvin lajin tunnistamiseen riittävän luotettavasti laboratorio-olosuhteissa, 2

mikäli testinäytteet ovat peräisin samasta aineistosta kuin hahmontunnistusalgoritmin opetukseen käytetyt näytteet. Keräsen ym. [11] tutkimuksessa on selvitetty kasvinäytteiden luokittelun tarkkuutta neljällä luokalla, kun testattavat näytteet on kerätty myöhemmin kuin opetukseen käytetyt. Mittaukset on tehty samoin kuin ensin mainitussa tutkimuksessa, piirteet on muodostettu samalla tavalla ja luokitteluun on käytetty saman kaltaista neuroverkkomenetelmää. Kuusi testiaineistoa neljästä eri kasvilajista on kerätty kuuden viikon aikana, kasvukauden eri vaiheissa. Tutkimustulosten mukaan kasvintunnistuksen tarkkuus vaihtelee suuresti sen mukaan, miten pitkä aika on kulunut luokittimen opetukseen ja testaukseen käytettyjen kasvinäytteiden keruun välillä. Lisäksi tämä vaihtelu ei ole suoraviivaista. Kasvintunnistuksen lisäksi klorofyllifluoresenssille on nähtävissä muutakin käyttöä elintarviketeollisuudessa. Codrean ym. artikkeleissa [5] ja [4] on kokeiltu fluoresenssiin perustuvaa kuvantamismenetelmää omenoiden laatuluokittelussa. 1.3 Hahmontunnistus ja tukivektorikoneet Hahmontunnistus (pattern recognition) tarkoittaa kohteiden tai näytteiden luokittelua (classification) eli sijoittamista omiin ryhmiinsä niiden mitattavissa olevien ominaisuuksien perusteella. Luokiteltavat kohteet esitetään hahmontunnistusjärjestelmässä joukkona piirteitä (features). Piirteet on tavallisesti koodattu luvuiksi, jotka kuvaavat yksittäisiä kohteen ominaisuuksia. Piirrejoukkoa, joka kuvaa yhtä kohdetta, kutsutaan piirrevektoriksi. Piirrevektorit voidaan esittää geometrisesti pisteinä piirreavaruudessa (feature space), jossa jokaista piirrettä vastaa yksi ulottuvuus. Kohteet, jotka ovat keskenään samankaltaisia monien piirteiden osalta, sijaitsevat piirreavaruudessa lähekkäin. Mikäli joukko piirteitä kuvaa hyvin eri luokkien välisiä eroja, muodostavat nämä luokat piirreavaruuteen selvästi erottuvia ryhmittymiä ja alueita. Tällöin voidaan tuntemattomia kohteita luokitella sen perusteella, miten ne sijoittuvat piirreavaruudessa. Hahmontunnistusjärjestelmä opetetaan luokittelemaan kohteita syöttämällä sille aluksi joukko opetuspiirrevektoreita. Tästä prosessista käytetään nimitystä koneoppiminen (machine learning). Mikäli opetukseen käytettyjen näytteiden luokat ovat etukäteen tiedossa, puhutaan ohjatusta hahmontunnistuk- 3

sesta (supervised pattern recognition); muussa tapauksessa kyseessä on ohjaamaton hahmontunnistus (unsupervised pattern recognition). Hahmontunnistusjärjestelmän muodostamiseen katsotaan yleensä kuuluvan seuraavat neljä vaihetta: Piirteiden tuottaminen kohteista (feature generation). Aluksi selvitetään, miten luokiteltavat kohteet voidaan esittää numeroista koostuvina piirrevektoreina. Luokitteluun käytettävien piirteiden valinta (feature selection). Seuraavaksi valitaan, mitä piirteitä ja kuinka monta piirrettä on syytä käyttää kyseisessä luokittelutehtävässä. Luokittimen suunnittelu (classifier design). Tässä vaiheessa määritetään luokittimen ominaisuudet yksityiskohtaisesti, ja opetetaan se luokittelemaan käyttämällä opetukseen varattua aineistoa. Järjestelmän arviointi (system evaluation). Lopuksi pyritään testiaineiston avulla arvioimaan, miten hyvin opetettu luokitin todellisuudessa toimii. Eteneminen näissä vaiheissa ei tapahdu suoraviivaisesti, vaan missä tahansa kohdassa voidaan joutua palaamaan takaisin ja parantamaan jotain aiemmin määriteltyä järjestelmän osaa. Tukivektorikone on eräs uudehko ja tehokkaana pidetty ohjattu koneoppimismenetelmä. Sen toiminta perustuu siihen, että kahden luokan välinen päätösrajapinta pyritään sijoittamaan epälineaarisesti muunnetussa piirreavaruudessa niin, että molempien luokkaryhmittymien reunojen etäisyydet siitä ovat mahdollisimman suuret. 1.4 Tutkielman tavoite ja rakenne Tämän tutkielman tarkoituksena on kokeilla tutkimuksien [15] ja [11] luokitteluongelmia samoilla aineistoilla, mutta soveltaen luokitteluun neuroverkon sijaan tukivektorikonetta. Menetelmän avulla saatuja luokittelutuloksia verrataan aikaisempien tutkimuksien vastaaviin. Lisäksi kokeillaan muutamia uusia tapoja tuottaa luokittelussa käytetyt piirteet aineistosta. Luvussa 2 selvitetään tukivektorikonemenetelmän toimintaperiaatteet sekä sen käyttö luokittelussa. Lisäksi käsitellään testausta ja validointia, jotka 4

ovat luokittimiin yleisesti liittyviä aiheita. Luvussa 3 käsitellään piirrevalinnan ongelmaa. Aihe liittyy tutkielman kohtaan, jossa aineistoa on muunnettu niin, etteivät aiemmissa tutkimuksissa tehdyt piirrevalinnat ole enää sovellettavissa. Luvussa 4 esitellään tarkemmin perustana ja vertailukohtina toimivat aiemmat tutkimukset, niissä käytetty aineisto ja saadut tutkimustulokset. Luvussa 5 selostetaan, miten aineistoon kokeiltiin tukivektorikoneluokittelua ja vaihtoehtoisia piirteitä. Siinä myös esitetään saadut tulokset. 5

2 Luokittelu tukivektorikoneilla Tukivektorikoneet (support vector machines, SVM) ovat koneoppimisen menetelmä, jota käytetään luokitteluun ja regressioanalyysiin. Luokittelussa sillä katsotaan erityisesti olevan hyvä yleistyskyky, eli kyky luokitella tuntematonta aineistoa. Tässä luvussa esitellään tukivektorikoneluokittimen toimintaperiaatteet ja menetelmä sellaisen muodostamiseen. Tiedot perustuvat Theodoridisin ja Koutroumbasin [14] kirjaan sekä Burgesin [2] artikkeliin. Tukivektorikoneluokitin perustuu alun perin 1970-luvulla kehitettyyn lineaariseen optimaalisen hypertason luokittimeen [16]. Sitä on 1990-luvulla laajennettu sopivaksi epälineaariseen luokitteluun piirreavaruuden muunnosten [1] ja joustavan marginaalin [7] avulla. 2.1 Lineaarisesti erottuvat luokat Olkoon x i R l, i = 1, 2,..., N, opetusaineiston piirrevektorit l-ulotteisessa piirreavaruudessa. Yksinkertaisimmassa tapauksessa oletetaan, että ne muodostavat kaksi luokkaa (merkitään ω 1 ja ω 2 ), jotka ovat lineaarisesti erottuvat (linearly separable). Tämä tarkoittaa sitä, että kaikki vektorit voidaan luokitella oikein käyttäen päätösfunktiona lineaarista hypertasoa g(x) = w x + b = 0 (2.1) missä w R l. Tuntematonta aineistoa luokiteltaessa päätösfunktion etumerkki määrää siis parametrina annetun vektorin x luokan. Etäisyyttä tämän luokittelevan hypertason ja lähimmän opetuspisteen välillä kerrottuna kahdella kutsutaan tason marginaaliksi. Kun joukko näytepisteitä rajoittaa marginaalia hypertason molemmilla puolilla, näitä täsmälleen marginaalin reunoilla sijaitsevia pisteitä vastaavia piirrevektoreita kutsutaan tukivektoreiksi (support 6

x 2 x 1 Kuva 2.1: Kaksi luokittelevaa hypertasoa ja niiden marginaalit. Tukivektoripisteet on ympyröity. vector). Kuva 2.1 havainnollistaa kahta tällaista hypertasoa ja niiden marginaaleja kaksiulotteisessa piirreavaruudessa. Sopivien luokittelevien hypertasojen määrä on ääretön, mutta vain yhdellä niistä on suurin mahdollinen marginaali. Tätä maksimaalisen marginaalin hypertasoa pidetään luokittelun kannalta parhaana mahdollisena, koska sen etäisyydet kummankin luokan lähimmistä pisteistä ovat yhtä suuret, ja siten riski ennestään tuntemattoman näytteen luokittelusta väärin on mahdollisimman pieni. Tukivektorikonemenetelmä yksinkertaistettuna perustuu tällaisen optimaalisen luokittelutason etsimiseen niin, että peruskriteerinä on juuri marginaalin leveys. Pisteen x etäisyys hypertasosta on g(x) / w. Jos jokin taso on yhtä etäällä lähimmistä kahden eri luokan opetusnäytteistä, sen parametrit w ja b voidaan määritellä niin, että g(x):n arvo näissä lähimmissä pisteissä on +1 luokassa ω 1 ja 1 luokassa ω 2. Tällöin marginaali on 2/ w = 2/ w w, ja g(x) 1, kun x ω 1, (2.2) g(x) 1, kun x ω 2. (2.3) Siten suurin mahdollinen marginaali voidaan löytää minimoimalla w w niin, 7

että y i g(x i ) 1, kun i = 1, 2,..., N, (2.4) +1, kun x i ω 1, missä y i = (2.5) 1, kun x i ω 2. Koska rajoite (2.4) on lineaarinen, voidaan luokittelutason määrääminen esittää lineaarisesti rajoitettuna neliöllisenä ääriarvotehtävänä (linearly constrained quadratic optimization task). Se voidaan puolestaan ratkaista käyttämällä Lagrangen kerroinmenetelmää, eli minimoimalla yhtälö side-ehdoilla L(w, b, λ) = 1 2 w 2 N λ i (y i g(x i ) 1) (2.6) i=1 L(w, b, λ) = 0, w (2.7) L(w, b, λ) = 0, b (2.8) λ i 0, kun i = 1, 2,..., N, (2.9) λ i (y i g(x i ) 1) = 0, kun i = 1, 2,..., N, (2.10) missä λ = (λ 1, λ 2,...,λ N ) ovat piirrevektoreihin liittyvät Lagrangen kertoimet. Yhtälöistä (2.7) ja (2.8) seuraa, että w = N λ i y i x i, (2.11) i=1 N λ i y i = 0. (2.12) i=1 Koska käytetty kustannusfunktio 1 2 w 2 on konveksi ja side-ehdot ovat lineaarisia, ääriarvotehtävä voidaan esittää Wolfen duaalimuodossa, eli se voidaan ratkaista maksimoimalla L(w, b, λ) niin, että side-ehdot (2.11) ja (2.12) ovat voimassa. Lopulta sopivien sijoitusoperaatioiden jälkeen tehtäväksi muodostuu laskea niin, että max λ ( N λ i 1 2 i=1 N i=1 ) N λ i λ j y i y j (x i x j ) j=1 (2.13) N λ i y i = 0. (2.14) i=1 8

Optimaalisen luokittelevan hypertason parametrit w ja b voidaan nyt johtaa yhtälöistä (2.11) ja (2.10), jolloin päätösfunktioksi saadaan g(x) = w x + b = N λ i y i (x i x) + b. (2.15) i=1 Vain tukivektorit vaikuttavat saatuun hypertasoon, koska λ i = 0 kaikille muille piirrevektoreille. Se, että suurin osa opetusaineistosta ei vaikuta päätösfunktioon, ehkäisee luokittimen ylioppimista (overfitting) eli liiallista mukautumista opetusaineistoon testiaineiston luokittelukyvyn kustannuksella. Tämä parantaa luokittimen yleistyskykyä. 2.2 Lineaarisesti erottumattomat luokat Yleensä luokiteltavan aineiston luokat eivät ole lineaarisesti erottuvat. Joustavan marginaalin menetelmässä (soft margin) otetaan huomioon aineiston pisteet, jotka sijaitsevat luokittelevan hypertason väärällä puolella tai marginaalin sisällä. Siinä määritellään jokaiselle piirrevektorille x i niin sanottu löysä muuttuja (slack variable) ξ i 0 niin, että y i g(x i ) 1 ξ i, kun i = 1, 2,..., N, (2.16) ja ξ i = 0 vektoreille, jotka on luokiteltu oikein ja sijaitsevat marginaalin ulkopuolella, 0 < ξ i 1 vektoreille, jotka on luokiteltu oikein ja sijaitsevat marginaalin sisällä, ja ξ i > 1 vektoreille, jotka on luokiteltu väärin. Kahdessa jälkimmäisessä tilanteessa siis ξ i / w on opetuspisteen etäisyys marginaalin siitä reunasta, joka on vektorin oman luokan puolella hypertasoa. Kuva 2.2 havainnollistaa tätä. Pyrkimyksenä on saavuttaa hyvä kompromissi luokitteluvirheiden minimoinnin ja marginaalin maksimoinnin väliltä. Kun yhtälön (2.6) kustannusfunktioon otetaan mukaan edellä mainitut muuttujat, saadaan minimoitava Lagrangen yhtälö L(w, b, ξ, λ, µ) = 1 N N 2 w 2 + C ξ i µ i ξ i i=1 i=1 N λ i (y i g(x i ) 1 + ξ i ) i=1 (2.17) 9

x 2 ξ i w x 1 Kuva 2.2: Tilanne, jossa yksi vektori on marginaalin sisällä ja yksi vektori luokitellaan väärin. ehdoilla w = N λ i y i x i, (2.18) i=1 N λ i y i = 0, (2.19) i=1 C µ i λ i = 0, (2.20) λ i (y i g(x i ) 1 + ξ i ) = 0, (2.21) ξ i µ i = 0, (2.22) µ i 0, λ i 0, (2.23) kun i = 1, 2,..., N. Tässä ξ = (ξ 1, ξ 2,...,ξ N ) ovat löysät muuttujat ja µ = (µ 1, µ 2,...,µ N ) niihin liittyvät Lagrangen kertoimet. Parametri C määrittelee, miten tärkeää opetusvektoreiden luokitteluvirheiden minimointi on suhteessa marginaalin maksimointiin. Käytännössä kuhunkin tilanteeseen parhaiten sopiva C:n arvo on selvitettävä kokeilemalla. Lopulta uusi ääriarvotehtävä on laskea ( N ) max λ i 1 N N λ i λ j y i y j (x i x j ) λ 2 i=1 i=1 j=1 (2.24) 10

niin, että 0 λ i C, kun i = 1, 2,..., N, (2.25) N λ i y i = 0. (2.26) i=1 Tämä on ehtoja lukuun ottamatta sama kuin edellisessä luvussa. Luokittelevan hypertason parametrit voidaan sen jälkeen johtaa yhtälöistä (2.18) (2.22). 2.3 Epälineaarinen luokitin Tukivektoreihin perustuvaa luokitusmenetelmää voidaan laajentaa niin, että se käyttää epälineaarista päätösfunktiota. Tällöin aineisto kuvataan johonkin useampiulotteiseen piirreavaruuteen, jossa sen kuva on luokiteltavissa tyydyttävästi lineaarisen hypertason avulla. Tämä tapahtuu korvaamalla ääriarvotehtävässä (2.24) ja päätösfunktiossa (2.15) piirrevektoreiden välillä käytetyt sisätulot jollakin sopivalla ydinfunktiolla (kernel function) K(x, y) = Φ(x) Φ(y), (2.27) missä Φ : R l H on epälineaarinen kuvaus alkuperäisestä piirreavaruudesta Hilbertin avaruuteen H. Tämän avaruuden ulottuvuuksien määrä on yleensä suurempi kuin alkuperäisen ja saattaa olla ääretön. Esimerkiksi päätösfunktioksi saadaan nyt g(x) = N λ i y i K(x i, x) + b. (2.28) i=1 K:n pitää olla sellainen epälineaarinen funktio, että se täyttää Mercerin ehdon eli että K(x, y)f(x)f(y) dx dy 0 (2.29) kaikille sellaisille funktioille f(x), x R l, joille on voimassa f(x) 2 dx <. (2.30) Tyypillisiä luokittelussa käytettyjä ydinfunktioita ovat esimerkiksi K(x, y) = (x y + 1) p, (2.31) ) x y 2 K(x, y) = exp (, (2.32) 2σ 2 K(x, y) = tanh(γx y + β) (2.33) 11

sopivilla γ:n ja β:n arvoilla. Näistä ensimmäistä käytettäessä päätösfunktio on polynomiaalinen astetta p. Ydinfunktiota (2.32) käyttämällä saadaan RBFluokitin (radial basis function), jonka päätösfunktio noudattaa normaalijakaumapintaa. Funktioon (2.33) perustuva päätösfunktio on muodoltaan sigmoidi. Koska käytettävä sisätulofunktio H:ssa määritellään ja lasketaan yksinomaan ydinfunktion kautta, Φ:tä ja H:ta ei tarvitse, eikä välttämättä edes voida tuntea. Lisäksi H:n ulottuvuuksien määrä ei vaikuta opetus- ja testausalgoritmien kompleksisuuteen. Tämä on merkittävä etu, joka tekee koko menetelmästä käytännössä mahdollisen. 2.4 Usean luokan aineisto Tavallinen tukivektorikoneluokitin toimii vain, kun luokkia on kaksi. Mikäli luokkia on M > 2, käytetään yleensä jotain kolmesta menetelmästä, jotka on selostettu seuraavassa. Yksinkertaisin tapa on muodostaa M luokitinta, joissa kussakin verrataan yhtä luokkaa kaikkiin muihin luokkiin yhdessä. Niissä siis yksittäinen luokka on päätösfunktion positiivisella puolella ja kaikki muut yhtenä joukkona negatiivisella. Kukin testiaineiston alkio lasketaan kuuluvaksi siihen luokkaan, jossa päätösfunktion arvo eli pisteen positiivinen etäisyys hypertasosta on suurin. Toisessa menetelmässä muodostetaan jokaisen mahdollisen luokkaparin välille erillinen luokitin, jolloin niitä on yhteensä M(M 1)/2. Näistä kunkin opetusaineistona käytetään vain niitä näytteitä, jotka kuuluvat jompaan kumpaan kyseisen luokkaparin luokkaan. Testiaineiston alkioille valitaan luokka laskemalla niille todennäköisyyksiä eri luokkaparien päätösfunktioiden arvojen perusteella. Eräs tapa tehdä tämä on niin sanottu äänestys: jokaisen pariluokittimen kohdalla valittu luokka saa äänen, ja lopulta näyte sijoitetaan siihen luokkaan, joka sai eniten ääniä. Kolmannessa vaihtoehdossa käytetään laajennettua tukivektorikonemenetelmää, jossa muodostetaan M päätösfunktiota samanaikaisesti. Tämä kuitenkin lisää huomattavasti opetusalgoritmin kompleksisuutta, eikä menetelmä ole vielä kovin laajalti testattu. 12

2.5 Testaus ja validointi Luokittimen testauksella tarkoitetaan sen todellisen tunnistustarkkuuden arviointia soveltamalla luokitinta erilliseen testausaineistoon. Tunnistustarkkuutta mitataan oikein luokiteltujen näytteiden määrän suhteena niiden kokonaismäärään. Tunnistustarkkuutta ei voida luotettavasti arvioida käyttämällä luokittimen testaukseen samoja (tai osittain samoja) näytteitä kuin sen opettamiseen. Se antaisi liian optimistisen kuvan luokittimesta. Siksi saatavilla oleva aineisto pitää jollain tavalla satunnaisesti jakaa opetusvaiheessa käytettävään joukkoon ja testausvaiheessa käytettävään joukkoon niin, etteivät ne sisällä samoja näytteitä. Mikäli käytössä olevan aineiston koko on rajoitettu, on tärkeää suorittaa jako siten, että tunnistustarkkuusarvion luotettavuus olisi mahdollisimman hyvä. Yleensä luokittimen arvioinnin kannalta parasta on käyttää opetukseen kaksi kolmasosaa ja testaukseen yksi kolmasosa näytteistä [17, s. 149]. Jotta sekä opetus- että testausaineisto edustaisivat riittävän hyvin koko aineistoa, pitäisi jokaisen luokan suhteellisen osuuden olla molemmissa joukoissa suunnilleen yhtä suuri kuin koko aineistossa. Jotta testauksella olisi jotain merkitystä luokittimen tunnistustarkkuuden arvioinnin kannalta, se ei saa mitenkään vaikuttaa arvioitavaan luokittimeen. Testausaineistolla saatuja luokittelutuloksia ei siis voida enää käyttää kokeiltujen luokittimien muuttamiseen tai valikointiin. Luokittimen validoinnilla tarkoitetaan sen tunnistustarkkuuden arviointia luokittimen suunnittelu- ja opetusvaiheessa. Validoinnin avulla pyritään selvittämään käytetylle opetusaineistolle parhaiten sopivat luokittimen parametrit ja muut yksityiskohdat. Validointi tehdään kokeilemalla luokittelua opetusaineistosta erotetulla validointiaineistolla. Validoinnin tarkoitus ei ole luokittimen tunnistustarkkuuden arviointi, vaan erilaisten luokittimien vertailu, joten ei ole välttämättä tarpeellista pitää validointiaineisto täysin erillisenä muusta luokittimen opetukseen käytetystä aineistosta. Validointi voidaan tehdä samalla tavalla kuin testaus, eli jakamalla opetusaineisto kahteen osaan. Tavallisesti on kuitenkin parempi käyttää n-osaista ristiinvalidointia (n-fold cross-validation). Siinä aineisto jaetaan kiinteästi n:ään satunnaiseen osaan, jonka jälkeen opetetaan n luokitinta: jokainen osa toimii vuorollaan validointiaineistona, jolloin loput osat käytetään yhdessä opetukseen. Näistä n:stä validoinnista saaduista tunnistustarkkuuksista laske- 13

taan keskiarvo, joka kertoo luokittimen menestyksestä käytetyillä parametreilla. Yleisesti hyvänä n:n arvona pidetään noin kymmentä [17, s. 150]. Koska aineisto jaetaan osiin satunnaisesti, ristiinvalidointi tulisi vielä toistaa esimerkiksi kymmenen kertaa, ja käyttää näistä saatua keskimääräistä tulosta. Sellaista n-osaisen ristiinvalidoinnin erikoistapausta, jossa n on näytteiden määrä aineistossa, kutsutaan nimellä leave-one-out cross-validation. Kutakin näytettä käytetään siis vuorollaan validointiin ja kaikkia muita opetukseen. Opetusaineistot ovat mahdollisimman laajoja, minkä ansiosta voidaan löytää hyvin suorituskykyisiä luokittimia. Lisäksi menetelmä ei sisällä minkäänlaista satunnaistekijää. Huono puoli menetelmässä on, että se kuluttaa hyvin paljon laskentatehoa, mikäli aineisto on suuri. Siksi se sopii käytettäväksi lähinnä pienille aineistoille. 14

3 Piirrevalinta Tässä luvussa käsitellään piirrevalintaa (feature selection) osana hahmontunnistusjärjestelmän muodostamista. Siinä esitetään joitakin erilaisia tapoja valita luokittelun kannalta mahdollisimman hyviä piirreyhdistelmiä keskittyen erityisesti tämän tutkielman yhteydessä käytettyyn menetelmään. 3.1 Taustaa Luokiteltavista kohteista voidaan tavallisesti erottaa hyvin suuri määrä piirteitä, joita on mahdollista käyttää luokittelun perusteena. Luokitteluongelman kannalta suuren piirremäärän karsiminen on välttämätöntä kolmesta syystä. Ensinnäkin piirreavaruuden ulottuvuuksien määrällä on tavallisesti suuri vaikutus monien opetukseen liittyvien laskutoimitusten kompleksisuuteen. Toiseksi mitä suurempi on opetukseen käytettyjen näytteiden määrän N suhde valittujen piirteiden määrään l, sitä parempi on luokittimen yleistyskyky: liian suuri määrä piirteitä aiheuttaa opetusaineiston ylioppimista. Lisäksi suhdeluvun N/l kasvaessa paranee myös testaamalla saatu arvio luokittimen todellisesta tunnistustarkkuudesta. [14] Piirteitä voidaan rajata jossain määrin käyttämällä sovelluskohteen tuntemukseen perustuvaa harkintaa, mutta hyödyllisimpien piirteiden etsimiseen täytyy tavallisesti käyttää jotain automaattista menetelmää. Sopivien piirteiden valinta on oleellisen tärkeä osa luokittimen muodostamista. Päämääränä on löytää piirrealijoukko, jonka avulla luokitteluvirheitä tulee mahdollisimman vähän ja jossa ei ole liikaa piirteitä. Hyvät piirteet saavat arvoja, jotka ovat piirreavaruudessa lähellä toisiaan kuuluessaan samaan luokkaan, mutta kaukana toisistaan kuuluessaan eri luokkiin. Piirrevalinta voidaan tehdä joko vertailemalla yksittäisiä piirteitä tai kokonaisia piirrejoukkoja. Yksittäisten piirteiden vertailun heikkous on, että siinä ei voida ottaa huomioon useiden piirteiden vaikutusta kokonaisuutena. Kaksi 15

piirrettä voivat korreloida keskenään niin, ettei niiden käyttö yhdessä paranna luokittelutulosta, vaikka ne yksinään olisivat erittäin hyviä luokittelukriteereitä. Tällöin toinen piirteistä on tarpeeton, ja se kannattaisi korvata jollakin toisella piirteellä, joka ei välttämättä yksin olisi erityisen hyödyllinen. Toisaalta voimakas korrelaatio ei välttämättä tarkoita, ettei korreloivan piirteen käyttäminen toisi selvää lisähyötyä luokitteluun. Lisäksi yksinään hyödyttömät piirteet voivat olla hyödyllisiä yhdessä muiden kanssa, ja kaksi yksinään hyödytöntä piirrettä saattavat olla yhdessä hyödyllisiä. [9] Menetelmät piirrejoukkojen asettamiseksi paremmuusjärjestykseen on tapana jakaa kolmeen luokkaan sen mukaan, miten niissä hyödynnetään käytettyä luokittelujärjestelmää. Niin kutsutut käärivät menetelmät (wrappers) kokeilevat luokittimen tunnistustarkkuutta erilaisilla piirrealijoukoilla. Metodi on yksinkertainen, ja toimii kaikenlaisilla luokittimilla. Siltä voi myös odottaa hyviä tuloksia, koska piirteiden testaus toimii samalla tavalla kuin varsinainen luokittelu, jota varten piirteitä valitaan. Laskentaan saattaa kulua paljon aikaa, koska menetelmä vaatii luokittimen opettamisen erikseen jokaista kokeiltavaa piirreyhdistelmää varten. Esimerkiksi Codrean ym. [6] artikkelissa on käytetty wrapper-tyyppistä tapaa Keräsen ym. [11] tutkimuksen piirteiden optimointiin. Siinä aineistosta irrotettujen piirteiden parametreja on muokattu geneettisiin algoritmeihin perustuvalla piirreoppimisjärjestelmällä niin, että erilaisten piirrejoukkojen sopivuutta on mitattu neuroverkkoluokittimen tunnistustarkkuuden avulla. Sulautetut menetelmät (embedded methods) sisällyttävät piirrevalinnan osaksi luokittimen opetusta. Niissä valinta toteutetaan siis osana opetusalgoritmia. Suodattavat menetelmät (filters) eivät ole mitenkään yhteydessä itse luokittimeen. Ne pyrkivät laskemaan jollakin (luokittimen testausta kevyemmällä) tavalla piirreyhdistelmille luokkaerottuvuusmittoja (class separability measures). Ne ovat tunnuslukuja, joiden tarkoitus on kuvata sitä, miten selvästi eri luokkiin kuuluvat näytteet sijoittuvat omille alueilleen tietyssä piirreavaruudessa, ja siis miten helppoa niiden luokittelu on. Erottuvuuden arvioinnin apuna voidaan käyttää esimerkiksi luokkien keskinäisiä etäisyyksiä, päällekkäisyyttä tai sisäistä varianssia. Seuraavissa luvuissa on kuvattu lyhyesti joitakin tapoja vertailla luokkaerottuvuutta yksittäisillä piirteillä ja piirreyhdistelmillä. Erityisesti esitetään sirontamatriiseihin perustuva menetelmä, jota on käytetty tämän tutkielman 16

yhteydessä. 3.2 Piirteiden vertailu Piirteiden lajittelussa paremmuusjärjestykseen (feature ranking) pyritään jotakin luokkaerottuvuuden kriteeriä käyttämällä etsimään joukko piirteitä, jotka yksinään ovat luokittelun kannalta oleellisimpia. Yksittäisten piirteiden vertailu voi olla hyödyllistä, jos halutaan rajata suuresta määrästä piirteitä tärkeimmät. Rajatussa joukossa tarkempi piirrealijoukkojen vertailu on laskennallisesti helpompaa. 3.2.1 Tilastollinen testaus Tilastollisen hypoteesien testauksen avulla voidaan tutkia, eroavatko kaksi luokkaa toisistaan tietyn piirteen osalta. Silloin esimerkiksi testataan, onko kahden luokan keskiarvojen havaittu ero tilastollisesti merkitsevä. Tähän voidaan käyttää Studentin t-jakaumaan perustuvaa testiä, mikäli piirteet ovat jakautuneet normaalisti luokittain. Muussa tapauksessa luokkien sijaintien eroa voidaan tarkastella esimerkiksi Kruskal Wallisin testillä, joka on epäparametrinen menetelmä joukkojen mediaanien eroavuuden testaamiseksi. [14] Mikäli luokat eivät eroa toisistaan merkitsevästi, voidaan olettaa, että kyseisestä piirteestä ei ole hyötyä näihin luokkiin kuuluvien näytteiden luokittelussa. Tätä voidaan käyttää perusteluna piirteen hylkäämiselle. 3.2.2 ROC-käyrä Kahden luokan erottuvuutta tietyn piirteen osalta voidaan kuvata ROC-käyrän avulla (receiver operating characteristic). Tällä tavoin saatu tunnusluku kuvastaa luokkien todennäköisyysjakaumien päällekkäisyyttä. Kuvan 3.1 vasen puoli esittää kahden luokan (ω 1 ja ω 2 ) todennäköisyysjakaumien tiheyskäyriä. Näytteet voidaan jakaa eri luokkiin sijoittamalla johonkin lukusuoralle erotuskynnys (pystysuora viiva kuvassa), jonka eri puolille osuvat näytteet luokitellaan eri tavoin. Jos tiheyskäyrät ovat osittain päällekkäiset, osa näytteistä luokitellaan väistämättä väärin. Kun erotuskynnys sijoitetaan tiettyyn kohtaan, sen oikealle puolelle jääviä näytteitä kutsutaan tässä yhteydessä positiivisiksi ja vasemmanpuoleisia negatiivisiksi. Silloin positiivisiksi luokitellut eli kynnyksen oikealla puolella olevat näytteet jakaantuvat 17

+ väärät positiiviset ω 1 ω 2 1 P(oik. pos.) C B A oikeat positiiviset 0 0 P(väär. pos.) 1 Kuva 3.1: Esimerkki kahden luokan todennäköisyysjakaumien tiheysfunktiokäyristä ja kolmesta ROC-käyrästä. kahteen joukkoon: oikein luokiteltuja sanotaan oikeiksi positiivisiksi ja väärin luokiteltuja vääriksi positiivisiksi. ROC-käyrän avulla esitetään graafisesti oikeiden ja väärien positiivisten suhteelliset määrät erotuskynnyksen sijainnin vaihdellessa lukusuoralla. Kuvion vaaka-akseli mittaa sitä, kuinka suuri osuus luokan ω 1 näytteistä on luokiteltu väärin, ja pystyakseli sitä, kuinka suuri osuus luokan ω 2 näytteistä on luokiteltu oikein. Toisin ilmaistuna sijainti vaaka-akselilla (pystyakselilla) kertoo, miten todennäköistä on, että satunnaisesti valittu luokan ω 1 (ω 2 ) alkio luokitellaan väärin (oikein). Kuvan 3.1 oikea puoli esittää kolmea esimerkkiä ROC-käyrästä: käyrän A tilanteessa luokat ovat (kyseisen piirteen osalta) täysin päällekkäiset, eikä niitä pystytä luokittelemaan; kun ROC-käyrä on B:n kaltainen, luokat ovat jonkin verran erillään; käyrän C tapauksessa luokissa on vain vähän päällekkäisyyttä, ja se edustaa siten näistä kolmesta luokittelun kannalta parasta tapausta. Kuviosta tarkastellaan yleensä ROC-käyrän ja 45 asteen suoran (A kuvassa) rajaamaa pinta-alaa tai ROC-käyrän alapuolelle jäävää pinta-alaa (area under curve, AUC). Mitä suurempi ala on, sitä vähemmän luokkien todennäköisyysjakaumissa on päällekkäisyyttä ja sitä paremmin luokat erottuvat toisistaan tarkastellun piirteen osalta. 18

3.3 Piirrejoukkojen vertailu Piirteitä yksittäin vertailemalla löydetty parhaiden piirteiden joukko ei yleensä ole luokitteluun paras mahdollinen esimerkiksi siksi, että siinä voi olla paljon redundanssia. Siitä syystä on tarpeellista vertailla kokonaisia piirrejoukkoja. Tämä vaatii luonnollisesti enemmän laskentatehoa, koska vertailtavia vaihtoehtoja on paljon enemmän. Seuraavassa esitellään eräs menetelmä piirrejoukkojen vertailuun. Sirontamatriiseihin perustuva tapa mitata luokkien erottuvuutta ottaa huomioon luokkien sisäiset hajonnat sekä niiden keskinäiset etäisyydet piirreavaruudessa. Se perustuu näytteiden euklidisiin etäisyyksiin. Tässä luvussa kuvattu laskentatapa on esitetty kirjoissa [14] ja [8]. Luokkien sisäinen sirontamatriisi (within-class scatter matrix) määritellään M S w = P i C i. (3.1) i Tässä P i on luokan ω i a priori -todennäköisyys, eli todennäköisyys sille, että satunnaisesti valittu näyte kuuluu luokkaan ω i. Käytännössä se estimoidaan käytettävissä olevan aineiston avulla määrittämällä P i n i /N, missä n i on kyseistä luokkaa edustavien näytteiden määrä. C i on luokan ω i kovarianssimatriisi C i = Ei[(x µ i )(x µ i ) T ], (3.2) missä vektori µ i sisältää piirteiden keskiarvot luokassa ω i. Odotusarvot estimoidaan aineiston perusteella. Matriisin S w jälki 1 tr S w kuvaa piirteiden keskimääräistä varianssia kaikissa luokissa. Luokkienvälinen sirontamatriisi (between-class scatter matrix) lasketaan M S b = P i (µ i µ)(µ i µ) T, (3.3) i missä µ sisältää piirteiden keskiarvot kaikissa luokissa. Tällöin trs b kuvaa kuhunkin luokkaan kuuluvien näytteiden keskimääräistä etäisyyttä globaalista keskiarvosta kaikissa luokissa. Yhdistetty sirontamatriisi (mixture scatter matrix) S m = E[(x µ)(x µ) T ] (3.4) = S w + S b (3.5) 1 Neliömatriisin jälki on sen päälävistäjän alkioiden summa. 19

on kaikkien näytteiden kovarianssimatriisi suhteessa globaaliin keskiarvoon, ja trs m on piirteiden globaalien varianssien summa. Esimerkiksi tunnuslukua J 1 = tr S m tr S w (3.6) voidaan käyttää eräänä mittana luokkien erottuvuudelle kyseisessä piirreavaruudessa. Se on sitä suurempi, mitä paremmin näytteet ovat ryhmittyneet oman luokkakeskiarvonsa ympärille, ja mitä kauempana luokkakeskiarvot ovat toisistaan. Sirontamatriiseja S m ja S w soveltamalla on mahdollista laskea monia erilaisia erottuvuusmittoja [8]. Theodoridis ja Koutroumbas [14] suosittelevat käytettäväksi edellä mainitun J 1 :n sijaan joko determinantteihin perustuvaa tunnuslukua tai sen muunnelmaa J 2 = det S m det S w = det(s 1 w S m) (3.7) J 3 = tr(s 1 w S m). (3.8) Edellä kuvattu menetelmä saattaa antaa harhaanjohtavia arvioita luokitteluvirheiden suhteellisesta todennäköisyydestä eri piirrejoukoilla. Luokkien keskinäisen etäisyyden ero eri piirrejoukoilla vaikuttaa tulokseen voimakkaasti silloinkin, kun sillä on vain vähän merkitystä luokittelun kannalta. Tästä seuraa, että menetelmä voi joissakin tilanteissa suosia sellaista piirreavaruutta, jossa luokkien todennäköisyysjakaumissa on enemmän päällekkäisyyttä ja luokkakeskiarvojen ero suurempi, vaikka toisessa piirreavaruudessa läheisempi luokkapari erottuisi paremmin ja olisi siten luokittelun kannalta edullisempi. Ongelmaan voidaan vaikuttaa käyttämällä luokkien erottuvuuden määrittelyyn menetelmiä, jotka muistuttavat edellä kuvattua mutta perustuvat epälineaarisiin etäisyysmittoihin. [8] 3.4 Piirrealijoukon hakualgoritmit Jos mahdollisia piirteitä on paljon, on optimaalisen piirrealijoukon valitseminen hyvin raskas tehtävä, vaikka sitä varten ei tarvitsekaan välttämättä käydä läpi kaikkia piirrevaihtoehtoja [8, s. 207]. Siksi käytetään yleensä jotain epäoptimaalista menetelmää, joita on kuvattu seuraavassa. Lisäysvalintamenetelmässä (sequential forward selection) aloitetaan tyhjästä piirrevektorista, johon kokeillaan lisätä piirteitä yksi kerrallaan. Valituksi 20

tulee joka vaiheessa se piirre, jonka lisääminen piirrevektoriin tuottaa parhaan tuloksen käytetyllä erottuvuusmitalla. Tätä toistetaan, kunnes piirrevektoriin on valittu tarpeeksi piirteitä. Menetelmän heikkoutena on, ettei kerran valittua piirrettä voida pudottaa pois, vaikka siitä tulisi tarpeeton myöhemmin lisättyjen piirteiden takia. Yhden sijasta piirteitä voidaan myös lisätä useita kerrallaan. Tämä saattaa parantaa tulosta, koska lisättävien piirteiden keskinäinen korrelaatio vaikuttaa valintaan. Algoritmin laskennallinen vaativuus kuitenkin kasvaa selvästi, koska lisättävien piirteiden yhdistelmiä on jokaisessa lisäysvaiheessa enemmän. Poistovalintamenetelmä (sequential backward selection) on edelliseen verrattuna käänteinen: piirrevektori sisältää aluksi kaikki mahdolliset piirteet, joita poistetaan yksi kerrallaan. Kussakin vaiheessa pois jää se piirre, jonka poisto vähiten heikentää luokkien erottuvuutta jäljelle jäävillä piirteillä. Poistomenetelmän laskentavaiheet ovat hitaampia kuin lisäysmenetelmässä, koska käsitellyt piirrejoukot ovat laajempia. Lisäksi vaiheita on enemmän, mikäli valittavien piirteiden määrä on lähempänä yhtä kuin kaikkien piirteiden kokonaismäärää. Vastaavasti kuin lisäysmenetelmässä, tässäkin voidaan piirteitä poistaa kerralla useita. Tällöin poistettavien piirteiden keskinäinen korrelaatio otetaan huomioon laskentaan käytetyn ajan kustannuksella. Sopivan piirrevektorin etsintään voidaan käyttää myös edellisten menetelmien muunnelmaa, jossa jokaisessa vaiheessa sekä lisätään että poistetaan piirteitä valittujen joukosta. Tämä lisää algoritmin kompleksisuutta, mutta mahdollistaa aikaisemmassa vaiheessa tehtyjen valintojen peruuttamisen hakuprosessin edetessä. 21

4 Aiemmista tutkimuksista Tyystjärven ym. [15] sekä Keräsen ym. [11] tutkimuksissa on kokeiltu automaattista kasvinäytteiden tunnistamista erilaisista lähtökohdista. Molemmissa tutkimuksissa on käytetty samanlaisia luokittelupiirteitä ja neuroverkkoluokitinta. Yksi tämän tutkielman tavoitteista on vertailla tukivektorikoneilla saatuja luokittelutuloksia aikaisempiin neuroverkkotuloksiin. Tässä luvussa on kuvattu mainittujen tutkimusten sisältö siltä osin kuin se liittyy tähän tutkielmaan. 4.1 Samanikäisten näytteiden luokittelu Tyystjärven ym. [15] tutkimuksessa on kokeiltu kasvilajien tunnistamista klorofyllifluoresenssin perusteella. Luokittimen opetukseen ja testaukseen käytetyt näytteet on valittu satunnaisesti samasta, yhdellä kerralla kerätystä aineistosta. Tutkimuksen tulosten perusteella fluoresenssikäyrä sopii kasvien tunnistamiseen erittäin hyvin: sen avulla saatiin yli 95 prosentin tunnistustarkkuus kymmenen kasviluokan joukossa. 4.1.1 Aineisto Käytetty aineisto koostuu kymmenestä luokasta, jotka edustavat useita kasvilajeja sekä yhtä jäkälälajia, jotka ovat kasvaneet erilaisissa kasvuympäristöissä (fytotroni, kasvihuone, puisto ja metsä). Kussakin luokassa on 200 näytettä eli yksittäistä fluoresenssikäyrää. Käyrät muodostuvat tuhannesta peräkkäisestä klorofyllifluoresenssin voimakkuuden mittauksesta. Mittaukset on tehty kolmen sekunnin aikana, jolloin eliö on altistettu valolle niin, että valon aallonpituus ja voimakkuus on vaihdellut useita kertoja ennalta määrätyn aikataulun mukaisesti. Valonlähteinä on käytetty punaista (aallonpituus 650 nm) ja pitkäaaltoista punaista (735 nm) LED-valaisinta sekä kirkasta valkoista valoa tuot- 22

tavaa lamppua. Mittausarvojen tarkkuus on 12 bittiä, ja ne on normalisoitu skaalaamalla arvovälille [0, 1]. Luokat on muodostettu seuraavanlaisista näytteistä: rauduskoivu (Betula pula), kasvanut ulkona virginiantupakka (Nicotiana tabacum), fytotronissa maissi (Zea mays), fytotronissa ruis (Secale cereale), fytotronissa ruis (Secale cereale), kasvihuoneessa juolavehnä (Elymus repens), kasvihuoneessa mänty (Pinus sylvatica), ulkona korpikarhunsammal (Polytrichum commune), ulkona ruskorahkasammal (Sphagnum fuscum), ulkona sormipaisukarve (Hypogymnia physodes), ulkona. Sormipaisukarve on muista lajeista poiketen jäkälä eikä kasvi. Jäkälissä levät tai bakteerit suorittavat yhteyttämisen. Muodoltaan kaikki aineiston fluoresenssikäyrät muistuttavat toisiaan siten, että niissä on alussa loiva nousu ja sen jälkeen lasku, keskellä jyrkkä nousu sekä lasku ja lopussa loiva lasku. Kuva 4.1 havainnollistaa käyrien tyypillistä muotoa. Siihen on piirretty kolmesta kasvilajista jokaisen mittausajan kohdalle kaikkien mittausten mediaani eli järjestyksessä keskimmäinen arvo. Luokittelua varten jokaisesta näytteestä on laskettu kahdeksan regressiosuoraa käyrän tietyiltä aikajaksoilta, jotka on valittu kahden sekunnin pituiselta yhtäjaksoiselta käyrän osalta. Valinnat on tehty manuaalisesti käyttäen perusteina kokeiluja ja biologista tietämystä fluoresenssikäyrän käyttäytymisestä. Regressiosuorien aikajaksot on merkitty kuvan 4.1 alalaitaan. Regressiosuorista muodostetut piirrevektorit koostuvat kahdeksasta lukuparista. Kukin lukupari sisältää yhden regressiosuoran kulman suhteessa vaaka-akseliin (aika) ja sijainnin korkeusakselilla (fluoresenssin voimakkuus) ajanhetkellä nolla. Jälkimmäinen on toisin sanoen korkeusakselin ja regressiosuoran leikkauskohta. Piirteiden määräytymistä on havainnollistettu kuvassa 4.2. Nämä piirteet on vielä normalisoitu skaalaamalla välille [0, 1]. 23

juolavehnä koivu mänty fluoresenssin voimakkuus 0,5 1 1,5 aika (s) 2 2,5 3 Kuva 4.1: Kolmen kasvilajin mediaanifluoresenssikäyrät ja regressiosuorien aikajaksot. 4.1.2 Menetelmät Aineisto on jaettu kahteen yhtäsuureen osaan, joihin on valittu näytteitä satunnaisesti mutta kuitenkin yhtä paljon jokaisesta luokasta. Kummassakin osassa on siis ollut tuhat näytettä. Toista osaa on käytetty luokittimen opetukseen ja toista sen testaukseen. Hahmontunnistuksen välineinä on kokeiltu lähimmän luokkakeskuksen menetelmää (bayesian minimum distance, BMD), k:n lähimmän näytteen menetelmää (k-nearest neighbor, k-nn) ja MLP-neuroverkkomenetelmää (multilayer perceptron). BMD-luokitin opetetaan siten, että lasketaan jokaisen luokan keskimääräinen sijainti piirreavaruudessa, toisin sanoen luokan opetusnäytteiden väliset piirteiden aritmeettiset keskiarvot. Luokitus tapahtuu valitsemalla testinäytteelle se luokka, jonka keskiarvo on lähimpänä. Lähimpien näytteiden menetelmässä luokituksessa lasketaan kaikkien opetusnäytteiden etäisyys testinäytteestä. Luokaksi merkitään se, johon kuuluu eniten näytteitä k:sta lähimmästä näytteestä. Tässä tapauksessa k = 9. MLP on yksinkertainen neuroverkkojen variaatio. Siinä useita syöte-, sisäja tulossolmuja yhdistetään kerroksittain yksisuuntaiseksi, syklittömäksi neu- 24

α y 0 y 0 α 0 x 1 x 2 x 1 x 2 Kuva 4.2: Havainnollistus siitä, miten piirteet on tuotettu fluresenssikäyristä kahden aikajakson kohdalta. Ajanhetkien x 1 ja x 2 välisten arvojen määräämästä regressiosuorasta lasketaan kulma α suhteessa vaakatasoon ja sijainti y 0 korkeusakselin leikkauskohdassa. roverkoksi. Solmujen painotukset säädetään opetusvaiheessa iteratiivisesti eri näytteillä saatujen palautteiden perusteella käyttäen niin sanottua backpropagation-algoritmia. Tässä tapauksessa solmuja oli syötekerroksessa 16, yhdessä sisäkerroksessa 21 ja tuloskerroksessa 10. Solmujen tulofunktiona on käytetty logaritmista sigmoidia. 4.1.3 Tulokset Tutkimus osoittaa, että kasvilajeja voidaan tunnistaa erittäin luotettavasti klorofyllifluoresenssi-induktion avulla. Kokeiltaessa eri hahmontunnistusmenetelmiä tarkimmaksi todettiin neuroverkko, joka luokitteli 95,9 % näytteistä oikein. BMD- ja k-nn-luokittimilla vastaavat tulokset olivat noin 78 % ja 91 %. Testissä nähtiin lisäksi, että samanlaiset kasvuolosuhteet lisäsivät myös fluoresenssikäyrän samankaltaisuutta eri lajien välillä. 4.2 Kasvien iän vaikutus luokitteluun Keräsen ym. [11] tutkimuksessa on kokeiltu automaattista kasvientunnistusta kenties hieman realistisemmissa olosuhteissa. Alussa kerätyn aineiston avulla opetettua luokitinta on testattu useilla eri aineistoilla, jotka on kerätty päiviä 25

tai viikkoja myöhemmin. Tarkoituksena on ollut selvittää, miten luokittimen opetuksesta kulunut aika vaikuttaa tunnistustarkkuuteen uusilla kasvinäytteillä. 4.2.1 Aineisto ja menetelmät Aineistot jakautuvat neljään luokkaan ja sisältävät fluoresenssikäyriä, jotka on mitattu seuraavien kasvilajien edustajista: juolavehnä (Elymus repens), piharatamo (Plantago major), voikukka (Taraxacum officinale) ja vuohenputki (Aegopodium podagraria). Kasvinäytteet on kerätty puistosta kuuden viikon aikana kesäkuusta elokuuhun. Ensimmäisenä päivänä on koottu luokittimien opetukseen käytetty aineisto, jossa on noin 110 näytettä jokaista kasvilajia kohti. Lisäksi kaksi tuntia myöhemmin on kerätty toinen samanlainen joukko näytteitä ensimmäiseksi testausaineistoksi. Loput testausaineistot on kerätty seuraavana päivänä sekä noin 1, 2, 4, 5 ja 6 viikkoa myöhemmin. Niissä kaikissa on ollut sata näytettä jokaista kasvilajia kohti. Fluoresenssikäyrien mittaus ja piirteiden valinta on tehty muuten samoin kuin edellisessä tutkimuksessa, mutta regressiosuorat on laskettu hieman eri kohdista käyrää. Kasvinäytteiden lisäksi on kerätty tietoja kasvupaikan lämpötilasta, sademäärästä, ilmankosteudesta, pilvisyydestä ja auringonvalon voimakkuudesta. Kasvilajien tunnistusta on kokeiltu kolmella tavalla. Kaikkia neljää lajia on luokiteltu niin, että opetukseen on käytetty pelkästään ensimmäistä opetusaineistoa sekä luokittimella, joka on opetettu uudestaan jokaisen testauksen yhteydessä käyttäen opetukseen kaikkia aikaisemmin kerättyjä aineistoja. Lisäksi on kokeiltu kaksiluokkaista tunnistusta, jolloin toinen luokka on koostunut pelkästä juolavehnästä ja toinen on muodostettu yhdistämällä kolme muuta luokkaa. Tällöin opetukseen on käytetty ainoastaan ensimmäistä näyte-erää. Molemmissa neljän luokan kokeissa luokitteluun on käytetty viittä saman kaltaista neuroverkkoa kuin edellisessä tutkimuksessa. Opetettaessa niiden solmujen painotuksiin on asetettu satunnaiset alkuarvot. Tietyssä vaiheessa opetusta kutakin neuroverkkoluokitinta on testattu opetusaineistolla, ja alle 90 % oikein tunnistaneet on hylätty ja korvattu uusilla. Kahden luokan kokeissa on käytetty vain yhtä neuroverkkoa. 26