MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun...

35
Viikko 4: Päätöspuita ja mallinvalintaa Matti Kääriäinen [email protected] Exactum C222, 19-21.11.2008. 1

Transcript of MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun...

Page 1: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Viikko 4: Päätöspuita ja mallinvalintaa

Matti Kääriäinen

[email protected]

Exactum C222, 19-21.11.2008.

1

Page 2: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Tällä viikolla

Sisältösuunnitelma:

• Päätöspuiden perusteet

• Testaamista ja mallinvalintaa

• Kertausta (jos aikaa jää)

2

Page 3: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Ennustusongelma

Tarkastellaan taas luokittelua:

• X = X1 × · · · × Xd, missä Xi = R tai diskreetti

• Y luokkien joukko, |Y| ≥ 2

• Tappiofunktiona 0/1-tappio L0/1

Koska X ei ole jatkuva eikä diskreetti, ennustusongelmaa ei voiaiemmin esitetyistä luokittelumenetelmistä ratkaista kuin lähinnaapuri -menetelmillä. Tällöinkin hyvä diskreetit ja jatkuva-arvoisetsyötekomponentit yhdistävä etäisyysfunktio voi olla hankala löytää.

Mikä neuvoksi? Päätöspuut!

3

Page 4: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Päätöspuut

Päätöspuun rakenne:

• Esitetään luokittelija binäärisenä puuna T

• Puun T kuhunkin sisäsolmuun v liittyy testi Testv : X → {0, 1}.Solmun v lapset v0 ja v1 on nimetty testin tuloksin.

• Puun jokaiseen lehteen liittyy ennuste (tässä luokka y ∈ Y)

Testien voi ajatella olevan (yksinkertaisia) ennustajia, jotkaennustavat, kumpaan alipuuhun syöte tulee jatkokäsittelyä vartenohjata.

4

Page 5: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Päätöspuu kuvana

01

1 0

0

1 0

0x2

= “B” x1 ≥ 1.1 0

01

0 1

x1 ≥ −2.2

01

x2

= “A”

x3 ≥ 0.7

2

5

Page 6: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Testeistä

Rajoitutaan seuraavassa kahdenlaisiin yksinkertaisiin testeihin,joissa molemmissa testataan yhtä syötekomponenttia kerrallaan:

• Xi = R: Testataan, päteekö xi ≥ θ, missä θ ∈ R on testinkynnysparametri. Jos xi ≥ θ testi saa arvon 1, muuten arvon 0.

• Xi diskreetti: Testataan, päteekö xi = x̃i, missä x̃i ∈ X i ontestissä käytettävä vertailukohde. Jos xi = x̃i testi saa arvon 1,muuten arvon 0.

Sisäsolmun testi määräytyy siis kahdesta tekijästä: mitä syötteenkomponenttia i = 1, . . . , d testataan, ja mihin sitä verrataan (θ tai x̃i).

6

Page 7: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Päätöspuu luokittelijana

Päätöspuu T luokittelee syötteen x ∈ X kutsumalla rekursiivistafunktiota Luokittele(juuri(T ), x), joka määritellään seuraavasti:

Luokittele(solmu v, syöte x)jos v on lehtisolmu

palauta v:hen talletettu luokka y

muutenpalauta Luokittele(vTestv(x), x)

Funktio Luokittele ohjaa siis syötteen x puun T juuresta testienmääräämää polkua pitkin johonkin T :n lehteen, johon talletettuluokka määrää T :n x:lle antaman luokituksen. Näin määräytyväfunktio on T :n määrittelemä luokittelija fT : X → Y.

7

Page 8: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Päätöspuiden oppiminen

• Optimaalisen∗ päätöspuun oppiminen on laskennallisesti vaikeaongelma (NP-täydellinen, vaikea approksimoida).

• Käytännössä päätöspuita voi kuitenkin oppia melkoyksinkertaisella kaksivaiheisella strategialla:

− Kasvatetaan opetusdatan mahdollisimman hyvin luokittelevapuu ahneella heuristiikalla

− Karsitaan puusta osia pois ylisovittamisen estämiseksi

• Syy kaksivaiheeseen strategiaan on empiirinen: käytäntö onosoittanut, että kannattaa ensin kasvattaa opetusdatalla tarkkaiso ja monimutkainen puu ja sitten karsia sitä, eikä yrittääkasvattaa sopivan kokoista puuta suoraan.

∗Esim. solmujen lukumäärältään pienimmän opetusdatan oikein luokittelevan

8

Page 9: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Päätöspuun kasvattaminen

Päätöspuu kasvatetaan rekursiivisesti seuraavalla ahneellakasvatusheuristiikalla, alkaen kutsusta Kasvata(S), missä S onkaiken kasvatusdatan joukko.

Kasvata(opetusdatan (osa)joukko S)jos Lopetusehto(S)

luo lehti, johon liitetty S:n yleisin luokkamuuten

luo uusi sisäsolmu v, jolle Testv = ValitseTesti(S)v0 = Kasvata({x ∈ S | Testv(x) = 0})v1 = Kasvata({x ∈ S | Testv(x) = 1})

Kasvata jakaa siis opetusdataa testien perusteella rekursiivisestiosajoukkoihin, kunnes lopetusehto täyttyy.

9

Page 10: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Päätöspuun kasvattamisalgoritmin idea

• Kasvatusalgoritmi valitsee funktion ValitseTesti(S) avullatestit, jotka jakavat datan pienempiin ja pienempiin osajoukkoihinjuuresta lehtiä kohti kuljettaessa.

• Lopetusehto(S) testaa, voidaanko rekursio jo lopettaa.Tyypillisesti testataan, onko S riittävän luokkahomogeeninen taipieni, esim. onko S kokonaan samaa luokkaa tai alle 5 alkioinen.

• Puuttuva palanen: Miten ValitseTesti(S) valitsee testit?Tavoitteena tietysti, että valitut testit yhdessä jakaisivat syötteetmahdollisimman vähin testein luokkahomogeenisiinosajoukkoihin, mutta miten tähän päästään?

10

Page 11: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Entropia

• Eräs yleinen homogeenisuuden (tai sen puutteen) mitta onentropia, joka opetusesimerkkien joukon S luokkajakaumaansovellettuna saa muodon

H(S) = −∑

y′∈Y

|{(x, y) ∈ S | y = y′}|

|S|log

(

|{(x, y) ∈ S | y = y′}|

|S|

)

.

• H(S) = 0, jos S:ssä on vain yhtä luokkaa.

• H(S) = log |Y|, jos S:n luokkajakauma on maksimaalisenepähomogeeninen eli S:ssä on kaikkia luokkia yhtä paljon.

• Muuten H(S) on jotain tältä väliltä, ollen sitä pienempi mitäluokkahomogeenisempi S on.

11

Page 12: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Informaatiolisä (Information Gain)

• Mitataan testin hyvyyttä informaatiolisällä

IG(Test, S) = H(S) −

(

|S0|

|S|H(S0) +

|S1|

|S|H(S1)

)

,

missä Si = {x ∈ S | Test(x) = i}, i = 0, 1.

• Informaatiolisän kaavassa termi H(S) mittaa, kuinka paljonluokkamuuttujassa on entropiaa ennen testiä Test, ja termi(|S0|/|S|H(S0) + |S1|/|S|H(S1)) mittaa, kuinka paljon entropiaaon (odotusarvoisesti) jäljellä testin jälkeen.

• Heuristiikka ValitseTesti(S): Valitaan testi, jolle IG(Test, S) onsuurin, eli joka sovellettuna opetusdatan joukkoon S antaasuurimman informaatiolisän.

12

Page 13: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Päätöspuun kasvatusalgoritmin käytännön

toteutuksesta

• Algoritmin Kasvata(S) ainoa laskennallisesti epätriviaali osa onhyvän testin valinta.

• Tämäkään ei ole kovin vaikeaa, sillä erilaisen tuloksen tuottaviatestejä on vain (pienehkö) äärellinen määrä:

− Jos Xi on diskreetti, erilaisia vertailukohteita x̃i on |Xi|

kappaletta

− Jos Xi on jatkuva, eri tavalla opetusdatan jakaviakynnysarvoja θ on korkeintaan |S| + 1 kappaletta

Parhaan testin voi siis valita laskemalla informaatiolisän kaikkiensyötekomponenttien kaikille (erilaisen tuloksen tuottaville)testeille, ja valitsemalla näistä parhaan.

13

Page 14: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Väliaikaraportti

• Nyt on selvillä, miten opetusdataan hyvin sopiva päätöspuuvoidaan kasvattaa.

• Seuraavaksi vuorossa karsintavaihe, jonka tehtävänä on

− parantaa puun odotusarvoista tappiota

− pienentää puuta (tehokkuus ja ymmärrettävyyssyistä)

• Karsintavaiheessa pyritään siis karsimaan kasvatetusta puustapois sellaiset osat, jotka pienentävät opetusvirhettä mutta eivätole hyödyllisiä odotusarvoisen tappion kannalta.

14

Page 15: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Päätöspuun karsinta

Päätöspuun T karsinta T ′ on päätöspuu, joka täyttää seuraavatehdot:

1. T ′ on T :n alipuu, jolla on sama juuri kuin T :llä

2. T ′:n sisäsolmujen testit ovat samat kuin T :n vastaavissasisäsolmuissa

Proseduraalisesti: T ′ saadaan T :stä korvaamalla joitain T :n alipuitauusilla lehdillä.

15

Page 16: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Karsinta kuvana

011 0

0 x1 ≥ 1.1 0

01

0 1

x1 ≥ −2.2

01

x2

= “A”

x3 ≥ 0.7

01

1 0

0

1 0

0x2

= “B” x1 ≥ 1.1 0

01

0 1

x1 ≥ −2.2

01

x2

= “A”

x3 ≥ 0.7

2

2

T :

T′:

16

Page 17: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Karsintastrategia (Reduced Error Pruning)

• Jaetaan alkuperäinen opetusdata S satunnaisesti kahteen osaanSgrow ja Sprune. Valitaan siis esim. 70% opetusdatasta joukkoonSgrow, ja jätetään loput 30% joukkoon Sprune.

• Kasvatetaan päätöspuu T käyttäen opetusdatan joukkonakasvatusdatan joukkoa Sgrow

• Karsintavaiheessa etsitään T :n karsinta T ′, jolle

1. Minkään T :n karsinnan virhe karsintadatan joukon Sprune

esimerkeillä ei ole pienempi kuin T ′:n virhe ko. esimerkeillä

2. T ′ on solmujen lukumäärältään pienin ehdon 1. toteuttavistaT :n karsinnoista

17

Page 18: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Karsinta-strategian idea

• Ylisovittamisen estämiseksi vain osa opetusdatasta (Sgrow)käytetään päätöspuun T kasvattamiseen

• Loppu data (Sprune) käytetään T :n “parhaan” (eli karsintadatallapienivirheisimmän ja pienimmän) karsinnan löytämiseen

• Koska T :n karsintojen joukko on paljon pienempi jayksinkertaisempi kuin kaikkien mahdollisten päätöspuidenjoukko, ylisovittamisen vaara pienenee.

• Strategian haittapuolena on se, että kaikkea opetusdataa eivoida käyttää puun kasvattamiseen.

18

Page 19: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Karsintaa algoritmina

• Edellä hahmoteltu karsintastrategia voidaan toteuttaatehokkaasti käymällä karsittava puu T läpi “kokoavasti”(bottom-up)

• Läpikäytävät T :n alipuut T̃ ovat kahta eri tyyppiä:

− Tapaus 1: T̃ on pelkkä lehti. Tällöin T̃ :n paras karsintasaadaan valitsemalla lehteen karsintadatalla pienimmänvirheen tuottava luokka.

− Tapaus 2: T̃ ei ole pelkkä lehti. Tällöin T̃ koostuu juurenatoimivasta sisäsolmusta ja sen alipuista T̃0 ja T̃1. Tällöin T̃ :nparas karsinta on pelkkä lehti tai karsinta, joka saadaankorvaamalla alipuut T̃0 ja T̃1 parhailla karsinnoillaan T̃ ′

0 ja T̃ ′1.

• Täsmällinen formulointi, todistus, ja toteutus: Harjoitustehtävä. . .

19

Page 20: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Päätöspuut: yhteenveto

Päätöspuuoppimista pidetään usein vanhahtavanaadhoc-lähestymistapana, mutta sillä on monia hyviä puolia:

• Yleiskäyttöisyys – diskreetit ja jatkuva-arvoiset piirteet jamoniluokkaisuus eivät tuota ongelmia

• Ymmärrettävyys – ihmisasiantuntijat kokevat pystyvänsäymmärtämään päätöspuuta tarkastelemalla syitäluokittelupäätösten takana

• Tehokkuus – päätöspuiden oppimisalgoritmit ja päätöspuutluokittelijoina suhteellisen nopeita

• Tarkkuus – vaikka päätöspuut eivät yleensä ole kaikkeintarkimpia ennustajia, ne ovat usein melko tarkkoja

20

Page 21: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Testaus ja mallinvalinta

Kertausta:

• Toistaiseksi esitetty

− Oppimisen malli ja tavoite

− Lukuisia koneoppimismenetelmiä tavoitteen saavuttamiseen

• Kysymyksiä:

− Mistä tietää, kuinka hyvin tietty koneoppimismenetelmäratkaisee tietyn ennustusongelman?

− Kuinka valita “hyvä” tai “paras” koneoppimismenetelmätiettyyn ennustusongelmaan?

Seuraavassa esitettävät vastaukset: Testaus ja mallinvalinta

21

Page 22: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Tehtävä

Tarkastellaan seuraavaa tehtävää:

• Annettuna: Ennustusongelma, opetusdataa ongelmasta, jakoneoppimismenetelmä (parametreineen, jos sellaisia on)

• Tehtävä: Arvioi, kuinka hyvin koneoppimismenetelmä toimiiannetussa ongelmassa, ts. mikä on sen tuottaman ennustajanodotusarvoinen tappio?

Kuten muistetaan, kysymyksen tekee epätriviaaliksi se, etteijakaumaa D jonka suhteen odotusarvoista tappiota mitataan tunneta.

22

Page 23: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Testaaminen opetusdatalla

• Yksi tapa arvioida opitun ennustajan f odotusarvoista tappiotaon käyttää sen arviointiin opetusvirhettä eli tappiotaopetusdatalla:

Errtrain(f) =1

|S|

(x,y)∈S

L(y, f(x))

• Tämä strategia on kuitenkin yleensä huono , ja johtaa helpostiylioptimistiseen arvioon – f on opittu samasta datasta jolla sitätestataan, joten mahdollista ylisovittamista ei havaita!

Tarvitaan siis parempi strategia.

23

Page 24: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Testaaminen erillisellä datalla

• Jaetaan opetusdata satunnaisesti kahteen osaan: Varsinaiseenopetusdataan Strain, ja testidataan Stest.

• Tuotetaan koneoppimismenetelmällä ennustaja f opetusdatastaStrain

• Lasketaan ennustajan f testivirhe eli tappio testidatalla

Errtest(f) =1

|Stest|

(x,y)∈Stest

L(y, f(x))

• Käytetään testivirhettä Errtest(f) arviona f :n odotusarvoisestavirheestä ED[L(y, f(x))].

24

Page 25: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Miksi käytetään erillistä testidataa?

• Koska f on opittu vain joukosta Strain, se on riippumatontestiesimerkeistä Stest.

• Näin ollen f :n testivirhe Errtest(f) on jakautunut samoin kuin f :n“todellinen” virhe samankokoisella otoksella jakaumasta D

valittavia toistaiseksi näkemättömiä syötteitä.

• Testivirhettä on siis harhaton estimaatti f :n odotusarvoisestavirheestä.

• Testivirhe voidaan kuitenkin laskea suoraviivaisesti, koskatestiesimerkkeihin liittyvät “oikeat vastaukset” tunnetaan.

25

Page 26: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Erillisen testidatan hyviä ja huonoja puolia

Trade-off:

• Testivirhe on sitä tarkempi estimaattori odotusarvoiselle virheellemitä enemmän testidataa on käytettävissä.

• Koneoppimismenetelmät tuottavat tyypillisesti sitä parempiaennustajia mitä enemmän opetusdataa on käytettävissä.

Jos siis käytetään paljon dataa testaamiseen, saadaan tarkka kuvasiitä kuinka hyvin oppiminen onnistuu, mutta oppiminen ei onnistuyhtä hyvin kuin jos datasta pienempi osa olisi varattu testikäyttöön.Tämä ongelma on erityisen hankala jos S on pieni.

Tyypillinen jakosuhde: esim: 90% opetukseen ja 10% testaukseen(tai 70% ja 30%).

26

Page 27: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

k-kertainen ristiinvalidointi

• Jaetaan opetusdata S satunnaisesti k:hon (esim. k = 10)suurinpiirtein yhtä suureen osaan S1, . . . , Sk

• Opitaan k ennustajaa f1, . . . , fk, missä fi opitaan soveltamallakoneoppimismenetelmää opetusdatan joukkoon S \ Si.

• Testataan ennustajaa fi käyttäen testidatana joukkoa Si:

Errtesti(fi) =1

|Si|

(x,y)∈Si

L(y, fi(x))

• Opitaan lopullinen ennustaja f kaikesta opetusdatasta S

• Arvioidaan f :n odotusarvoista virhettä ennustajien fi

testivirheiden keskiarvolla 1k

∑ki=1 Errtesti(fi).

27

Page 28: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Ristiinvalidoinnista

Hyviä puolia:

• Ristiinvalidoinnissa lopullinen ennustaja f voidaan oppiakaikesta opetusdatasta

• Saatu estimaatti f :n todelliselle virheelle on yleensäkäytännössä melko tarkka, ja sen varianssi on pienempi kuinkäytettäessä 1

k |S|-kokoista erillistä testidataa.

Huonoja puolia:

• Ristiinvalidointi saattaa olla laskennallisesti raskasta, silläkoneoppimisalgoritmi joudutaan ajamaan k + 1 kertaa

• Ristiinvalidointiin pohjautuva estimaatti ei ole harhaton, eikä siitämuutenkaan osata sanoa teoreettisesti juuri mitään.

28

Page 29: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Mallinvalinta

• Koneoppimismenetelmän tehtävänä on valitaennustusongelmassa hyvin pärjäävä ennustaja

• Eri koneoppimismenetelmät (tai sama menetelmä eriparametrein) tuottavat saman ennustusongelman ratkaisuiksierilaisia ennustajia

• Miten valita näistä paras?

29

Page 30: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Esimerkkejä mallinvalintaongelmista

Tehtävänä ratkaista kaksiluokkainen ennustusongelma, jossa piirteetovat diskreettejä.

• malli = koneoppimismenetelmä: taulukointi, k lähintä naapuria,Naive Bayes, päätöspuu, . . .

• malli = koneoppimismenetelmän parametrit: k lähintä naapuria-menetelmän etäisyysfunktio ja k, Naive Bayes -menetelmänluokkapriori, päätöspuun kasvatus- ja karsintaheuristiikka, . . .

• malli = syötteen piirteet: Mitkä piirteet otetaan mukaan, mitenjatkuva-arvoiset piirteet diskretoidaan, . . .

30

Page 31: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Mallinvalintaongelma

Mallinvalintamenetelmän tehtävänä on siis seuraava:

• Annettuna opetusdataa ja pienehkö joukko erilaisen ennustajantuottavia koneoppimismenetelmiä/koneoppimismenetelmänparametrisointeja

• Valittava, mitä näistä käytetään lopullisen ennustajantuottamiseen

• Tavoite sama kuin koneoppimisessa – halutaan löytää ennustajaf , jonka odotusarvoinen tappio on pieni, mutta nyt pienemmästäkoneoppimismenetelmien tuottamien kandidaattien joukosta

(Jäljelle jää vielä korkeamman tason metaongelma: Miten valita“annettu” joukko koneoppimismenetelmiä, joiden joukosta parastalähdetään etsimään. . . )

31

Page 32: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Mallinvalintaongelman ratkaisemisesta

Idea:

• Edellä on esitetty, miten yhden koneoppimismenetelmänhyvyyttä voi testata erillisen testidatan tai ristiinvalidoinnin avulla

• Sovelletaan näitä testausmenetelmiä yksitellen jokaiseenvalittavana olevaan malliin (eli koneoppimismenetelmään).Tuloksena saadaan arvio kunkin mallin hyvyydestä.

• Valitaan malli, johon liittyvä arvio on paras.

32

Page 33: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Mallinvalinta ja ylisovittaminen

• Jos valittavana olevia malleja on paljon, mallinvalintamenetelmätkärsivät ylisovittamisongelmista samaan tapaan kuinkoneoppimismenetelmätkin.

• Ylisovittamisongelmien (ja laskentavaivan) minimoimiseksivalittavana olevien mallien määrä pyritään yleensä pitämäänsuhteellisen pienenä (muutamista satoihin tai korkeintaantuhansiin malleihin).

• Mallinvalinnankin tulosten hyvyys on syytä testata, esim.käyttämällä mallinvalinnasta erillistä testidataa.

33

Page 34: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Toistuvasta testaamisesta

Tyypillinen tilanne käytännön koneoppimisessa jakoneoppimistutkimuksessa:

1. Jaetaan opetusdata opetus- ja testausosiin Strain ja Stest

2. Valitaan koneoppimismenetelmä ja sille hyvät parametritristiinvalidoinnilla opetusdatalla Strain

3. Opitaan “lopullinen” ennustaja f opetusdatasta Strain

4. Testataan ennustajaa f testidatalla Stest

5. Jos f :n testivirhe ei olekaan niin pieni kuin olisi toivottu,palataan takaisin kohtaan 1. tai 2.

Kohdan 5. johdosta vaarana ylisovittaminen – testidata ei iteroidessaenää olekaan riippumatonta lopullisesta hypoteesista f !

34

Page 35: MattiKääriäinen - University of Helsinki · 2008. 11. 21. · Päätöspuut Päätöspuun rakenne: • Esitetään luokittelija binäärisenä puuna T • Puun T kuhunkin sisäsolmuun

Yhteenveto ohjatusta oppimista

• Tavoite: Tuottaa automaattisesti opetusdatan perusteellaennustaja, joka antaa hyviä ennusteita opetusvaiheessatuntemattomilla syötteillä

• Perusoletus (iid): Opetusdata on otos samasta jakaumasta kuintulevat syötteet ja niihin liittyvät “oikeat vastaukset”

• Yleispätevää kaikki ongelmat automaattisesti ratkaisevaakoneoppimismenetelmää ei ole olemassa, mutta moniinennustusongelmiin voidaan tuottaa hyviä ratkaisuja jo kurssillatutuiksi tulleilla koneoppimismenetelmillä

• Hyvän koneoppimismenetelmän valinta (tai suunnittelu) tiettyynongelmaan on monimutkainen taiteen laji, jossa testaus- jamallinvalintatekniikoista on apua.

35