Random Forests - Véletlen erdők



Hasonló dokumentumok
Új típusú döntési fa építés és annak alkalmazása többtényezős döntés területén

Egy uttes m odszerek Isp any M arton es Jeszenszky P eter okt ober 18.

1. gyakorlat. Mesterséges Intelligencia 2.

Csima Judit április 9.

Döntési fák. (Klasszifikációs és regressziós fák: (Classification And Regression Trees: CART ))

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI

Osztályozás, regresszió. Nagyméretű adathalmazok kezelése Tatai Márton

Regresszió. Csorba János. Nagyméretű adathalmazok kezelése március 31.

Közösség detektálás gráfokban

Gépi tanulás. Hány tanítómintára van szükség? VKH. Pataki Béla (Bolgár Bence)

Adatbányászati szemelvények MapReduce környezetben

Gépi tanulás a gyakorlatban. Lineáris regresszió

Fodor Gábor március 17. Fodor Gábor Osztályozás március / 39

Gépi tanulás. Féligellenőrzött tanulás. Pataki Béla (Bolgár Bence)

Biomatematika 12. Szent István Egyetem Állatorvos-tudományi Kar. Fodor János

Számítógépes képelemzés 7. előadás. Dr. Balázs Péter SZTE, Képfeldolgozás és Számítógépes Grafika Tanszék

Statisztikai következtetések Nemlineáris regresszió Feladatok Vége

Gépi tanulás a gyakorlatban. Kiértékelés és Klaszterezés

Újfajta, automatikus, döntési fa alapú adatbányászati módszer idősorok osztályozására

Nagyméretű adathalmazok kezelése (BMEVISZM144) Reinhardt Gábor április 5.

Szomszédság alapú ajánló rendszerek

Asszociációs szabályok

Autoregresszív és mozgóátlag folyamatok. Géczi-Papp Renáta

Keresés képi jellemzők alapján. Dr. Balázs Péter SZTE, Képfeldolgozás és Számítógépes Grafika Tanszék

Autoregresszív és mozgóátlag folyamatok

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI

Programozási módszertan. A gépi tanulás alapmódszerei

Tanulás tanuló gépek tanuló algoritmusok mesterséges neurális hálózatok

Gépi tanulás Gregorics Tibor Mesterséges intelligencia

IBNR számítási módszerek áttekintése

Gyakorló feladatok adatbányászati technikák tantárgyhoz

Számítógépes döntéstámogatás. Genetikus algoritmusok

A maximum likelihood becslésről

Babeş Bolyai Tudományegyetem, Kolozsvár Matematika és Informatika Kar Magyar Matematika és Informatika Intézet

Mesterséges Intelligencia MI

Statisztika I. 8. előadás. Előadó: Dr. Ertsey Imre

A számítástudomány alapjai. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem

BAGME11NNF Munkavédelmi mérnökasszisztens Galla Jánosné, 2011.

angolul: greedy algorithms, románul: algoritmi greedy

Tanulás az idegrendszerben. Structure Dynamics Implementation Algorithm Computation - Function

Statisztikai módszerek a skálafüggetlen hálózatok

Lineáris regresszió vizsgálata resampling eljárással

A Markovi forgalomanalízis legújabb eredményei és ezek alkalmazása a távközlő hálózatok teljesítményvizsgálatában

[1000 ; 0] 7 [1000 ; 3000]

Szeleteljük fel úgy a tulajdonságteret, hogy az egyes szeletekbe lehetőleg egyfajta objektumok kerüljenek, de túl sok szelet se legyen.

Mérés és modellezés 1

Alap-ötlet: Karl Friedrich Gauss ( ) valószínűségszámítási háttér: Andrej Markov ( )

Kabos: Statisztika II. t-próba 9.1. Ha ismert a doboz szórása de nem ismerjük a

E x μ x μ K I. és 1. osztály. pontokként), valamint a bayesi döntést megvalósító szeparáló görbét (kék egyenes)

Klaszterezés, 2. rész

Algoritmuselmélet. 2-3 fák. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 8.

7. Régió alapú szegmentálás

Megerősítéses tanulás 7. előadás

Hipotézis STATISZTIKA. Kétmintás hipotézisek. Munkahipotézis (H a ) Tematika. Tudományos hipotézis. 1. Előadás. Hipotézisvizsgálatok

17. A 2-3 fák és B-fák. 2-3 fák

Izgalmas újdonságok a klaszteranalízisben

Matematikai alapok és valószínőségszámítás. Statisztikai becslés Statisztikák eloszlása

Szalai Péter. April 17, Szalai Péter April 17, / 36

Adatbányászati feladatgyűjtemény tehetséges hallgatók számára

ANOVA összefoglaló. Min múlik?

19. AZ ÖSSZEHASONLÍTÁSOS RENDEZÉSEK MŰVELETIGÉNYÉNEK ALSÓ KORLÁTJAI

Diverzifikáció Markowitz-modell MAD modell CAPM modell 2017/ Szegedi Tudományegyetem Informatikai Intézet

Gauss-Seidel iteráció

bármely másikra el lehessen jutni. A vállalat tudja, hogy tetszőlegesen adott

Nagyságrendek. Kiegészítő anyag az Algoritmuselmélet tárgyhoz. Friedl Katalin BME SZIT február 1.

Intelligens Rendszerek Elmélete. Versengéses és önszervező tanulás neurális hálózatokban

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI

Biometria az orvosi gyakorlatban. Korrelációszámítás, regresszió

Intelligens orvosi műszerek VIMIA023

Lineáris algebra gyakorlat

Több valószínűségi változó együttes eloszlása, korreláció

Teljesen elosztott adatbányászat pletyka algoritmusokkal. Jelasity Márk Ormándi Róbert, Hegedűs István

Közösségek keresése nagy gráfokban

Mesterséges Intelligencia I.

Support Vector Machines

PONTFELHŐ REGISZTRÁCIÓ

Mérés és modellezés Méréstechnika VM, GM, MM 1

6. Előadás. Vereb György, DE OEC BSI, október 12.

Neurális hálózatok.... a gyakorlatban

Intelligens orvosi műszerek (VIMIA023) Gyakorló feladatok, megoldással (2016 ősz)

Gépi tanulás. Egyszerű döntés tanulása (döntési fák) (Részben Dobrowiecki Tadeusz fóliáinak átdolgozásával) Pataki Béla (Bolgár Bence)

Méréselmélet MI BSc 1

Mérési hibák

Nem teljesen kitöltött páros összehasonlítás mátrixok sajátérték optimalizálása Newton-módszerrel p. 1/29. Ábele-Nagy Kristóf BCE, ELTE

Diszkrét idejű felújítási paradoxon

Gépi tanulás a Rapidminer programmal. Stubendek Attila

Diszkrét matematika 2.C szakirány

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI

A Statisztika alapjai

Branch-and-Bound. 1. Az egészértéketű programozás. a korlátozás és szétválasztás módszere Bevezető Definíció. 11.

Van-e kapcsolat a változók között? (példák: fizetés-távolság; felvételi pontszám - görgetett átlag)

Többváltozós lineáris regressziós modell feltételeinek

Adaptív dinamikus szegmentálás idősorok indexeléséhez

Kísérlettervezés alapfogalmak

Számítógépes döntéstámogatás. Statisztikai elemzés

Adatelemzési eljárások az idegrendszer kutatásban Somogyvári Zoltán

Minimális feszítőfák Legyen G = (V,E,c), c : E R + egy súlyozott irányítatlan gráf. Terjesszük ki a súlyfüggvényt a T E élhalmazokra:

(Independence, dependence, random variables)

A mérések általános és alapvető metrológiai fogalmai és definíciói. Mérések, mérési eredmények, mérési bizonytalanság. mérés. mérési elv

y ij = µ + α i + e ij

Átírás:

Random Forests - Véletlen erdők Szabó Adrienn Adatbányászat és Webes Keresés Kutatócsoport 2010

Tartalom Fő forrás: Leo Breiman: Random Forests Machine Learning, 45, 5-32, 2001 Alapok Döntési fa Véletlen erdők Véletlen erdők építése Nem formálisan Formálisan Véletlen erdő típusok A véletlen erdők jó tulajdonságai Belső becslések Kiértékelés Klasszifikáció További eredmények Regresszió

Amiből építkezni fogunk: döntési fa Az egyes attribútumok értékei alapján a mintákat hierarchikusan csoportosítjuk. A levelek: osztálycímkék. ID Gyártás helye Kor Motor Szín ccm Jól eladható? 1 Németo. 3-6 dízel fehér 1300-1600 igen 2 Japán 6-10 dízel piros 1600 felett igen 3 Japán 3-6 dízel piros 1300-1600 nem

Döntési fa A jó döntési fa: példákkal konzisztens, minél tömörebb (lehető legkevesebb teszttel döntésre jussunk) Hogyan építsük fel? Legegyszerűbb az ID3 algoritmus: a gyökértől kezdve építjük a fát, mohó módon mindig úgy válasszunk döntési attribútumot egy csúcspontban, hogy az információnyereség ( IG(S, a) = H(S) H(S a) ) maximális legyen Továbbfejlesztés: Information Gain helyett Gain Ratio, ami nem súlyozza túl azokat az attribútumokat amik sok különböző értéket felvehetnek

Döntési fa A jó döntési fa: példákkal konzisztens, minél tömörebb (lehető legkevesebb teszttel döntésre jussunk) Hogyan építsük fel? Legegyszerűbb az ID3 algoritmus: a gyökértől kezdve építjük a fát, mohó módon mindig úgy válasszunk döntési attribútumot egy csúcspontban, hogy az információnyereség ( IG(S, a) = H(S) H(S a) ) maximális legyen Továbbfejlesztés: Information Gain helyett Gain Ratio, ami nem súlyozza túl azokat az attribútumokat amik sok különböző értéket felvehetnek

Döntési fa A jó döntési fa: példákkal konzisztens, minél tömörebb (lehető legkevesebb teszttel döntésre jussunk) Hogyan építsük fel? Legegyszerűbb az ID3 algoritmus: a gyökértől kezdve építjük a fát, mohó módon mindig úgy válasszunk döntési attribútumot egy csúcspontban, hogy az információnyereség ( IG(S, a) = H(S) H(S a) ) maximális legyen Továbbfejlesztés: Information Gain helyett Gain Ratio, ami nem súlyozza túl azokat az attribútumokat amik sok különböző értéket felvehetnek

Döntési fa A jó döntési fa: példákkal konzisztens, minél tömörebb (lehető legkevesebb teszttel döntésre jussunk) Hogyan építsük fel? Legegyszerűbb az ID3 algoritmus: a gyökértől kezdve építjük a fát, mohó módon mindig úgy válasszunk döntési attribútumot egy csúcspontban, hogy az információnyereség ( IG(S, a) = H(S) H(S a) ) maximális legyen Továbbfejlesztés: Information Gain helyett Gain Ratio, ami nem súlyozza túl azokat az attribútumokat amik sok különböző értéket felvehetnek

Mik a véletlen erdők? Alapötlet: sok döntési fa, amik valamennyire különbözőek Mindegyik tippel majd valamit, a szavazás végeredményeként a leggykoribb választ fogadjuk el Az erdő hatékonysága a következőkön múlik: generált fák számán (ált. ha több fa szavaz, javul az eredmény) és minőségén generált fák közötti korreláción (ha nő a fák közötti korreláció, az eredmény romlik)

Mik a véletlen erdők? Alapötlet: sok döntési fa, amik valamennyire különbözőek Mindegyik tippel majd valamit, a szavazás végeredményeként a leggykoribb választ fogadjuk el Az erdő hatékonysága a következőkön múlik: generált fák számán (ált. ha több fa szavaz, javul az eredmény) és minőségén generált fák közötti korreláción (ha nő a fák közötti korreláció, az eredmény romlik)

Random forest előnyei Jó eredmények (pontos klasszifikáció) Gyorsan lefut, nagy adatokra is használható Több ezres dimenziójú bemenetet is képes kezelni Becsléseket ad arra hogy mely változók fontosak Hiányzó adatokat képes megbecsülni Használható regresszióra; kis kiterjesztéssel klaszterezésre vagy outlier-szűrésre is

Véletlen erdő építése Breiman módszere: Képezünk K döntési fát úgy, hogy bootstrapping-gal (visszatevéses sorsolás, N-ből N-et sorsolunk) külön-külön tanuló adathalmazt készítünk hozzájuk Az egyes fák építésekor a csomópontokban az attribútum választáskor a lehetséges attribútumhalmazt megszorítjuk egy jóval kisebb méretűre véletlenszerű választással. (Utána a max. IG-t vesszük) Nyesést nem alkalmazunk a fákon

Véletlen erdő építése Breiman módszere: Képezünk K döntési fát úgy, hogy bootstrapping-gal (visszatevéses sorsolás, N-ből N-et sorsolunk) külön-külön tanuló adathalmazt készítünk hozzájuk Az egyes fák építésekor a csomópontokban az attribútum választáskor a lehetséges attribútumhalmazt megszorítjuk egy jóval kisebb méretűre véletlenszerű választással. (Utána a max. IG-t vesszük) Nyesést nem alkalmazunk a fákon

Véletlen erdő építése Breiman módszere: Képezünk K döntési fát úgy, hogy bootstrapping-gal (visszatevéses sorsolás, N-ből N-et sorsolunk) külön-külön tanuló adathalmazt készítünk hozzájuk Az egyes fák építésekor a csomópontokban az attribútum választáskor a lehetséges attribútumhalmazt megszorítjuk egy jóval kisebb méretűre véletlenszerű választással. (Utána a max. IG-t vesszük) Nyesést nem alkalmazunk a fákon

Véletlen erdő építése Breiman módszere: Képezünk K döntési fát úgy, hogy bootstrapping-gal (visszatevéses sorsolás, N-ből N-et sorsolunk) külön-külön tanuló adathalmazt készítünk hozzájuk Az egyes fák építésekor a csomópontokban az attribútum választáskor a lehetséges attribútumhalmazt megszorítjuk egy jóval kisebb méretűre véletlenszerű választással. (Utána a max. IG-t vesszük) Nyesést nem alkalmazunk a fákon

Véletlen erdő építése

Véletlen erdők építése Az egyes fák egyes csúcsainál véletlenszerűen sorsolt attribútumokól választhatjuk csak ki a döntési attribútumot.

Formális definíció Véletlen erdőnek nevezzük azt az osztályozót amely döntési fák {h(x, θ k ), k = 1,... K } halmazából áll ahol a {θ k }-k független, azonos eloszlású random vektorok, és a fák többségi szavazással döntenek (minden fa egy-egy szavazatot adhat le egy-egy osztályozandó vektorra). Tétel: A fák számának növelésével a klasszifikáció minősége konvergál (nem lesz túltanulás). Bizonyítás: Nagy számok erős törvénye segítségével.

Formális definíció Véletlen erdőnek nevezzük azt az osztályozót amely döntési fák {h(x, θ k ), k = 1,... K } halmazából áll ahol a {θ k }-k független, azonos eloszlású random vektorok, és a fák többségi szavazással döntenek (minden fa egy-egy szavazatot adhat le egy-egy osztályozandó vektorra). Tétel: A fák számának növelésével a klasszifikáció minősége konvergál (nem lesz túltanulás). Bizonyítás: Nagy számok erős törvénye segítségével.

Formális definíció Margin: minél nagyobb, annál biztosabb az eredmény; ha negatív akkor hibázott az erdő: mg(x, Y ) = avg k I(h k (X) = Y ) max j Y (avg ki(h k (X) = j)) (X: a bemeneti vektorok, Y : a hozzájuk tartozó osztályok) A döntési fák általánosítási hibája (generalization error): PE = P X,Y (mg(x, Y ) < 0)

Formális definíció Margin: minél nagyobb, annál biztosabb az eredmény; ha negatív akkor hibázott az erdő: mg(x, Y ) = avg k I(h k (X) = Y ) max j Y (avg ki(h k (X) = j)) (X: a bemeneti vektorok, Y : a hozzájuk tartozó osztályok) A döntési fák általánosítási hibája (generalization error): PE = P X,Y (mg(x, Y ) < 0)

A fák ereje és korrelációja Felső korlát adható a véletlen erdő általánosítási hibájára, ami két dologtól függ: az egyes klasszifikátorok (döntési fák) pontosságától a fák közötti korrelációtól PE ρ(1 s 2 )/s 2 ahol ρ az átlagos korreláció a fák között, és s a h(x, θ) klasszifikátorhalmaz ereje: s = E X,Y mg(x, Y )

A fák ereje és korrelációja Felső korlát adható a véletlen erdő általánosítási hibájára, ami két dologtól függ: az egyes klasszifikátorok (döntési fák) pontosságától a fák közötti korrelációtól PE ρ(1 s 2 )/s 2 ahol ρ az átlagos korreláció a fák között, és s a h(x, θ) klasszifikátorhalmaz ereje: s = E X,Y mg(x, Y )

Véletlen erdő típusok Egyszerű bagging: lehetne belül más klasszifikátor is, de döntési fa van Random Split Selection: faépítésnél mindig a legjobb B válozóból választunk egyet véletlenszerűen Random Subspace: minden fát egy-egy rögzített, véletlenül választott attribútumhalmaz alapján építünk fel Breiman módszere: a fent bemutatott (bagging + random m változóból a legjobb választása a facsúcsoknál, ahol m << M, ahol M az attribútumok száma; általában m < log 2 M)

Véletlen erdő típusok Egyszerű bagging: lehetne belül más klasszifikátor is, de döntési fa van Random Split Selection: faépítésnél mindig a legjobb B válozóból választunk egyet véletlenszerűen Random Subspace: minden fát egy-egy rögzített, véletlenül választott attribútumhalmaz alapján építünk fel Breiman módszere: a fent bemutatott (bagging + random m változóból a legjobb választása a facsúcsoknál, ahol m << M, ahol M az attribútumok száma; általában m < log 2 M)

Véletlen erdő típusok Egyszerű bagging: lehetne belül más klasszifikátor is, de döntési fa van Random Split Selection: faépítésnél mindig a legjobb B válozóból választunk egyet véletlenszerűen Random Subspace: minden fát egy-egy rögzített, véletlenül választott attribútumhalmaz alapján építünk fel Breiman módszere: a fent bemutatott (bagging + random m változóból a legjobb választása a facsúcsoknál, ahol m << M, ahol M az attribútumok száma; általában m < log 2 M)

Véletlen erdő típusok Egyszerű bagging: lehetne belül más klasszifikátor is, de döntési fa van Random Split Selection: faépítésnél mindig a legjobb B válozóból választunk egyet véletlenszerűen Random Subspace: minden fát egy-egy rögzített, véletlenül választott attribútumhalmaz alapján építünk fel Breiman módszere: a fent bemutatott (bagging + random m változóból a legjobb választása a facsúcsoknál, ahol m << M, ahol M az attribútumok száma; általában m < log 2 M)

Out-of-bag becslések A bagging alkalmazásának előnyei: a pontosságot növeli, szórást csökkenti Minden fánál a tanítómintából kihagyott értékekre ( out-of bag vagy OOB értékek, ált. kb. a minták egyharmada) jóslatokat kérhetünk Az eredményeket átlagolva elég pontosan becsülhető az erdő hibája (PE), és a fák közötti korreláció is Kb olyan pontos becsléseket kapunk a jóságra mintha egy tanítóhalmaz méretű teszthalmazunk lenne 1 Ezért nem kell Cross Validation-t alkalmazni 1 Breiman egy korábbi cikkének empirikus eredménye, akkor igaz ha K elég nagy (a hiba már konvergált).

Out-of-bag becslések A bagging alkalmazásának előnyei: a pontosságot növeli, szórást csökkenti Minden fánál a tanítómintából kihagyott értékekre ( out-of bag vagy OOB értékek, ált. kb. a minták egyharmada) jóslatokat kérhetünk Az eredményeket átlagolva elég pontosan becsülhető az erdő hibája (PE), és a fák közötti korreláció is Kb olyan pontos becsléseket kapunk a jóságra mintha egy tanítóhalmaz méretű teszthalmazunk lenne 1 Ezért nem kell Cross Validation-t alkalmazni 1 Breiman egy korábbi cikkének empirikus eredménye, akkor igaz ha K elég nagy (a hiba már konvergált).

Out-of-bag becslések A bagging alkalmazásának előnyei: a pontosságot növeli, szórást csökkenti Minden fánál a tanítómintából kihagyott értékekre ( out-of bag vagy OOB értékek, ált. kb. a minták egyharmada) jóslatokat kérhetünk Az eredményeket átlagolva elég pontosan becsülhető az erdő hibája (PE), és a fák közötti korreláció is Kb olyan pontos becsléseket kapunk a jóságra mintha egy tanítóhalmaz méretű teszthalmazunk lenne 1 Ezért nem kell Cross Validation-t alkalmazni 1 Breiman egy korábbi cikkének empirikus eredménye, akkor igaz ha K elég nagy (a hiba már konvergált).

Out-of-bag becslések A bagging alkalmazásának előnyei: a pontosságot növeli, szórást csökkenti Minden fánál a tanítómintából kihagyott értékekre ( out-of bag vagy OOB értékek, ált. kb. a minták egyharmada) jóslatokat kérhetünk Az eredményeket átlagolva elég pontosan becsülhető az erdő hibája (PE), és a fák közötti korreláció is Kb olyan pontos becsléseket kapunk a jóságra mintha egy tanítóhalmaz méretű teszthalmazunk lenne 1 Ezért nem kell Cross Validation-t alkalmazni 1 Breiman egy korábbi cikkének empirikus eredménye, akkor igaz ha K elég nagy (a hiba már konvergált).

Out-of-bag becslések A bagging alkalmazásának előnyei: a pontosságot növeli, szórást csökkenti Minden fánál a tanítómintából kihagyott értékekre ( out-of bag vagy OOB értékek, ált. kb. a minták egyharmada) jóslatokat kérhetünk Az eredményeket átlagolva elég pontosan becsülhető az erdő hibája (PE), és a fák közötti korreláció is Kb olyan pontos becsléseket kapunk a jóságra mintha egy tanítóhalmaz méretű teszthalmazunk lenne 1 Ezért nem kell Cross Validation-t alkalmazni 1 Breiman egy korábbi cikkének empirikus eredménye, akkor igaz ha K elég nagy (a hiba már konvergált).

Fontos változók (Feature selection) Egy v bemenő attribútum (feature) fontossága így becsülhető: Minden fát szavaztassunk meg a hozzá tartozó OOB bemenetekre Jegyezzük meg a helyes válaszok arányát Permutáluk meg az OOB halmazon belül a v változó értékeit, és így is kérjünk jóslatokat a fától A helyes válaszok aránya mennyivel csökkent? Ezt átlagoljuk az összes fára = v fontossági értéke Nagyon sok bemeneti változó esetén először kiválaszthatjuk a jobbakat, aztán csak ezeket használva új, hatékonyabb erdőt építhetünk.

Fontos változók (Feature selection) Egy v bemenő attribútum (feature) fontossága így becsülhető: Minden fát szavaztassunk meg a hozzá tartozó OOB bemenetekre Jegyezzük meg a helyes válaszok arányát Permutáluk meg az OOB halmazon belül a v változó értékeit, és így is kérjünk jóslatokat a fától A helyes válaszok aránya mennyivel csökkent? Ezt átlagoljuk az összes fára = v fontossági értéke Nagyon sok bemeneti változó esetén először kiválaszthatjuk a jobbakat, aztán csak ezeket használva új, hatékonyabb erdőt építhetünk.

Fontos változók (Feature selection) Egy v bemenő attribútum (feature) fontossága így becsülhető: Minden fát szavaztassunk meg a hozzá tartozó OOB bemenetekre Jegyezzük meg a helyes válaszok arányát Permutáluk meg az OOB halmazon belül a v változó értékeit, és így is kérjünk jóslatokat a fától A helyes válaszok aránya mennyivel csökkent? Ezt átlagoljuk az összes fára = v fontossági értéke Nagyon sok bemeneti változó esetén először kiválaszthatjuk a jobbakat, aztán csak ezeket használva új, hatékonyabb erdőt építhetünk.

Fontos változók (Feature selection) Egy v bemenő attribútum (feature) fontossága így becsülhető: Minden fát szavaztassunk meg a hozzá tartozó OOB bemenetekre Jegyezzük meg a helyes válaszok arányát Permutáluk meg az OOB halmazon belül a v változó értékeit, és így is kérjünk jóslatokat a fától A helyes válaszok aránya mennyivel csökkent? Ezt átlagoljuk az összes fára = v fontossági értéke Nagyon sok bemeneti változó esetén először kiválaszthatjuk a jobbakat, aztán csak ezeket használva új, hatékonyabb erdőt építhetünk.

Fontos változók (Feature selection) Egy v bemenő attribútum (feature) fontossága így becsülhető: Minden fát szavaztassunk meg a hozzá tartozó OOB bemenetekre Jegyezzük meg a helyes válaszok arányát Permutáluk meg az OOB halmazon belül a v változó értékeit, és így is kérjünk jóslatokat a fától A helyes válaszok aránya mennyivel csökkent? Ezt átlagoljuk az összes fára = v fontossági értéke Nagyon sok bemeneti változó esetén először kiválaszthatjuk a jobbakat, aztán csak ezeket használva új, hatékonyabb erdőt építhetünk.

Fontos változók (Feature selection) Egy v bemenő attribútum (feature) fontossága így becsülhető: Minden fát szavaztassunk meg a hozzá tartozó OOB bemenetekre Jegyezzük meg a helyes válaszok arányát Permutáluk meg az OOB halmazon belül a v változó értékeit, és így is kérjünk jóslatokat a fától A helyes válaszok aránya mennyivel csökkent? Ezt átlagoljuk az összes fára = v fontossági értéke Nagyon sok bemeneti változó esetén először kiválaszthatjuk a jobbakat, aztán csak ezeket használva új, hatékonyabb erdőt építhetünk.

Fontos változók (Feature selection) Egy v bemenő attribútum (feature) fontossága így becsülhető: Minden fát szavaztassunk meg a hozzá tartozó OOB bemenetekre Jegyezzük meg a helyes válaszok arányát Permutáluk meg az OOB halmazon belül a v változó értékeit, és így is kérjünk jóslatokat a fától A helyes válaszok aránya mennyivel csökkent? Ezt átlagoljuk az összes fára = v fontossági értéke Nagyon sok bemeneti változó esetén először kiválaszthatjuk a jobbakat, aztán csak ezeket használva új, hatékonyabb erdőt építhetünk.

A bemeneti vektorok hasonlóságának becslése Mire is jó ez? Outlier-szűrés: Az összes többitől nagyon különböző tanítóminták zajnak tekinthetők (pl. elrontott mérés), jobb ha kidobjuk ezeket. Akár osztályonként is szűrhetjük őket. Klaszterezés: A minták közti hasonlóság alapján klaszterezést is végezhetünk. Hogyan? Minden bemenet-párra vegyük azon fáknak az arányát amikre ugyanabban a levélben ér véget a hozzájuk tartozó döntési folyamat. Proximity : s i,j Dissimilarity : d i,j = 1 s i,j

A bemeneti vektorok hasonlóságának becslése Mire is jó ez? Outlier-szűrés: Az összes többitől nagyon különböző tanítóminták zajnak tekinthetők (pl. elrontott mérés), jobb ha kidobjuk ezeket. Akár osztályonként is szűrhetjük őket. Klaszterezés: A minták közti hasonlóság alapján klaszterezést is végezhetünk. Hogyan? Minden bemenet-párra vegyük azon fáknak az arányát amikre ugyanabban a levélben ér véget a hozzájuk tartozó döntési folyamat. Proximity : s i,j Dissimilarity : d i,j = 1 s i,j

A bemeneti vektorok hasonlóságának becslése Mire is jó ez? Outlier-szűrés: Az összes többitől nagyon különböző tanítóminták zajnak tekinthetők (pl. elrontott mérés), jobb ha kidobjuk ezeket. Akár osztályonként is szűrhetjük őket. Klaszterezés: A minták közti hasonlóság alapján klaszterezést is végezhetünk. Hogyan? Minden bemenet-párra vegyük azon fáknak az arányát amikre ugyanabban a levélben ér véget a hozzájuk tartozó döntési folyamat. Proximity : s i,j Dissimilarity : d i,j = 1 s i,j

A bemeneti vektorok hasonlóságának becslése Mire is jó ez? Outlier-szűrés: Az összes többitől nagyon különböző tanítóminták zajnak tekinthetők (pl. elrontott mérés), jobb ha kidobjuk ezeket. Akár osztályonként is szűrhetjük őket. Klaszterezés: A minták közti hasonlóság alapján klaszterezést is végezhetünk. Hogyan? Minden bemenet-párra vegyük azon fáknak az arányát amikre ugyanabban a levélben ér véget a hozzájuk tartozó döntési folyamat. Proximity : s i,j Dissimilarity : d i,j = 1 s i,j

A bemeneti vektorok hasonlóságának becslése Mire is jó ez? Outlier-szűrés: Az összes többitől nagyon különböző tanítóminták zajnak tekinthetők (pl. elrontott mérés), jobb ha kidobjuk ezeket. Akár osztályonként is szűrhetjük őket. Klaszterezés: A minták közti hasonlóság alapján klaszterezést is végezhetünk. Hogyan? Minden bemenet-párra vegyük azon fáknak az arányát amikre ugyanabban a levélben ér véget a hozzájuk tartozó döntési folyamat. Proximity : s i,j Dissimilarity : d i,j = 1 s i,j

A bemeneti vektorok hasonlóságának becslése Mire is jó ez? Outlier-szűrés: Az összes többitől nagyon különböző tanítóminták zajnak tekinthetők (pl. elrontott mérés), jobb ha kidobjuk ezeket. Akár osztályonként is szűrhetjük őket. Klaszterezés: A minták közti hasonlóság alapján klaszterezést is végezhetünk. Hogyan? Minden bemenet-párra vegyük azon fáknak az arányát amikre ugyanabban a levélben ér véget a hozzájuk tartozó döntési folyamat. Proximity : s i,j Dissimilarity : d i,j = 1 s i,j

Hiányzó adatok kitöltése Iteratívan becsülhetjük a tanítóhalmaz hiányzó értékeit: Első közelítés: vegyük a hiányzó attribútum átlagát (ill. leggyakoribb értékét) a többi soron, és ezt helyettesítsük be Az így kiegészített adatokkal építsünk erdőt Minden i adatsorhoz amiben f hiányzott, vegyük az összes (nem-f -hiányos j sorral páronként vett hasonlóságait (s i,j ) Az új becslés: s i,j súlyokkal átlagoljuk a j-kben talált f -értékeket, ezt tegyük i f -be Ezt iterálhatjuk (új erdő építése, stb.) amíg már nem változnak az értékek (általában 4-6 kör elég)

Hiányzó adatok kitöltése Iteratívan becsülhetjük a tanítóhalmaz hiányzó értékeit: Első közelítés: vegyük a hiányzó attribútum átlagát (ill. leggyakoribb értékét) a többi soron, és ezt helyettesítsük be Az így kiegészített adatokkal építsünk erdőt Minden i adatsorhoz amiben f hiányzott, vegyük az összes (nem-f -hiányos j sorral páronként vett hasonlóságait (s i,j ) Az új becslés: s i,j súlyokkal átlagoljuk a j-kben talált f -értékeket, ezt tegyük i f -be Ezt iterálhatjuk (új erdő építése, stb.) amíg már nem változnak az értékek (általában 4-6 kör elég)

Hiányzó adatok kitöltése Iteratívan becsülhetjük a tanítóhalmaz hiányzó értékeit: Első közelítés: vegyük a hiányzó attribútum átlagát (ill. leggyakoribb értékét) a többi soron, és ezt helyettesítsük be Az így kiegészített adatokkal építsünk erdőt Minden i adatsorhoz amiben f hiányzott, vegyük az összes (nem-f -hiányos j sorral páronként vett hasonlóságait (s i,j ) Az új becslés: s i,j súlyokkal átlagoljuk a j-kben talált f -értékeket, ezt tegyük i f -be Ezt iterálhatjuk (új erdő építése, stb.) amíg már nem változnak az értékek (általában 4-6 kör elég)

Hiányzó adatok kitöltése Iteratívan becsülhetjük a tanítóhalmaz hiányzó értékeit: Első közelítés: vegyük a hiányzó attribútum átlagát (ill. leggyakoribb értékét) a többi soron, és ezt helyettesítsük be Az így kiegészített adatokkal építsünk erdőt Minden i adatsorhoz amiben f hiányzott, vegyük az összes (nem-f -hiányos j sorral páronként vett hasonlóságait (s i,j ) Az új becslés: s i,j súlyokkal átlagoljuk a j-kben talált f -értékeket, ezt tegyük i f -be Ezt iterálhatjuk (új erdő építése, stb.) amíg már nem változnak az értékek (általában 4-6 kör elég)

Hiányzó adatok kitöltése Iteratívan becsülhetjük a tanítóhalmaz hiányzó értékeit: Első közelítés: vegyük a hiányzó attribútum átlagát (ill. leggyakoribb értékét) a többi soron, és ezt helyettesítsük be Az így kiegészített adatokkal építsünk erdőt Minden i adatsorhoz amiben f hiányzott, vegyük az összes (nem-f -hiányos j sorral páronként vett hasonlóságait (s i,j ) Az új becslés: s i,j súlyokkal átlagoljuk a j-kben talált f -értékeket, ezt tegyük i f -be Ezt iterálhatjuk (új erdő építése, stb.) amíg már nem változnak az értékek (általában 4-6 kör elég)

Hiányzó adatok kitöltése Iteratívan becsülhetjük a tanítóhalmaz hiányzó értékeit: Első közelítés: vegyük a hiányzó attribútum átlagát (ill. leggyakoribb értékét) a többi soron, és ezt helyettesítsük be Az így kiegészített adatokkal építsünk erdőt Minden i adatsorhoz amiben f hiányzott, vegyük az összes (nem-f -hiányos j sorral páronként vett hasonlóságait (s i,j ) Az új becslés: s i,j súlyokkal átlagoljuk a j-kben talált f -értékeket, ezt tegyük i f -be Ezt iterálhatjuk (új erdő építése, stb.) amíg már nem változnak az értékek (általában 4-6 kör elég)

Hiányzó adatok kitöltése

A kiértékeléshez használt adathalmazok Data set Train size Test size Dimension Classes Letters 15000 5000 16 26 Sat-images 4435 2000 36 6 Zip-code 7292 2007 256 10 Waveform 300 3000 21 3 Twonorm 300 3000 20 2 Threenorm 300 3000 20 2 Ringnorm 300 3000 20 2

Eredmények (hibaszázalékok) Data set Adaboost Forest-RI 2 Forest-RI 3 One tree Letters 3.4 3.5 4.7 19.8 Sat-images 8.8 8.6 10.5 17.2 Zip-code 6.2 6.3 7.8 20.6 Waveform 17.8 17.2 17.3 34.0 Twonorm 4.9? 3.9 24.7 Threenorm 18.8? 17.5 38.4 Ringnorm 6.9? 4.9 25.7 Forest-RI (Random Input selection): Véletlen erdő, véletlen attribútum választással. Fák száma: K = 100 (kivéve Zip-code: K = 200) AdaBoost iterációk száma: 50 (kivéve Zip-code: 100) 2 m = log 2 M 3 m = 1

Eredmények (hibaszázalékok) Data set Adaboost Forest-RC 4 Forest-RC 5 One tree Letters 3.4 3.4 4.1 23.8 Sat-images 8.8 9.1 10.2 17.3 Zip-code 6.2 6.2 7.2 22.7 Waveform 17.8 16.0 16.1 33.2 Twonorm 4.9 3.8 3.9 20.9 Threenorm 18.8 16.8 16.9 34.8 Ringnorm 6.9 4.8 4.6 24.6 Forest-RC: bemenetek lineáris kombinációival épített erdő. Összekombinált változók száma: 3 4 m = 8 5 m = 2

A korreláció és jóslóerő változása m növelésével

A hiba változása m növelésével

Zaj tolerancia A véletlen erdők sokkal jobban tolerálják a zajt mint az AdaBoost. Amikor az AdaBoost elrontja (vagyis valójában jól klasszfikálná) a zaj-bementeteket akkor növekvő súllyal kerül a tanítóhalmazba a hibás adat, és ez eltozítja a végső eredményt is. 5%-os osztálycímke-permutáció után a hibák növekedése (%): Data set Adaboost Forest-RI Forest-RC Breast cancer 43.2 1.8 11.1 Diabetes 6.8 1.7 2.8 Sonar 15.1-6.6 4.2 Ionosphere 27.7 3.8 5.7 Soybean 26.9 3.2 8.5 Ecoli 7.5 7.9 7.8 Liver 10.3-0.2 4.8

Regresszió A döntési fák képesek regresszióra is ekkor minden elágazásnál az alapján határozzuk meg a döntési attrubútumot és vágási határt, hogy a két új halmazon belül a jóslandó érték szórásnégyzetei minimálisak legyenek. Data set Train size Test size Dimension Boston Housing 506 10% 12 Ozone 330 10% 8 Abalone 4177 25% 8 Robot Arm 15000 5000 12 Friedman#1 200 2000 10 Friedman#2 200 2000 4 Friedman#3 200 2000 4

Regresszió eredményei Erdők paraméterei: 100 fa, m = 25, random lineáris kombinációi 2 bemenetnek. Megfigyelések: a fák közti korreláció itt lassababn nő m növelésével. Mean squared test set errors Data set Bagging Adapt. bag. Forest Boston Housing 11.4 9.7 10.2 Ozone 17.8 17.8 16.3 Abalone 4.9 4.9 4.6 Robot Arm 4.7 2.8 4.2 Friedman#1 6.3 4.1 5.7 Friedman#2 21.5 21.5 19.6 Friedman#3 24.8 24.8 21.6

Összefoglalás A véletlen erdők hatékony klasszifikátorok, nagy adathalmazokkal is megbirkóznak. A két paraméter, K és m választására nem túl érzékeny (de K legyen elég nagy, m pedig ne legyen túl nagy).

Köszönöm a figyelmet!