DATA MINING KLASIFIKACE DMINA LS 2009/2010



Podobné dokumenty
Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

Rozhodovací stromy a jejich konstrukce z dat

Vytěžování znalostí z dat

ANALÝZA A KLASIFIKACE DAT

jedna hrana pro každou možnou hodnotu tohoto atributu; listy jsou označeny předpokládanou hodnotou cílového atributu Atribut Outlook

Pravděpodobně skoro správné. PAC učení 1

Katedra kybernetiky laboratoř Inteligentní Datové Analýzy (IDA) Katedra počítačů, Computational Intelligence Group

Rozhodovací stromy a jejich konstrukce z dat

Testování modelů a jejich výsledků. Jak moc můžeme věřit tomu, co jsme se naučili?

Informační systémy pro podporu rozhodování

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

Změkčování hranic v klasifikačních stromech

přetrénování = ztráta schopnosti generalizovat vlivem přílišného zaměření klasifikátorů na rozeznávání pouze konkrétních trénovacích dat

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

Stromy. Strom: souvislý graf bez kružnic využití: počítačová grafika seznam objektů efektivní vyhledávání výpočetní stromy rozhodovací stromy

Univerzita Karlova v Praze Matematicko-fyzikální fakulta DIPLOMOVÁ PRÁCE. Jiří Vitinger. Rozhodovací stromy a extrakce znalostí

Ing. Petr Hájek, Ph.D. Podpora přednášky kurzu Aplikace umělé inteligence

Testování modelů a jejich výsledků. Jak moc můžeme věřit tomu, co jsme se naučili?

Moderní systémy pro získávání znalostí z informací a dat

ZÍSKÁVÁNÍ ZNALOSTÍ Z DATABÁZÍ

Velmi stručný úvod do použití systému WEKA pro Data Mining (Jan Žižka, ÚI PEF)

Kybernetika a umělá inteligence, cvičení 10/11

Testování modelů a jejich výsledků. tomu, co jsme se naučili?

ZÍSKÁVÁNÍ ZNALOSTÍ Z DATABÁZÍ

RNDr. Eva Janoušová doc. RNDr. Ladislav Dušek, Dr.

Statistická teorie učení

Základní datové struktury III: Stromy, haldy

Strojové učení Marta Vomlelová

Předzpracování dat. Lenka Vysloužilová

Automatické vyhledávání informace a znalosti v elektronických textových datech

Stromy, haldy, prioritní fronty

Připomeň: Shluková analýza

Algoritmy a struktury neuropočítačů ASN P9 SVM Support vector machines Support vector networks (Algoritmus podpůrných vektorů)

Výpočetní teorie strojového učení a pravděpodobně skoro správné (PAC) učení. PAC učení 1

UČENÍ BEZ UČITELE. Václav Hlaváč

Vojtěch Franc. Biometrie ZS Poděkování Janu Šochmanovi za slajdy vysvětlující AdaBoost

Učící se klasifikátory obrazu v průmyslu

Rozhodovací stromy a lesy

Ochutnávka strojového učení

Trénování sítě pomocí učení s učitelem

Vytěžování znalostí z dat

Reprezentace aritmetického výrazu - binární strom reprezentující aritmetický výraz

Učení z klasifikovaných dat

Hodnocení klasifikátoru Test nezávislosti. 14. prosinec Rozvoj aplikačního potenciálu (RAPlus) CZ.1.07/2.4.00/

NP-ÚPLNÉ PROBLÉMY. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze

Projekční algoritmus. Urychlení evolučních algoritmů pomocí regresních stromů a jejich zobecnění. Jan Klíma

Usuzování za neurčitosti

IBM SPSS Decision Trees

2 Strukturované datové typy Pole Záznam Množina... 4

Analytické procedury v systému LISp-Miner

Miroslav Čepek. Fakulta Elektrotechnická, ČVUT. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Rozhodovací pravidla

Rozhodovací stromy. Úloha klasifikace objektů do tříd. Top down induction of decision trees (TDIDT) - metoda divide and conquer (rozděl a panuj)

Získávání znalostí z dat

5.1 Rozhodovací stromy

Vytěžování znalostí z dat

Úloha - rozpoznávání číslic

Obsah přednášky Jaká asi bude chyba modelu na nových datech?

Dolování asociačních pravidel

Lineární klasifikátory

Martin Milata, Pokud je alespoň jeden rozměr čokolády sudý (s výjimkou tabulky velikosti 1x2, která už je od

IB111 Úvod do programování skrze Python

Výpočetní teorie učení. PAC učení. VC dimenze.

Katedra kybernetiky skupina Inteligentní Datové Analýzy (IDA) 9. ledna 2017

Algoritmizace Dynamické programování. Jiří Vyskočil, Marko Genyg-Berezovskyj 2010

Grafy. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 13.

Rekurzivní algoritmy

ALGORITMY A DATOVÉ STRUKTURY

Základy vytěžování dat

Vytěžování znalostí z dat

1. Data mining. Strojové učení. Základní úlohy.

1. Převeďte dané číslo do dvojkové, osmičkové a šestnáctkové soustavy: a) b)

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21.

Unární je také spojka negace. pro je operace binární - příkladem může být funkce se signaturou. Binární je velká většina logických spojek

Státnice odborné č. 20

Katedra kybernetiky, FEL, ČVUT v Praze.

6. Tahy / Kostry / Nejkratší cesty

Sémantika výrokové logiky. Alena Gollová Výroková logika 1/23

Credit scoring. Libor Vajbar Analytik řízení rizik. 18. dubna Brno

Úvod do teorie her

Pravidlové znalostní systémy

Vyhodnocování dotazů slajdy k přednášce NDBI001. Jaroslav Pokorný MFF UK, Praha

5 Rekurze a zásobník. Rekurzivní volání metody

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 12.

3. Třídy P a NP. Model výpočtu: Turingův stroj Rozhodovací problémy: třídy P a NP Optimalizační problémy: třídy PO a NPO MI-PAA

Vojtěch Franc Centrum strojového vnímání, Katedra kybernetiky, FEL ČVUT v Praze Eyedea Recognition s.r.o MLMU

2019/03/31 17:38 1/2 Klasifikační a regresní stromy

AVDAT Mnohorozměrné metody, metody klasifikace Shluková analýza

DobSort. Úvod do programování. DobSort Implementace 1/3. DobSort Implementace 2/3. DobSort - Příklad. DobSort Implementace 3/3

Zadání a řešení testu z matematiky a zpráva o výsledcích přijímacího řízení do magisterského navazujícího studia od jara 2016

Pravděpodobnost v závislosti na proměnné x je zde modelován pomocí logistického modelu. exp x. x x x. log 1

Genetické programování

ZLOMKY. Standardy: M CELÁ A RACIONÁLNÍ ČÍSLA. Záporná celá čísla Racionální čísla Absolutní hodnota Početní operace s racionálními čísly

4.2 Syntaxe predikátové logiky

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

Modely Herbrandovské interpretace

Středoškolská technika SCI-Lab

Vytěžování znalostí z dat

Jana Vránová, 3. lékařská fakulta, UK Praha

Základy algoritmizace c2005, 2007 Michal Krátký, Jiří Dvorský1/39

Transkript:

DATA MINING KLASIFIKACE DMINA LS 2009/2010

Osnova co je to klasifikace typy klasifikátoru typy výstupu jednoduchý klasifikátor (1R) rozhodovací stromy

Klasifikace (ohodnocení) zařazuje data do předdefinovaných skupin tříd učení s učitelem algoritmus se učí charakteristiku tříd na trénovací množině na datech, pro které známe jejich příslušnost ke skupinám

Příklady rozpoznávání vzorů diagnostikování rozhodování o udělení úvěrů detekovaní chyb v aplikacích klasifikace finančních a obchodních trendů

x 2 : výkon Příklad Třída "rodinné auto" cíl - predikování: Je auto x rodinným autem? naučit se rozlišovat vzor "rodinné auto" jaké vlastnosti má mít? trénovací množina: pozitivní a gativní příklady atributy x 1 : cena x 2 : výkon y = 1 pokud x je pozitivní příklad 0 pokud x je gativní příklad x 1 : cena

Definice množina dat D = {d 1,..., d n } množina tříd C = {C 1,..., C m } klasifikační problém definovat zobrazení f: D C, kde pro každé d i je definovaná právě jediná třída. Třída C j obsahuje právě ty prvky, které se pomocí funkce f zobrazí do této třídy, tj. C j = {d i f(d i ) = C j, pro všechna d i D}

Fáze klasifikace vytvoření modelu na základě trénovací množiny aplikace modelu na klasifikování dat, které byly v trénovací množině learning data model testing data

x 2 : výkon Příklad - pokračování třída T: (c 1 cena c 2 ) AND (v 1 výkon v 2 ) v 2 T v 1 c 1 c 2 x 1 : cena

x 2 : výkon Příklad - pokračování třída T: (c 1 cena c 2 ) AND (v 1 výkon v 2 ) jobecnější hypotéza v 2 T jkonkrétnější hypotéza v 1 c 1 c 2 x 1 : cena prostor verzí

Modely a reprezentace znalostí rozhodovací stromy algoritmy na tvorbu rozhodovacích stromů (např. ID3, C4.5) klasifikační pravidla slučno rozhodovací stromy klasifikační pravidla jednoduchý algoritmus 1R např. if (x = 1) and (y = 0) then class = a počasí zataženo deštivo vlhkost větrno vysoká normální

Modely a reprezentace znalostí parametry modelů modely + parametry (statistické modely, uronové sítě) výška pohlaví malý střední vzrůst vysoký reprezentace založená na instancích učení založené na vzdálenostech (k-arest ighbour)

Vyhodnocování modelů výkon trénování na trénovací množině vyhodnocování pomocí dat z testovací množiny

x 2 : výkon motoru Klasifikace příklad (pokračování) h(x) = 1 pokud x je pozitivní příklad 0 pokud je x gativní příklad falešně pozitivní e 2 C falešně gativní Chyba h e 1 E ( h T ) 1 N t N 1 ( h( x t ) r t ) p 1 p 2 x 1 : cena

Výsledky pro problém s 2 třídami Skutečná třída Ano Ne Predikovaná třída true positive (TP) false positive (FP) false gative (FN) true gative (TN)

Výsledky pro problém s 2 třídami true positive rate tp TP TP FN false positive rate fp FP FP TN celková úspěšnost accuracy = TP TP TN TN FP FN sensitivity = tp specificity = 1 - fp FP TN TN

x 2 : výkon motoru Složitost modelů angl. model complexity e 2 C Používání jednodušších modelů jednodušší použití (menší výpočetní složitost) jednodušší trénování (menší prostorová složitost) snáze pochopitelné (lepší interpretace) lepší schopnost geralizace (Occamova břitva) e 1 p 1 p 2 x 1 : cena C: (p 1 cena p 2 ) AND (e 1 výkon motoru e 2 )

Occamova břitva Occam's razor Anglický františkánský mnich William Occam (Ockham) vysvětlení libovolného fenoménu by mělo používat co jméně předpokladů eliminovat ("oholit") ty, které mění predikce proměnných v hypotéze bo teorii vysvětlující nějaký fenomén Pokud jsou všechny věci stejné, jednodušší řešení je lepší." = pokud existuje několik konkurujících si teorií rovnocenných v ostatních ohledech, princip doporučuje volit teorii, která zavádí méně předpokladů výsledkem jsou méně hypotetické (jednodušší) entity

Inference jednoduchých pravidel 1R 1R (1 rule) - jednoduchá klasifikace instancí rozhodnutí na základě jednoho atributu postup: pro všechny atributy vytvoření množiny pravidel tak, že každé pravidlo zodpovídá jedné hodnotě atributu přiřazení té třídy, která se pro du hodnotu atributu jčastěji vyskytuje vypočítaní error rate (1-accurracy) výběr stromu s jmenším error rate

Příklad: Rozhodnutí, zda jít hrát golf? Počasí Teplota Vlhkost Větrno Hrát? slučno horko vysoká slučno horko vysoká zataženo horko vysoká deštivo akorát vysoká deštivo chladno normální deštivo chladno normální zataženo chladno normální slučno akorát vysoká slučno chladno normální deštivo akorát normální slučno akorát normální zataženo akorát vysoká zataženo horko normální deštivo akorát vysoká

1R: příklad Počasí Teplota Vlhkost Větrno Hrajeme? slučno horko vysoká slučno horko vysoká zataženo horko vysoká deštivo akorát vysoká deštivo chladno normální...... Atribut Pravidlo Chyba Celková chyba počasí slučno 2/5 4/14 zataženo 0/4 deštivo 2/5 teplota horko 2/4 5/14 akorát 2/6 chladno 1/4 vlhkost vysoká 3/7 4/14 normální 1/7 větrno 2/8 5/14 3/6

Chybějící hodnoty Záznamy s chybějícími hodnotami doplnit jako další hodnotu např. pro atribut počasí - hodnoty: slučno, zataženo, deštivo, uvedeno vypočítat dle jistých pravidel vychat záznam

Numerické hodnoty diskretizace např. teplota s číselnými hodnotami 18 18 20 20 21 22 22 22 24 24 27 27 28 29 a n a a a n n a a a n a a n a n a a a n n a a a n a a n vyhnout se přeučení aspoň 3 z 1 třídy v intervalu pokud následuje stejná hodnota, také přidat do intervalu

Vlastnosti výsledky studie z roku 1993 v porovnání se sofistikovanými přístupy mělo 1R poměrně dobré výsledky (srozumitelnější) diskretizace - aspoň 6 z 1 třídy

Rozhodovací stromy rozděl a panuj postup vyber atribut a umísti ho do kořenu vytvoř větve pro různé hodnoty atributů množina instancí se rozdělí na podmnožiny rekurzivně aplikuj postup pro každou větev

Rozhodovací stromy příklad s počasím slučno počasí zataženo deštivo vlhkost větrno vysoká normální vnitřní uzly listy větve atributy klasifikace hodnoty atributů, podmínky

Definice Je dána množina dat D = {d 1,..., d n }, kde d i = <d i1,..., d im > jsou hodnoty atributů {A 1,..., A m } jednotlivých instancí Rozhodovací strom pro množinu tříd C = {C 1,..., C m } je strom asociovaný s D mající následující vlastnosti: každý vnitřní uzel je označený atributem A k každá hrana je označená predikátem aplikovatelným na atribut asociovaný s rodičem každý list je označený třídou C j počasí slučno zataženo deštivo vlhkost větrno vysoká normální

Vlastnosti algoritmů pro tvorbu rozhodovacích stromů výběr atributů a pořadí jejich výběru abychom vytvářeli co jjednodušší stromy rozdělení pro vybraný atribut rozhodnout, jak rozdělit hodnoty (např. numerické hodnoty) stromová struktura tvorba vyvážených stromů, binárních stromů kritéria na zastavení jestliže dokonale modeluje trénovací data, může dojít k přeučení

Vlastnosti algoritmů pro tvorbu rozhodovacích stromů trénovací data příliš malá: strom musí byť správně určen příliš velká: strom může být přeurčený ořezávaní (angl. prunning) modifikace již zkonstruovaného stromu odstranění nadbytečných porovnávaní, odstranění podstromu pro dosažení lepších výsledků

Výběr atributů rozvětvení Algoritmus ID3 Snaha vytvářet co jjednodušší stromy měření vhodnosti výběru: informace množství informace informační zisk GINI index

Množství informace Příklad: Hra "Na co myslím?" otázka dítěte: "Je to míč?"; "Je to auto?", "Je to pes?" všechny možnosti rozdělí na 1 možnost a zbytek = vše 1 2 množiny s naprosto odlišnou kardinalitou otázka dospělého:"je to živé?" všechny možnosti rozdělí na 2 přibližně stejně velké množiny množstvo informace potřebné pro určení třídy pro daný atribut měřeno v bitech na rozdíl od klasické informatiky vyjadřujeme množství informace ve zlomcích bitů (obyčejně < 1)

Množství informace Vlastnosti míry: 1. pokud je počet bo počet je 0, hodnota je 0 2. pokud počet a je stejný, hodnota dosahuje maxima 3. míra má vlastnost vícestupňovosti rozdělení v stromu na 3 části je ekvivalentní rozdělení na 2 části a dále rozdělení jedné části na 2 x x 3 >3 3 >3 10 >10 x 10 >10

Množství informace entropie měří množství jistoty (překvapení, náhodnosti) v množině dat H ( p 1 1, H ( p, p p 2 2,...,,..., p p n n ) ) n i 1 n p i p log( 1 / i log p p i i ) 1 0,9 0,8 0,7 0,6 0,5 i 1 0,4 logaritmus se základem 2 0,3 0,2 0,1 0 0,05 0,15 0,25 0,35 0,45 0,55 0,65 0,75 0,85 0,95 H(p, 1-p)

Množství informace slučno počasí zataženo deštivo pro každou větev možného rozdělení info() v hranaté závorce: počty *, ] slučno: info([2,3]) H(2/5, 3/5) = 0.4 x log 0.4 0.6 x log 0.6 zamračeno: = 0.971 info([4,0]) H(4/4,0/4) = 1 x log 1 0 = 0 deštivo: info([3,2]) H(3/5,2/5) = 0.971 H ( p n n n i, p,..., p ) p log p p p log 1 2 n i i i i i 1 i 1 ln ln p 2 ln 1 2 i 1 p i

Průměrné množství informace průměrné množství informace pro uzel (atribut) množství informace pro jednotlivé větve vážené počtem instancí info(a) S p( D i )info ( D i ) i 1 pro rozdělení podle atributu a rozdělujícího D na {D 1,..., D S } Příklad: pokračování info(počasí) = (5/14) x 0.971 + (4/14) x 0 + (5/14) x 0.971 = 0.693

Informační zisk information gain zisk rozdělení představuje rozdíl mezi tím, kolik je třeba znát informací před a kolik po rozdělení Určuje se pro rozdělení podle atributu a rozdělujícího D na {D 1,..., D S } gain(a) info ( D ) S p( D i )info ( D i ) i 1 Spočítá se pro všechny atributy a vybere se atribut s jvyšším ziskem

Příklad pokračování gain(počasí) = info([9,5]) info([2,3],[4,0],[3,2]) = 0.247 info([9,5]) = ( 9/14) x log(9/14) 5/14 x log(5/14) = 0.940 info([2,3],[4,0],[3,2]) = 0.693 gain(teplota) = info([9,5]) info([3,1],[4,2],[2,2]) = 0.940 0.911 = 0.029 gain(vlhkost) = 0.152 gain(větrno) = 0.048 jako kořen stromu je vybrán atribut počasí chladno teplota akorát horko

Příklad pokračování určit další dělící atribut počasí slučno teplota zataženo deštivo chladno horko gain(teplota)=info([2,3])- info([1,0],[1,1],[0,2]) info([2,3]) = (2/5) x log(2/5) (3/5) x log(3/5)= 0.971 akorát H(1/1,0/1) = 1xlog1 0xlog0 = 0 H(1/2,1/2) = 0.5 x log0.5 0.5 x log0.5 = 1 H(0/2,2/2) = 0xlog0 1xlog1 = 0 info([1,0],[1,1],[0,2])=(1/5)x0 + (2/5)x1 + (2/5)x0 =0.4 gain(teplota) = 0.571

Příklad pokračování určit další dělící atribut počasí počasí slučno vlhkost deštivo zataženo slučno větrno deštivo zataženo vysoká normální gain(vlhkost)=info([2,3]) - info([0,3],[2,0]) info([2,3]) = 0.971 H(2/2,0/2) = 0 ; H(0/3,3/3) = 0 info([0,3],[2,0]) = 0 gain(vlhkost) = 0.971 gain(větrno)=info([2,3]) info([1,2],[1,1]) info([2,3]) = 0.971 H(1/3,2/3) = 0.918 H(1/2,1/2) = 1 info([2,2],[1,1]) = 0.951 gain(větrno) = 0.020

Kočné řešení jvyšší informační zisk ve větvi "slučno" má vlhkost slučno vlhkost počasí zataženo deštivo větrno pro větev "deštivo" má jvyšší informační zisk atribut větrno vysoká normální atribut teplota ní ve stromu zahrnut

ID3: vlastnosti umí pracovat s chybějícími hodnotami umí pracovat se spojitými atributy provádí prořezávání stromu (přeučení) preferuje rozdělení na přibližně stejně velké množiny

Algoritmus C4.5 řeší chybějící hodnoty atributů spojité hodnoty atributů prořezávání rozdělování

Chybějící hodnoty při tvorbě stromu: instance se ignorují hodnota "chybí" při klasifikaci: podle jiných atributů vezmou se větve pro všechny hodnoty atributu, jehož hodnota chybí (vyvážení výsledků) pokud je to jednoznačné, vezme se většina, bo se klasifikuje

Spojité hodnoty rozdělení na intervaly na základě hodnot v trénovací množině např. pomocí maximalizování informace

Prořezávání angl. prunning jednodušší stromy mají často lepší výsledky jako složitější pre-prunning v průběhu tvorby stromu rozhodování, kdy skončit s vytvářením stromu post-prunning prořezávání už vytvořeného stromu (častější) strategie nahrazení podstromu (angl. subtree replacement) zdvižení podstromu (angl. subtree raising)

Nahrazení stromu strom je nahrazený listem, pokud toto nahrazení způsobí malou změnu error rate A B C D E

Nahrazení stromu strom je nahrazený listem, pokud toto nahrazení způsobí malou změnu error rate A B C E

Nahrazení stromu strom je nahrazený listem, pokud toto nahrazení způsobí malou změnu error rate A C E