slajdy - Sorry
Transkript
Dobývání znalostí z databází T7: rozhodovací pravidla Rozhodovací pravidla Úloha klasifikace příkladů do tříd. pravidlo Ant C, kde Ant je konjunkce hodnot atributů a C je cílový atribut A. Algoritmus pokrývání množin metoda separate and conquer (odděl a panuj) hledáme hypotézy, které pokrývají příklady téže třídy a oddělují je od příkladů třídy jiné. Algoritmus pokrývání množin 1. najdi pravidlo, které pokrývá nějaké pozitivní příklady a žádný negativní, 2. odstraň pokryté příklady z trénovací množiny DTR, 3. pokud v DTR zbývají nějaké nepokryté pozitivní příklady, vrať se k bodu 1, jinak skonči. Rozšíření algoritmu pro více tříd: pro každou třídu C i se data rozdělí na příklady a protipříklady této třídy Rozšíření algoritmu pro práci s daty zatíženými šumem: v kroku 1 nepožadujeme, aby pravidlo pokrývalo příklady pouze jedné třídy P. Berka, 2011 1/22 Dobývání znalostí z databází T7: rozhodovací pravidla Základem algoritmu nalezení jednoho pravidla = učení jako prohledávání prostoru pravidel (hypotéz) 2 možnosti pohybu v prostoru hypotéz: zdola nahoru (AQ - Michalski, FindS - Mitchell) shora dolů (CN2 - Clark, Niblett, CN4 - Bruha) Pokrývání množin zdola nahoru: 1. vezmi jeden pozitivní příklad jako jádro (seed), 2. najdi jeho generalizaci, která pokrývá nějaké pozitivní příklady a žádný negativní. Pokrývání množin shora dolů: 1. vezmi pravidlo s prázdným předpokladem, 2. najdi jeho specializaci, která pokrývá nějaké pozitivní příklady a žádný negativní. P. Berka, 2011 2/22 Dobývání znalostí z databází T7: rozhodovací pravidla Pokrývání množin zdola nahoru klient k1 k2 k3 k4 k5 k6 k7 k8 k9 k10 k11 k12 příjem vysoký vysoký nízký nízký nízký nízký vysoký vysoký nízký vysoký nízký nízký konto vysoké vysoké nízké vysoké vysoké nízké nízké nízké střední střední střední střední pohlaví žena muž muž žena muž žena muž žena muž žena žena muž Nezaměstnaný ne ne ne ano ano ano ne ano ano ne ano ne úvěr ano ano ne ano ano ne ano ano ne ano ne ano (Neuspořádaná) pravidla nalezená algoritmem tedy budou: If konto(vysoké) then úvěr(ano) (k1, k2, k4, k5) If příjem(vysoký) then úvěr(ano) (k7, k8, k10) If konto(střední) nezaměstnaný(ne) then úvěr(ano) (k12) Klasifikace: nalezení prvního aplikovatelného pravidla P. Berka, 2011 3/22 Dobývání znalostí z databází T7: rozhodovací pravidla Rozhodovací pravidla „vybírají“ v prostoru atributů (mnoharozměrné) hranoly rovnoběžné s osami souřadné soustavy: P. Berka, 2011 4/22 Dobývání znalostí z databází T7: rozhodovací pravidla Rozhodovací seznam uspořádaný seznam pravidel If – then, Else if – then, Else if – then … Příklad: Systém CN2 [Clark, Nibblet, 1989], resp. CN4 [Bruha, Kočková, 1994] Pokrývání množin shora dolů (paralelní heuristické) funkce Search(Ant,DTR) 1. nechť Star je množina obsahující prázdnou kombinaci [ ] 2. nechť Ant je prázdná kombinace 3. nechť Sel je množina všech kategorií A(v) vyskytujících se v DTR 4. dokud Star je prázdné nebo dokud nebyly testovány všechny kategorie A(v) v Sel 4.1. nechť NewStar je prázdné 4.2. pro každou kombinaci Comb Star 4.2.1. proveď specializaci přidáním kategorie A(v) ze Sel 4.2.2. vyhodnoť kvalitu kombinace CombA = Comb A(v) pomocí funkce F(CombA) 4.2.3. zařaď kombinaci CombA do NewStar 4.3. pro každou kombinaci Comb NewStar 4.3.1. pokud Comb je (signifikantně) lepší než Ant, přiřaď Ant := Comb 4.4. pokud počet kombinací v NewStar překročí zadaný práh, vyhoď nejhorší kombinaci 4.5. přiřaď Star := NewStar P. Berka, 2011 5/22 Dobývání znalostí z databází T7: rozhodovací pravidla Nejlepší pravidlo (krok 4.2.2) se hledá na základě negativní entropie T F(Ant) = at at + b log2 at , at + b t=1 na základě Laplaceova odhadu očekávané spolehlivosti F(Ant) = at + 1 , at + b + T nebo na základě m-odhadu (m-prob) F(Ant) = at + m ft , at + b + m kde T je počet tříd, at je počet příkladů třídy t pokrytých pravidlem, at + b je počet všech příkladů pokrytých pravidlem, ft = (at + ct)/n je relativní četnost třídy t a m je parametr. Ant Ant C(vt) Ostatní třídy at b r ct d s kt l n Ve všech těchto případech vyšší hodnota znamená lepší pravidlo. P. Berka, 2011 6/22 Dobývání znalostí z databází T7: rozhodovací pravidla V případě neuspořádaných pravidel systém hledá pravidla pro jednotlivé třídy odděleně. Algoritmus CN4 – rozhodovací pravidla 1. nechť ListOfRules je prázdný seznam 2. pro každou třídu C(vt), t=1,..,T 2.1. dokud množina pozitivních příkladů této třídy DTRt není prázdná 2.1.1. pomocí funkce Search(Ant,DTRt) nalezni nejlepší kombinaci Ant 2.1.2. přiřaď DTRt := DTRt – DTRt(Ant), kde DTRt(Ant) jsou příklady pokryté kombinací Ant 2.1.3. do ListOfRules přidej pravidlo IF Ant THEN C(vt) V případě uspořádaných pravidel (rozhodovacího seznamu) se hledají pravidla ke všem třídám najednou Algoritmus CN4 – rozhodovací seznam 1. nechť ListOfRules je prázdný seznam 2. dokud trénovací množina DTR není prázdná 2.1. pomocí funkce Search(Ant,DTR) nalezni nejlepší kombinaci Ant 2.2. přiřaď DTR := DTR – DTR(Ant), kde DTR(Ant) jsou příklady pokryté kombinací Ant 2.3. do ListOfRules přidej pravidlo IF Ant THEN C, kde C je majoritní třída příkladů v DTR(Ant) P. Berka, 2011 7/22 Dobývání znalostí z databází T7: rozhodovací pravidla if příjem=vysoký then class is ano; Kr=[ 5 0]; signif=5.850; quality=0.925; cost=1 if konto=vysoké then class is ano; Kr=[ 4 0]; signif=4.680; quality=0.900; cost=1 if příjem=nízký && konto=nízké then class is ne; Kr=[ 0 2]; signif=6.340; quality=0.900; cost=2 if konto=střední && nezaměstnaný=ano then class is ne; Kr=[ 0 2]; signif=6.340; quality=0.900; cost=2 if konto=střední && nezaměstnaný=ne then class is ano; Kr=[ 2 0]; signif=2.340; quality=0.850; cost=2 if true then class is ano; Kr=[ 8 4]; signif=0.000; quality=0.733; cost=0 (neuspořádaná) Rozhodovací pravidla if příjem=vysoký then class is ano; Kr=[ 5 0]; signif=5.850; quality=0.925; cost=1 else if konto=vysoké then class is ano; Kr=[ 2 0]; signif=2.340; quality=0.850; cost=1 else if nezaměstnaný=ano then class is ne; Kr=[ 0 3]; signif=9.510; quality=0.950; cost=1 else if konto=střední then class is ano; Kr=[ 1 0]; signif=1.170; quality=0.825; cost=0 else if true then class is ne; Kr=[ 0 1]; signif=3.170; quality=0.850; cost=0 (uspořádaný) Rozhodovací seznam P. Berka, 2011 8/22 Dobývání znalostí z databází T7: rozhodovací pravidla Implementované algoritmy (weka) PART – pokrývání množin založené na částečných rozhodovacích stromech, z dat se vytvoří prořezaný strom a pro list s největším pokrytím se vytvoří jedno pravidlo (Frank, Witten, 1998) Prism – pokrývání množin shora dolů, hledají se pravidla s přesností rovnou 1 (Cendrowska, 1987) P. Berka, 2011 9/22 Dobývání znalostí z databází T7: rozhodovací pravidla JRip (RIPPER) – pokrývání množin shora dolů po kterém následuje prořezávání pravidel (Cohen, 1995) Ridor – pokrývání množin shora dolů, hledají se if-true a if-false pravidla, která nemusí mít spolehlivost rovnou 1 (Gaines, Compton, 1995) P. Berka, 2011 10/22 Dobývání znalostí z databází T7: rozhodovací pravidla B. Pravděpodobnostní pravidla Pravidla doplněná neurčitostí ITRule (Goodman, Smyth, 1989) pravidla Ant C (p), kde Ant je předpoklad (konjunkce hodnot atributů), C je závěr (hodnota atributu), p je podmíněná pravděpodobnost cíle, nastane-li a předpoklad, tedy hodnota počítaná ze čtyřpolní a+b tabulky. P. Berka, 2011 11/22 Dobývání znalostí z databází T7: rozhodovací pravidla ESOD (Ivánek, Stejskal, 1988) pravidla Ant C (w), kde Ant je kombinace (konjunkce) hodnot atributů C je atribut, nebo konjunkce hodnot atributů, která nese informaci o zařazení objektu do třídy, w z intervalu [0,1] je váha vyjadřující neurčitost pravidla. platnost pravidla P(C|Ant) = a/(a+b) (ze čtyřpolní tabulky) Inferenční mechanismus Přímé řetězení pravidel za použití pseudobayesovské kombinační funkce x y x*y x*y (1 x ) * (1 y) Získávání znalostí zpřesňování a zjemňování již existujících znalostí (knowledge refinement) postupem shora dolů (počínaje prázdným vztahem). vložit pravidlo s platností, kterou nelze odvodit z báze znalostí, P. Berka, 2011 12/22 Dobývání znalostí z databází T7: rozhodovací pravidla např. 7a11a ==> 1+ C non C Ant 11 14 non Ant c d 11a 7a ==> 1+ (0.6800) ==> 1+ (0.2720) ==> 1+ (0.3052) čtyřpolní tabulka pravidla 11 platnost = = 0.44 11+14 naskládaná váha = 0.2586 platnost a naskládaná váha se od sebe liší (dle 2 testu) 7a11a ==> 1+ je pravidlo s vahou w takovou, že w 0.2586 0.44 , tedy w = 0.6926. w u 1 u u , P (C | Ant ) 1 P (C | Ant ) cw(C , Ant ) 1 cw(C , Ant ) První verze algoritmu ([Ivánek, Stejskal, 1988]) předpokládala: pouze kategoriální data, zařazení objektů do dvou tříd (příklady a protipříklady). P. Berka, 2011 13/22 Dobývání znalostí z databází T7: rozhodovací pravidla Algoritmus ESOD Inicializace 1. vytvoř CAT - seznam kategorií A(v) uspořádaný sestupně dle četnosti 2. vytvoř OPEN - seznam implikací A(v) C uspořádaný sestupně dle četnosti levé strany implikace 3. přiřaď do KB prázdné pravidlo C (w), kde w je relativní četnost třídy C v datech Hlavní cyklus 1. Dokud OPEN není prázdný seznam 1.1. vezmi první implikaci ze seznamu OPEN (označ ji Ant C) 1.2. spočítej platnost této implikace P(C|Ant) 1.3. pokud P(C|Ant) Pmin P(C|Ant) (1 - Pmin) potom 1.3.1.spočítej pomocí kombinační funkce váhu cw(C,Ant) naskládanou z vah pravidel v bázi KB aplikovatelných na Ant 1.3.2.pokud se platnost implikace P(C|Ant) signifikantně liší (na základě 2 testu) od naskládané váhy cw(C,Ant) potom 1.3.2.1. přidej do KB pravidlo Ant C (w), kde w cw(C,Ant) = P(C|Ant) 1.4. pokud délka(A) dmax 1.4.1. pro každé A(v) ze seznamu CAT takové, že A(v) je v CAT před všemi hodnotami atributů z COMB (Tedy platí, že četnost A(v) je větší nebo rovna četnosti COMB) 1.4.2.pokud se atribut A nevyskytuje v COMB potom 1.4.2.1. generuj novou kombinaci COMB A(v) 1.4.2.2. přidej COMB A(v) do seznamu OPEN za poslední kombinaci C takovou, že četnost(C) četnost(COMB A(v)) 1.5. odstraň COMB ze seznamu OPEN P. Berka, 2011 14/22 Dobývání znalostí z databází T7: rozhodovací pravidla Modifikace pro více tříd Váha = 0.5 odpovídá platnosti 1/R kde R je počet tříd modifikace algoritmu: váha prázdného vztahu je relativní četnosti převedené na váhu (krok 3 inicializace), 2 testu vstupuje platnost implikace a naskládaná váha převedená na platnost (krok 1.3.2 hlavního cyklu), do váha pravidla se spočítá ze vztahu w cw(C,Ant) = P’(C|Ant), kde P’(C|Ant) je platnost převedená na váhu (krok 1.3.2.1 hlavního cyklu). P. Berka, 2011 15/22 Dobývání znalostí z databází T7: rozhodovací pravidla Implementace algoritmu KEX v systému LISp-Miner Uvedená pravidla odpovídají zadání dmax = 4, fmin = 1 a Pmin = 0.9. Strategie volby parametrů: plná analýza (dmax = počet všech atributů, které se nevyskytují v cíli, fmin = 1, Pmin = 0), minimální analýza (dmax = 1, fmin = 1, Pmin = 0), analýza "bez šumu" (Pmin = 100); toto zadání znamená, že se do báze zařadí pouze 100% vztahy. P. Berka, 2011 16/22 Dobývání znalostí z databází T7: rozhodovací pravidla Práh pro provedení klasifikace: je-li výsledná váha > , pak příklad patří do třídy je-li výsledná váha < 1- , pak příklad nepatří do třídy je-li výsledná váha [1- , ], pak nelze rozhodnout Prediction performance of the KEX system # of classified cases by the KEX system 250 97 200 # classified cases prediction accuracy (%) 99 95 93 91 89 150 100 50 87 85 0 0.4 0.6 0.8 1 0.4 alpha 0.6 0.8 1 alpha Rozdíl oproti algoritmům pokrývání množin: 1. je potřeba dostatečný počet příkladů, 2. pro jeden příklad lze nalézt více použitelných pravidel, 3. v bázi pravidel se může objevit pravidlo i jeho specializace, 4. při konzultaci může systém pro jeden příklad doporučit více cílů. P. Berka, 2011 17/22 Dobývání znalostí z databází T7: rozhodovací pravidla Numerické atributy Příklad CN4 (On-line diskretizace v průběhu učení) Algoritmus SetBounds(a) 1. nechť PoleMezí je prázdné 2. pro každou hodnotu vj atributu a 2.1. spočítej pro každou třídu Cr (r=1,..,R) četnosti Dlevár, (Dpravár) hodnot v takových, že v vj (v vj) 2.2. spočítej hodnotu funkce Hlevá(vj) pro případ, že vj je potenciální horní mez, tedy že a vj bude selektor 2.3. spočítej hodnotu funkce Hpravá(vj) pro případ, že vj je potenciální dolní mez, tedy že a vj bude selektor 3. pro každou hodnotu vj atributu a 3.1. pokud Hlevá(vj) je nerostoucí lokální maximum, tedy Hlevá(vj-1) Hlevá(vj) Hlevá(vj+1) přidej selektor a vj do PoleMezí v pořadí podle hodnoty Hlevá(vj) 3.2. pokud Hpravá(vj) je neklesající lokální maximum, tedy Hpravá(vj-1) Hpravá(vj) Hpravá(vj+1) přidej selektor a vj do PoleMezí v pořadí podle hodnoty Hpravá(vj) 4. pro každou dvojci hodnot v1 , v2 PoleMezí 4.1. spočítej pro každou třídu Cr četnost Dr hodnot v takových, že v1 v v2 4.2. spočítej hodnotu funkce H(v1,v2) pro četnosti Dr 4.3. přidej selektor v a v2 do PoleMezí v pořadí podle hodnoty H(v1,v2) P. Berka, 2011 18/22 Dobývání znalostí z databází T7: rozhodovací pravidla Příklad: 7 pozitivních příkladů (s hodnotami 45, 46, 50, 50, 100, 100, 120), 5 negativních příkladů (s hodnotami 51, 51, 51, 99, 99). entropie 0 horni meze dolni meze ww <= 50 ww > 99 ww > 50 -0.95 --0.99 --1 45 | 46 | 50 | 51 | 99 | 100 | 120 ww Lokální maxima entropie pro diskretizaci 50<ww<=99; entropy=0.000; maxfreq=5 ww<=50; entropy=0.000; maxfreq=4 ww>99; entropy=0.000; maxfreq=3 45<ww<=50; entropy=0.000; maxfreq=3 ww>50; entropy=-0.954; maxfreq=5 45<ww<=99; entropy=-0.954; maxfreq=5 ww>45; entropy=-0.994; maxfreq=6 P. Berka, 2011 19/22 Dobývání znalostí z databází T7: rozhodovací pravidla Numerické třídy Příklad CN4 pravidla Ant avgA(C), MvarA(C) kde Ant je předpoklad (konjunkce hodnot atributů), avgA(C) je průměrná hodnota cílového atributu, MvarA(C) je rozptyl tohoto průměru P. Berka, 2011 20/22 Dobývání znalostí z databází T7: rozhodovací pravidla Chybějící hodnoty Příklad CN4 1) ignoruje příklad s nějakou chybějící hodnotou, 2) nahradí chybějící hodnotu novou hodnotou „nevím“, 3) nahradí chybějící hodnotu některou z existujících hodnot atributu a sice: a) nejčetnější hodnotou, b) proporcionálním podílem všech hodnot, c) libovolnou hodnotou. P. Berka, 2011 21/22 Dobývání znalostí z databází T7: rozhodovací pravidla Hierarchie hodnot atributů příklad pro algoritmus ESOD (Svátek 1996) Hierarchie vstupních atributů any vlastní vlastní dům družstevní nájemní Nájemní byt státní vlastní byt Nájemní byt s majitelem Hierarchie tříd any nestanovena stanovena imunní neinfikován P. Berka, 2011 neimunní infikován 22/22
Podobné dokumenty
Rozhodovací stromy
4. parametr M vyjadřující podíl mutací má hodnotu 0.001,
5. použitý operátor křížení je rozšířením výše uvedeného
dvoubodového křížení; provedené rozšíření umožňuje
5.3 Rozhodovací pravidla
Tak se může stát, že se k jednomu příkladu naleznou pravidla, která by jej řadila k různým třídám.
Tento spor lze řešit hlasování aplikovatelných pravidel.
Algoritmus CN4 – rozhodovací pravidla
1. ...
Markstrat
Výchozí podmínky ....................................................................................................................................3
Situace .........................................
Zvládání mastitidy způsobené St. aureem u skotu
Jsou-li ve čtvrtích vemene nebo u krav
identifikovány bakterie S. aureus, měly by být
odebrány vzorky celého stáda (poté by mělo
následovat odebrání vzorků z nedojících krav,
po jejich otelení), a ...
8. Systémy pro dobývání znalostí z databází
založených na metodách strojového učení (rozhodovací stromy, asociační pravidla, regresní stromy,
shluková analýza), prostředky pro spolupráci s databázemi a pro snadnou integraci do zákaznických
ř...
Dvojrozměrná frekvenční a směrová filtrace
Z předchozí kapitoly víme, že šum se projevuje jako vysoké frekvence. Ve spektru
(obr. 3.3.9) vidíme dvě „soustředné kružniceÿ. Ta vnitřní představuje námi hledaný
signál a ta vnější šum. Pro odstr...
Problematika směrování
= Pro směrování není identifikátor počítače zajímavý údaj, jakmile směrovače
dopraví paket na okraj cílové sítě, o zbytek se postará L2 protokol
= Jedna IP síť je jedna broadcastová doména
= Všechn...