KOMPLEKSISET PÄÄTÖKSET

Samankaltaiset tiedostot
Oppijan saama palaute määrää oppimisen tyypin

Informaation arvo. Ohjelmistotekniikan laitos OHJ-2550 Tekoäly, kevät

Yleisesti, kun mahdollisilla vastauksilla v i. on todennäköisyydet P(v i. ),, P(v n. )) = i=1,,n. -P(v i

Yleisesti, kun mahdollisilla vastauksilla v i on todennäköisyydet P(v i ), niin H(P(v 1 ),, P(v n )) = i=1,,n - P(v i ) log 2 P(v i )

Pinot, jonot, yleisemmin sekvenssit: kokoelma peräkkäisiä alkioita (lineaarinen järjestys) Yleisempi tilanne: alkioiden hierarkia

Konsensusongelma hajautetuissa järjestelmissä. Niko Välimäki Hajautetut algoritmit -seminaari

4.0.2 Kuinka hyvä ennuste on?

Tietorakenteet, laskuharjoitus 7, ratkaisuja

AVL-puut. eräs tapa tasapainottaa binäärihakupuu siten, että korkeus on O(log n) kun puussa on n avainta

1 + b t (i, j). Olkoon b t (i, j) todennäköisyys, että B t (i, j) = 1. Siis operaation access(j) odotusarvoinen kustannus ajanhetkellä t olisi.

Numeeriset menetelmät

Nollasummapelit ja bayesilaiset pelit

Turingin koneen laajennuksia

Epälineaaristen yhtälöiden ratkaisumenetelmät

Viikko 1: Johdantoa Matti Kääriäinen

811312A Tietorakenteet ja algoritmit Kertausta kurssin alkuosasta

Osakesalkun optimointi. Anni Halkola Turun yliopisto 2016

811312A Tietorakenteet ja algoritmit V Verkkojen algoritmeja Osa 2 : Kruskalin ja Dijkstran algoritmit

Diskreettiaikainen dynaaminen optimointi

Numeeriset menetelmät

Datatähti 2019 loppu

Algoritmit 1. Luento 1 Ti Timo Männikkö

Avaruuden R n aliavaruus

4.1. Olkoon X mielivaltainen positiivinen satunnaismuuttuja, jonka odotusarvo on

Harjoitus 7 -- Ratkaisut

811312A Tietorakenteet ja algoritmit, , Harjoitus 7, ratkaisu

Yhtälöryhmät 1/6 Sisältö ESITIEDOT: yhtälöt

7.4 Sormenjälkitekniikka

Algoritmit 2. Luento 13 Ti Timo Männikkö

A ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä.

v 1 v 2 v 3 v 4 d lapsisolmua d 1 avainta lapsen v i alipuun avaimet k i 1 ja k i k 0 =, k d = Sisäsolmuissa vähint. yksi avain vähint.

Algoritmi on periaatteellisella tasolla seuraava:

6 Vektoriavaruus R n. 6.1 Lineaarikombinaatio

811312A Tietorakenteet ja algoritmit Kertausta kurssin alkuosasta

13 Lyhimmät painotetut polut

Algoritmit 2. Luento 14 Ke Timo Männikkö

Dynaaminen ohjelmointi ja vaikutuskaaviot

Vapaus. Määritelmä. jos c 1 v 1 + c 2 v c k v k = 0 joillakin c 1,..., c k R, niin c 1 = 0, c 2 = 0,..., c k = 0.

TEEMU ROOS (KALVOT MUOKATTU PATRIK HOYERIN LUENTOMATERIAALISTA)

Markov-kustannusmallit ja kulkuajat

Lineaarikombinaatio, lineaarinen riippuvuus/riippumattomuus

Bayesin pelit. Kalle Siukola. MS-E2142 Optimointiopin seminaari: Peliteoria ja tekoäly

Kombinatorinen optimointi

4.5 Kaksivaiheinen menetelmä simplex algoritmin alustukseen

Olkoon S(n) kutsun merge-sort(a, p, q) tilavaativuus kun p q + 1 = n. Oletetaan merge toteutetuksi vakiotyötilassa (ei-triviaalia mutta mahdollista).

Kanta ja dimensio 1 / 23

Epädeterministisen Turingin koneen N laskentaa syötteellä x on usein hyödyllistä ajatella laskentapuuna

Algoritmit 1. Luento 12 Ke Timo Männikkö

TILASTOLLINEN OPPIMINEN

Älykäs datan tuonti kuljetusongelman optimoinnissa. Antoine Kalmbach

MS-A0501 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

Algoritmit 2. Luento 9 Ti Timo Männikkö

811120P Diskreetit rakenteet

TIE448 Kääntäjätekniikka, syksy Antti-Juhani Kaijanaho. 9. marraskuuta 2009

1 Määrittelyjä ja aputuloksia

MS-A0004/A0006 Matriisilaskenta

Numeeriset menetelmät TIEA381. Luento 8. Kirsi Valjus. Jyväskylän yliopisto. Luento 8 () Numeeriset menetelmät / 35

58131 Tietorakenteet (kevät 2009) Harjoitus 11, ratkaisuja (Topi Musto)

Injektio. Funktiota sanotaan injektioksi, mikäli lähtöjoukon eri alkiot kuvautuvat maalijoukon eri alkioille. Esim.

Esimerkki: Tietoliikennekytkin

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

TIEA241 Automaatit ja kieliopit, kesä Antti-Juhani Kaijanaho. 29. toukokuuta 2013

Shorin algoritmin matematiikkaa Edvard Fagerholm

x j x k Tällöin L j (x k ) = 0, kun k j, ja L j (x j ) = 1. Alkuperäiselle interpolaatio-ongelmalle saadaan nyt ratkaisu

Kannan vektorit siis virittävät aliavaruuden, ja lisäksi kanta on vapaa. Lauseesta 7.6 saadaan seuraava hyvin käyttökelpoinen tulos:

Lineaarinen optimointitehtävä

P (A)P (B A). P (B) P (A B) = P (A = 0)P (B = 1 A = 0) P (B = 1) P (A = 1)P (B = 1 A = 1) P (B = 1)

2 Osittaisderivaattojen sovelluksia

Algoritmit 2. Luento 13 Ti Timo Männikkö

10. Painotetut graafit

Hakupuut. tässä luvussa tarkastelemme puita tiedon tallennusrakenteina

Algoritmit 2. Luento 2 To Timo Männikkö

T : Max-flow / min-cut -ongelmat

Duaalisuus kokonaislukuoptimoinnissa. Mat , Sovelletun matematiikan tutkijaseminaari, kevät 2008, Janne Karimäki

811120P Diskreetit rakenteet

Numeeriset menetelmät TIEA381. Luento 5. Kirsi Valjus. Jyväskylän yliopisto. Luento 5 () Numeeriset menetelmät / 28

Valitaan alkio x 1 A B ja merkitään A 1 = A { x 1 }. Perinnöllisyyden nojalla A 1 I.

Dynaamiset regressiomallit

Markov-ketjut pitkällä aikavälillä

4. Luennon sisältö. Lineaarisen optimointitehtävän ratkaiseminen Simplex-menetelmä

Nopea kertolasku, Karatsuban algoritmi

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

Stabiloivat synkronoijat ja nimeäminen

monitavoitteisissa päätöspuissa (Valmiin työn esittely) Mio Parmi Ohjaaja: Prof. Kai Virtanen Valvoja: Prof.

Kertausta 1. kurssikokeeseen

Algoritmit 2. Luento 2 Ke Timo Männikkö

Piiri K 1 K 2 K 3 K 4 R R

Demo 1: Simplex-menetelmä

Laskennallinen data-analyysi II

Ongelma 1: Ovatko kaikki tehtävät/ongelmat deterministisiä?

Algoritmit 2. Luento 11 Ti Timo Männikkö

(iv) Ratkaisu 1. Sovelletaan Eukleideen algoritmia osoittajaan ja nimittäjään. (i) 7 = , 7 6 = = =

MS-C1340 Lineaarialgebra ja differentiaaliyhtälöt

9.5. Turingin kone. Turingin koneen ohjeet. Turingin kone on järjestetty seitsikko

Johdatus lukuteoriaan Harjoitus 2 syksy 2008 Eemeli Blåsten. Ratkaisuehdotelma

Algoritmit 1. Luento 12 Ti Timo Männikkö

T Syksy 2002 Tietojenkäsittelyteorian perusteet Harjoitus 8 Demonstraatiotehtävien ratkaisut

Matematiikan tukikurssi

5 Lineaariset yhtälöryhmät

Matriisi-vektori-kertolasku, lineaariset yhtälöryhmät

Transkriptio:

247 KOMPLEKSISET PÄÄTÖKSET Agentin hyötyarvo riippuukin nyt sarjasta toimintapäätöksiä Oheisessa 4 3 ruudukkomaailmassa agentti tekee siirtymäpäätöksen (Y, O, V, A) jokaisella ajanhetkellä Kun päädytään toiseen maalitiloista, niin toiminta lakkaa Maailma on täysin havainnoitava agentti tietää sijaintinsa +1-1 Lähtö 248 Jos maailma on deterministinen, niin agentti pääsee lähtötilasta aina lopputilaan +1 siirtymin [Y, Y, O, O, O] Koska toiminnot kuitenkin ovat epäluotettavia, niin siirtymäsekvenssi ei aina johda haluttuun tulokseen Olkoon niin, että aiottu toiminto toteutuu todennäköisyydellä 0.8 ja todennäköisyydellä 0.1 liike suuntautuukin kohtisuoriin suuntiin Jos agentti törmää maailmansa rajoihin, niin toiminnolla ei ole vaikutusta Tällöin sekvenssi [Y, Y, O, O, O] johtaakin maaliin vain todennäköisyydellä 0.8 5 = 0.32768 Lisäksi agentti voi päätyä maaliin sattumalta kiertämällä esteen toista kautta todennäköisyydellä 0.1 4 0.8, joten kokonaistodennäköisyys on 0.32776

249 Siirtymämalli antaa todennäköisyydet toimintojen tuloksille maailman kaikissa mahdollisissa tiloissa Merk. T(s, a, s') on tilan s' saavuttamistodennäköisyys kun toiminto a suoritetaan tilassa s Siirtymät ovat Markovilaisia sikäli, että vain nykytila s, ei aiempien tilojen historia, vaikuttaa siihen saavutetaanko s' Vielä on määrättävä hyötyfunktio Päätösongelma on sekventiaalinen, joten hyötyfunktio riippuu tilajonosta ympäristöhistoriasta eikä vain yhdestä tilasta Toistaiseksi agentti saa kussakin tilassa s palkkion (reward) R(s), joka voi olla positiivinen tai negatiivinen 250 Esimerkissämme palkkio on -0.04 kaikissa muissa tiloissa paitsi lopputiloissa Ympäristöhistorian hyöty puolestaan on palkkioiden summa Jos esim. agentti saavuttaa lopputilan +1 kymmenen siirtymän jälkeen, niin hyöty on 0.6 Pienen negatiivisen palautteen tarkoitus on saada agentti maalitilaan mahdollisimman nopeasti Täysin havainnoitavan maailman sekventiaalinen päätösongelma, kun siirtymämalli on Markovilainen ja palkkiot summataan, on Markov-päätösongelma (Markov decision problem, MDP)

251 MDP on kolmikko alkutila S 0, siirtymämalli T(s, a, s') ja palkkiofunktio R(s) Ratkaisuksi MDP:hen ei kelpaa kiinteä siirtymäsekvenssi, koska se voi kuitenkin johtaa muuhun tilaan kuin maaliin Vastauksen onkin oltava politiikka, joka määrää toiminnan kussakin tilassa, johon agentti voi päätyä Politiikan π suosittama toiminto tilassa s on π(s) Täydellisen politiikan avulla agentti aina tietää mitä tehdä heittipä epädeterministinen toimintaympäristö sen mihin tilaan tahansa 252 Joka kerta kun politiikkaa sovelletaan, maailman stokastisuus johtaa eri ympäristöhistoriaan Politiikan laadun mittari onkin sen mahdollisesti tuottamien ympäristöhistorioiden hyödyn odotusarvo Optimaalisen politiikan π* odotusarvo on korkein +1-1 Politiikka antaa eksplisiittisen kontrollin agentin käyttäytymiselle ja samalla yksinkertaisen refleksiivisen agentin kuvauksen

253-0.0221 < R(s) < 0: +1-1 -0.4278 < R(s) < -0.0850: +1-1 254 Äärettömän horisontin tapauksessa agentin toiminta-ajalle ei ole asetettu ylärajaa Jos toiminta-aika on rajoitettu, niin eri aikoina samassa tilassa voidaan joutua tekemään eri toimintopäätöksiä optimaalinen politiikka ei ole stationäärinen Sen sijaan äärettömän horisontin tapauksessa ei ole syytä muuttaa tilan toimintaa kerrasta toiseen, joten optimaalinen politiikka on stationäärinen Tilajonon s 0, s 1, s 2, diskontattu palkkio on R(s 0 ) + γr(s 1 ) + γ 2 R(s 2 ) +, missä 0 γ 1 on diskonttaustekijä

255 Kun γ = 1, niin ympäristöhistorian palkkioksi saadaan erikoistapauksena additiivinen palkkio Lähellä nollaa oleva γ puolestaan tarkoittaa tulevien palkkioiden merkityksen pienenemistä Jos äärettömän horisontin maailmassa ei ole lainkaan saavutettavaa maalitilaa, niin ympäristöhistorioista tulee äärettömän pitkiä Additiivisilla palkkioilla myös hyötyarvot kasvavat yleisesti ottaen äärettömiksi Diskontatuilla palkkioilla (γ < 1) äärettömänkin jonon palkkio on äärellinen 256 Olk. R max palkkioiden yläraja. Tällöin geometrisen sarjan summana t=0,, γ t R(s t ) t=0,, γ t R max = R max /(1 - γ) Kelvollinen politiikka (proper policy) takaa agentin pääsevän lopputilaan silloin kun ympäristössä on lopputiloja Tällöin äärettömistä tilajonoista ei ole huolta ja voidaan jopa käyttää additiivisia palkkioita Optimaalinen politiikka diskontatuilla palkkioilla on π*= arg max π E[ t=0,, γ t R(s t ) π ], missä odotusarvo lasketaan yli kaikkien mahdollisten tilajonojen, jotka voisivat tulla kyseeseen politiikalla

257 Arvojen iterointi Optimaalisen politiikan selvittämiseksi lasketaan tilojen hyötyarvot ja käytetään niitä optimaalisen toiminnon valitsemiseen Tilan hyödyksi lasketaan sitä mahdollisesti seuraavien tilajonojen odotusarvoinen hyöty Luonnollisesti jonot riippuvat käytetystä politiikasta π Olkoon s t tila, jossa agentti on kun π:tä on noudatettu t askelta Huom. s t on satunnaismuuttuja Nyt U π (s) = E[ t=0,, γ t R(s t ) π, s 0 = s ] 258 Tilan todellinen hyötyarvo U(s) on U π* (s) Palkkio R(s) siis kuvaa tilassa s olemisen lyhyen tähtäyksen hyödyllisyyttä, kun taas U(s) on s:n pitkän tähtäyksen hyödyllisyys siitä eteenpäin laskien Esimerkkimaailmassamme maalitilan lähellä olevilla tiloilla on korkein hyötyarvo, koska niistä matka on lyhin 0.812 0.868 0.912 +1 0.762 0.660-1 0.705 0.655 0.611 0.388

259 Nyt voidaan soveltaa hyödyn odotusarvon maksimointia π*(s) = arg max a s T(s, a, s') U(s') Koska tilan s hyöty nyt on diskontattujen palkkioiden summan odotusarvo tästä tilasta eteenpäin, niin se voidaan laskea: Välitön palkkio tilassa s, R(s), + seuraavan tilan diskontatun hyödyn odotusarvo olettaen, että valitaan optimaalinen toiminto U(s) = R(s) + γ max a s T(s, a, s') U(s') Tämä on Bellman-yhtälö Toimintaympäristössä, jossa on n tilaa, on myös n Bellmanyhtälöä 260 Bellman-yhtälöiden yht'aikaiseen ratkaisemiseen ei voi käyttää lineaaristen yhtälöryhmien tehokkaita ratkaisumenetelmiä, koska max ei ole lineaarinen operaatio Iteratiivisessa ratkaisussa aloitamme tilojen hyötyjen mv. arvoista ja päivitämme niitä kunnes saavutetaan tasapainotila U i+1 (s) R(s) + γ max a s T(s, a, s') U i (s'), missä indeksi i viittaa iteraation i hyötyarvioon Päivitysten toistuva soveltaminen päätyy taatusti tasapainotilaan, jolloin saavutetut tilojen hyötyarviot ovat ratkaisu Bellmanyhtälöihin Löydetyt ratkaisut ovat yksikäsitteisiä ja vastaava politiikka on optimaalinen

261 Politiikan iterointi Alkaen lähtöpolitiikasta π 0 toista Politiikan arviointi: laske kaikille tiloille hyötyarvo U i = U πi politiikkaa π i sovellettaessa Politiikan parantaminen: perustuen arvoihin U i laske uusi hyödyn odotusarvon maksimoiva politiikka π i+1 (vrt. 259) Kun jälkimmäinen askel ei enää muuta hyötyarvoja, niin algoritmi päättyy Tällöin U i on Bellman-päivityksen kiintopiste ja ratkaisu Bellmanyhtälöihin, joten vastaavan politiikan π i on oltava optimaalinen Äärellisellä tila-avaruudella on vain äärellinen määrä politiikkoja, jokainen iteraatio parantaa politiikkaa, joten politiikan iterointi päättyy lopulta 262 Koska kullakin kierroksella politiikka on kiinnitetty, niin politiikan arvioinnissa ei ole tarvetta maksimoida yli toimintojen Bellman-yhtälö yksinkertaistuu: U i (s) = R(s) + γ s T(s, π i (s), s') U i (s') Koska epälineaarisesta maksimoinnista on päästy eroon, on tämä lineaarinen yhtälö Lineaarinen yhtälöryhmä, jossa on n yhtälöä ja niissä n tuntematonta muuttujaa voidaan ratkaista ajassa O(n 3 ) lineaarialgebran menetelmin Kuutiollisen ajan sijaan voidaan tyytyä approksimoimaan politiikan laatua ajamalla vain tietty määrä yksinkertaisia arvojen iterointi -askelia kelvollisten hyötyarvioiden saamiseksi

263 KONEOPPIMINEN Älykäs agentti voi joutua oppimaan mm. seuraavia seikkoja: Kuvaus nykytilan ehdoilta suoraan toiminnolle Maailman relevanttien ominaisuuksien päätteleminen havaintojonoista Maailman muuttumisen seuraaminen ja toimintojen vaikutukset Maailman mahdollisten tilojen hyötyarviot Toimintojen arvottaminen Maalitilojen tunnistaminen hyödyn maksimoimiseksi 264 Oppijan saama palaute määrää oppimisen tyypin Ohjatussa oppimisessa (supervised l.) tavoitteena on oppia kuvaus syötteiltä tuloksille annettujen esimerkkien perusteella Ohjaamattomassa oppimisessa (unsupervised l.) annettuja syötteitä pyritään ryhmittelemään samankaltaisiin ryhmiin ilman erillisiä tulosarvoja Palauteoppimisessa (reinforcement l.) oppija saa (ohjattua oppimista epämääräisempää) palautetta, jonka perusteella sen tulee oppia syötteistä Tietämyksenesitys määrää vahvasti oppimisalgoritmin toiminnan

265 Induktiivinen oppiminen Ohjatussa oppimisessa tavoitteena on oppia tuntematon funktio f annettuna esimerkkejä (x, f(x)), missä x on syöte(vektori) Induktiivisessa inferenssissä tuloksena on hypoteesi h, joka on oppijan approksimaatio f:stä Tavoiteltava hypoteesi yleistää (generalize) esimerkkien perusteella uusien tapausten ennustamiseksi Hypoteesi valitaan hypoteesiluokasta H Esimerkiksi kun sekä arvot x ja f(x) ovat reaalilukuja, niin H voi olla mm. korkeintaan astetta k olevat polynomit: 3x 2 + 2, x 17-4x 3 266 f(x) x Konsistentti hypoteesi on annetun aineiston kanssa yhtäpitävä Mikä valita mahdollisesti monista konsistenteista hypoteeseistä? Occamin partaveitsen (Occam's / Ockham's razor) mukaan yksinkertaisin hypoteeseistä on paras Yksinkertaisuuden määritteleminen?

267 Hypoteesiluokka ei aina sisällä konsistenttia hypoteesiä Toisaalta (paremman yleistyskyvyn nimissä) voi olla järkevää vaihtaa sovituksen tarkkuutta hypoteesin yksinkertaisuuteen Ts., tyytyä huonommin annettuun aineistoon sopivaan hypoteesiin, joka kuitenkin on yksinkertainen Hypoteesiluokka on rajoitettava, jotta hyvin aineistoon sopivan hypoteesin löytäminen olisi laskennallisesti tehokasta Koneoppiminen keskittyykin melko yksinkertaisten tietämyksen esitysmuotojen oppimiseen 268 Päätöspuiden oppiminen Päätöspuun (decision tree) syöte on attribuuttiarvoin ilmaistu olion tai tilanteen kuvaus Tuloksena on päätös ennuste syötettä vastaavalle tulosarvolle Jos tulosarvot ovat diskreettejä, niin puu luokittelee syötteet Jatkuva-arvoisen funktion oppimista nimitetään regressioksi Syötteen käsittelemiseksi se ohjataan puun juuresta lähtien sisäsolmujen polkua aina lehteen, johon liittyvä päätös on syötteen tulosarvo Sisäsolmuihin liittyy attribuuttiarvon testi, jonka mukaan käsiteltävä tapaus ohjataan eteenpäin puussa

Asiakkaita? Tyhjä Jokunen Täysi Vaihda Valitse Odotusaika? 269 Vaihda > 60 Vaihtoehto? 60-30 30-10 Nälkä? 10-0 Valitse Ei Varaus? Ei Kyllä Baari? Valitse Ei Kyllä Kyllä Pe / La? Ei Kyllä Vaihda Valitse Kyllä Ei Valitse Vaihtoehto? Ei Kyllä Valitse Sataa? Ei Kyllä Vaihda Valitse Vaihda Valitse 270 (Kohtuullisen kokoinen) päätöspuu on helposti ymmärrettävä tietämyksen esitysmuoto Käytännössä tärkeä, heuristisesti opittavissa Edellisen esimerkin päätöspuu vastaa päätöstä siitä kannattaako ravintolaan jäädä odottamaan pöytää Sen ilmaisema predikaatti on s: Valitse(s) (P 1 (s) P n (s)), missä kukin ehdoista P i (s) on puun polkua juuresta Valitselehteen vastaavien testien konjunktio Eksponentiaalisen kokoisella päätöspuulla voidaan ilmaista mikä tahansa Boolen funktio

271 Yleensä funktion esittämiseen riittää eksponentiaalista kokoa pienempi puu Eräät funktiot ovat kuitenkin vaikeita ilmaista päätöspuin, esim. xor ja maj vaativat eksponentiaalisen kokoisen puun Päätöspuut, kuten kaikki muutkin tietämyksen esitysmuodot, soveltuvat hyvin joidenkin funktioiden kuvaamiseen ja huonommin toisten n:n muuttujan Boolen funktion totuustaulussa on 2 n riviä, joten eri funktioita on 2 2n kappaletta Esim. n = 6 2 2n > 18 10 18, joten konsistentin hypoteesin löytäminen on haastavaa 272 Päätöspuiden osittava oppiminen Algoritmin syöte on opetusjoukko (training set), joka koostuu joukosta esimerkkejä (X, y), missä X on attribuuttiarvojen vektori ja y on arvoihin liitetty luokka-arvo Konsistentti puu jossa on oma juuri-lehti-polku kutakin opetusesimerkkiä kohden voitaisiin rakentaa helposti Tällöin ei kuitenkaan saavutettaisi yleistyskykyä Occamin partaveistä noudattaen meidän tulisi etsiä pienin opetusjoukon kanssa konsistentti puu, mutta pienimmän konsistentin puun löytäminen on laskennallisesti tehotonta (NPkovaa)

273 Menestyksekkäät päätöspuiden oppimisalgoritmit perustuvat heuristiseen pienehkön puun löytämiseen Lähtökohtana on valita tärkeimmät attribuutit ensin Koska tavoitteena on tapausten luokittelu, niin attribuutti on tärkeä, kun sen vaikutus luokittelussa on suuri Päätöspuun muodostaminen itsessään voidaan tehdä rekursiivisella algoritmilla Ensin valitaan puun juureen se attribuutti, joka osoittautuu parhaaksi, jaetaan opetusaineisto tämän attribuutin arvojen perusteella ja jatketaan puun muodostamista alipuista samalla periaatteella 274 Tree growconstree( Attrs A, Exs S ) { if ( all examples in S have class C ) return an one-leaf tree labeled by C; else { select an attribute a from A; partition S into S 1,..., S k by the value of a; for (i = 1; i<= k; i++ ) T i = growconstree( A-{a}, S i ); return a tree T that has a in its root and T i as its i-th subtree; } }

275 Jos algoritmi joutuu valitsemaan puun tyhjälle esimerkkien joukolle (opetusaineiston jaon yhteydessä), niin puuksi valitaan lehti, jonka ennustama luokka on koko opetusaineiston yleisin Jos taas attribuutit loppuvat kesken s.e. jäljellä olevassa aineistossa on vielä useamman luokan edustajia, niin aineisto on keskenään ristiriitainen l. kohinainen (noisy) Kohina voi olla seurausta riittämättömistä tilannetta kuvaavista attribuuteista tai se voi olla sovellusalueen aitoa epädeterminismiä Yleisimmän luokan ennustaminen on yksinkertainen tapa toimia tässä tilanteessa 276 Attribuutin valinta Puuhun valittavan attribuutin tulisi parantaa esimerkkien jakoa luokka-attribuutin arvon ennustamiseksi Parhaimmillaan attribuutti jakaisi esimerkit joukkoihin, joissa on vain yhden luokan edustajia Heikoimmillaan attribuutti ei muuta eri luokkien edustajien suhteellisia osuuksia juuri lainkaan Attribuuttien hyödyllisyyden mittaamiseen voidaan käyttää mm. sen antaman informaation arvoa eli Shannon entropiaa Informaatioteoriassa informaatiosisältöä mitataan bitein Yksi bitti riittää kyllä/ei-kysymykseen (kolikonheittoon) vastaamiseksi

277 Yleisesti, kun mahdollisilla vastauksilla v i on todennäköisyydet P(v i ), niin H(P(v 1 ),, P(v n )) = i=1,,n -P(v i ) log 2 P(v i ) Esim. H(½, ½) = 2(-½ log 2 (½)) = 1 bitti Attribuuttien arvottamiseen sovellettuna haluamme laskea luokka-attribuutin C arvojakaumaan P(C) kohdistuvan muutoksen, kun opetusaineisto S jaetaan attribuutin A mukaan osajoukkoihin H S (P(C)) - H S (P(C) A), missä H S (P(C) A) = Si H Si (P(C)), kun A jakaa S:n osiin S i 278 Oppimisalgoritmin testaaminen Jaa esimerkkiaineisto opetusaineistoksi ja testiaineistoksi Sovella oppimisalgoritmia opetusaineistoon, tuota hypoteesi h Testaa kuinka suuren osan testiaineiston esimerkeistä h luokittelee oikein Em. askelia toistetaan eri opetusaineiston koolla kullakin kerralla vetäen opetusesimerkit satunnaisesti Tämän toiminnon kuvaaja on oppimiskäyrä (learning curve) Vaihtoehtoinen testitapa on ristiinvalidointi (cross-validation)