Transcript From Decision Trees to Random Forests
Slide 1
Od rozhodovacích stromov k
náhodným lesom
Peter Angelovič
Školiteľ: prof. Ing. Vladimír Vojtek, PhD.
Ústav aplikovanej informatiky
Fakulta informatiky a informačných technológií STU
Slide 2
Obsah
• Charakteristika a typy predikčných úloh
• Predikčné metódy
– Rozhodovacie stromy
– Bagging a Boosting
– Náhodné lesy
• Optimalizácia náhodných lesov
Slide 3
Typy predikčných úloh
• Charakteristika predikčnej úlohy
– Každý objekt je tvorený množinou atribútov
– Predpoveď neznámeho atribútu na základe známych
hodnôt ostatných atribútov
– Uprednostňuje sa presnosť pred zrozumiteľnosťou
získaných znalostí
• Typy úloh
– Klasifikácia
– Regresia
– Predikcia časových radov – predikcia, predpoveď
Slide 4
Definícia klasifikácie
•
•
•
•
Majme množinu objektov O = {O1,O2,…,Ok}
Oi = {a1,a2,…,am}, aj j-ty atribút
Majme množinu tried C = {C1,C2,…,Cn}
Klasifikátor je zobrazenie K
K :O C
• Majme T O, známa príslušnosť k triedam
• Majme D O, neznáme triedy
• Klasifikačná úloha:
– Zostavenie klasifikátora K nad množinou T
– K priradí triedu každému objektu z D
Slide 5
Definícia predikcie
•
•
•
•
Majme časový rad S={ S(1), S(2), ..., S(k)}
S(j) = {a1, a2, …, am}
S(1), S(2), ..., S(k) S(k+1)
Prediktor je zobrazenie P
P : S S ( k 1)
• Predikčná úloha
– Zostavenie prediktora P nad množinou T
– P priradí numerickú hodnotu každému príkladu z D
Slide 6
Rozhodovacie stromy
•
•
Založené na princípe rozdeľuj a panuj
Prvky rozhodovacích stromov
– Medziľahlý uzol tvorí test
– Hrana je výsledok tohto testu
– List reprezentuje triedy, numerické hodnoty,
lokálne modely
a1 < 1200
_
+
a2 > 150
_
+
a3 < 300
+
A
a4 < 825
+
C
_
B
A
_
B
Slide 7
Indukcia rozhodovacích stromov
•
Top Down Induction of Decision Trees:
– Všetky príklady sa priradia rodičovskému uzlu
– Uzol sa stáva listom ak sú všetky príklady z jednej
triedy
– Inak sa vyberie atribút, ktorý najlepšie rozdelí
príklady – stane sa testom pre vetvenie
– Vytvoria sa vetvy a pre každú sa zostaví podmnožina
príkladov
– Postup sa rekurzívne opakuje
•
•
•
•
Všetky príklady v danom uzle patria do jednej triedy
Všetky atribúty pre vetvenie už boli vyčerpané
V uzle už nie sú žiadne príklady
Dôležité je kritérium vetvenia
Slide 8
Algoritmy rozhodovacích stromov
• Kritérium vetvenia – ENTROPIA - miera neurčitosti
príkladov v danom uzle
• Algoritmus ID3
–
–
–
–
Klasifikačné úlohy
Kritérium: INFORMAČNÝ ZISK (opak entropie)
Pracuje iba s nominálnymi atribútmi
Uprednostňuje atribúty s veľkým počtom hodnôt
• Algoritmus C4.5
–
–
–
–
–
Klasifikačné úlohy
Kritérium: POMERNÝ INFORMAČNÝ ZISK
Dokáže pracovať s numerickými atribútmi
Odstraňuje nevýhodu ID3
Orezávanie stromov – predchádza preučeniu
Slide 9
Algoritmy regresných a modelových stromov
• Klasifikačný a regresný strom CART
–
–
–
–
–
Klasifikačné aj regresné úlohy
Kritérium: GINI INDEX
Pracuje s nominálnymi a numerickými atribútmi
V listoch sú buď triedy alebo numerické hodnoty
Výsledný strom býva rozsiahly a neprehľadný
• Algoritmus M5
–
–
–
–
Regresné úlohy
Kritérium: REDUKCIA ŠTANDARDNEJ ODCHÝLKY
V listoch sú lineárne modely
Zvýšenie presnosti – orezávaním, vyhladzovaním
• Algoritmus M5’
– Rozšírenie M5
– Práca s chýbajúcimi hodnotami atribútov
Slide 10
Boosting a Bagging
Nový
príklad
C1
C2
C*
Klasifikácia
...
Dáta
CT
Princíp techník Boosting a Bagging
Slide 11
Boosting a Bagging
• Zostavenie viacerých rozhodovacích stromov
• Výsledok predikcie je agregáciou všetkých
stromov
• Boosting
– Každému príkladu sa priradí váha
– Chybne predikovaným príkladom sa váha mení
– Presnosť prediktora je úmerná počtu správne
predikovaných hodnôt
• Bagging
– Vytvorí sa T trénovacích množín technikou bootstrap
– Pre každú množinu sa zostaví samostatný prediktor
Slide 12
Náhodné lesy
•
Náhodný les
– Kolekcia stromov
– Výsledok je agregáciou výsledkov jednotlivých stromov
•
Princíp:
1. Vytvorenie N trénovacích množín metódou bootstrap
2. Zostavenie stromu pre každú trénovaciu množinu
3. Predikcia výstupnej hodnoty pre neznámy príklad
•
•
•
Atribút pre vetvenie: z náhodne vybraných
atribútov
Sú odolné voči preučeniu
Nepotrebujú validačnú množinu
Slide 13
Vlastnosti náhodných lesov
•
•
•
•
Jednoduchý princíp
Odolnosť voči preučeniu
Dobrá paralelizovteľnosť
Lepšie výsledky ako boosting alebo
bagging
• Odolnosť voči šumu
• Možnosť výpočtu chyby generalizácie,
výpočet korelácie a sily prediktora
Slide 14
Optimalizácia náhodných lesov
• Optimalizácia pomocou EA
– Počet stromov v lese
– Počet atribútov pre vetvenie
– Typ funkcie pre kritérium vetvenia
– Výber príkladov pre zostavenie trénovacej množiny
• Optimalizácia pomocou NS
– NS ako lokálne modely v listoch
– NS ako agregačná funkcia jednotlivých stromov
Slide 15
Ďakujem za pozornosť
Od rozhodovacích stromov k
náhodným lesom
Peter Angelovič
Školiteľ: prof. Ing. Vladimír Vojtek, PhD.
Ústav aplikovanej informatiky
Fakulta informatiky a informačných technológií STU
Slide 2
Obsah
• Charakteristika a typy predikčných úloh
• Predikčné metódy
– Rozhodovacie stromy
– Bagging a Boosting
– Náhodné lesy
• Optimalizácia náhodných lesov
Slide 3
Typy predikčných úloh
• Charakteristika predikčnej úlohy
– Každý objekt je tvorený množinou atribútov
– Predpoveď neznámeho atribútu na základe známych
hodnôt ostatných atribútov
– Uprednostňuje sa presnosť pred zrozumiteľnosťou
získaných znalostí
• Typy úloh
– Klasifikácia
– Regresia
– Predikcia časových radov – predikcia, predpoveď
Slide 4
Definícia klasifikácie
•
•
•
•
Majme množinu objektov O = {O1,O2,…,Ok}
Oi = {a1,a2,…,am}, aj j-ty atribút
Majme množinu tried C = {C1,C2,…,Cn}
Klasifikátor je zobrazenie K
K :O C
• Majme T O, známa príslušnosť k triedam
• Majme D O, neznáme triedy
• Klasifikačná úloha:
– Zostavenie klasifikátora K nad množinou T
– K priradí triedu každému objektu z D
Slide 5
Definícia predikcie
•
•
•
•
Majme časový rad S={ S(1), S(2), ..., S(k)}
S(j) = {a1, a2, …, am}
S(1), S(2), ..., S(k) S(k+1)
Prediktor je zobrazenie P
P : S S ( k 1)
• Predikčná úloha
– Zostavenie prediktora P nad množinou T
– P priradí numerickú hodnotu každému príkladu z D
Slide 6
Rozhodovacie stromy
•
•
Založené na princípe rozdeľuj a panuj
Prvky rozhodovacích stromov
– Medziľahlý uzol tvorí test
– Hrana je výsledok tohto testu
– List reprezentuje triedy, numerické hodnoty,
lokálne modely
a1 < 1200
_
+
a2 > 150
_
+
a3 < 300
+
A
a4 < 825
+
C
_
B
A
_
B
Slide 7
Indukcia rozhodovacích stromov
•
Top Down Induction of Decision Trees:
– Všetky príklady sa priradia rodičovskému uzlu
– Uzol sa stáva listom ak sú všetky príklady z jednej
triedy
– Inak sa vyberie atribút, ktorý najlepšie rozdelí
príklady – stane sa testom pre vetvenie
– Vytvoria sa vetvy a pre každú sa zostaví podmnožina
príkladov
– Postup sa rekurzívne opakuje
•
•
•
•
Všetky príklady v danom uzle patria do jednej triedy
Všetky atribúty pre vetvenie už boli vyčerpané
V uzle už nie sú žiadne príklady
Dôležité je kritérium vetvenia
Slide 8
Algoritmy rozhodovacích stromov
• Kritérium vetvenia – ENTROPIA - miera neurčitosti
príkladov v danom uzle
• Algoritmus ID3
–
–
–
–
Klasifikačné úlohy
Kritérium: INFORMAČNÝ ZISK (opak entropie)
Pracuje iba s nominálnymi atribútmi
Uprednostňuje atribúty s veľkým počtom hodnôt
• Algoritmus C4.5
–
–
–
–
–
Klasifikačné úlohy
Kritérium: POMERNÝ INFORMAČNÝ ZISK
Dokáže pracovať s numerickými atribútmi
Odstraňuje nevýhodu ID3
Orezávanie stromov – predchádza preučeniu
Slide 9
Algoritmy regresných a modelových stromov
• Klasifikačný a regresný strom CART
–
–
–
–
–
Klasifikačné aj regresné úlohy
Kritérium: GINI INDEX
Pracuje s nominálnymi a numerickými atribútmi
V listoch sú buď triedy alebo numerické hodnoty
Výsledný strom býva rozsiahly a neprehľadný
• Algoritmus M5
–
–
–
–
Regresné úlohy
Kritérium: REDUKCIA ŠTANDARDNEJ ODCHÝLKY
V listoch sú lineárne modely
Zvýšenie presnosti – orezávaním, vyhladzovaním
• Algoritmus M5’
– Rozšírenie M5
– Práca s chýbajúcimi hodnotami atribútov
Slide 10
Boosting a Bagging
Nový
príklad
C1
C2
C*
Klasifikácia
...
Dáta
CT
Princíp techník Boosting a Bagging
Slide 11
Boosting a Bagging
• Zostavenie viacerých rozhodovacích stromov
• Výsledok predikcie je agregáciou všetkých
stromov
• Boosting
– Každému príkladu sa priradí váha
– Chybne predikovaným príkladom sa váha mení
– Presnosť prediktora je úmerná počtu správne
predikovaných hodnôt
• Bagging
– Vytvorí sa T trénovacích množín technikou bootstrap
– Pre každú množinu sa zostaví samostatný prediktor
Slide 12
Náhodné lesy
•
Náhodný les
– Kolekcia stromov
– Výsledok je agregáciou výsledkov jednotlivých stromov
•
Princíp:
1. Vytvorenie N trénovacích množín metódou bootstrap
2. Zostavenie stromu pre každú trénovaciu množinu
3. Predikcia výstupnej hodnoty pre neznámy príklad
•
•
•
Atribút pre vetvenie: z náhodne vybraných
atribútov
Sú odolné voči preučeniu
Nepotrebujú validačnú množinu
Slide 13
Vlastnosti náhodných lesov
•
•
•
•
Jednoduchý princíp
Odolnosť voči preučeniu
Dobrá paralelizovteľnosť
Lepšie výsledky ako boosting alebo
bagging
• Odolnosť voči šumu
• Možnosť výpočtu chyby generalizácie,
výpočet korelácie a sily prediktora
Slide 14
Optimalizácia náhodných lesov
• Optimalizácia pomocou EA
– Počet stromov v lese
– Počet atribútov pre vetvenie
– Typ funkcie pre kritérium vetvenia
– Výber príkladov pre zostavenie trénovacej množiny
• Optimalizácia pomocou NS
– NS ako lokálne modely v listoch
– NS ako agregačná funkcia jednotlivých stromov
Slide 15
Ďakujem za pozornosť