Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Rozhodovací stromy. mnohoúrovňový systém –třídy jsou postupně zamítány, dokud nedosáhneme přijatelné třídy –na konci dosáhneme stavu, kdy příznakový prostor.

Podobné prezentace


Prezentace na téma: "Rozhodovací stromy. mnohoúrovňový systém –třídy jsou postupně zamítány, dokud nedosáhneme přijatelné třídy –na konci dosáhneme stavu, kdy příznakový prostor."— Transkript prezentace:

1 Rozhodovací stromy

2 mnohoúrovňový systém –třídy jsou postupně zamítány, dokud nedosáhneme přijatelné třídy –na konci dosáhneme stavu, kdy příznakový prostor je sekvenčně rozdělen do oblastí, které odpovídají jednotlivým třídám –pro předložený „neznámý“ příznakový vektor, hledáme oblast, kam bude vektor zařazen pomocí posloupnosti rozhodnutí ve stromové struktuře stromové schéma je výhodné pro velké množství tříd nejpopulárnější jsou obecné binární rozhodovací stromy (OBCT = ordinary binary classification trees) –rozdělují prostor do mnohoúhelníků, které mají strany rovnoběžné s osami –posloupnost rozhodnutí je aplikována na jednotlivé příznaky –rozhodování probíhá podle dotazů ve tvaru „je příznak x i ≤α?“

3 Binární klasifikační stromy – ilustrační příklad postupným dělením prostoru vytvoříme oblasti, které odpovídají jednotlivým třídám: odpovídající binární strom:

4 Binární klasifikační stromy – ilustrační příklad úloha rozděluje 2-dimenzionální prostor –prahy, které určují „řezy“ v jednotlivých uzlech stromu, byly zjištěny pozorováním problému => tento postup není možné použít pro vyšší dimenze odpovídající binární strom může klasifikovat vektor, aniž by testoval všechny příznaky klasifikace provedena jen základě hodnoty prvního příznaku

5 Binární klasifikační stromy – vlastnosti během trénovací fáze (výstavba stromu) musíme brát v úvahu –každý uzel t má svoji trénovací množinu X t (X t ⊆ X) kořen stromu pracuje s celou trénovací množinou X –v každém uzlu máme k dispozici množinu dotazů –každý dotaz odpovídá dělení uzlu do 2 synovských uzlů dělení uzlu je ekvivalentní dělení X t do dvou disjunktních podmnožin X tY a X tN v X tY jsou vektory z X t, na které jsme odpověděli „Yes“ pomocí dotazu v uzlu t v X tN jsou vektory z X t, na které jsme odpověděli „No“ pomocí dotazu v uzlu t pro každé dělení platí: X tY ∩ X tN = ø X tY ∪ X tN = X t –dělící kritérium musí být takové, aby vybralo nejlepší dělení z množiny kandidátů –ukončovací podmínka definuje, kdy bude uzel listem (a tedy nedojde k dělení uzlu) určuje výšku stromu ke každému listu je přiřazena jeho třída

6 Binární klasifikační stromy – množina dotazů pro OBCT stromy jsou dotazy ve tvaru „ je příznak x i ≤ α ?“ všechny možné prahové hodnoty α daného příznaku x i definují dělení množiny X t –teorie: když se α mění v intervalu Y α ⊆ R => je nutné položit nekonečně dotazů –praxe: uvažujeme jen konečně dotazů počet trénovacích vzorů v X je konečný (označme ho N) libovolný příznak x k (k=1,...,l) může nabývat nejvýše N t ≤ N různých hodnot (N t je kardinalita množiny X t ⊆ X) pro příznak x k můžeme použít prahové hodnoty α kn pro n=1,..., N tk (N tk ≤ N t ) kde α kn je prostřední hodnota mezi dvěma sousedními hodnotami x k v trénovací množině X => celkový počet možných dotazů v uzlu t je: - podle dělícího kritéria se v uzlu t vybere dotaz, který vede k nejlepšímu dělení množiny X t v uzlu t x1x1 x 2 α 11 α 12 α 21

7 Binární klasifikační stromy – dělící kritérium binární dělení uzlu t –vytvoří se dva synovské uzly t Y a t N podle odpovědi „Yes“/„No“ na dotaz v uzlu t –synům přísluší podmnožiny X tY a X tN –podle stromové struktury (od kořene k listu) každé dělení uzlu t musí vytvořit podmnožiny X tY a X tN, které jsou „více třídově homogenní“ než množina X t v uzlu t trénovací vzory v každé z nových podmnožin mají „vyšší preference pro danou třídu“ trénovací data v X t jsou stejnoměrněji distribuované mezi různými třídami –příklad: uvažujme 4 třídy a nechť vektory v X t jsou rozděleny mezi třídy se stejnou pravděpodobností když uzel t rozdělíme tak, že body z ω 1 a ω 2 vytvoří podmnožinu X tY a body z ω 3 a ω 4 vytvoří podmnožinu X tN => nové podmnožiny jsou více homogenní než X t... „čistší“ ve stromovém rozhodování cíl: –definovat míru, která určí „nečistotu“ uzlu –rozdělit uzel tak, aby celková „nečistota“ synů byla nižší ve srovnání s „nečistotou“ otce

8 Binární klasifikační stromy – dělící kritérium „nečistota“ uzlu: kde P(ω i |t) je pravděpodobnost, že vektor z množiny X t uzlu t spadne do třídy ω i (i=1,...,c) –definice odpovídá entropii spojené s množinou X t (Shannonova teorie informace) lze ukázat: –I(t) nabývá maxima, když všechny pravděpodobnosti jsou stejné 1/c... největší „nečistota“ –I(t) se blíží k 0, když pro jednu třídu platí P(ω i |t) =1 a pro ostatní je pravděpodobnosti nulová... nejmenší „nečistota“ v praxi pravděpodobnost odhadneme příslušnými poměry N t i / N t –N t i je počet vzorů v X t, které padnou do třídy ω i 0∙log 2 0 = 0

9 Binární klasifikační stromy – dělící kritérium po rozdělení uzlu do 2 synů: –N tY vzorů přísluší odpovědi „Yes“ (množina X tY ) –N tN vzorů přísluší odpovědi „No“ (množina X tN ) pokles „nečistoty“ uzlu je dán: –kde I(t Y ) a I(t N ) jsou „nečistoty“ uzlů t Y a t N cíl: –podle dané množiny vytvořit dotaz, který rozdělí uzel tak, aby došlo k největšímu poklesu „nečistoty“

10 Binární klasifikační stromy – ukončovací podmínka kdy ukončit dělení uzlu a prohlásit uzel za list? –použít prahovou hodnotu T uzel t nebude dělen, když maximum ∆I(t) přes všechny případné dělení uzlu t je menší než T –použít velikost X t uzel t nebude dělen, když kardinalita množiny X t je dostatečně malá –použít „čistotu“ množiny X t uzel t nebude dělen, když množina X t je „čistá“ (tj. ideálně všechny body patří k jediné třídě)

11 Binární klasifikační stromy – přiřazení listu ke třídě když uzel prohlásíme za list => list dostane „značku“ třídy nejčastěji používané pravidlo: –list t dostane značku třídy ω i když –tedy list t dostane značku podle nejvíce zastoupené třídy v X t

12 Binární klasifikační stromy – algoritmus na vytvoření stromu začneme s kořenem X t = X pro každý nový uzel t –pro každý příznak x k (k=1,...,l) pro každou hodnotu α kn (n=1,...,N tk ) –generujeme X tY a X tN podle dotazu „je x k (i) ≤ α kn ?“ pro i=1,...,N t –spočteme pokles „nečistoty“ end vybereme α kn0, které vede k největšímu poklesu (s ohledem na příznak x k ) –end –vybereme x k0 a příslušné α k0n0, které vede k největšímu celkovému poklesu „nečistoty“ –když je splněno ukončovací kritérium => uzel t se stane listem a určime jeho třídu –když není splněno ukončovací kritérium => uzel t dělíme na 2 syny t Y a t N s příslušnými množinami X tY a X tN podle dotazu „je x k0 ≤ α k0n0 ?“ end

13 Binární klasifikační stromy – poznámky kritickým faktorem je velikost stromu –podobně jako u vícevrstvých perceptronů velikost stromu musí být dostatečně velká ale ne příliš velká (jinak nedojde k dobré generalizaci) –pokusy ukázaly, že použití prahové hodnoty jako ukončovací podmínky pro pokles „nečistoty“ nevede ke stromům se správnou velikostí buď dělení skončí příliš brzy nebo příliš pozdě –v praxi se často nechá vystavět velký strom a pak se použijí metody, které jej prořezají zatím jsme pracovali s obyčejnými binárními klasifikačními stromy –lze zobecnit budeme dělit prostor pomocí nadrovin, které nejsou rovnoběžné s osami dotazy budou mít tvar: „ je ∑c k x k ≤α ?“ dojde k lepšímu dělení příznakového prostoru

14 Binární klasifikační stromy – příklad nechť X t u uzlu t má N t = 10 vzorů –4 patří do třídy ω 1 –4 patří do třídy ω 2 –2 patří do třídy ω 3 rozdělením uzlu t dostaneme množiny X tY a X tN –X tY má vzory: 3 vzory z ω 1 1 vzory z ω 2 –X tN má vzory: 1 vzory z ω 1 3 vzory z ω 2 2 vzory z ω 3 spočtěte pokles „čistoty“ pro toto dělení uzlu

15 Binární klasifikační stromy – řešení příkladu zadání –X t : 4 vzory z ω 1 4 vzory z ω 2 2 vzory z ω 3 řešení –X tY : 3 vzory z ω 1 1 vzory z ω 2 –X tN : 1 vzory z ω 1 3 vzory z ω 2 2 vzory z ω 3


Stáhnout ppt "Rozhodovací stromy. mnohoúrovňový systém –třídy jsou postupně zamítány, dokud nedosáhneme přijatelné třídy –na konci dosáhneme stavu, kdy příznakový prostor."

Podobné prezentace


Reklamy Google