ˇ ´I TECHNICKE´ V BRNEˇ VYSOKE´ UCEN BRNO UNIVERSITY OF TECHNOLOGY
ˇ ´ICH TECHNOLOGI´I FAKULTA INFORMACN ˇ ´ITACOV ˇ ´ ´ ´ U ˚ USTAV POC YCH SYSTEM FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF COMPUTER SYSTEMS
´ AN ´ ´I MODELU ˚ PRO DOLOVAN ´ ´I Z DAT POROVNAV
´ RSK ˇ ´ PRACE ´ BAKALA A BACHELOR’S THESIS
´ AUTOR PRACE AUTHOR
BRNO 2007
ˇ JAN POSP´ISIL
ˇ ´I TECHNICKE ´ V BRNE ˇ VYSOKE´ UCEN BRNO UNIVERSITY OF TECHNOLOGY
ˇ ´ICH TECHNOLOGI´I FAKULTA INFORMACN ˇ ˇ ´ ´ ´ ´ U ˚ USTAV POCITACOVYCH SYSTEM FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF COMPUTER SYSTEMS
´ AN ´ ´I MODELU ˚ PRO DOLOVAN ´ ´I Z DAT POROVNAV DATAMINING MODELS COMPARISON
´ RSK ˇ ´ PRACE ´ BAKALA A BACHELOR’S THESIS
´ AUTOR PRACE
ˇ JAN POSP´ISIL
AUTHOR
´ VEDOUC´I PRACE SUPERVISOR
BRNO 2007
ˇ Ph.D. ´ S, Ing. ROMAN LUKA
Abstrakt Tato pr´ace se zab´yv´a z´akladn´ım porovn´av´an´ım vlastnost´ı dataminingov´ych model˚u vzhledem k r˚uzn´ych povah´am dat. D˚uraz byl kladen pˇredevˇs´ım na nalezen´ı kl´ıcˇ ov´ych vlastnot´ı, kter´e ovlivˇnuj´ı pˇresnost klasifikace dat. Pr´ace je cˇ lenˇena do nˇekolika cˇ a´ st´ı tak, aby i neodborn´y cˇ ten´aˇr nebo dokonce upln´y laik porozumˇel t´ematu a mohl ze z´avˇer˚u t´eto pr´ace profitovat. V prvn´ı f´azi je cˇ ten´aˇr sezn´amen s problematikou dataminingu, potˇrebn´ych model˚u a algoritm˚u, druh´a cˇ a´ st se zab´yv´a porovn´av´an´ım model˚u a zhodnocen´ım v´ysledk˚u.
Kl´ıcˇ ov´a slova Dolov´an´ı z dat, klasifikace, porovn´av´an´ı model˚u, SAS Enterprise miner, z´ısk´av´an´ı znalost´ı z dat, datamining
Abstract This thesis focuses on comparing of the datamining models features depending on the different databazis topology. The objekt was to find key features that at most involve the accuracy of classification. Thesis is composed from chapters in a way that even a non-professional or even a complete laik could understand the object and could find theese thesis results useful. In the beginning the reader is beeing made familiar with all the background information about datamining and its models and algorithms, the second part denotes about the model comparison and discusses its results.
Keywords Datamining, classification, datamining models, SAS Enterprise miner
Citace Jan Posp´ısˇil: Porovn´av´an´ı model˚u pro dolov´an´ı z dat, bakal´aˇrsk´a pr´ace, Brno, FIT VUT v Brnˇe, 2007
Porovn´av´an´ı model˚u pro dolov´an´ı z dat Prohl´asˇen´ı Prohlaˇsuji, zˇ e jsem tuto bakal´aˇrskou pr´aci vypracoval samostatnˇe pod veden´ım pana Ing. Romana Luk´asˇe, Ph.D . ....................... Jan Posp´ısˇil 14. kvˇetna 2007
c Jan Posp´ısˇil, 2007.
Tato pr´ace vznikla jako sˇkoln´ı d´ılo na Vysok´em uˇcen´ı technick´em v Brnˇe, Fakultˇe informaˇcn´ıch technologi´ı. Pr´ace je chr´anˇena autorsk´ym z´akonem a jej´ı uˇzit´ı bez udˇelen´ı opr´avnˇen´ı autorem je nez´akonn´e, s v´yjimkou z´akonem definovan´ych pˇr´ıpad˚u.
Zad´an´ı Porovn´an´ı modelu˚ pro dolov´an´ı dat z dat • Vedouc´ı: Luk´asˇ Roman, Ing., Ph.D., UIFS FIT VUT • Oponent: Bart´ık Vladim´ır, Ing., Ph.D., UIFS FIT VUT
1. Seznamte se podrobnˇe s metodami pro dolov´an´ı dat z datab´az´ı a s prostˇred´ım programu SAS Enterprise Miner. 2. Z r˚uzn´ych zdroj˚u naleznˇete data vhodn´a pro dolov´an´ı. 3. Pro dolov´an´ı z tˇechto dat pomoc´ı r˚uzn´ych model˚u (napˇr. regresn´ı anal´yza, rozhodovac´ı strom, neuronov´a s´ıt’ BP) pouˇzijte program SAS Enterprise Miner. 4. Z pˇredchoz´ıho v´ysledku udˇelejte anal´yzu, kter´y model je vhodn´y pro jak´y druh dat a proˇc. 5. Zhodnot’te dosaˇzen´e v´ysledky.
Licenˇcn´ı smlouva Licenˇcn´ı smlouva je uloˇzena v arch´ıvu Fakulty informaˇcn´ıch technologi´ı Vysok´eho uˇcen´ı technick´eho v Brnˇe.
1
Obsah 1
2
3
Z´ısk´av´an´ı znalost´ı z dat ´ 1.1 Uvod . . . . . . . . . . . . . . . . . . . . . . . 1.2 Definice . . . . . . . . . . . . . . . . . . . . . . 1.3 Potencion´aln´ı aplikace . . . . . . . . . . . . . . 1.4 Datov´e zdroje . . . . . . . . . . . . . . . . . . . 1.4.1 Multidimenzion´aln´ı datov´y model . . . . 1.4.2 Operace nad multidimenzion´aln´ı kostkou 1.5 Proces z´ısk´av´an´ı znalost´ı . . . . . . . . . . . . . 1.5.1 F´aze . . . . . . . . . . . . . . . . . . . . 1.5.2 Metodiky . . . . . . . . . . . . . . . . . 1.6 Typick´e dataminingov´e u´ lohy . . . . . . . . . . . 1.6.1 Dolov´an´ı asociaˇcn´ıch pravidel . . . . . . 1.6.2 Shlukovac´ı anal´yza . . . . . . . . . . . . 1.6.3 Predikce . . . . . . . . . . . . . . . . . . 1.6.4 Klasifikace . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
. . . . . . . . . . . . . .
3 3 4 4 5 5 5 7 7 7 8 8 10 11 11
Klasifikace ´ 2.1 Uvod . . . . . . . . . . . . . . . . . . 2.1.1 Proces klasifikace . . . . . . . . 2.1.2 Vlastnosti klasifik´atoru . . . . . 2.2 Rozhodovac´ı strom . . . . . . . . . . . 2.2.1 Algoritmus . . . . . . . . . . . 2.2.2 V´ybˇer atributu . . . . . . . . . 2.2.3 Optimalizace . . . . . . . . . . 2.3 Neuronov´a s´ıt’ . . . . . . . . . . . . . . 2.3.1 Neuron . . . . . . . . . . . . . 2.3.2 Neuronov´a s´ıt’ Backpropagation
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
12 12 12 12 13 13 14 15 15 15 16
Porovn´av´an´ı modelu˚ pro klasifikaci 3.1 V´yzkumn´y z´amˇer . . . . . . . . . . . . . . . . . 3.2 Testovac´ı data . . . . . . . . . . . . . . . . . . . 3.3 Prostˇred´ı SAS Enterprise miner . . . . . . . . . . 3.4 Porovn´av´an´ı model˚u . . . . . . . . . . . . . . . 3.4.1 V´ybˇer klasifik´atoru s nejlepˇs´ımi v´ysledky 3.4.2 Vliv poˇctu atribut˚u na klasifikaci . . . . . 3.4.3 Vydolovatelnost informace . . . . . . . . 3.4.4 Zaˇsumˇel´a tˇr´ıda . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
19 19 19 20 24 24 26 29 30
2
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
4
Z´avˇer
33
Seznam pouˇzit´ych zdroju˚
33
A Pˇr´ıloha
35
3
Kapitola 1
Z´ısk´av´an´ı znalost´ı z dat 1.1
´ Uvod
Historick´y v´yvoj Z´ısk´av´an´ı znalost´ı dat je povaˇzov´ano za jeden z hlavn´ıch smˇer˚u v´yvoje datab´azov´ych technologi´ı dneˇska. Je ale nutno dodat, zˇ e snahy o analytick´y pˇr´ıstup k ukl´adan´ym dat˚um zde byl jiˇz od sam´eho zaˇca´ tku 60.let, v dobˇe vzniku prvn´ıch datovˇe intenzivn´ıch aplikac´ı. Na data uloˇzen´a v hieratick´ych cˇ i s´ıt’ov´ych datab´az´ıch byly aplikov´any jednoduch´e statistick´e metody logick´e regrese a rozhodovac´ıch strom˚u. V´ysledky obsahovaly chyby vlivem n´ahodn´ych korelac´ı, se kter´ymi se tento pˇr´ıstup nebyl schopen vypoˇra´ dat. T´ezˇ vzhledem k v´ykonov´e spolehlivostn´ı u´ rovni tehdejˇs´ı v´ypoˇcetn´ı techniky, z˚ustaly pokusy tohoto typu pouze na b´azi akademick´ych projekt˚u. Prekvizity Dalˇs´ım impulzem se uk´azal v 80. letech aˇz pˇr´ıchod nov´ych syst´em˚u ˇr´ızen´ı b´aze dat zaloˇzen´ych bud’ na relaˇcn´ım nebo pozdˇeji i objektov´em pˇr´ıstupu. Takto ˇr´ızen´e datab´aze zaznemenaly v kr´atk´e dobˇe velk´e rozˇs´ıˇren´ı v glob´aln´ım mˇeˇr´ıtku a prosadily se jako plnohodnotn´y zp˚usob uchov´av´an´ı informac´ı. Pˇr´ıstup k datab´azi uˇz nebyl dom´enou program´ator˚u. Do hry pˇrich´azej´ı i lid´e, kter´ym se poˇc´ıtaˇc dostal na kancel´aˇrsk´y st˚ul, a kteˇr´ı s datab´az´ı, pomoc´ı r˚uzn´ych pˇra´ telsk´ych uˇzivatelsk´ych rozhran´ı, kaˇzdodennˇe pracuj´ı. Z pohledu dataminingu c´ılovou skupinou jsou pak lid´e, kteˇr´ı vyuˇz´ıvaj´ı pˇr´ıstupu k datab´az´ım k anal´yze cˇ i jin´emu zp˚usobu z´ıskav´an´ı poznatk˚u o datech v nich uloˇzen´ych. Motivace Vlastn´ıci datab´az´ı jiˇz kromˇe operaˇcn´ı datab´aze, kde uchov´avaj´ı sv´a aktu´aln´ı data, disponuj´ı i mechanismy na ukl´ad´an´ı a archivaci tˇechto dat ve velk´ych objemech, viz. [3].
Top´ıme se v datech, ale trp´ıme nedostatkem informac´ı.
4
Vlivem rozvoje informaˇcn´ı spoleˇcnosti a technick´eho pokroku vznikaj´ı nov´e zdroje dat: • Multimedi´aln´ı zdroje dat, datov´e proudy. • Web a strukturovan´e formy dokument˚u. Explozivnˇe rostou objemy informac´ı uchov´avan´ych v datab´az´ıch. Objemy dat zaˇc´ınaj´ı uˇzivatel˚um ´ ernˇe tomu tedy roste z´ajem o n´astroje, kter´e dovedou velk´e objemy dat pˇrer˚ustat pˇres hlavu. Umˇ efektivnˇe zpracov´avat a transformovat na znalosti pro podporu rozhodov´an´ı.
1.2
Definice
Jako z´ısk´av´an´ı znalost´ı z dat lze definovat cˇ innost, kter´a vede k z´ısk´an´ı zaj´ımav´ych netrivi´aln´ıch zjiˇstˇen´ı z velk´eho mnoˇzstv´ı dat. Pˇredmˇetem z´ajmu jsou souvislosti mezi daty, nikoliv hodnoty, kter´e jsou v datab´azi explicitnˇe uvedeny. Nejde tedy o koncept typick´y v operaˇcn´ıch datab´az´ıch. Pouze se nedotazujeme na poˇzadovan´e hodnoty. Aby mˇela tato cˇ innost smysl, mus´ı z´ıskan´e znalosti pˇrin´asˇet nˇejak´y uˇzitek, napˇr´ıklad v podobˇe informac´ı, kter´e pom´ahaj´ı pˇri strategick´ych rozhodnut´ıch, nˇejak´ym zp˚usobem obohacuj´ı naˇse povˇedom´ı o datech, ze kter´ych dolujeme pr´avˇe ony skryt´e souvislosti. Lid´e na vedouc´ıch pozic´ıch se rozhoduj´ı podle sv´e vlastn´ı intuice a dobr´a intuice patˇr´ı bezesporu ke kvalit´am spr´avn´eho manaˇzera. Typick´ym u´ kolem z´ısk´av´an´ı znalost´ı z dat je poskytnout lepˇs´ı v´ychoz´ı podm´ınky pˇri strategick´em rozhodnut´ı t´ım ,ˇze pom˚uzˇ eme pochopit nˇekter´e z´akonitosti, kter´e se nach´az´ı v historick´ych datech k dan´emu t´ematu. Pro term´ın “z´ısk´av´an´ı znalost´ı z datab´az´ı” se v literatuˇre m˚uzˇ eme setkat s ˇradou alternativn´ıch ˇ y pˇreklad n´azv˚u a definic, v angliˇctinˇe napˇr´ıklad Information harvesting, Data distilery a dalˇs´ı. Cesk´ se s tˇemito n´azvy nˇekdy aˇz kurioznˇe popral jako: R´yp´ani se v datech, Datokopectv´ı. Tento fakt je zapˇr´ıcˇ inˇen t´ım, zˇ e tato vˇedn´ı discipl´ına proˇsla prudk´ym v´yvojem a definitivn´ı koncept se ust´alil aˇz v posledn´ı dobˇe. Z anglick´eho Datamining, kter´e bylo p˚uvodnˇe pouze jednou z f´az´ı z´ısk´av´an´ı znalost´ı, se tato hornick´a metafora stala pˇrenesen´ym v´yznamem a je tedy moˇzn´e ji br´at jako synonymum pro cel´y proces.
1.3
Potencion´aln´ı aplikace
Intuitivnˇe lze oblasti aplikace z´ısk´av´an´ı znalost´ı hledat tam, kde v´ıme, zˇ e se hromad´ı data s nˇejakou vypov´ıdaj´ıc´ı schopnost´ı a z´aroveˇn je informace v nich skryt´a atraktivn´ı pro danou oblast. Obecnˇe jsou to trh a marketing, pojiˇst’ovnictv´ı a anal´yza rizik, medic´ına, bezpeˇcnost. ´ • Anal´yza n´akupn´ıho koˇs´ıku - Uloha se zab´yv´a nalezen´ım spoleˇcnˇe prod´avan´eho zboˇz´ı, ˚ Pokud napˇr´ıklad zjist´ıme, zˇ e na jedn´e u´ cˇ tence se v´yznamnˇe cˇ asto frekventovan´ych vzoru. spoleˇcnˇe vyskytuje pivo a dˇetsk´e pleny, vypl´yv´a z toho napˇr´ıklad zjiˇstˇen´ı, zˇ e pro tˇezˇ k´y bal´ık plen je vysl´an tat´ınek, kter´y si s oblibou po cestˇe pˇribere i pro sebe pivo. Obchodn´ık m´a pak k dispozici podklady pro rozhodnut´ı, jak m´a uspoˇra´ dat jednotliv´a oddˇelen´ı, aby tat´ınkovo rozhodnut´ı podpoˇril. Z frekventovan´ych vzor˚u se pak generuj´ı asociaˇcn´ı pravidla. • Finanˇcn´ı a rizikov´a anal´yza - Zab´yv´a se dolov´an´ım znalost´ı ohlednˇe profilu z´akazn´ıka, kdy je tˇreba jist´a forma predikce chov´an´ı z´akazn´ıka. Napˇr´ıklad jak bude reagovat na r˚uzn´e formy reklamn´ı kampanˇe, nebo naopak zda je riziko, zˇ e nebude spl´acet hypot´eku.
5
• Biologick´a a klinick´a data - Dolov´an´ı z biologick´ych dat je velmi sˇirok´a oblast, kter´a zahrnuje pˇr´ıpady od testov´an´ı hypot´ez, anal´yzy klinick´ych pˇr´ıpad˚u aˇz po molekul´arn´ı biologii a genetiku. Touto oblast´ı dolov´an´ı dat se zab´yva obor Bioinformatiky, kter´y je zde s dataminingem u´ zce spojen. • Dolov´an´ı v datov´ych proudech a webu - Zcela speci´aln´ı oblast´ı pro dolov´an´ı z dat jsou datov´e proudy. Nejvˇetˇs´ı v´yzva zde spoˇc´ıv´a v tom, zˇ e veˇsker´e dolov´an´ı se mus´ı odehr´avat pouze v okamˇziku jednoho pr˚uchodu daty. Jde typicky o u´ lohy jako anal´yzy telefonn´ıch hovor˚u cˇ i z´aznam˚u z dohledov´ych kamer. V pˇr´ıpadˇe dolov´an´ı z webu a z textu obecnˇe jde o vyhled´av´an´ı a anal´yzu kl´ıcˇ ov´ych slov a n´aslednou klasifikaci dokument˚u, napˇr´ıklad podle t´ematu o kter´em pojedn´avaj´ı.
1.4
Datov´e zdroje
Neˇz se budeme vˇenovat samotn´emu procesu dolov´an´ı dat, je tˇreba se zab´yvat jist´ymi prekvizitami a n´astroji, kter´e s efektivn´ım dolov´an´ım u´ zce souvisej´ı. Pˇredevˇs´ım pak syst´emy, kter´e jsou schopny poskytovat kvalitn´ı datovou podporu pro typick´e dataminingov´e operace. V praxi se velmi cˇ asto doluje z dat z r˚uzn´ych zdroj˚u (operaˇcn´ı datab´aze, u´ daje od z´akazn´ık˚u ...) a ty mohou trpˇet r˚uznou formou sˇumu a nekonzistentnosti. Lze sice ˇr´ıci, zˇ e dolov´an´ı lze prov´adˇet nad jak´ymikoliv daty, nicm´enˇe u´ spˇech je u´ zce spjat s kvalitou dat. Odpovˇed´ı na naˇse n´aroky jsou n´astroje pro kolekci, zpracov´av´an´ı a n´aslednou strukturovanou prezentaci dat vhodnou pro zpracov´an´ı dolovac´ımi algoritmy - datov´e sklady. Pˇri ukl´ad´an´ı do datov´eho skladiˇstˇe proch´az´ı data cˇ iˇstˇen´ım a transformacemi a obecnˇe lze ˇr´ıci, zˇ e maj´ı vyˇssˇ´ı kvalitu a vˇetˇs´ı vypov´ıdac´ı schopnost. Data v datov´ych skladech maj´ı n´asleduj´ıc´ı vlastnosti: • Integrovan´y - Extrakce a integrace dat do heterogenn´ıho form´atu, i kdyˇz data p˚uvodnˇe poch´azej´ı z r˚uzn´ych zdroj˚u. • Dlouhodob´a data- Archivace dat za vˇetˇs´ı cˇ asov´e periody, ˇra´ dovˇe roky. • Perzistence - Po pˇreveden´ı dat do skladiˇstˇe, se uˇz data needituj´ı, jsou koneˇcn´a. • Subjektov´a orientace - Data jsou organizov´ana podle konkr´etn´ıch koncept˚u jako z´akazn´ıci, prodeje, v´yrobky.
1.4.1 Multidimenzion´aln´ı datov´y model Od tabulek cˇ i objekt˚u v OTLP (operaˇcn´ı datab´aze) se zde dost´av´ame k jin´emu modelu pro uchov´av´an´ı dat - multidimenzion´aln´ı kostce. Dimenze reprezentuj´ı aspekty, ze kter´ych mohou b´yt nahl´ızˇ ena data, typick´ym pˇr´ıkladem je cˇ as, geograficka poloha a typ v´yrobku jehoˇz prodej sledujeme. V tomto pˇr´ıpadˇe m´ame pro jednoduchost pouze tˇri dimenze a v´ysledek si tedy lze pˇredstavit jako trojrozmˇernou kostku, viz obr. 1.1.
1.4.2 Operace nad multidimenzion´aln´ı kostkou V takto organizovan´e datov´e struktuˇre jsou tˇreba operace, kter´e n´am umoˇzn´ı lepˇs´ı pohled na data. Respektive se st´avaj´ıc´ım pohledem, urˇcen´ym multidimenzion´aln´ı kostkou, pracovat a pˇr´ızp˚usobovat ho pro potˇreby anal´yzy.
6
Obr´azek 1.1: Uk´azka uloˇzen´ı prodej˚u v jednotliv´ych mˇestech v pr˚ubˇehu cˇ asu
• ROLL UP - Proch´azen´ı konceptu´aln´ı hierarchie v dimenzi smˇerem nahoru. Zvyˇsov´an´ı agregace hodnot. Pokud se pˇresuneme z u´ rovnˇe napˇr´ıklad prodej˚u za t´yden na u´ roveˇn prodej˚u za mˇes´ıc. • DRILL DOWN - Opaˇcn´y postup neˇz u ROLL UP, zavrt´av´ame se do detail˚u dat v dimenzi a sniˇzujeme agregaci. • SLIDE & DICE - Operace, kter´a je synonymum pro v´ybˇer. V´ysledkem je oˇrez´an´ı dat aˇz na ty, kter´a n´as zaj´ımaj´ı. Vznikne podkostka, kter´a v dimenz´ıch obsahuje pouze data vyhovuj´ıc´ı podm´ınk´am. Napˇr´ıklad prodeje pouze z urˇcit´eho regionu v urˇcit´em mˇes´ıci. • PIVOT - Geometrick´a rotace ve smyslu zmˇeny orientace dat na os´ach. Nijak do dat nezasahuje. Pouˇz´ıv´a se pro vizu´aln´ı u´ pravu napˇr´ıklad 2D graf˚u.
7
1.5
Proces z´ısk´av´an´ı znalost´ı
1.5.1 F´aze Z hlediska pr´ace s daty rozezn´av´ame z procesu dolov´an´ı n´asleduj´ıc´ı f´aze, mezi kter´ymi se iterativnˇe proch´az´ı. V z´avislosti na d´ılˇc´ıch v´ysledc´ıch se f´aze mohou opakovat nebo naopak vypouˇstˇet. 1. Porozumˇen´ı probl´emu - Anal´yza situace, definov´an´ı probl´emu, nalezen´ı akt´er˚u, stanoven´ı zisk˚u a pˇr´ıpadn´ych rizik, vypracov´an´ı projektov´eho pl´anu. ˚ 2. Porozumˇen´ı datumVytvoˇren´ı konceptu, z´amˇeru ohlednˇe toho, jak´e konkr´etn´ı zjiˇstˇen´ı by pro n´asˇ projekt byla pˇr´ınosn´a. Obstar´an´ı vhodn´ych dat, o kter´ych si mysl´ıme, zˇ e by mohly obsahovat odpovˇedi na naˇse ot´azky a porozumˇet jejich struktuˇre a povaze. 3. Pˇr´ıprava dat - Transformace dat do vhodn´e struktury, cˇ iˇstˇen´ı dat od vych´ylen´ych a chybˇej´ıc´ıch hodnot, selekce c´ılov´ych dat pro samotn´y proces. 4. Datamining - J´adro procesu, v´ybˇer a aplikace nejvhodnˇejˇs´ı techniky, sestaven´ı modelu. 5. Vyhodnocen´ı - Transformace a vyhodnocen´ı v´ysledk˚u, uˇcinˇen´ı patˇriˇcn´ych z´avˇer˚u. 6. Nasazen´ı - Prom´ıtnut´ı z´avˇer˚u to praxe, monitoring odezvy a n´asledn´e shrnut´ı u´ spˇesˇnosti cel´eho projektu. Posloupnost je ˇrazena z demonstraˇcn´ıch d˚uvod˚u tak, aby na sebe jej´ı prvky logicky navazovaly. V praxi je vˇsak obvykl´e, zˇ e se nˇekter´e f´aze sluˇcuj´ı.Napˇr´ıklad pˇri cˇ iˇstˇen´ı dat je tˇreba upraven´a data nˇekam ukl´adat a je tedy praktiˇctˇejˇs´ı prov´adˇet rovnou i jejich integraci. Operace pro pˇr´ıpravu dat se fyzicky realizuj´ı jiˇz pˇri ukl´ad´an´ı dat do datov´ych sklad˚u.
1.5.2 Metodiky Snahy o podporu efektivity tohoto procesu daly vzniknout rˇadˇe metodik, kter´e nav´ıc poskytuj´ı uˇzivateli pevn´y r´amec pro usnadnˇen´ı ˇreˇsen´ı dolovac´ıch u´ loh. Za nˇekter´ymi metodikami stoj´ı pˇredn´ı firmy na poli softwarov´ych ˇreˇsen´ı v t´eto oblasti a kaˇzd´a uplatˇnuje trochu jin´y pohled na problematiku. • Metodika 5A - Vznikla na p˚udˇe firmy SPSS, a sv˚uj n´azev z´ıskala podle pˇeti f´az´ı ze kter´ych se sklad´a. – Assess - posouzen´ı potˇreb projektu – Access - shrom´azˇ dˇen´ı dat – Analyze - proveden´ı anal´yz – Akt - pˇremˇena znalost´ı na pl´an potˇrebn´ych zmˇen – Automate - zaveden´ı znalost´ı do praxe
8
• Metodika SEMMA - Pouˇz´ıvan´a softwarov´ymi produkty firmy SAS, n´azev je opˇet zkratkou jednotliv´ych krok˚u procesu. – Sample - v´ybˇer vhodn´ych objekt˚u – Explore - prozkoum´an´ı struktury dat – Modify - datov´e transformace – Model - anal´yza dat pomoc´ı umˇel´e inteligence, metod strojov´eho uˇcen´ı – Assess - zhodnocen´ı modelu a interpretace z´avˇer˚u
1.6
´ Typick´e dataminingov´e ulohy
1.6.1 Dolov´an´ı asociaˇcn´ıch pravidel ´ Uloha se soustˇred´ı na z´ısk´av´an´ı asociac´ı - souvislot´ı mezi daty. Typicky se pak jedn´a o jiˇz zm´ınˇenou anal´yzu n´akupn´ıho koˇs´ıku. Prodejce tak z´ısk´a informace, podle kter´ych si m˚uzˇ e udˇelat lepˇs´ı pˇredstavu o tom, jak´e v´yrobky jsou nakupov´any dohromady a tak napˇriklad l´epe uspoˇra´ dat zboˇz´ı v prodejnˇe nebo vytipovat jednotliv´e skupiny nakupuj´ıc´ıch a l´epe se pˇrizp˚usobit jejich potˇreb´am. Pokud m´ame k dispozici u´ cˇ tenky, kter´e reprezentuj´ı seznamy nakupovan´ych vˇec´ı. M˚uzˇ eme stanovit, podle toho zda se v´yrobek v koˇs´ıku vyskytuje nebo ne, napˇr´ıklad n´asleduj´ıc´ı asociaˇcn´ı pravidlo: MOUKA ∧V EJCE ⇒ KVASNICE Jestliˇze si z´akazn´ık koup´ı mouku a vejce, s velkou pravdˇepodobnost´ı si koup´ı tak´e kvasnice. Bude se asi jednat o n´akup surovin na peˇcen´ı.V praxi se nicm´enˇe nemus´ı jednat jenom o n´akupy a koˇs´ıky, ale lze dolovat souvislosti mezi ud´alostmi, hodnotami v r˚uzn´ych procesech a podobnˇe. Nyn´ı se zbˇezˇ nˇe pod´ıv´ame na algoritmy a principy, jak´ymi se z dat z´ısk´avaj´ı frekventovan´e vzory (ˇcasto opakuj´ıc´ı se v´yrobky), ze kter´ych se pak asociaˇcn´ı pravidla tvoˇr´ı. Algoritmus Apriori Princip cˇ innosti spoˇc´ıv´a ve dvou kroc´ıch. 1. Krok - generov´an´ı kandid´atu˚ spojen´ım, na principu spojen´ı podmnoˇzim. V prvn´ım kole jsou kandid´ati vˇsechny prvky datab´aze. ˚ kter´e se nevyskytuj´ı poˇzadovanˇe cˇ asto 2. Krok - eliminac´ı kandid´atu, Tyto dva kroky se opakuj´ı v kaˇzd´em kole. Algoritmus konˇc´ı, pokud pro kandid´aty aktu´aln´ıho kola jiˇz nem´a podporu, v´ysledkem jsou pak podporovan´ı kandid´ati pˇredchoz´ıho kola.
9
Nevyhnuteln´ymi u´ kony jsou pak proch´azen´ı cel´e datab´aze pˇri poˇc´ıt´an´ı v´yskytu (podpory) kandid´at˚u a z´atˇezˇ syst´emu pˇri samotn´em generov´an´ı kandid´at˚u. Oba fakty jsou o to z´avaˇznˇejˇs´ı, zˇ e poˇcty kandid´at˚u m˚uzˇ ou b´yt obrovsk´e, vˇetˇs´ı neˇz rozsah p˚uvodn´ı datab´aze. Proto se tento alg. doˇckal u´ prav do mnoha jin´ych verz´ı, kter´e jeho nejbolavˇejˇs´ı m´ısta odstraˇnuj´ı, podrobnˇeji zde [1]. FP strom V´yraznˇe efektivnˇejˇs´ı algoritmus. Uspoˇra´ d´an´ı frekventovan´ych mnoˇzin do struktury stromu pˇri jednom pr˚uchodu datab´aze. 1. Krok - stejn´y jako u Apriori alg. - z´ısk´an´ı poˇzadovanˇe podporovan´ych prvk˚u 2. Krok - uspoˇra´ d´an´ı podle podpory, konstrukce FP stromu Pro kaˇzdou frekventovanou mnoˇzinu je zaloˇzena vˇetev. Nˇekter´e vˇetve mohou m´ıt spoleˇcn´e prefixy (poˇca´ tky), v pˇr´ıpadˇe, zˇ e obsahuj´ı spoleˇcn´e frekventovan´e podmnoˇziny. V´ysledkem je pak samotn´y strom, respektive jeho nejdelˇs´ı vˇetve, viz obr. 1.2. Pro rychlejˇs´ı pr˚uchod uchov´av´ame tabulku odkaz˚u na poˇca´ teˇcn´ı uzly. Pˇr´ıklad: { 1, 3, 4 } { 2, 4, 5 } { 2, 4, 6 }
Obr´azek 1.2: Uk´azka konstrukce FP stromu pro uveden´e z´aznamy
10
1.6.2 Shlukovac´ı anal´yza Proces, kter´y vyhled´av´a podobn´e vlastnosti v datech a rozdˇeluje je podle nich do tˇr´ıd. C´ılem je, aby si prvky ve stejn´e tˇr´ıdˇe byly co nejv´ıce podobn´e a z´aroveˇn, aby se co nejm´enˇe podobaly prvk˚um z jin´ych tˇr´ıd. Mˇeˇr´ıtko podobnosti cˇ asto b´yv´a vz´ajemn´a vzd´alenost, odtud tak´e poch´az´ı n´azev u´ lohy. Metoda pracuje pouze s mnoˇzinou vzork˚u, kterou m´a zpracov´avat, nepotˇrebuje zˇ a´ dn´e doplˇnuj´ıc´ı informace. Jedn´a se o druh metody bez uˇcitele.
Obr´azek 1.3: V´ysledek aplikace shlukovac´ı metody
Shlukovac´ı anal´yzu vyuˇz´ıv´ame vˇsude, kde jsou v datech potˇreba indetifikovat jist´e podobn´e skupiny, napˇr´ıklad v bioinformatice, pˇri rozpozn´av´an´ı vzor˚u v multim´edi´ıch (objekty na fotografii) nebo jako stupeˇn pˇredzpracov´an´ı pro jin´e dataminingov´e u´ lohy - Klasifikace. K dispozici je mnoho variant algoritmu. Ty se liˇs´ı principem, na kter´em pracuj´ı nebo vlastnostmi a t´ım p´adem vhodnost´ı pro r˚uzn´e povahy dat, povahy aplikac´ı cˇ i v´ypoˇcetn´ı n´aroˇcnost´ı. Metody zaloˇzen´e na rozdˇelov´an´ı Lze aplikovat na N objekt˚u pro rozdˇelen´ı do M tˇr´ıd. Na zaˇca´ tku je nutn´e vˇedˇet poˇcet tˇr´ıd, do kter´ych m´a algoritmus objekty rozdˇelovat. Principem cˇ innosti je vyhled´av´an´ı ohniska, objektu, kter´y nejl´epe vyhovuje vzd´alenostn´ım funkc´ım ostatn´ıch objekt˚u. 1. Krok - N´ahodn´e stanoven´ı ohnisk vˇsech tˇr´ıd. 2. Krok - Iterativnˇe vyhled´avat l´epe vyhovuj´ıc´ı ohniska a vhodnˇe pˇreskupovat objekty.
11
Algoritmus konˇc´ı, pokud nezbyly zˇ a´ dn´e objekty, kter´e by bylo v´yhodnˇejˇs´ı pˇresunout.Pro tuto u´ lohu jsou vyuˇz´ıvany dvˇe hlavn´ı heuristiky. • Metoda centr´aln´ıho stˇredu- Zn´am´a t´ezˇ jako K-MEANS. Jako ohnisko je fiktivn´ı bod, stˇred, jehoˇz poloha se odvozuje pomoc´ı stˇredn´ıch hodnot atribut˚u objekt˚u urˇcit´e tˇridy. • Metoda reprezentuj´ıc´ıho objektu - Metoda vyuˇz´ıv´a podobn´eho principu, s t´ım rozd´ılem, zˇ e jako ohnisko je vybr´an jeden z bod˚u. Obˇe metody tedy pracuj´ı na podobn´ych principech a maj´ı podobn´e vlastnosti. Jsou vhodn´e pˇredevs´ım pro menˇs´ı a stˇredn´ı dobˇre ohraniˇcen´e shluky kulat´ych tvar˚u. Metoda reprezentuj´ıc´ıho bodu m´a vˇetˇs´ı odolnost proti sˇumu a odlehl´ym hodnot´am, ale zato je kv˚uli v´ypoˇct˚um zvolen´ı nov´eho ohniska n´aroˇcnˇejˇs´ı. Nev´yhodou obou metod z˚ust´av´a stanoven´ı poˇctu tˇr´ıd pˇred samotnou anal´yzou a nevhodnost pro komplikovanˇejˇs´ı tvary. Shlukovac´ı metody zaloˇzen´e na jin´ych principech nalezneme napˇr´ıklad zde [1].
1.6.3 Predikce Metoda, kter´a posuzuje data podle jejich atribut˚u a pˇriˇrazuje jim hodnoty obecnˇe spojit´eho charakteru. Metoda pracuje na b´azi uˇcen´ı s uˇcitelem. Je tˇreba ji poskytnout ohodnocen´a tr´enovac´ı data a potom ji aplikovat na jin´a data s podobnou nebo stejnou strukturou. Pomoc´ı predikce m˚uzˇ eme napˇr´ıklad ˇreˇsit u´ lohy typu pˇredpov´ıd´an´ı u´ rody na urˇcit´e zemˇedˇelsk´e regiony, kdy zn´ame m´ıstn´ı historick´e hodnoty poˇcas´ı (jako teploty, sr´azˇ kov´e u´ hrny) a v´yslednou u´ rodu a podle letoˇsn´ıch hodnot bychom r´adi pˇredpovˇedˇeli objem t´e letoˇsn´ı. Mezi metody, se kter´ymi se zde setk´av´ame nejˇcastˇeji patˇr´ı line´arn´ı a v´ıcen´asobn´a line´arn´ı regrese, ale i jin´e viz. [2]. • Line´arn´ı regrese - Vektor dat, atribut˚u x1 , x2 , . . . , xn a hodnot atribut˚u y1 , y2 , . . . , yn , aproximuje rovnic´ı pˇr´ımky pomoc´ı metody nejmenˇs´ıch cˇ tverc˚u. Y = kX + q Mnoˇzinu tr´enovac´ıch dat metoda vyuˇzije na nastaven´ı koeficient˚u k, q. Predikce se prov´ad´ı dosazen´ım hodnoty atribut˚u do nauˇcen´eho klasifik´atoru. • V´ıcen´asobn´a regrese - Vyuˇz´ıv´a stejn´eho principu predikce, pouze zobecnˇen´eho pro N atribut˚u.
1.6.4 Klasifikace Klasifikace je rovnˇezˇ jedna z velmi d˚uleˇzit´ych u´ loh a je tedy rovnˇezˇ uvedena ve v´ycˇ tu, ale z hlediska zamˇeˇren´ı t´eto pr´ace se j´ı bude velmi podrobnˇe zab´yvat n´asleduj´ıc´ı kapitola.
12
Kapitola 2
Klasifikace 2.1
´ Uvod
2.1.1 Proces klasifikace Klasifikace dat je rozdˇelov´an´ı objekt˚u do skupin, tˇr´ıd podle jejich atribut˚u. Pod pojmem N-n´arn´ı klasifikace rozum´ıme rozdˇelov´an´ı do N tˇr´ıd, avˇsak N < ∞ . Klasifikace je metoda uˇcen´ı s uˇcitelem, klasifik´ator konkr´etn´ı klasifikaˇcn´ı metody se nauˇc´ı na mnoˇzinˇe dat, kter´a rozdˇelen´ı do tˇr´ıd jiˇz obsahuje, a pak je schopn´y jiˇz s´am klasifikovat data podobn´e povahy. 1. Uˇcen´ı klasifik´atoru na mnoˇzinˇe dat, u kter´ych zn´ame tˇr´ıdu. 2. Validace klasifik´atoru, ovˇeˇren´ı u´ speˇsnosti uˇcebn´ı f´aze. Klasifik´ator zpracuje data, u kter´ych mu zataj´ıme, do kter´e tˇr´ıdy patˇr´ı, a pak porovn´ame u´ spˇesˇnost, respektive stanov´ıme chybu. Validaˇcn´ı data nesm´ı b´yt podmnoˇzinou tr´enovac´ıch dat. 3. Klasifikace ostr´ych dat, kter´e maj´ı stejnou povahu a strukturu jako validaˇcn´ı a tr´enovac´ı, ale nejsou identick´a. Pˇredstavme si l´ekaˇrskou kliniku, kde jsou pacienti pˇred vyˇsetˇren´ım dotazov´an´ı na u´ daje o jejich celkov´em zdravotn´ım stavu, zˇ ivotn´ım stylu nebo zˇ ivotospr´avˇe a zda nˇekdy prodˇelali srdeˇcn´ı pˇr´ıhodu. Z takto z´ıskan´e datab´aze je klasifik´ator schopn´y izolovat skupinu lid´ı, u kter´ych je vyˇssˇ´ı riziko infarktu myokardu. U kaˇzd´eho novˇe pˇr´ıchoz´ıho pacienta m˚uzˇ e b´yt, na z´akladˇe zjiˇstˇen´ı potˇrebn´ych u´ daj˚u o jeho aktu´aln´ım stavu, stanoveno, jestli patˇr´ı do rizikov´e skupiny pˇred t´ım, neˇz zaznamenal jak´ekoliv pot´ızˇ e se srdcem a tato informace m˚uzˇ e b´yt vyuˇzita l´ekaˇrem napˇr´ıklad k lepˇs´ımu adresov´an´ı prevence.
2.1.2
Vlastnosti klasifik´atoru
Kvalita klasifik´ator˚u se odvozuje hlavnˇe od dosahovan´ych v´ysledk˚u. Pokud nˇekter´y model nevyhov´ı napˇr´ıklad ve f´azi validace, m˚uzˇ e b´yt chyba bud’ v datech, ve vhodnosti modelu pro danou u´ lohu, nebo ve formulaci cel´e dolovac´ı u´ lohy. Kvalita klasifik´atoru se d´ale pak hodnot´ı z tˇechto hledisek. • Pˇresnost - Schopnost odhalit podstatn´e vazby v datech a na z´akladˇe nich prov´est co nej´uspˇesˇnˇejˇs´ı klasifikaci. • Srozumitelnost - Jednoduˇse interpretovateln´e, na informace pˇrevediteln´e v´ysledky. • Rychlost - N´ızk´a cˇ asov´a n´aroˇcnost f´az´ı, zejm´ena pak uˇcen´ı. 13
• Stabilita - N´ızk´a chybovost v´ysledk˚u vzhledem k sˇumu v datech nebo rozs´ahlosti datab´aze.
2.2
Rozhodovac´ı strom
2.2.1 Algoritmus Zp˚usob prezentace dat formou rozhodovac´ıho stromu je zn´am z mnoha oblast´ı lidsk´e cˇ innosti. Princip indukce rozhodovac´ıch strom˚u byl pˇrevzat z metod strojov´eho uˇcen´ı. Postupujeme stylem rozdˇel a panuj. Tr´enovac´ı data postupnˇe, v z´avislosti na hodnot´ach atribut˚u, rozdˇelujeme na menˇs´ı a menˇs´ı celky tak, aby v jednotliv´ych uzlech pˇrevl´adaly data stejn´ych znak˚u. V nejniˇzsˇ´ı u´ rovni, listech, jsou data jiˇz rozdˇelen´a do tˇr´ıd. Poˇc´ınaje koˇrenov´ym uzlem prov´ad´ıme anal´yzu od shora dol˚u, postupnou specializaci atribut˚u tˇr´ıd. Mnoˇzina klasifikovan´ych dat D, Mnoˇzina uˇzit´ych atribut˚u A.
VytvorStrom(D, A) 1. Vytvoˇr nov´y uzel N. 2. Skonˇci a vrat’ uzel N jako list dan´e tˇr´ıdy, pokud vˇsechny data z mnoˇziny D jsou ve stejn´e tˇr´ıdˇe. 3. Skonˇci, pokud je seznam atribut˚u A pr´azdn´y. 4. Vyber a odstraˇn vhodn´y atribut Ai z mnoˇziny A a pojmenuj podle nˇej uzel N. 5. Pro kaˇzdou hodnotu atributu Ai opakuj: (a) Vytvoˇr vˇetev z uzlu N. (b) Vytvoˇr podmnoˇzinu mnoˇziny D, obsahuje pouze zvolenou hodnotu v atributu Ai . (c) Pokud je mnoˇzina pr´azdn´a, pak spoj list s nejbˇezˇ nˇejˇs´ı tˇr´ıdou v mnoˇzinˇe D. (d) Pokud je mnoˇzina nepr´azdn´a, rekurzivnˇe volej algoritmus VytvorStrom (viz. obr. 2.1) pro tuto podmnoˇzinu dat a mnoˇzinu atribut˚u A, ve kter´em budou chybˇet vˇsechny Ai podle, kter´ych jsme jiˇz klasifikovali.
14
Obr´azek 2.1: V´ystavba rozhodovac´ıho stromu
2.2.2
V´ybˇer atributu
V pˇredchoz´ı kapitole je atribut podle kter´eho se pojmenuje uzel pops´an jako vhodn´y. V t´eto chv´ıli se pod´ıv´ame, co to znamen´a a jak se takov´a vhodnost stanov´ı. Z hlediska vytv´aˇren´ı rozhodovac´ıho stromu, jsou v hieratick´e struktuˇre nejv´ysˇe um´ıstˇen´e uzly, kter´e maj´ı na podˇr´ızen´e uzly nejvˇetˇs´ı vliv, respektive nejv´ıce odliˇsuj´ı pˇr´ıklady r˚uzn´ych tˇr´ıd. Nab´ız´ı se analogie z praxe, kdy v urˇcovac´ım atlase rostlin, kter´y je tak´e vlastnˇe jenom druh rozhodovac´ıho stromu, t´ezˇ postupujeme od nejd˚uleˇzitejˇs´ıch fakt˚u k detail˚um. ˇ ım Rozliˇsovac´ı schopnost atributu A urˇc´ıme podle hodnot funkce informaˇcn´ıho zisku GAIN(A). C´ vyˇssˇ´ı zisk, t´ım vˇetˇs´ı rozliˇsovac´ı schopnost. Jak vid´ıme ze vzorce, je sloˇzen z rozd´ılu dvou funkc´ı a ˇr´ık´a, jak se redukuje celkov´a entropie dat v´ybˇerem jednoho atributu. GAIN(A) = H(C) − H(A) Celkov´a entropie dat: nt T nt T pi log2 pi = − ∑t=1 H(C) = − ∑t=1 n log2 n
Kde pi je pravdˇepodobnost, zˇ e n´ahodn´y vzorek z datov´e mnoˇziny bude klasifikov´an do i-t´e tˇr´ıdy, t´ezˇ se d´a na veliˇcinu pohl´ızˇ et jako na relativn´ı cˇ etnost i-t´e tˇr´ıdy. H(C) je entropie pro dan´y atribut vzhledem k cel´ym dat˚um.
15
nt (A(v) T nt (A(v) H(A(v) = − ∑t=1 n(A(v) log2 n(A(v)
H(A)) = − ∑Val(A) n(A(v) n H(A(v)) Kde H(A(v)) je hodnota entropie pro kaˇzdou hodnotu v atributu A nad daty, kde se vyskytuje A(v). H(A) je pak stˇredn´ı hodnota v´azˇ en´eho souˇctu H(A(v)).
2.2.3
Optimalizace
V praxi se setk´av´ame s t´ım, zˇ e klasifikovan´a data obsahuj´ı sˇum nebo odch´ylen´e hodnoty, nebo prostˇe svou povahou (hodnˇe bl´ızk´ych hodnot atribut˚u) stˇezˇ uj´ı indukci rozhodovac´ıho stromu. At’ uˇz je pˇr´ıcˇ inou kvalita nebo povaha dat, m˚uzˇ e doj´ıt k tomu, zˇ e algoritmus produkuje velk´e mnoˇzstv´ı vˇetv´ı a strom je pˇr´ıliˇs koˇsat´y, nebo dokonce nevhodnˇe postaven´y. Aby se pˇredch´azelo tˇemto neˇzadouc´ım efekt˚um, byly do algoritm˚u pro indukci rozhodovac´ıch strom˚u zabudov´any metody pro jejich optimalizaci nebo-li takzvan´e oˇrez´av´an´ı viz. [2]. • Prepruning - Anal´yza prob´ıh´a jiˇz pˇri vytv´aˇren´ı stromu. Algoritmus se rozhodne zda nepotˇrebn´y podstrom nenahrad´ı listem, cˇ i m´enˇe cˇ asteji i naopak. • Postpruning - Odstraˇnov´an´ı nev´yznamn´ych vˇetv´ı aˇz po dokonˇcen´ı stromu, na coˇz se mus´ı cˇ ekat a proces se zpomaluje. Zato m´a tato metoda pˇrehled o cel´em (hotov´em) stromu a je tedy schopn´a kvalifikovanˇeji podstromy posuzovat.V praxi se proto pouˇz´ıv´a bud’ kombinace obou metod nebo Postpruning
2.3
Neuronov´a s´ıt’
Dalˇs´ım z klasifik´ator˚u, o kter´em je tˇreba se zm´ınit, je neuronov´a s´ıt’. Jeden ze zn´am´ych princip˚u metod umˇel´e inteligence. Vyuˇz´ıv´a model fungov´an´ı lidsk´eho neuronu, kter´y ve spojen´ı s mnoha jin´ymi neurony tvoˇr´ı s´ıt’. Z hlediska dob´yv´an´ı znalost´ı pˇredstavuj´ı neuronov´e s´ıtˇe jeden z nejmocnˇejˇs´ıch a nejpouˇz´ıvanˇejˇs´ıch syst´em˚u, na kter´em jsou postaveny n´astroje pro klasifikaci a predikci. Silnou str´ankou je pr´ace s numerick´ymi atributy a na tomto poli pˇredstavuj´ı alternativu k rozhodovac´ım strom˚um.
2.3.1
Neuron
Lidsk´y neuron se skl´ad´a z tˇela a v´ybˇezˇ k˚u, kr´atk´ych dostˇrediv´ych axonu˚ a jednoho dlouh´eho odstˇrediv´eho dentridu. Axony jsou z jin´ych neuron˚u pˇriv´adˇeny informace. Pokud intenzita pˇren´asˇen´eho vzruchu dos´ahne jist´e hranice, informace je po zpracov´an´ı vysl´ana dentridem k jin´emu neuronu. Model pouˇz´ıvan´y pro naˇse u´ cˇ ely pracuje v z´asadˇe podobnˇe. Na vstupy umˇel´eho neuronu jsou pˇrivedeny hodnoty atribut˚u dat x1 , x2 , x3 , . . . , xn . V tˇelˇe neuronu jsou zpracov´ana tak, zˇ e informace, kter´e nesou jednotliv´e xi , jsou ohodnocena v´ahami w1 , w2 , . . . , wn . Souˇcin vah a vstup˚u se sˇc´ıt´a a k v´ysledn´e sumˇe je jeˇstˇe pˇriˇcten BIAS (konstanta) konkr´etn´ıho neuronu viz. obr. 2.2. ∑ni=1 wi xi + BIAS
16
Aktivaˇcn´ı funkce vhodn´ym neline´arn´ım zp˚usobem transformuje souˇcet podnˇet˚u. V´ystup je potom veden do vstupu neuronu v dalˇs´ı vrstvˇe nebo rovnou vyhodnocen. Nejpouˇz´ıvanˇejˇs´ı aktivaˇcn´ı funkc´ı v souvislosti s t´ımto typem neuronu je funkce: y=
1 1+e− x
Obr´azek 2.2: Sch´ema neuronu Poˇca´ teˇcn´ı nastaven´ı neuronu je libovoln´e. Uˇcen´ı prob´ıh´a iterativnˇe stanovov´an´ım chyby a n´asledn´e u´ pravy hodnot vah a biasu.
2.3.2
Neuronov´a s´ıt’ Backpropagation
Topologie Spojen´ım v´ıce samostatn´ych neuron˚u tak, zˇ e v´ystup z neuronu i pˇrivedeme opˇet jako vstup do neuronu i + 1 z´ısk´av´ame strukturu, kter´a sˇc´ıt´a rozhodovac´ı schopnost samostatn´eho neuronu. Vˇsechny neurony uspoˇra´ d´ame do vrstev a propoj´ıme je tak, zˇ e budou spojeny syst´emem kaˇzd´y s kaˇzd´ym v r´amci sousedn´ıch vrstev, ale neurony v r´amci stejn´e vrstvy z˚ustanou nespojeny. Prvn´ı vrstva, takzvan´a vstupn´ı, sama o sobˇe data nezpracov´av´a, jenom zajiˇstuje distribuci mezi ostatn´ı neurony sousedn´ı vrstvy. Klasifikace se odehrav´a zejm´ena ve skryt´e vrstvˇe, kter´ych m˚uzˇ e b´yt obecnˇe libovoln´y poˇcet, nicm´enˇe nejpouˇz´ıvanejˇs´ı topologie s´ıtˇe backpropagation m´a pr´avˇe jednu. V´ysledek je vyhodnocen v´ystupn´ı vrstvou. V´ysledky klasifikace pro aktu´aln´ı data z´ısk´av´ame z posledn´ı, v´ystupn´ı vrstvy viz. obr. 3.2.
17
Obr´azek 2.3: Sch´ema neuronov´e s´ıtˇe
Uˇcen´ı s´ıtˇe Backpropagation Jak uˇz bylo zm´ınˇeno v´ysˇe, uˇcen´ı neuronov´e s´ıtˇe spoˇc´ıv´a v nalezen´ı spr´avn´ych hodnot vah pro neuronov´e vstupy a hodnot konstatnt (bias˚u) pro samotn´e neurony. V prvn´ı iteraci jsou vˇsechny hodnoty nastaveny libovolnˇe. Pro tento jistˇe zmaten´y v´ystup se spoˇc´ıt´a chyba neuron˚u ve v´ystupn´ı vrstvˇe a podle n´ı zpˇetnˇe stanovujeme chyby neuron˚u v ostatn´ıch vrstv´ach (error backpropagation). C´ılem je zminimalizovat rozd´ıly mezi hodnotami ve v´ystupn´ım vektoru a mezi poˇzadovan´ym v´ysledkem, dokud se chyba neust´al´ı na nˇejak´e minim´aln´ı hodnotˇe, nedos´ahneme poˇzadovan´y poˇcet iterac´ı nebo jiˇz nedoch´az´ı k zˇ a´ dn´ym u´ prav´am hodnot vah a bias˚u. Opakujeme pro vˇsechny vzorky X mnoˇziny S dokud s´ıt’ nedos´ahla jedn´e z v´ysˇe uveden´ych podminek: 1. Pro kaˇzd´y neuron j spoˇc´ıtej hodnoty: I j = ∑ wi jOi + BIAS j Oj =
1 1+e− I j
Kde Oi je vstup do neuronu j z neuronu i nebo vstupn´ıho vektoru a wi j je v´aha vstupu mezi neuronem i a j. O j je v´ystup aktivaˇcn´ı funkce neuronu j.
18
2. Vˇsechny neurony znaj´ı ted’ sv´e v´ystupy, kter´e jsou porovn´any s vektorem spr´avn´ych v´ysledk˚u T j a nast´av´a f´aze distribuce chyby. Pro kaˇzd´y neuron j ve v´ystupn´ı vrstvˇe spoˇc´ıtej: Err j = O j (1 − O j )(T j − O j ) Kde O j je hodnota z vektoru aktu´aln´ıch v´ysledk˚u a T j hodnota z vektoru spr´avn´ych v´ysledk˚u. Pro chybu neuron˚u dalˇs´ıch vrstev poˇc´ıtej: Err j = O j (1 − O j ) ∑k Errk w j k 3. Uprav v´ahy a BIASy vˇsech neuron˚u: wi j = wi j + l(Err j Oi ) BIAS j = BIAS j + l(Err j ) Kde cˇ´ıslo l je koeficient uˇcen´ı, re´aln´e cˇ´ıslo z intervalu h0, 1i. Vyjadˇruje do jak´e m´ıry se bude neuronov´a s´ıt’ pˇrizp˚usobovat aktu´aln´ım vzork˚um. Pˇri vysok´em koeficientu se rychle uˇc´ı, zato se m˚uzˇ e st´at, zˇ e se nauˇc´ı klasifikovat v´yhradnˇe vzorky z tr´enovac´ı mnoˇziny. Kvalitn´ı implementace klasifik´ator˚u tento koeficient v pr˚ubˇehu uˇcen´ı dynamicky mˇen´ı.
19
Kapitola 3
Porovn´av´an´ı modelu˚ pro klasifikaci 3.1
V´yzkumn´y z´amˇer
Dolov´an´ı z dat se st´av´a pˇrirozenou souˇca´ st´ı procesu rozhodov´an´ı a rˇ´ızen´ı obecnˇe. Datamingov´e n´astroje jsou bˇezˇ nou v´ybavou pracoviˇstˇe kaˇzd´eho analytika. Pˇred potˇrebu efektivnˇe zanalyzovat sv´a data jsou stavˇeni i lid´e, kteˇr´ı nemaj´ı zˇ a´ dn´e odborn´e znalosti, a pˇresto mohou b´yt d´ıky modern´ım n´astroj˚um integrovan´ych do cel´ych analytick´ych prostˇred´ı u´ spˇesˇn´ı. Rozhodli jsme se pod´ıvat bl´ızˇ e na nˇekter´e vlastnosti model˚u, kter´e jsou pro u´ spˇesˇn´e dolov´an´ı z dat v bˇezˇ n´e praxi kl´ıcˇ ov´e. Hlavnˇe jsme se zamˇeˇrili na r˚uzn´e aspekty metod pro klasifikaci. K dispozici je vice klasifik´ator˚u r˚uzn´ych vlastnost´ı (logick´a regrese, neuronov´a s´ıt’, rozhodovac´ı strom). Bˇezˇ n´y uˇzivatel dataminingov´yvh n´astroj˚u (manaˇzer, analylitik) nen´ı a vlastnˇe ani nemus´ı b´yt do hloubky sezn´amen s principy jednotliv´ych klasifik´ator˚u . Jeho prioritou z˚ust´av´a uˇzit´a hodnota, kterou vydolov´an´ım urˇcit´e informace z´ısk´a. Naˇsim c´ılem je tedy porovnat v praxi nejbˇezˇ nˇeji pouˇz´ıvan´e klasifik´atory a z jejich vlastnost´ı stanovit, kter´y pln´ı, v z´avislosti na typu u´ lohy, poˇzadavky bˇezˇ n´eho uˇzivatele nejl´epe. Poˇradavky bˇezˇ n´eho uˇzivatele: ´ esˇnost, pˇresnost klasifikace - spr´avnost v´ysledk˚u, ke kter´ym model dospˇeje • Uspˇ • Srozumitelnost modelu - pouˇzitelnost vydolovan´e informace • Robustnost algoritmu - schopnost se vypoˇra´ dat s sˇumem a chybˇej´ıc´ımi hodnotami bez v´yrazn´e ztr´aty pˇresnosti, stability
3.2
Testovac´ı data
Rozhodli jsme se porovn´avat v´ysˇe uveden´e vlastnosti klasifik´ator˚u na datov´ych mnoˇzin´ach r˚uzn´ych vlastnost´ı. Zejm´ena n´as zaj´ımala pˇresnost pˇredpov´ıdac´ıch schopnost´ı klasifik´ator˚u pro r˚uznˇe sloˇzit´e datasety. Pro naˇse u´ cˇ ely bohatˇe dostaˇcovaly datasety s velikost´ı okolo 2000 vzork˚u s rovnomˇern´ym zastoupen´ım vzork˚u vˇsech tˇr´ıd. Pouˇzivaly jsme datasety ze zdroje: UCI Machine Learning Repository http://http://www.ics.uci.edu/~mlearn/MLSummary.html )
20
3.3
Prostˇred´ı SAS Enterprise miner
Pro vyhodnocov´an´ı jsme pouˇz´ıvali Enterprise miner platformu SAS 9.1 od firmy SAS Institute. Firma SAS je jedn´ım z hlavn´ıch producent˚u statistick´eho software. Enterprise miner je obrovsk´y bal´ık, kter´y obsahuje mnoho model˚u pro vyhodnocov´an´ı dat. Implementace je na vysok´e u´ rovn´ı, vˇetˇsinou jsou vˇsechny potˇrebn´e datov´e transformace zabudovan´e do konkr´etn´ıho datov´eho modelu. N´astroje pro pr´aci s daty jsou cˇ lenˇeny do skupin, kter´e odpov´ıdaj´ı metodice Semma, jejiˇz autorem je t´ezˇ firma SAS.
Uˇzivatelsk´e rozhran´ı Proces dob´yv´an´ı se pro kaˇzdou u´ lohu definuje pomoc´ı procesn´ıho diagramu, kter´y se skl´ad´a z uzl˚u a propojen´ı mezi nimi. K dispozici je toolbar odkud jednoduˇse um´ıst’ujeme uzly stylem drag and drop na pracovn´ı plochu. Uzly spojujeme sˇipkami, kter´e urˇcuj´ı jak budou data proch´azet zpracov´an´ım a z´aleˇz´ı tedy na jejich orientaci.
Obr´azek 3.1: Uk´azka uˇzivatelsk´eho rozhran´ı SAS Enteprise mineru
Procesn´ı diagram Kaˇzd´y uzel pln´ı v dolovac´ı u´ loze nˇejakou funkci. Pˇri rozkliknut´ı m˚uzˇ e uˇzivatel mˇenit a nastavovat parametry, pokud to ale neudˇel´a, syst´em zpravidla za nˇej s´am z´akladn´ı modelovac´ı nastaven´ı provede.
21
Obr´azek 3.2: Z´akladn´ı n´astroje
• Input data source - V´ybˇer a naˇcten´ı datasetu z knihoven SAS EM, editace poˇctu pouˇzit´ych vzork˚u. Startovn´ı uzel. • Insight - N´astroj pro prozkoum´an´ı v´ystupu jak´ehokoliv uzlu. • Transform variables - Editace datov´ych typ˚u, pod kter´ymi chceme s daty pracovat. Pr´ace s promˇen´ymi. • Data set attributes - Specifikace rol´ı promˇen´ych, urˇcen´ı vstup˚u a c´ıle klasifikace. Zam´ıtnut´ı promˇen´ych. • Data partition - Procentu´aln´ı rozdˇelˇen´ı datasetu na tr´enovac´ı, validaˇcn´ı a testovac´ı cˇ a´ st. • Regresion - Uzel pro nastaven´ı parametr˚u klasifik´atoru pro line´arn´ı regresi. • Neural network - Uzel pro nastaven´ı parametr˚u klasifik´atoru pro neuronovou s´ıt’. • Decision tree -Uzel pro nastaven´ı parametr˚u klasifik´atoru pro rozhodovac´ı strom. • Assessment - Vyhodnocovac´ı uzel, zobrazuje v´ysledky v podobˇe klasifikaˇcn´ıch graf˚u nebo ziskov´ych kˇrivek. Vkl´ad´an´ı dat Data se do SAS EM importuj´ı bud’ pˇr´ımo z datov´eho skladu, nebo za pomoc´ı standarn´ıho dialogu Import Data. K dispozici je ˇrada form´at˚u kompatibiln´ıch se software jako napˇr´ıklad exel, access, lotus notes. Velk´ym rozˇs´ıˇren´ım jsou pak uˇzivatelsky definovan´e form´aty, kter´e rozpozn´avaj´ı urˇcit´e z´akladn´ı oddˇelovaˇce a na z´akladˇe nich je moˇzn´e ruˇcnˇe transformovat data do podporovan´eho form´atu.
22
Modelov´an´ı a zobrazen´ı v´ysledku Pro nastaven´e procesn´ı sch´ema se modelov´an´ı spouˇst´ı kompilac´ı Assessment uzlu, obecnˇe posledn´ıho uzlu ve sch´ematu. SAS EM jiˇz zajist´ı kompilaci vˇsech pˇredch´azej´ıc´ıch uzl˚u. Pro u´ spˇesˇnost tohoto procesu je tˇreba: • M´ıt vhodnˇe (kompatibilnˇe) vloˇzen´a data. • Oznaˇcenou alespoˇn jednu promˇenou jako c´ıl klasifikace. • Spr´avnˇe zvolen´e a pospojovan´e uzly. V´ysledky v uzlu assess, ke kter´ym model dospˇel, jsou zobrazeny v podobˇe dvou r˚uzn´ych druh˚u graf˚u. Diagnostick´y graf klasifikace:
Obr´azek 3.3: Diagnostick´y graf klasifikace - Diagnostic chart
Graf m´a podobu krychle se z´akladn´ımi osami. Na osu X jsou naneseny tˇr´ıdy, kter´ymi jsou ohodnocena data. Na osu Y jsou pak nan´asˇeny tˇr´ıdy, do kter´ych je zaˇradil klasifik´ator. Na ose Z vid´ıme mnoˇzstv´ı klasifikovan´ych prvk˚u. Pokud by byla klasifikace 100% uspˇesˇn´a, shodovalo by se ohodnocen´ı vzorku z osy X s v´ysledkem klasifikace z osy Y a graf by mˇel podobu sloupc˚u pouze v diagon´ale roviny X - Y. Nˇekdy se st´av´a, zˇ e poˇrad´ı tˇr´ıd na ose Y nen´ı stejn´e jako na ose X a v´ysledn´a ide´aln´ı diagon´ala je deformovan´a. 23
Graf ziskov´e kˇrivky:
Obr´azek 3.4: Graf ziskov´e kˇrivky - Lift chart
Pomoc´ı grafu ziskov´e kˇrivky je moˇzn´e zpracovat pouze v´ysledky bin´arn´ı promˇen´e. Kˇrivka vyjadˇruje z´avislost mezi procentu´aln´ı u´ spˇesˇnost´ı klasifikace a poˇctem vzork˚u. Napˇr´ıklad klasifik´ator, jehoˇz v´ysledek je na obr´azku (ˇcerven´a kˇrivka), by zvl´adl mezi 10% vzork˚u klasifikovat spr´avnˇe 77%. Modr´a kˇrivka zn´azorˇnuje celkov´e zastoupen´ı dan´e tˇr´ıdy v datech. Pro 100% dat se obˇe kˇrivky logicky potkaj´ı. Zhodnocen´ı SAS EM je uk´azkou softwaru, d´ıky kter´emu jsou uˇzivatele schopn´ı dob´yvat informace, kter´e potˇrebuj´ı pro sv´e rozhodov´an´ı, aniˇz by museli b´yt experty na problematiku strojov´eho uˇcen´ı nebo datab´az´ı. Prostˇred´ı dovoluje snadno zakl´adat projekty a formulovat c´ıle u´ lohy, kter´e pak proch´az´ı kvalitn´ımi implementacemi klasifik´ator˚u. Veˇsker´e potˇrebn´e pˇredzpracov´an´ı dat (napˇr´ıklad diskretizace pro potˇreby rozhodovac´ıho stromu) je automatick´e a uˇzivatel o nˇem zpravidla ani nev´ı. Na druhou stranu jsou k dispozici uzly pro z´amˇern´e pˇredzpracov´an´ı dat, cˇ iˇstˇen´ı dat od chybˇej´ıc´ıch a vych´ylen´ych hodnot. SAS EM je moˇzn´e pouˇz´ıvat samostatnˇe, ale i jako souˇca´ st cel´e platformy SAS business inteligence.
24
3.4
Porovn´av´an´ı modelu˚
K dispozici jsme mˇeli nˇekolik klasifik´ator˚u s lehce odliˇsn´ymi vlastnostmi a zaj´ımalo n´as, kter´y z nich si povede l´epe na nˇekolika skupin´ach testovac´ıch dat. Pro srovn´av´an´ı jsme pouˇzivali klasifik´atory: Neuronov´a s´ıt, Logick´a regrese, Rozhodovac´ı strom z prostˇred´ı SAS EM ve standartn´ım nastaven´ı. • Neuronov´a s´ıt’- Je napˇr´ıklad silnˇejˇs´ı pˇri pr´aci s daty, kter´e maj´ı numerickou (spojitou) povahu. Naopak diskr´etn´ı u´ daje je tˇreba binarizovat (pˇriˇradit diskr´etn´ım poloˇzk´am numerick´e atributy). U neuronov´ych s´ıt´ı je nebezpeˇc´ı, zˇ e se takzvanˇe pˇreuˇc´ı (ve f´azi uˇcen´ı se pˇr´ıliˇs nauˇc´ı na prvky z tr´enovac´ı mnoˇziny a jin´e prvky pak klasifikuj´ı mylnˇe ). • Rozhodovac´ı strom- Neum´ı pracovat s numerick´ymi daty, kter´a je potˇreba diskretizovat, coˇz se ne vˇzdy podaˇr´ı ide´alnˇe. Rozhodovac´ı strom se sˇpatnˇe vyrovn´av´a s chybˇej´ıc´ımi hodnotami u atribut˚u dat, hodnoty je tˇreba doplnit napˇr´ıklad nejˇcastˇeji vyskytuj´ıc´ım se prvkem v dan´e datov´e mnoˇzinˇe, coˇz je z´asah, kter´y tak´e pˇrisp´ıv´a ke sn´ızˇ en´ı pˇresnosti v´ysledn´e klasifikace. • Line´arn´ı regrese- Pracuje t´ezˇ s numerick´ymi daty. Vhodnˇejˇs´ı pro predikci.
3.4.1 V´ybˇer klasifik´atoru s nejlepˇs´ımi v´ysledky Pˇredpoklad C´ılem cˇ´ıslo jedna kaˇzd´eho dolov´an´ı je pˇredevˇs´ım pˇresnost klasifikace a ve v´ysledku maximalizov´an´ı uˇzitku ze z´ıskan´e informace. Pˇredpokl´adali jsme, zˇ e rozd´ıly v povaze klasifik´ator˚u budou m´ıt vliv ´ esˇnost klasifikace. na jejich uspˇ Dataset Pro testov´an´ı klasifik´ator˚u jsme pouˇzivali datasety r˚uzn´ych parametr˚u - rozsah˚u, komplikovanosti a sofistikovanosti. Pro test nejvhodnˇejˇs´ıho klasifik´atoru m˚uzˇ eme, vzhledem k v´ysledk˚um, vybrat jeden pˇr´ıklad za vˇsechny (kompletn´ı pˇrehled vˇsech v´ysledk˚u v podobˇe graf˚u lze naj´ıt na pˇriloˇzen´em datov´em nosiˇci). Jde o data, kter´a byla nashrom´azˇ dˇena mezi pracuj´ıc´ımi lidmi v rove 1996. Atributy obsahuj´ı u´ daje jako vzdˇel´an´ı, obor ve kter´em dotyˇcn´y pracuje, pozici na kter´e pracuje, rodinn´y stav, zemi, pohlav´ı, rasu cˇ i poˇcet odpracovan´ych hodin t´ydnˇe a dalˇs´ı u´ daje (viz pˇr´ıloha), kter´e maj´ı vliv na ´ v´ysˇi mzdy. Ukolem klasifik´atoru je rozˇclenit lidi, do dvou tˇr´ıd podle v´ysˇe platu - pod a nad 50 tis´ıc dolar˚u za cˇ asovou jednotku. V´ysledek N´asˇ pˇredpoklad o dramatick´ych rozd´ılech ve v´ysledc´ıch klasifik´atoru pro tento relativnˇe komplikovan´y dataset (14 atribut˚u) se nepotvrdil viz. obr. 3.5, 3.6 a 3.7. T´emˇeˇr se vˇsemi 8-mi porovn´avan´ymi datasety mˇely vˇsechny tˇri klasifik´atory podobnou u´ spˇesˇnost, respektive podobnou chybu, pr˚umˇernˇe kolem 5%. V z´asadˇe s podobn´ymi v´ysledky jsme se setk´avali u vˇsech ostatn´ıch zkouman´ych dataset˚u. Z pohledu relativn´ıho srovn´an´ı vˇsak nejl´epe klasifikovala neuronov´a s´ıt’, s chybou ˇra´ dovˇe o jednotky procent niˇzsˇ´ı neˇz rozhodovac´ı strom a logick´a regrese. Tato v´yhoda je vˇsak vykoupena podstatnˇe delˇs´ı dobou uˇcen´ı, kter´a by mohla b´yt pˇri vˇetˇs´ıch objemech dat nev´yhodou.
25
Obr´azek 3.5: Diagnostick´y graf klasifikace pro neuronovou s´ıt’
Obr´azek 3.6: Diagnostick´y graf klasifikace pro logickou regresi
26
Obr´azek 3.7: Diagnostick´y graf klasifikace pro rozhodovac´ı strom
3.4.2
Vliv poˇctu atributu˚ na klasifikaci
Pˇredpoklad P˚uvodnˇe jsme pˇredpokl´adali, zˇ e chybovost klasifikace urˇcit´ym zp˚usobem souvis´ı se sloˇzitost´ı (poˇctem atribut˚u) datab´aze. Pokud by se klasifik´ator musel rozhodovat na z´akladˇe sˇirok´eho spektra atribut˚u, mus´ı vytvoˇrit strukturu, at’ uˇz rozhodovac´ıho stromu cˇ i neuronov´e s´ıtˇe, kter´a bude muset b´yt sloˇzitˇejˇs´ı a tedy i n´aroˇcnˇejˇs´ı na kvalitu algoritmu. Dataset Nechali jsme tedy vyhodnotit dva datasety, kter´e se oba vyznaˇcuj´ı vˇetˇs´ım poˇctem atribut˚u, pˇritom t´emˇeˇr vˇsechny jsou pro klasifikaci d˚uleˇzit´e. • Datab´aze hub - Obsahuje asi 22 atribut˚u, kter´e popisuj´ı typick´e znaky, podle kter´ych se urˇcuj´ı druhy hub jako tvar a povrch klobouˇcku, velikost, tvar a barva nohy nebo barva podhoub´ı. ´ Ukolem klasifik´atoru je urˇcit, zda je houba jedl´a nebo nejedl´a. • Datab´aze moˇrsk´ych sˇkebl´ı - Datab´aze jist´eho druhu moˇrsk´ych uˇsn´ı, kter´a obsahuje asi 8 rozmˇer˚u (atribut˚u), kter´e vznikly mˇeˇren´ım r˚uzn´ych fyzick´ych cˇ a´ st´ı tˇela sˇkeble. Pˇredmˇetem klasifikace je urˇcen´ı st´aˇr´ı (respektive poˇctu krouˇzk˚u na tˇele, coˇz nepˇr´ımo prozrazuje st´aˇr´ı u sˇkeble) podle fyzick´ych rozmˇer˚u jako jsou pr˚umˇer, v´aha a v´ysˇka schr´anky, pohlav´ı.. V´ysledek Porovn´an´ım v´ysledk˚u tˇechto dvou dataset˚u viz. obr. 3.9 a 3.8 jsme dospˇeli k z´avˇeru, zˇ e v´ysledek nezbytnˇe nez´avis´ı pˇr´ımo na poˇctu atribut˚u. Vˇsechny modely podaly velmi podobn´e v´ysledky, pro jednoduchost jsou zde tedy pouze v´ysledky modelu logick´e regrese. 27
Obr´azek 3.8: Diagnostick´y graf klasifikace datab´aze hub
Obr´azek 3.9: Diagnostick´y graf klasifikace datab´aze moˇrsk´ych sˇkebl´ı
28
Jak je vidˇet z diagnostick´eho grafu klasifikace pro houbov´y dataset, klasifikace dopadla velmi dobˇre, i kdyˇz m´a asi tˇrikr´at tolik atribut˚u co dataset se sˇkeblemi. Na v´ysledky klasifikace tˇechto dvou dataset˚u mohou bezesporu m´ıt vliv i v´ıce r˚uzn´ych okolnost´ı, nicm´enˇe tento pozoruhodn´y rozd´ıl n´as pˇrivedl na myˇslenku, zˇ e v´ıce neˇz poˇcet atribut˚u klasifikaci ztˇezˇ uje poˇcet tˇr´ıd, do kter´ych klasifikujeme. Provedli jsme proto redukci poˇctu z 18 tˇr´ıd na 4 tˇr´ıdy. P˚uvodn´ı tˇr´ıdy cˇ lenˇen´e podle poˇctu krouˇzk˚u od 1 aˇz 18, jsme nahradili pouze kategoriemi mal´y, stˇredn´ı, vˇetˇs´ı, velk´y.
Obr´azek 3.10: Diagnostick´y graf klasifikace pro 4 tˇr´ıdy
Pˇresto, zˇ e klasifik´ator jiˇz akceptovatelnˇe nepozn´a vˇetˇs´ı sˇkebli viz. obr. 3.10, je redukce poˇctu tˇr´ıd bezesporu prospˇesˇn´a. Ropozn´avac´ı schopnost mal´ych sˇkebl´ı se zlepˇsila.
29
3.4.3 Vydolovatelnost informace Pˇredpoklad V nˇekter´ych datab´az´ıch, jako tomu bylo napˇr´ıklad z v´ysˇe uveden´ym datasetem sˇkebl´ı, nen´ı moˇzn´e spolehlivˇe dolovat informace, v naˇsem pˇr´ıpadˇe prov´adˇet klasifikaci. Protoˇze o datech m´ame informace, kter´e ve skuteˇcnosti na v´yslednou tˇr´ıdu maj´ı mal´y vliv. Klasifik´ator pak vlastnˇe nechybuje, jenom v datech, kter´e mu byly poskytnuty, nen´ı poˇzadovan´a souvislost v˚ubec patrn´a. Dataset Pro demostraci t´eto vlastnosti, jsme vygenerovali umˇel´y dataset (gener´ator viz. web http://www.datasetgenerator.com), ve kter´em jsou vˇsechny tˇr´ıdy pˇresn´ym d˚usledkem atribut˚u dat. Pro srovn´an´ı je zde pak dataset, ve kter´em se posuzuje pouˇz´ıvan´a antikoncepˇcn´ı metoda v z´avisloti na demografick´ych a soci´aln´ıch datech, kter´e o sobˇe poskytly indon´ezk´e zˇ eny pˇri vl´adn´ım pr˚uzkumu v rove 1987. Vdan´e zˇ eny byly dotazov´any, aby uvedly napˇr´ıklad sv´e vzdˇel´an´ı, pracovn´ı pozici, spoleˇcensk´e postaven´ı, vyzn´an´ı a z´aroveˇn zda pouˇz´ıvaj´ı jednor´azovou, dlouhodobou nebo zˇ a´ dnou metodu antikoncepce. V´ybˇer antikoncepce, zde uv´ad´ıme jako pˇr´ıklad vˇeci, kter´a z´avis´ı na velk´em mnoˇzstv´ı faktor˚u, kter´e je tˇezˇ k´e vˇsechny zaznamenat.
Obr´azek 3.11: Diagnostick´y graf klasifikace metod antikoncepce
30
Obr´azek 3.12: Diagnostick´y graf klasifikace umˇel´eho datasetu
V´ysledek Jak je vidˇet z grafu viz. obr. 3.11 a 3.12 , klasifik´ator nebyl pˇri urˇcen´ı metody antikoncepce pˇr´ıliˇs u´ spˇesˇn´y. Poˇcet sˇpatnˇe klasifikovan´ych vzor˚u je o nˇeco m´alo menˇs´ı neˇz poˇcet spr´avnˇe klasifikovan´ych. Pokud se pod´ıv´ame bl´ızˇ e na okolnosti klafikace, zjist´ıme, zˇ e nejpodstatnˇejˇs´ım atributem nebyly demografick´e nebo soci´aln´ı okolnosti, ale celkov´y poˇcet dˇet´ı. Klasifik´ator, prostˇe nemˇel dost relevantn´ıch informac´ı. Naproti tomu syntetick´y dataset se skl´adal pouze ze vzork˚u, jejichˇz tˇr´ıda byla pˇresn´ym odvozen´ım z atribut˚u zaloˇzen´ych na podobn´ych pravidlech.
c1 → B=c & C=j & F=b c8 → A=d & D=g & F=m a podobnˇe . . .
3.4.4
Zaˇsumˇel´a tˇr´ıda
Pˇredpoklad V pr˚ubˇehu porovn´av´an´ı jsme si vˇsimli zaj´ımav´eho u´ kazu. U nˇekter´ych dataset˚u se st´avalo, zˇ e nˇekter´e klasifik´atory odm´ıtaly pˇriˇrazovat vzorky do nˇekter´ych tˇr´ıd. Po bliˇzsˇ´ım prozkoum´an´ı dat v tˇechto tˇr´ıd´ach jsme zjistili, zˇ e se zde vyskytuj´ı vzorky, kter´e aˇckoliv maj´ı stejn´e nebo t´emˇeˇr stejn´e atributy, n´aleˇz´ı do r˚uzn´ych tˇr´ıd. Znamenalo by to, zˇ e implementace klasifik´ator˚u v SAS EM vynechaj´ı tˇr´ıdu pokud naraz´ı na rozporupln´e informace.
31
Obr´azek 3.13: Diagnostick´y graf klasifikace datasetu se zaˇsumˇelou tˇr´ıdou
Dataset Graf na obr. 3.13 je v´ysledkem klasifikace dat automobil˚u s atributy s r˚uzn´ymi vlastnostmi jako poˇrizovac´ı cena, n´aklady na udrˇzbu, poˇcet dveˇr´ı atd. Vzorky byly rozdˇeleny do tˇr´ıd podle u´ spˇesˇnosti v prodej˚u na trhu - nepˇrijateln´a, pˇrijateln´a, dobr´a, velmi dobr´a. Ve tˇr´ıdˇe s dobrou prodejnost´ı se vyskytovalo tolik r˚uzn´ych vzork˚u, zˇ e neuronov´a s´ıt’ do t´eto tˇr´ıdy odm´ıtla klasifikovat. Abychom si tomu domˇenku potvrdili, vygenerovali jsme umˇel´y dataset, kter´y obsahoval zhruba 1000 vzork˚u, kter´e byly rozdˇeleny na tˇri cˇ a´ sti. Vzorky s cˇ´ıslem 5 a ohodnocen´ım tˇr´ıdou “pˇetky”, cˇ´ıslem 10 a ohodnocen´ım tˇr´ıdou “des´ıtky”, cˇ´ıslem 15 a ohodnocen´ım tˇr´ıdou “patn´actky”. Zhruba kaˇzd´y p´at´y vzorek byl ohodnocen tˇr´ıdou sˇum, at’ jeho atribut byl jak´ykoliv z v´ysˇe uveden´ych. V´ysledek Splnilo se oˇcek´av´an´ı, zˇ e zˇ a´ dn´y z klasifik´ator˚u tˇr´ıdu sˇum to klasifikace v˚ubec nezahrne. Neobsahuje totiˇz zˇ a´ dny atribut, podle kter´eho by tak bylo spr´avn´e uˇcinit.
32
Obr´azek 3.14: Diagnostick´y graf klasifikace datasetu s umˇele zaˇsumˇelou tˇr´ıdou
33
Kapitola 4
Z´avˇer ˚ kter´e ovlivˇnuj´ı uspˇ ´ esˇnost klasifikace Tato pr´ace mˇela za u´ kol zhodnotit vlastnosti klasifik´atoru, v r˚uzn´ych typech datab´az´ı. V prvn´ı cˇ a´ sti byl cˇ ten´aˇr na pˇrehledov´e u´ rovni sezn´amen s dataminingem obecnˇe a posl´eze podrobnˇeji i s principy, na kter´ych pracuj´ı modely, jejichˇz vlastnosti jsme porovn´avali. Pˇredstavili jsme si prostˇred´ı SAS EM, kter´e umoˇznuje rychl´e a snadn´e ˇreˇsen´ı dolov´ac´ıch u´ kol˚u. Bˇehem porovn´av´an´ı v´ysledk˚u klasifikace u´ cˇ elovˇe zvolen´ych dataset˚u jsme doˇsli k nˇekter´ym poznatk˚um, kter´e ponˇekud pˇredˇcily naˇse oˇcek´av´an´ı. Doˇsli jsme k nˇekter´ym z´avˇer˚um, kter´e pomohou i laick´emu uˇzivateli, manaˇzerovi, studentovi l´epe pochopit podstatu dobˇre zformulovan´e dolovac´ı ´ ulohy a z´akladn´ı hlediska jej´ı u´ spˇesˇnosti. Budouc´ıch moˇzn´ych rozˇs´ıˇren´ı pro tuto oblast se nab´ız´ı hned nˇekolik, z´aleˇz´ı jak´ym smˇerem se hodl´ame vydat, moje pr´ace se soustˇredila pouze na modely klasifikace, nab´ız´ı se ostatn´ı zmiˇnovan´e modely - shlukovan´ı, predikce, asociaˇcn´ı pravidla. Pokud bychom se zamˇeˇrili na sp´ısˇe na u´ roveˇn detail˚u pr´ace, je moˇzn´e vlastnosti model˚u porovn´avat v podstatnˇe vˇetˇs´ıch podrobnestech, vˇcetnˇe stanoven´ı urˇcit´eho pˇrenosn´eho syst´emu metrik pro porovn´av´an´ı.
34
Literatura [1] Berka, Petr: Dob´yv´an´ı znalost´ı z datab´az´ı. Book. Academica, Praha, 2003. [2] Zendulka, Jaroslav, a kol. :Z´ısk´av´an´ı znalost´ı z datab´az´ı: Studijn´ı opora. Fakulta informaˇcn´ıch technologi´ı, Brno, 2006. [3] Han,J., Kamber, M.: Concepts and techniques. Elsevier Inc.,2006.
35
Dodatek A
Pˇr´ıloha Na pˇriloˇzen´em m´ediu (cd-rom) lze nal´ezt elektronickou podobu tohoto textu, vˇsechny porovn´avan´e datasety (vˇcetnˇe zde nezmiˇnovan´ych) a jejich v´ysledky v podobˇe diagnostick´ych graf˚u.
36