520 likes | 672 Views
Príprava dát + Klasifikácia. Michal Kompan Objavovanie znalostí G.Kosková. Dáta. inštancie pozorovania, príklady vstupné dáta záznamy v databáze atribúty každá inštancia je charakterizovaná hodnotami fixnej predefinovanej množiny atribútov. atribút. Dáta. inštancia.
E N D
Príprava dát +Klasifikácia Michal Kompan Objavovanie znalostí G.Kosková
Dáta • inštancie • pozorovania, príklady • vstupné dáta • záznamy v databáze • atribúty • každá inštancia je charakterizovaná hodnotami fixnej predefinovanej množiny atribútov
atribút Dáta inštancia Sepal.L. Sepal.WPetal.LPetal.W Species 15.13.51.40.2setosa 24.93.01.40.2setosa 34.73.21.3 0.2 setosa 44.63.11.50.2setosa 55.03.61.40.2setosa 517.03.24.71.4versicolor 526.43.24.51.5versicolor 536.93.14.91.5versicolor 545.52.34.01.3versicolor 556.52.84.61.5versicolor 1016.33.36.02.5virginica 1025.82.7 5.11.9virginica 1037.13.05.92.1virginica 1046.32.95.61.8virginica 1056.53.05.82.2virginica
Typy atribútov • numerické • spojité (napr. vzdialenosti) • diskrétne (napr. vek v rokoch) • ordinálne - je možné ich usporiadať • napr. horúci > teplý > vlažný > chladný > studený • napr. starý > v stredných rokoch > mladý • nominálne = kategorické • napr. setosa, versicolor, virginica • nominálne vs. ordinálne (slnečno, zamračené, daždivo) • špeciálny prípad: dichotomické (boolovské, binárne)
Základné charakteristiky dát • Poznajte svoje dáta! • objem dát je veľký na to, aby sa stačilo pozrieť do databázy • charakteristiky • jednotlivých atribútov • závislosť medzi atribútmi
Charakteristiky atribútu • Početnosť výskytu hodnôt atribútu • f(a) - koľkokrát sa hodnota a vyskytla v rámci jednohoatribútu • klasifikácia: pre rôzne triedy zvlášť • pre nominálne hodnoty: jedniný spôsob ako zistiť charakter dát • histogram
Boxplot • Cieľ:sumarizovať dáta a rýchlo zobraziť, či sú dáta symetrické, či majú outliery • 5-číselná sumarizácia • rámček: dolný kvantil, medián, horný kvantil • medián: v zoradnených hodnotách - prostredná • dolný kvantil: medián ľavej polovice čísel po medián (vrt.) • horný kvantil: medián pravej polovice čísel od mediánu (vrt.) • zarážky ("fúzy"): vyjadrujúce minimum a maximum (max 1,5x šírka rámčeka) • kolieska: outliery
n (xi- x) (yi- y) i=1 rxy = n n (yi - y)2 (xi - x)2 i=1 i=1 Závislosť medzi atribútmi s numerickými hodnotami • korelačný koeficient • rxy <-1,1> • záporné hodnoty: negatívna korelácia • kladné hodnoty: pozitívna korelácia • rxy = 0: hodnoty sú nekorelované
Príprava vstupu • predspracovanie • integrácia dát z rôznych zdrojov • čistenie dát • vysporiadanie sa s chýbajúcimi dátami • transformácia • veľká časť z celého získavania znalostí
Integrácia dát • vytvorenie jednej množiny inštancií • dáta z rôznych zdrojov (napr. z rôznych oddelení) • rôzne štýly ukladania záznamov • rôzne konvencie • rôzne časové obdobia • rôzne agregácie, rôzne primárne kľúče • rôzne typy chýb • dátový sklad (datawarehouse) • integrácia databáz v jednej spoločnosti • nemusí však obsahovať všetky potrebné dáta
Integrácia dát • identifikovanie rovnakých entít • rôzne identifikátory (napr. ID_custormer, cust_num) • metadáta • redundancia • atribút môže byť nadbytočný - dá sa vypočítať z iných atribútov • rozdiel v dátach spôsobený meraním v iných veličinách • rôzne formáty
Chýbajúce hodnoty • dôvody: • nefunkčné meracie zariadenie • zmena kolekcie atribútov v databáze • spojenie podobných, neidentických databáz • odmietnutie respondenta odpovedať • nebolo potrebné zisťovať hodnotu (napr. vyšetrenie) • nevieme rozlíšiť, či sa nepodarilo zistiť hodnotu, alebo bolo irelevantné hodnotu zisťovať
Chýbajúce hodnoty • niektoré hodnoty chýbajú lebo • sú nerelevantné (Jane) • neaplikovateľné (Joe, 2-ročná Anna) Name Age Sex Pregnant? Mary 25FN Jane 27F ? Joe 30M ? Anna 2F ?
Vysporiadanie sa s chýbajúcimi hodnotami • ignorovať záznam • problém ak je veľa takých záznamov • vyplniť manuálne • dá sa ak je málo takých záznamov • použiť konštantnú hodnotu • napr. hodnotu "neznáme" • použiť aritmetický priemer hodnôt • použiť aritmetický priemer hodnôt patriacich do tej istej triedy • klasifikácia (poznáme priradenie do tried)
Výber atribútov • výber atribútov na redukciu dimenzionality • vybratie minimálnej podmnožiny atribútov tak aby sa zachovalo rozdelenie dát • spôsoby • manuálne (ak dátam rozumieme) • automatické metódy • niektoré algoritmy sa učia, ktoré atribúty sú najrelevantnejšie (napr. rozhodovacie stromy) • všeobecné algoritmy
Riedke dáta • väčšina dát v matici je 0 • napr. marketbasketdata • matica - riadky: zákazníci, stĺpce: produkty • zákazník kúpi len veľmi malú časť z množiny všetkých produktov • reprezentácia: {1 26, 6 63, 10 A} {3 42, 10 B} 0 26 0 000 63 0 00 A 0 0 42 0 000000 B
Klasifikácia • zobrazuje dáta do predefinovaných skupín - tried • učenie s učiteľom • algoritmus sa učí charakteristiku tried na základe dát, pre ktoré poznáme príslušnosť ku skupinám - trénovacia množina
Príklady klasifikácie • rozpoznávanie vzorov • diagnostikovanie • rozhodovanie o udelení úverov • detekovanie chýb v aplikáciách • klasifikácia finančných a obchodných trendov • klasifikácia dokumentov (mail, správy...)
Klasifikácia: príklad • Trieda "rodinné auto" • cieľ - predikovanie: Je auto x rodinným autom? • naučiť sa rozlišovať vzor "rodinné auto" - čo od neho ľudia očakávajú? • trénovacia množina: pozitívne a negatívne príklady • atribúty: • x1: cena • x2: sila motora
Definícia • pre danú množinu dát D={d1, ..., dn} a množinu tried C={C1, ..., Cm}, klasifikačný probém je definovať zobrazenie f:D C, kde pre každé dije definovaná práve jedna trieda. Trieda Cjobsahuje práve tie prvky, ktoré sa pomocou funkcie f zobrazia do tejto triedy, t.j. Cj= {di| f(di) = Cj, pre všetkydiD}
Modely a reprezentácia znalostí • rozhodovacie stromy • algoritmy na tvorbu rozhodovacích stromov (napr. ID3, C4.5) • klasifikačné pravidlá • rozhodovacie stromy -> klasifikačné pravidlá • jednoduchý algoritmus 1R • napr. if (x = 1) and (y = 0) then class = a
nízky výška stredný vzrast pohlavie vysoký Modely a reprezentácia znalostí • parametre modelov • modely + parametre (štatistické modely, neurónové siete) • reprezentácia založená na inštanciách • učenie založené na vzdialenostiach (k-nearestneighbour)
Occamova britva • angl. Occam's razor • princíp pomenovaný v 14. storočí ang. logikom Františkánskym mníchom WilliamomOccamom (Ockham) • vysvetlenie ľubovoľného fenoménu by malo používať čo najmenej predpokladov ako je možné, eliminovať ("oholiť preč") tie, ktoré nemenia predikcie premenných v hypotéze alebo teórii vysvetľujúcej nejaký fenomén • "Ak sú všetky veci rovnaké, jednoduchšie riešenie je lepšie." = ak je niekoľko konkurujúcich teórií rovnakých v ostatných ohľadoch, princíp odporúča zvoliť teóriu, ktorá • zavádza menej predpokladov a • výsledkom sú menej hypotetické (jednoduchšie) entity
Jednoduché pravidlá 1R • 1R (1 rule) - jednoduchá klasifikácia inštancií • rozhodnutie na základe jedného atribútu • postup: • pre všetky atribúty • vytvorenie množiny pravidiel tak, že každé pravidlo zodpovedá jednej hodnote atribútu • priradenie tej triedy, ktorá sa pre danú hodnotu atribútu najčastejšie vyskytuje • vypočítanie error rate (1-accurracy) • výber stromu s najmenším error rate
NaívnyBayesovklasifikátor • angl. NaïveBayes • predpoklady • všetky atribúty sú rovnako dôležité • atribúty sú navzájom nezávislé • Bayesovo pravidlo • jednoduchá metóda • s vhodne vybranou množinou atribútov - často úspešná v praxi
P(d|H) P(H) P(H|d) = P(d) Bayesovo pravidlo • podmienená pravdepodobosť hypotézy H za pozorovania d • P(H) - apriórna pravdepodobnosť H (bez ohľadu na pozorovanie) • P(d|H) - vierohodnosť (likelihood) - pravdepodobnosť, že pre danú hypotézu budeme pozorovať d • P(d) - evidence (marginallikelihood) - pravdepodobnosť výskytu pozorovania d • P(H|d) - posteriórna pravdepodobnosť H ak pozorujeme d
P(červené|jablko) P(jablko) = P(červené|jablko)P(jablko) + P(červené|hruška)P(hruška) Bayesovo pravidlo: príklad • podmienená pravdepodobosť, že ovocie v komore (H1=jablko, H2=hruška), ktoré je červené, je jablko apriórna pravdepodobnosť vierohodnosť P(červené|jablko) P(jablko) P(jablko|červené) = P(červené) posteriórna pravdepodobnosť evidence
NaívnyBayesovklasifikátor • klasifikovať nový objekt – červený/ zelený? • Zelených je 2x viac ako červených – je 2x väčšia šanca že nový objekt bude zelený (apriórna pravdepodobnosť).
Vlastnosti • obyčajne dáva dobré výsledky aj pri zjednodušujúcich predpokladoch (vhodne zvoliť atribúty) • jednoduchý klasifikátor • hypotéza je skonštruovaná z parametrov vypočítaných z trénovacích dát, žiadne dodatočné vyhľadávanie v trénovacej množine nie je potrebné • nie je potrebné aby presne určil pravdepodobnosti
Rozhodovaciestromy • rozdeľuj a panuj • postup • vyber atribút a daj ho do koreňa • vytvor vetvy pre rôzne hodnoty atribútu rozdelí množinu inštancií na podmnožiny • rekurzívne aplikuj postup pre každú vetvu
Rozhodovacie stromy • problém s počasím • vnútorné uzly • atribúty • listy • klasifikácia • vetvy • hodnoty atribútov, podmienky počasie zamra-čené slnečno daždivo vlhkosť veterno áno áno nie normálna vysoká nie áno áno nie
Definícia • pre danú množinu dát D={d1, ..., dn}, kde di = <di1, ..., dim> sú hodnoty atribútov {A1, ..., Am} jednotlivých inštancií a pre množinu tried C={C1, ..., Cm}, je rozhodovacím stromom strom asociovaný s D tak, že spĺňa nasledujúce vlastnosti: • každý vnútorný uzol je označený atribútom Ak • každá hrana je označená predikátom aplikovateľným na atribút asociovaný s rodičom • každý list je označený triedou Cj
Vlastnosti algoritmovnatvorburozhod. stromov • trénovacie dáta • príliš malá: strom nemusí byť správne špecifický • príliš veľká: strom môže byť preučený • orezávanie (angl. prunning) • modifikovanie už skonštruovaného stromu • napr. odstránenie nadbytočných porovnávaní, odstránenie podstromu pre dosiahnutie lepších výsledkov
Orezávanie • angl. prunning • jednoduchšie stromy majú často lepšie výsledky ako zložitejšie • pre-prunning • v priebehu tvorby stromu - rozhodovanie kedy skončiť s vytváraním stromu • post-prunning • orezávanie už vytvoreného stromu (častejšie) • stratégie • nahradenie podstromu (angl.subtree replacement) • zdvihnutiepodstromu (angl.subtree raising)
K-najbližších susedov • Nová inštancia je klasifikovaná na základe väčšiny susedných prvkov • 1-nearest neighbor – klasifikuje do triedy najbližšieho suseda – inštancie z trénovacej množiny s najmenšou vzdialenosťou • K-nearestneighbor – klasifikuje do triedy do ktorej patrí väčšina z k najbližších prvkov
Klasifikačné pravidlá • if (x = 1) and (y = 0) then class = a • antecedent(príčina) - konjunkciapodmienok (AND) • consequent (dôsledok) • viacpravidiel - disjunkcia (OR) • konflikt- ak pre jednuinštanciudvepravidláodvodiarôznepriradenietriedy
Neurónové siete • Inšpirované ľudským mozgom • model: orientovaný graf • uzly - neuróny • hrany - prepojenia s asociovanýmiváhami • Rozpoznávanie vzorov, reči
Neurónové siete • Backpropagation – učenie váh • Učenie s učiteľom • Malé iteratívne kroky • Trénovanie : • inštancia s triedou klasifikácie je prešírená sieťou • Výsledok sa porovná s korektným výsledkom a vypočíta sa kvadratická chyba • Chyba sa spätne šíri sieťou pričom sa upravujú váhy v každej vrstve • Opakovanie pre všetky inštancie z trénovaciej množiny N krát (N/kým sa chyba nezníži pod požadovanú hranicu) • Riešenie sa asymptoticky blíži k „ideálnej rovnici“
Zhrnutie • 1R jednoduché pravidlá • Jednoduché • 1 atribút • NaiveBayes • Jednoduché • Všetky atribúty rovnako dôležité • Nominálne aj numerické