Älykkäät järjestelmät
description
Transcript of Älykkäät järjestelmät
![Page 1: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/1.jpg)
Älykkäät järjestelmät
Tapio Grönfors Seppo LammiErkki Pesonen
kevät 2003
![Page 2: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/2.jpg)
Hahmontunnistus Mitä se on ? Hahmontunnistus
voidaan laajasti määritellä seuraavasti: Se on joukko menetelmiä, joilla
luonnollisista kohteista kuten kuvista, puheesta tms. tunnistetaan joitakin mielekkäitä (olio)luokkia. (E. Oja: 'Neuraalilaskennan perusteet', 1996.)
engl. Pattern recognition; ruots. Mönsterigenkänning;
![Page 3: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/3.jpg)
Hahmontunnistus perustuu hahmojen samanlaisuuteen Peruskysymys: "Milloin hahmo x
muistuttaa riittävästi hahmoa y, jotta ne kuuluvat samaan luokkaan?”
Hahmontunnistus on fyysisistä prosesseista tai kohteista tehtyjen mittausten kuvaus ja analysointi. Tavoitteena on käsitellä reaalimaailman havaintoja tietokoneella.
hahmo = todellisten kohteitten ideaalinen malli
![Page 4: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/4.jpg)
Ihmisen vahvuudet hahmontunnistajana Pitkä ajanjakso havaintojen
analysointiin Kyky havaita olennaiset asiat Tehokas tietojenkäsittelylaitteisto
Eläimetkin tekevät hahmontunnistusta erittäin tehokkaasti, joten mitään korkeampaa älyä tämä toiminta ei vaadi?
![Page 5: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/5.jpg)
Hahmontunnistuksen sovellusaloja …1. Dokumenttien käsittely, esimerkkinä optinen merkkienluku
(OCR). 2. Teollisuus- ja prosessiautomaatio, esimerkkeinä
painettujen piirien automatisoitu visuaalinen laadunvarmistus, paperin laadunvarmistus.
3. Lääketieteellinen kuva-ja signaalianalyysi, esimerkkeinä verisolujen automatisoitu luokittelu mikroskooppikuvien perusteella, automaattinen verenpaineen mittaus.
4. Puheen- ja puhujantunnistus, esimerkkeinä koneiden ohjaus puhekomentojen avulla, käyttäjän identifiointi ja valvonta.
5. Kaukokartoitus, robotiikka ja avaruustekniikka, esimerkkinä maaston luokittelu metsä-tyyppeihin sateliittikuvien perusteella.
…
![Page 6: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/6.jpg)
Hahmontunnistusprosessin vaiheita 1: mittaukset ja esikäsittely
Aisteina anturit, esimerkiksi termopari, ultraäänikide, kamera tai mikroaaltokeilain
Anturit kerää raakadatan fyysisestä maailmasta
Esikäsittely pyrkii eliminoimaan häiriöt (kuvausvirheet, kohinan) ja kaventamaan informaatiokaistan olennaiseen
![Page 7: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/7.jpg)
Hahmontunnistusprosessin vaiheita 2:piirteiden valinta ja erotus
Käytössä oleva tietomäärä on suuri, halutaan poistaa tunnistusprosessin kannalta tarpeeton!
Piirteiden valinta: kaikista piirteistä (esim. satelliittikuvan kanavista) valitaan sellainen osajoukko joka riittää tehtävän ratkaisemiseen
Muunnoksen avulla voidaan tietomäärän kokoa supistaa; hahmon sisältämä informaatiomäärä on pystyttävä tiivistämään mahdollisimman tehokkaasti olennaiseen
Ihmisen suorittama hahmontunnistus perustuu muutamiin tärkeimpiin ominaisuuksiin pyritään samaan
![Page 8: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/8.jpg)
Hahmontunnistusprosessin vaiheita 3:Piirteiden esitysmuodon valinta
Tarvitaan tietorakenne piirteiden tallettamiseksi: Vektori (signaali), piirrevektorit Matriisi (digitaalinen kuva) Monimutkaisempia puu- ja
verkkorakenteet Yksittäinen piirre voidaan ajatella
numeeriseksi suureeksi
![Page 9: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/9.jpg)
Hahmontunnistuksen vaiheita 4:varsinainen tunnistus
Hahmot jaotellaan joko tunnettuihin (ohjattu luokittelu) tai tuntemattomiin luokkiin (ohjaamaton luokittelu)
Mitataan jollain menetelmällä hahmojen saman- tai erikaltaisuuksia
Oleellista on myös määrittää tunnistuksen luotettavuus!
![Page 10: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/10.jpg)
Hahmontunnistuksen lähestymistapoja
Laaja joukko erilaisia menetelmiä, joista tärkeimpiä: Tilastollinen eli päätösteoreettinen hahmontunnistus Rakenteellinen eli syntaktinen hahmontunnistus Tietämyspohjainen hahmontunnistus
Käytönnön sovelluksissa käytetään eri menetelmien yhdistelmiä (mm. syntaksiohjattu tilastollinen hahmontunnistus, sumea tilastollinen hahmontunnistus).
Engl.: The classification model
![Page 11: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/11.jpg)
Tilastollisen ja rakenteellisen hahmontunnistuksen eroja
Tilastollinen havainnot numeerisia, tyyppillisesti vektorimuotoisia
esityksiä luokittelu perustuu (lineaariseen) tilastolliseen
päätösteoriaan neuroverkot ’laajentaa’ tilastollista hahmontunnistusta
epälineaarisella päätösteorialla Rakenteellinen
havainnot symbolisia esityksiä, joilla vektoria yleisempi rakenne, kuten graafi
luokittelu perustuu rakenteen selvittämiseen esimerkiksi kieliopillisella jäsentämisellä
voidaan kuvata symbolien suhdetta toisiinsa
![Page 12: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/12.jpg)
Luokittelu Hahmo liitetään siitä tehtyjen havaintojen (mittausten,
syötteiden, inputs) perusteella johonkin ennaltamäärättyyn luokkaan.
Luokka on diskreetti satunnaismuuttuja. Esim. Käsikirjoitettujen numerojen liittäminen niitä vastaviin
luokkiin 0,1,…,9 ja NaN. Käytönnöllinen ongelma esimerkiksi ääntenlaskennassa vaalilipuista: periaatteessa ääretön määrä hahmoja luokiteltava vain äärelliseen, yleensä pieneen määrään eri luokkia.
(Sallittu) vaihtelun suuruus samaan luokkaan kuuluvien hahmojen välillä vs. eroavaisuudet eri luokkiin kuuluvien hahmojen välillä!
engl. Classification; classification -- assigning an input to a category
![Page 13: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/13.jpg)
Ehjä Viallinen
Ehjä? 291 7
Viallinen? 384 318
Ehjä Viallinen
Ehjä? 581 94
Viallinen? 122 203
Hahmontunnistuksen luotettavuudesta Mikä on ’kustannus’ jos viallinen tuote
luokitellaan ehjäksi vs. ehjä tuote luokitellaan vialliseksi, lääketieteellinen diagnostiikka, yms.
true positive (TP):tuote ehjä ja hahmontunnistus luokittelee sen ehjäksitrue negative (TN):tuote viallinen ja hahmontunnistus luokittelee sen vialliseksifalse positive (FP):tuote viallinen, mutta hahmontunnistus luokittelee sen ehjäksifalse negative (FN):tuote ehjä, mutta hahmontunnistus luokittelee sen vialliseksi
todellinen luokka todellinen luokka
ennuste
ttu lu
okka
ennuste
ttu lu
okka
![Page 14: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/14.jpg)
Hahmontunnistuksen herkkyys ja tarkkuus
Luokittimen herkkyys (sensitivity): oikeiden positiivisten tulosten suhteellinen osuus
kaikista oikeasti positiivisista tapauksista true positive rate Esim. 291 / (291 + 384), 581 / (582 + 122)
Luokittimen tarkkuus (specificity): oikeiden negatiivisten tulosten suhteellinen osuus
kaikista negatiivisista tapauksista true negative rate Esim. 318 / (318 + 7), 203 / (203 + 94)
![Page 15: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/15.jpg)
Lisää herkkyydestä ja tarkkuudesta
Kaikki arvot suhdelukuja [0,1] Väärien positiivisten osuus:
false positive rate (väärien positiivisten osuus) = 1 – tarkkuus
(oikeiden positiivisten osuus)+(väärien negatiivisten osuus) = 1
(oikeiden negatiivisten osuus)+(väärien positiivisten osuus) = 1
![Page 16: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/16.jpg)
Toimintaominaiskäyrä (ROC-käyrä)
receiver operating characteristic curve Oletetaan että olemassa parametri t,
joka vaikuttaa luokittimen herkkyyteen ja tarkkuuteen tutkimalla luokittimen luokittelukykyä eri parametrin arvoilla voidaan piirtää kaksiulotteinen graafinen kuvaaja true positive rate ja false positive rate arvojen käyttäytymisestä
![Page 17: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/17.jpg)
ROC-käyrä Hyödytön luokitin: ROC-
käyrä kulkee diagonaalisuorana pisteiden (0,0) ja (1,1) välillä
Ideaaliluokitin: ROC-käyrä kulkee pisteestä (0,0) pystysuorasti pisteeseen (0,1) ja sitten vaakasuorasti pisteeseen (1,1)
![Page 18: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/18.jpg)
Luokittimen laadusta
ideaali
parempi
huonompi
lantinheitto
![Page 19: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/19.jpg)
Piirteet Hahmoon voi liittyä periaatteessa
hyvin suuri määrä havaittavia tai mitattavia ominaisuuksia, joita voidaan käyttää syötteinä luokittelussa. Kaikki eivät kuitenkaan vaikuta luokitteluun.
Hahmon luokitteluun valittuja syötteitä kutsutaan piirteiksi.
engl. Features
![Page 20: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/20.jpg)
Piirreirroitus Piirreirroitus (tai piirre-erotus) on kaikille
hahmontunnistustehtäville yhteinen vaihe, jossa määritetään hahmoja karakterisoivat ominaisuudet (l. piirteet), joita käytetään luokitteluun.
Piirteiden valintaan ja irroitukseen kiinnitetään vähemmän huomiota kuin hahmontunnistuksen muihin menetelmiin.
engl. Feature extraction
![Page 21: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/21.jpg)
Hahmontunnistus on mallinnusprosessi
Reaalimaailmasta luodaan hahmon muodossa (yksinkertaistettu, approksimoiva) malli, joka on vuorovaikutuksessa siihen piirteidensä (inputs) ja luokituksen (outputs) välityksellä.
Mallin ydin on piirteet ja luokat liittävä luokittelija.
![Page 22: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/22.jpg)
Piirrevektori ja piirreavaruus Luokittelussa tarvittavien – mahdollisesti
erityyppisten – piirteiden yhdistelmää kutsutaan piirrevektoriksi.
Kukin d-ulotteinen piirrevektori on tällöin piste d-ulotteidessa piirreavaruudessa .
Piirrevektori on d-ulotteinen satunnaisvektori, jolla oletetaan olevan jatkuva jakauma (ellei toisin mainita)
dffff ,...,, 21
engl. Feature vectors; engl. Feature space
![Page 23: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/23.jpg)
Piirteiden ongelmat Piirteiden tulisi olla sellaiset, joiden hajonta
samalla hahmolla olisi mahdollisimman pieni, mutta joiden poikkeama eri hahmojen piirteistä mahdollisimman suuri.
Ongelmanasettelut: ”How to avoid high sensitivity of irrelevant features?”,”How do we determine how good a subset of features are?”,”How do we search for the best set of features?”
Piirteiden on sisällettävä informaatiota, joka poistaa epävarmuutta!
![Page 24: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/24.jpg)
Luokista ja hahmoista Todennäköisyydet
Luokan c prioritodennäköisyys (prior probability)
Luokan c posterioritodennäköisyys (posterior probbability) piirrevektorin arvolla d
)Ρ()( cCcP
)|Ρ()|( dDcCdcP
![Page 25: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/25.jpg)
Entropia ja informaatio Entropia kuvaa sekä epävarmuuden
määrää että informaation määrä: järjestelmän tapausten keskimääräinen
informaatio mitattavan suureen epävarmuus
Energian kaltainen perussuure (jolla lisäksi läheinen suhde energiaan termodynamiikan kautta)
Informaatioteoreettinen entropia eli haje
![Page 26: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/26.jpg)
Diskreetin järjestelmän entropia perustuu tulosvaihtoehtojen
esiintymistodennäköisyyksiin pi, N eri tulosvaihtoehtoa, pi = 1
jos logaritmin kantaluku on 2, yksikkö on bit, jos kantaluku e, yksikkö on nat ja jos kantaluku 10, yksikkö on dit
Hyvin epätodennäköisen tapahtuman sisältämä informaatio on suuri
N
iiin ppH
1
log
![Page 27: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/27.jpg)
Binaaridatan entropia
Entropia saa suurimman arvonsa kun sanomien/tapahtumien/luokkien todennäköisyydet ovat yhtäsuuria.
![Page 28: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/28.jpg)
Entropian muita ominaisuuksia1. entropia voi saada vain ei-negatiivisia arvoja2. entropia saa arvon nolla, jos jokin mahdollisista
tapauksista on täysin varma muiden ollessa täysin mahdottomia (informaatio puuttuu varmassa tapauksessa)
3. entropia ei lisäänny täysin mahdottoman tapauksen lisäämisestä kaikkien tapauksien joukkoon
4. entropia on jatkuva5. tapausten järjestysten vaihtaminen ei vaikuta
entropiaan (vaihdannaisuus)6. entropia on suurimmillaan eri tapausten yhtä
suurilla todennäköisyyksillä (maksimientropia)
![Page 29: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/29.jpg)
Piirteiden valinta Usein yksittäisen piirteen merkitys on
vähäinen. Laskennallisesti suuri joukko heikkoja tai
merkityksettömiä piirteitä on tehoton ratkaisu, voi aiheuttaa myös ennakoimattomia luokitusongelmia (kohina, distortio, ...). Exhaustive methods Stepwise selection Feature combination
engl. Feature selection
![Page 30: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/30.jpg)
Exhaustive methods Ainoa ehdottomasti varma menetelmä löytää
parhaat piirteet, mutta koska brute force, usein laskennallisesti mahdoton!
Systemaattisesti läpikäydään kaikki mallin piirteiden osajoukot ja kullekkin osajoukolle:
1. Laaditaan luokittelija2. Käyttäen erillistä testiaineistoa määritellään sen
luokituskyky (virhe)3. Tallennetaan osajoukko jolla paras luokituskyky (pienin
virhe) Ongelmia
1. suuri piirreavaruus d (kombinatorinen räjähdys)2. ylioppiminen testiaineistolle, yleisyys kuitenkin katoaa
![Page 31: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/31.jpg)
Stepwise selection Laskennallista kuormaa voidaan vähentää
valitsemalla piirteitä yksitellen: Eteenpäinvalinta (Forward selection): Valitaan paras
piirre ja sen jälkeen valitaan se yksittäinen piirre joka eniten lisää luokituskykyä; toistetaan niin kauan kuin luokituskykyä voidaan parantaa.
Taaksepäin eliminointi (Backward elimination): Jäljellä olevasta joukosta poista se piirre joka pienentää luokituskykyä vähiten (tai jonka poistaminen jopa parantaa sitä); toisteaan niin kauan kuin haluttu luokituskyky saadaan.
Molemma yllämainitut ovat heuristisia menetelmiä ja eivät voi taata optimaalisuutta!
![Page 32: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/32.jpg)
Luokituksen malli tilastollisessa hahmontunnistuksessa
Luokitus koostuu kahdesta peräkkäisestä vaiheesta, jotka on toteutettu itsenäisinä järjestelminä: piirreirrotus ja luokittelu.
Kuvaus d-ulotteisesta piirreavaruudesta c-ulotteiseen luokkien joukkoon.
engl. The standard classification model
![Page 33: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/33.jpg)
Yksinkertainen luokittelija
Luokittelutehtävä voidaan muotoilla matemaattisesti ja ratkaista matriisi- ja todennäköisyyslaskennan välineillä. Tässä yhteydessä otamme intuitiivisemman katsauksen välineisiin ilman todistuksia. Matemaattinen esitys löytyy mm. http://www.rni.helsinki.fi/opetus/hahmo02/
Luokitin on yksinkertaisesti funktio, joka kertoo arvauksen siitä mistä luokasta piirrevektori on peräisin!
![Page 34: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/34.jpg)
Tilastollisten luokittimien perustyypit
Tilastollisen hahmontunnistuksen luokittimet jaetaan kahteen perustyyppiin:
1. Parametrinen luokittelija, tyypillisin esimerkki on Bayesin luokittelija, joka kuten kaikki parametriset luokittimet, perustuu tilastolliseen malliin, jossa oletetaan tunnetuksi luokkien hahmovektoreiden todelliset todennäköisyysjakaumat. Samoin oletetaan tunnetuksi luokkien esiintymistodennäköisyydet.
2. Ei-parametrinen luokittelija, tyypillisin esimerkki on lähimmän naapurin luokittelija. Siinä ei oleteta tunnetuksi mitään luokkien todellisesta tiheysfunktioista, vaan ainoastaan opetusjoukko, joka sisältää näytteitä kustakin luokasta.
![Page 35: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/35.jpg)
Erotinfunktio ja Bayesin luokitin
discriminant function Bayesin luokitin g erotinfunktiolla Dk:
arg max on funktio, joka palauttaa sen argumentin k arvon, jolla arg max funktion sisällä oleva k:n funktio saavuttaa maksiminsa
arg max palauttaa indeksiltään numeerisesti pienimmän maksimoivista argumenteista (tasapelitilanteessa!)
arg min voidaan määritellä vastaavasti minimin avulla
)(maxarg)(,...,1
XDXg kck
![Page 36: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/36.jpg)
Bayesin luokitin Vaatimuksena on että tunnetaan luokkien
posterioritodennäköisyydet piirrearvaruudessa P(c|d)
Luokitin arvaa piirrevektorin X olevan peräisin käytettävissä olevan tiedon nojalla todennäköisimmästä luokasta, eli siitä, jonka posterioritodennäköisyys on suurin
)|(maxarg)(,...,1
* XkPXgck
![Page 37: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/37.jpg)
Esimerkkiluokitin
Luokat w1 ja w2: luokka w1 valitaan piirrevektorin arvoilla alueella r1 ja luokka w2 alueella r2
esim. x = pituus ja w1 = ”nainen”, w2 = ”mies”
![Page 38: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/38.jpg)
Päätösrajat
Hahmon luokittelija jakaa piirreavaruuden päätösalueiksi kutsuttuihin osiin. Kaikki samaan päätösalueeseen kuuluvat piirrevektorit kuuluvat samaan luokkaan. Päätösalueita erottaa päätösrajoiksi kutsutut pinnat. Päätösalueiden muoto voi olla hyvinkin kompleksinen!
engl. Decision boundaries
![Page 39: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/39.jpg)
Lineaariset luokittimet Lineaarisen luokittimen päätöspinta
oletetaan lineaariseksi (esim. suora), mikä helpottaa luokittimen rakentamista.
Lineaarinen luokitinfunktio:
missä X on d-ulotteinen piirrevektori, W on d-ulotteinen piirrevektori
Lineaarinen luokitin voidaan ajatella verkkona toisistaan riippumattomia luokittimia luokille k = 1,…,c
ock
Tk wXWXg
,...,1
)(sisätulo
![Page 40: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/40.jpg)
Fisherin lineaarinen erotin Menetelmässä piirreavaruuden datapisteet
projisoidaan 1-ulotteiselle suoralla. Piirrevektori voi silti olla moniulotteinen.
Luokat oletetaan normaalisti jakautuneiksi. Suoran määrittelee vektori W, jolle
projisoimalla piirrevektori X, saadaan pisteen sijainti y suoralla.
Toiveena on, että jakamalla suora kahteen osaan kohtisuoralla pinnalla, saadaan parhaiten erotteleva kahden luokan välinen lineaarinen päätöspinta!
![Page 41: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/41.jpg)
Fisherin lineaarisen erottimen esimerkki
engl.: Fisher linear discriminant
![Page 42: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/42.jpg)
Mallin sovitus Mallin sovituksessa verrataan
luokiteltavaa (kohinaista) hahmoa (kohinattomiin) malleihin, jotka on valittu edustaviksi esimerkeiksi kustakin luokasta.
Vertaillaan eroavuuksia tai vastaavuuksia, päätös samankaltaisuudesta tehdään niiden pohjalta
engl. Template matching
![Page 43: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/43.jpg)
Esimerkki mallin sovituksesta
Oikeanpuolisten sarakkeiden 16 x 16 pistematriisinumeroita verrataan vasemman sarakkeen kohinattomiin malleihin.
Vertailu voidaan tehdä joko laskemalla vastaavuudet (musta hahmossa – musta mallissa, valkea hahmossa – valkea mallissa) tai eroavuudet (musta hahmossa kun mallissa valkea ja päinvastoin). Tehokas menetelmä kun ainoat muutokset hahmossa johtuu kohinasta (ns. additive noise), mutta toimii huonosti jos hahmosssa vääristymää l. distortiota (kallistumia, kiertymiä, rypistymiä, siirtymiä, ...).
![Page 44: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/44.jpg)
Pienimmän etäisyyden luokittimet
Oletetaan x tuntemattoman hahmon piirrevektoriksi ja vektorit m1, m2, …, mc malleiksi eli ”täydellisiksi”, kohinattomiksi piirrevektoreiksi, joista kukin edustaa yhtä luokista 1, 2, …, c. Tällöin voidaan määritellä tuntemattoman hahmon ja mallin etäisyys (l. normi):
Dk = || x – mk ||
Pienimmän etäisyyden luokitin laskee etäisyydet Dk kaikkien mallien (1,…,k) ja tuntemattoman hahmon piirrevektorin välillä ja valitsee luokaksi pienimmän etäisyyden luokan (pienimmän virheen luokan).
engl. Minimum-distance classifiers
![Page 45: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/45.jpg)
Etäisyysmitat/-funktiot Etäisyyden eli normin määrittelemiseen on useita eri
tapoja joita kutsutaan metriikoiksi, tässä etäisyysmitoiksi. Hamming: Eroavien bittien määrä kahdessa bittivektorissa
(piirreavaruudessa) Manhattan: Kahden pisteen välinen etäisyys mitattuna
suorakulmaisia akseleita pitkin (piirreavaruudessa)• Mieti: the moves of a rook in chess
Euclidean: Suoran viivan pituus kahden pisteen välillä (piirreavaruudessa)
Mahalanobis: Kovariansiin liittyvä etäisyys elliptisessä avaruudessa
• Mahalanobiksen edut: koordinaattiakselien skaalaus, piirteiden välinen riippumattomuus, ylilineaariset päätösrajat
![Page 46: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/46.jpg)
Etäisyydestä yleisemmin Periaatteessa samankaltaisuus/ erinlaisuus
voi perustua mihin informaatioon tahansa! Yleensä käytetään seuraavia pelisääntöjä:
refleksiivisyys d(X,X)=0, eli hahmon etäisyys itseensä on olematon
symmetrisyys d(X,Y) = d(Y,X) kolmioepäyhtälö d(X,Y) d(X,Z) + d(Z,Y)
Etäisyysmitan d(X,Y) avulla voidaan piirrevektorit järjestää jonkin piirreavaruuden pisteen suhteen järjestykseen.
![Page 47: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/47.jpg)
Etäisyysmitoista binaarisille arvojoukoille
Yksittäinen piirre on 0 tai 1 (bitti); piirrevektorit X,Y [0,1]k
Verrataan piirrevektoreita piirteittäin i = 0,…,k-1 a on lukumäärä esiintymistä Xi = 1 ja Yi = 1 b on lukumäärä esiintymistä Xi = 0 ja Yi = 1 c on lukumäärä esiintymistä Xi = 1 ja Yi = 0 d on lukumäärä esiintymistä Xi = 0 ja Yi = 0
Binaaristen piirrevektorien etäisyys voidaan ilmaista eritavoin lukumäärien a, b, c ja d suhteina.
![Page 48: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/48.jpg)
Etäisyysmitoista binaarisille arvojoukoille Yksinkertainen täsmäys
Jaccard etäisyys
Dice etäisyys
cba
aYXd jaccard
),(
cba
aYXddice
2
2),(
dcba
daYXdsimple
),(
![Page 49: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/49.jpg)
Yleinen Minkovskin eli L-metriikka
Yleinen muoto josta johdettavissa muut
p=1 (Manhattan eli kortteli)
p=2 (Euklidinen)
p
i
p
ii YXYXd
1
minkovski ),(
i
iicityblock YXYXd ),(
i
iieuclid YXYXd2
),(
![Page 50: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/50.jpg)
Päätösrajat pienimmän etäisyyden luokittimessa
Pienimmän etäisyyden luokittimessa nämä päätösrajat ovat pisteitä, jotka ovat yhtä etäällä kahdesta tai useammasta luokan sovitettavasta mallista (template).
Euklidisessa metriikassa tämä tarkoittaa että päätösrajat ovat viivoja ja tasoja, erityisesti kohtisuorassa kahta luokan mallia yhdistävästä suorasta.
![Page 51: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/51.jpg)
k-lähimmän naapurin luokitin
idea: piirrevektorin X luokaksi arvataan se luokka c mikä esiintyy useimmiten piirrevektorin k lähimmän mallivektorin ympäristössä
periaatteeltaan yksinkertainen, suhteellisen robustinen, mutta laskennaltaan kompleksinen
1-lähimmän naapurin luokitin tutustuttiin edellä
k-NN-classifier
![Page 52: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/52.jpg)
k-lähimmän naapurin luokitin
Opetusjoukko luokiteltuja hahmovektoreja muodostaa itsessään luokittelijan (tilastollisia jakaumi yms. ei tarvita).
Intuitiivinen tausta niiden käyttöön luokittelijana on, että lähellä (jollakin metriikalla) olevat tunnistamattomat havainnot kuuluvat samaan luokkaan.
![Page 53: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/53.jpg)
Enemmistö ratkaisee
the majority vote Tutkitaan mihin luokkaan enemmistö
tuntemattoman piirrevektorin X k-lähimmästä naapurista kuuluu. Nimetään tuntematon X enemmistön mukaan kuuluvaksi luokkaan c.
![Page 54: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/54.jpg)
Edellytyksiä hyvälle k-lähimmän naapurin luokittelijalle
Naapurikoko k yleensä pariton (ja usein k=3). Siis, k pitää olla riittävän suuri, jotta virheluokittelun todennäköisyys minimoituu sekä k pitää olla riittävän pieni (suhteessa opetusaineiston kokoon), jotta naapuruston pisteet ovat riittävän läheltä antaakseen luotettavan arvion todellisesta luokasta.
Luokitetun aineiston (opetusaineiston) tulee olla suuri hyvät hakualgoritmit.
![Page 55: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/55.jpg)
Yksinkertaisen luokittelijan rajoitukset
1. Piirteet eivät sisällä (riittävästi) informaatiota hahmojen erottelemiseksi luokkiin:
• etsi ja/tai valitse paremmat piirteet
2. Jotkin piirteet (joiden tarkoitus on mitata hahmon eri ominaiuuksia) ovat keskenään riippuvia tai toisiinsa vaikuttavia, siten että ne pyrkivät vaihtelemaan yhdessä:
• valitse riippumattomat piirteet, valitse toinen metriikka, tarkista skaalaus
3. Piirreavaruuteen ei synny yhtenäisiä päätösalueita (syystä tai toisesta, yleensä jakautuu hyvin moniin aliluokkiin):
• uudelleensuunnittele piirrejoukko
![Page 56: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/56.jpg)
Yksinkertaisen luokittelijan rajoitukset
4. Euklidisten etäisyysmittojen lineaariset päätösrajat eivät ole riittäviä erottamaan luokkia toisistaan:
1. uudelleensuunnittele piirrejoukko, 2. valitse metriikka joka pystyy ylilineaarisiin päätösrajoihin
(esim. Mahalanobis), 3. neuraalilaskennan menetelmät (myöhemmin kurssissa)
5. Yhtä “luonnollista” luokkaa vastaa usea piirreavaruuteen jakautunut aliluokka:
• käytä ryvästysmenetelmiä etsimään aineistossa olevat aliluokat ja etsi niiden vastineet luokille
![Page 57: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/57.jpg)
Luokittelijan muodostaminen
Useita lähestymistapoja1. Jos jokaisen luokan piirrevektorien todennäköisyysjakaumat
tunnetaan, voidaan soveltaa ns. Bayesin luokittelusääntöä , joka minimoi virheluokituksen riskin tai todennäköisyyden. • Useimmiten piirteiden oletetaan noudattavan normaalijakaumaa. Usean
piirteen tapauksessa tarvitaan monen muuttujan todennäköisyysjakaumia laskennallisesti hyvin työlästä.
2. Jos todennäköisyysjakaumia ei tunneta, mutta opetusjoukossa riittävästi näytteitä (prototyyppejä) kunkin luokan hahmoista on, voidaan jakaumat oppia (estimoida). • Mikäli jakauman periaatteellinen muoto tunnetaan, riittää pelkästään jakaumien
parametrien oppiminen (keskiarvot ja hajonnat).
3. Jos jakaumia ei tunneta ja näytteitä opetusjoukossa on liian vähän luotettavaa estimointia varten, on turvauduttava ei-parametrisiin menetelmiin. Luokitin pyritään oppimaan suoraan opetusjoukosta ja täten suoraan määräämään piirreavaruuden päätöspinnat. • Tunnettu esimerkki on k:n lähimmän naapurin menetelmä.
![Page 58: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/58.jpg)
Mallin validointi Luokittelijan hyvyys (=keskeinen
ominaisuus!) määräytyy sen virhesuhteen (engl. error rate) mukaan. Luokittelija testataan aineistolla jonka hahmovektorien luokat on tunnettu ja verrataan tulosta!
engl. Validation
![Page 59: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/59.jpg)
Mallin validointimentelmiä testing on the training data: Testiaineistona
käytetään mallin muodostuksessa käytettyä opetusaineistoa. Hyvä ’välttämätön ehto’ on että malli luokittaa hyvin opetusaineistonsa.
holdout method: Käytetään erillistä testiaineistoa jakamalla opetusaineisto ennen opetusta kahteen osaan, joista toista ei käytetä opettamiseen. Hyvä, mutta vaatii aineistolta enemmän kokoa.
k-fold cross-validation: Jaetaan opetusaineisto k yhtäsuureen osaan, joista k-1 käytetään opettamiseen ja 1 testaamiseen toistaen opetetus-/testausvaiheet k kertaa. Hyvä, joskin aikaavievä.
![Page 60: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/60.jpg)
Oppiminen esimerkeistä Learning the mean vector: Jos käytettävissä on
samaan luokkaan kuuluvat piirrevektorit {x(1),x(2),...,x(n)} (opetusjoukko, näytteet), voidaan malli muodostaa keskiarvoistamalla m(n) = [x(1) + x(2) + ... + x(n)]/n
Sequential learning: Malli voi olla myös asteittain tarkentuva (uusia samaan luokkaan kuuluvia piirrevektoreita ilmaantuu lisää), jolloin m(n+1) = (n/n+1) m(n) + (1/n+1) x(n+1)
engl.Learning from examples
![Page 61: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/61.jpg)
Klusterointi eli ryvästäminen
Muodostaako opetusjoukko luonnollisia ryhmittymiä, jotka vastaavat tiettyä luokkaa?
Yhteenkuuluvia piirrevektoreita voidaan etsiä klusteroinilla eli ryvästämisellä: The k-means procedure The fuzzy-k-means procedure * The sequential-k-means procedure * Self-organizing feature maps
The problem of finding subclasses in a set of examples from a given class is called unsupervised learning. The problem is easiest when the feature vectors for examples in a subclass are close together and form a cluster.
engl. Clustering
![Page 62: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/62.jpg)
The k-means procedure Oletetaan että opetusjoukossa on n piirrevektoria
x1,x2,...,xn, jotka voidaan ryvästää k ryppääseen, jossa k < n. Klusterin i keskiarvo (keskipiste) olkoon vektori mi. Jos klusterit eli ryväkset ovat hyvin erottuvia, voidaan ne erotella pienimmän etäisyyden luokittimella.
Seuraavalla algoritmilla:• Arvaa alkuarvot klusterien keskiarvoille m1,m2,...,mk
• REPEAT• Käytä keskiarvoja mi luokittelemaan piirrevektorit x1,x2,...,xn
• FOR i = 1 TO k• Korvaa mi kaiklla klusteriin i kuuluvien piirrevektorien keskiarvolla
• UNTIL yhdenkään klusterin keskiarvo mi ei muutu
![Page 63: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/63.jpg)
Aineiston opittavuus Swingler (1996), menetelmä perustuu
informaatioteoriaan ja entropiaan molemminpuolisen informaation ja entropian suhde paljastaa aineiston opittavuuden.
Luokkien todennäköisyydet P(yi) ja entropia-arvo:
Luokan yi ehdollinen entropia, kun se kuuluu piirrevektorille xi :
)(log)()( ii
i yPyPYH
),(
)(log),()|(
ji
jj
i ji xyP
xPxyPXYH
![Page 64: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/64.jpg)
Molemminpuolinen informaatio ja opittavuus
Molemminpuolinen informaatio
Opittavuussuhde (välillä 0..1):
Arvon ollessa lähellä ylärajaa 1, on aineisto hyvin opittavaa
)|()();();( XYHYHXYIYXI
)(
);(
YH
XYIr
![Page 65: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/65.jpg)
Aineiston sironta Kiinnittää Swinglerin suhdetta paremmin huomion tapausten
sijoittumiseen piirreavaruudessa! Sironnan laskenta:
1. valitaan opetusaineiston piirrevektoreista satunnainen aloitustapaus, laskuri a = 0
2. valitaan (halutulla metriikalla) tapauksen lähin naapuritapaus ja poistetaan edellinen tapaus
3. jos lähin naapuritapaus on eri luokassa, kasvatetaan laskuria a yhdellä
4. palataan kohtaan 2, kunnes aineisto on läpikäyty Tulkinta:
aineisto jossa luokat ovat täysin sekaisin, on paljon vaihtelua eli lukua a kasvaa suureksi
aineisto jossa luokat ovat sijoittuneet piirreavaruuteen paikallisesti eri alueille, vaihtelua on vähän (aluokkien määrä)
Siermala, 1999
![Page 66: Älykkäät järjestelmät](https://reader035.fdocument.pub/reader035/viewer/2022062500/5681557d550346895dc344bb/html5/thumbnails/66.jpg)
Osio vaihtuu … Hahmontunnistuksen menetelmien
edelleenkehitys ja soveltaminen: koneoppiminen (machine learning):
luokittelujen tai toimintojen automaattinen oppiminen esimerkeistä
tiedonlouhinta/-jalostus (data mining): suurissa data-aineistoissa ilmenevien säännönmukaisuuksien automaattinen havaitseminen
neuroverkot: yksinkertaistettujen hermosolumallien motivoima menetelmien perhe