+ All Categories
Home > Technology > Aleternativni rozhodovaci stromy

Aleternativni rozhodovaci stromy

Date post: 29-Jun-2015
Category:
Upload: david-filip
View: 1,319 times
Download: 0 times
Share this document with a friend
21
Alternativní metody rozhodovacích stromů David Filip dejv.eu twitter.com/dejv [email protected]
Transcript
Page 1: Aleternativni rozhodovaci stromy

Alternativní metody rozhodovacích stromů

David Filip

dejv.eutwitter.com/dejv

[email protected]

Page 2: Aleternativni rozhodovaci stromy

Osnova

• Rozhodovací stromy Historie, algoritmy, limity

• Alternativní techniky rozhodovacích stromů Bagging, boosting, random forest, genetické stromy

• Proudy dat• Swarm trees

Page 3: Aleternativni rozhodovaci stromy

Rozhodovací stromy

Page 4: Aleternativni rozhodovaci stromy

Rozhodovací strom

• Nejsnáze pochopitelná technika ML• Funguje prakticky na všech typech dat:

kategorické, numerické, chybějící, ...• Velmi snadno vizualizovatelné• Snadný převod na if-then pravidla

Page 5: Aleternativni rozhodovaci stromy

Historie

• Vznik koncem 70. let

• Ross Quinlan:1986 – ID31993 – C4.5

• 1995 - Random Forest

Page 6: Aleternativni rozhodovaci stromy

Obecný algoritmus

– Zvol jeden atribut jako kořen dílčího stromu– Rozděl data v tomto uzlu na podmnožiny podle

hodnot a přidej uzel pro každou podmnožinu– Opakuj dokud je co rozdělovat

Výběr atributu záleží na zvoleném algoritmu, často se používá entropie/informační zisk.

Page 7: Aleternativni rozhodovaci stromy

Limity rozhodovacích stromů

• Učení optimálního rozhodovacího stromu je NP-úplný problém => je třeba využít heuristických algoritmů k nalezení lokálního optima pro každý uzel.

• Generování vede k přeučení (overfitting). Je třeba provádět prořezávání.

• Existují koncepty, které jsou složité pro učení rozhodovacích stromů (např. XOR), vznikají složité stromy.

Page 8: Aleternativni rozhodovaci stromy

Benchmark

http://videolectures.net/mlas06_cohen_tc/

Dataset: Reuters-21578 newswire stories9603 train, 3299 test documents, 80-100 words each, 93 classes

Page 9: Aleternativni rozhodovaci stromy

Alternativní metody

Page 10: Aleternativni rozhodovaci stromy

Leo Breiman

• 1928 – 2005 • University of California, Berkeley• Výzkum rozhodovacíh a regresních stromů• Bagging + Random Forest

Page 11: Aleternativni rozhodovaci stromy

Bagging

Bootstrap aggregating• Z trénovacích dat vytvoříme N stejně velkých

podmnožin pomocí náhodného výběru s opakováním (= jedna trénovací položka může být vložena vícekrát).

• Na těchto podmnožinách necháme naučit N rozhodovacích stromů.

• Při klasifikaci hlasují o výsledku.

Page 12: Aleternativni rozhodovaci stromy

Boosting

• Iterativně vytváříme nové modely• Každý nový model se zaměřuje na příklady,

které se nepodařilo správně klasifikovat• Výsledkem iterace vzniká pouze jeden strom

Známý algoritmus AdaBoost (Shapire, 1999)

Page 13: Aleternativni rozhodovaci stromy

Random Forest

• Kombinace baggingu a náhodného výběru parametrů

• Stromy se neprořezávají• Zvládá datové soubory s velkým množstvím

parametrů a učení je velmi rychlé• Nevýhoda: overfitting, nepříliš velká

úspěšnost pro data s šumem

Page 14: Aleternativni rozhodovaci stromy

Genetické Stromy

• Náhodně vytvoříme množinu minimálních stromů

• Podle výsledku testu vybíráme nejlepší stromy, které rozrůstáme, mutujeme a křížíme

• Opakujeme dokud nezískáme uspokojivý klasifikátor

Jakub Gajarský, 2009: Efektívne algoritmy pre učenie rozhodovacích stromov

Page 15: Aleternativni rozhodovaci stromy

Proudy dat

Page 16: Aleternativni rozhodovaci stromy

Typický Přístup k Datům v ML

• Máme množinu učících příkladů uloženou v paměti či v jiném uložišti.

• Jednotlivé algoritmy mají přístup k těmto datům opakovaně.

Příklad: C4.5 opakovaně načítá data a hledá, který parametr nejlépe rozdělí množinu.

Page 17: Aleternativni rozhodovaci stromy

Proudy dat

• Proud dat je sekvence jednotlivých příkladů, kde každý příklad může být čten pouze jednou či po nějaký (krátký) časový úsek

• Motivace: potřebujeme jednotlivé případy zpracovávat rychle

• Příklady: bankovní či telefonické transakce, sensorové sítě, síťové logy

Page 18: Aleternativni rozhodovaci stromy

Swarm Trees

Page 19: Aleternativni rozhodovaci stromy

Very Fast Decission Tree

• Algoritmus na učení rozhodovacích stromů z proudů dat

• Využívá Hoeffdingovo ohraničení: určuje kolik příkladů je potřeba výběr nejlepšího atributu

• Horší účinnost než jiné metody: potřeba použít na velkých datasetech → množství dat vždy překoná kvalitu algoritmu (Norvig)

Page 20: Aleternativni rozhodovaci stromy

Distribuované učení

• Učení: vytvořím N VFDT klasifikátorů a ty pak spustím na jednotlivých podstreamech

• Klasifikace: "obešlu" všechny klasifikátory a ty hlasují o výsledné třídě

Page 21: Aleternativni rozhodovaci stromy

Swarm Inteligence

• Inspirováno přírodními koloniemi (např. mravenci, včely) či obecně genetickými algoritmy

• V množině VFDT stromů se snažím vytvářet co nejvíce nehomogení společnost: odstraňuji podobné stromy, čímž podporuju pokrývání celého stavového prostoru


Recommended