Rudarenje podataka korištenjem metode stabla odlučivanja

SVEUČILIŠTE U MOSTARU
FAKULTET PRIRODOSLOVNO-MATEMATIČKIH I ODGOJNIH ZNANOSTI
INFORMATIKA
Martina Nevistić
Rudarenje podataka korištenjem metode
stabla odlučivanja
Diplomski rad
Mostar, 2014.
SVEUČILIŠTE U MOSTARU
FAKULTET PRIRODOSLOVNO-MATEMATIČKIH I ODGOJNIH ZNANOSTI
INFORMATIKA
Rudarenje podataka korištenjem metode
stabla odlučivanja
Diplomski rad
Mentor: Dr.sc. Goran Kraljević
Student: Martina Nevistić
Mostar, srpanj 2014.
SADRŽAJ:
1. UVOD .......................................................................................... 1
2. RUDARENJE PODATAKA ..................................................... 3
2.1. Upotreba rudarenja podataka ...................................................................... 5
2.2. Metode rudarenja podataka ......................................................................... 7
2.3. Programi za rudarenje podataka................................................................ 14
2.4. Proces rudarenja podataka ........................................................................ 17
3. STABLA ODLUČIVANJA ..................................................... 23
3.1. Prednosti i nedostaci metode stabla odlučivanja ...................................... 26
3.2. Algoritmi u metodi stabla odlučivanja ...................................................... 28
3.3. Problem u modeliranju podatka - Overfiting .......................................... 31
4. PRIMJER RUDARENJA PODATAKA ................................ 32
4.1. Programski paket - Weka .......................................................................... 32
4.2. Primjer rudarenja podataka korištenjem stabla odlučivanja ..................... 38
5. ZAKLJUČAK ........................................................................... 46
6. LITERATURA ......................................................................... 47
PRILOG ........................................................................................ 48
Rudarenje podataka korištenjem metode stabla odlučivanja
1. UVOD
Poduzeća prikupljaju velike količine podataka potrebnih za svoje poslovanje.
Međutim, nas zanima, postoje li još nekakve dodatne informacije u tim već
prikupljenim i poznatim podatcima koje mogu biti korisne za poslovanje nekog
poduzeća.
Rudarenje je mnogo više od kopanja, nije cilj kopati, već odvojiti korisno od
nekorisnog. Kod rudarenja podataka iz mase podataka treba izdvojiti male
dijelove koji predstavljaju znanje, a onda dodatnom obradom stvoriti novo
znanje, pa doći i do novih tehnoloških otkrića. U pojmovnom razlikovanju znanja
od podataka, znanje se sastoji od činjenica, pretpostavki i vjerovanja, ali posebno
važno i od načina kako ih upotrijebiti.
Ogromne baze podataka bogate su podacima, ali i siromašne informacijama
koje su skrivene u pohranjenim podacima. Upravo je rudarenje podataka to koje
pomaže otkriti važne informacije i znanje utkano u podatke, uvelike pridonoseći
donošenju odluka, poslovanju i znanosti.
Pored osnovnih podataka o rudarenju podataka osvrnut ćemo se na stabla
odlučivanja koja su glavna teza ovog diplomskog rada. Stabla odluke
funkcioniraju na način da se na temelju odlučivanja zasnovanih na poznatih
situacijama i odlukama konstruira stablo odlučivanja. Najširu primjenu ima za
rješavanje prediktivnih problema uz nadzor učenja.
Uz stabla odlučivanja obradit ćemo važnije algoritme ko što su Cart, C5.0,
Chaid i jedan od najvažniji problema stabla odlučivanja, overfiting. Obradit
ćemo i open-source alat Weka.
Alat WEKA razvijen na sveučilištu Waikato na Novom Zelandu
[WITF1999]. Programski paket WEKA ima poseban ARFF format datoteka za
spremanje skupova podataka. Osnovna karakteristika ovog formata podataka je
da postoji definicija imena i tipa atributa. Sve definicije atributa navode se ispred
samih podataka koji započinju nakon oznake „@data“.
1
Rudarenje podataka korištenjem metode stabla odlučivanja
Weka omogućuje cijeli proces rudarenja podacima, koji uključuje pripremu
ulaznih podataka, statističku evaluaciju procesa učenja i vizualizaciju ulaznih
podatka i rezultata strojnog učenja.
U praktičnom dijelu rada realiziran je primjer temeljen na podacima
zoološkog vrta koje ćemo analizirati korištenjem navedenog programskog paketa
- Weka.
2
Rudarenje podataka korištenjem metode stabla odlučivanja
2. RUDARENJE PODATAKA
Rudarenje podataka (eng. data mininig) je proces pronalaženja novog i
potencijalno korisnog znanja iz podataka, odnosno kao otkrivanje ili rudarenje
znanja iz velike količine podataka1. Bolji bi izraz možda bio rudarenje znanja iz
podataka gdje se rudarenje odnosi na ono što se pronalazi kao rezultat tog
procesa. Rudarenje podataka je prirodna evolucija tehnologije, a koja
upotrebljava koncepte, metode i tehnike različitih disciplina kao što su baze
podataka, statistika i umjetna inteligencija. Tehnologija baza podataka se razvila
iz primitivnih u sofisticirane i moćne sustave baza podataka kakve danas
poznajemo.
Taj razvoj omogućio je bilježenje i sakupljanje ogromnih količina podataka
što je neizbježno dovelo i do potrebe obrade i analize tih podataka, a sve u svrhu
dobivanja korisnih informacija i znanja. Današnja informacijska tehnologija
omogućila nam je bilježenje svake aktivnosti u obliku digitalnih podataka, a
količina sakupljenih podataka u mnogim bazama mjeri se u gigabajtima ili
terabajtima. Ogromne baze podataka bogate su podacima, ali i siromašne
informacijama koje su skrivene u pohranjenim podacima.
Upravo je rudarenje podataka to koje pomaže otkriti važne informacije i
znanje utkano u podatke, uvelike pridonoseći donošenju odluka, poslovanju i
znanosti. Rudarenjem se, također, otkrivaju odnosi, logičnost, pravilnost te
općenito bilo kakve strukture među podacima. Rudarenje podrazumijeva
organiziranje baza čišćenjem podataka kako bi se pristupilo znanju i stjecanju
istog na temelju postojećih podataka u bazama2. Razvoj tehnologije, računala,
interneta bitno doprinosi lakšem organiziranju podataka, no da bi oni postali
korisni, potrebno je njihovo pretvaranje u informacije i znanje.
1
Čačić, V. i Varga, M. (2004). Informacijska tehnologija u poslovanju. Zagreb: Element,
str. 39.
2
Williams, G. (2011). Data Mining with Rattle and R. Florida: Springer, str. 119.
3
Rudarenje podataka korištenjem metode stabla odlučivanja
Termin rudarenja često se poistovjećuje sa dva različita procesa: otkrivanje i
predviđanje znanja3.
Proces otkrivanja znanja implicira korisnikovo razumijevanje eksplicitnih
informacija za koje je bitno da su u čitljivom obliku. Predviđanje se odnosi na
buduće događaje i u nekim pristupima može biti čitljivo i prozirno dok u drugim
neprovidno.
3
Pudi, V. and Krishna, R. (2009). Data Mining. Oxford: Oxford University Press, str. 122.
4
Rudarenje podataka korištenjem metode stabla odlučivanja
2.1. Upotreba rudarenja podataka
U poslovanju rudarenje podataka se najviše koristi na području
marketinga, koji je usmjeren sve više pojedinačnom kupcu - upravljanje
odnosima s kupcima (eng. Customer Relationship Management - CRM) koje je
usmjereno stvaranju, održavanju ili poboljšavanju odnosa s kupcima4.
Cilj ove pojedinačne usmjerenosti na kupca jeste pridobivanje novih kupaca i
zadržavanje starih kupaca. CRM pokušava uvidjeti želje i potrebe kupaca,
razumjeti njihovo ponašanje te predvidjeti buduće ponašanje. Na ovom području
rudarenje podataka je posebno učinkovito, naravno uz dovoljnu količinu
kvalitetnih podataka o kupcu.
U marketingu, rudarenje podataka se najviše upotrebljava za5:
1. Direktni marketing: npr. katalozi i ponude različitih artikala se šalju kupcima
za koje postoji najveća vjerojatnost odaziva; pozivi upućeni starijim
generacijama (ugl. umirovljenicima) na prezentacije od 10-ak ljudi gdje
prodajni putnici prodaju različite proizvode po tvorničkoj cijeni samo za njih
večeras. Npr. prodaju proizvode od merino vune, proizvode koje ne štete
našem zdravlju.
2. Izradu profila kupaca: utvrđuje se uzorak ponašanja kupaca da bi mu se
kasnije poslala prilagođena ponuda. Npr. neće D&G slati svoje kataloge s
odjećom po Retfali.
3. Segmentaciju: utvrđivanje grupa kupaca s jednakim karakteristika (uzorkom
ponašanja).
4
Witten, I. H. and Eibe, F. (2011). Data Mining. San Francisco: Morgan kaufmann, str. 313.
5
Isti, str. 315.
5
Rudarenje podataka korištenjem metode stabla odlučivanja
4. Istraživanje povezanosti prodaje različitih proizvoda – analiza kupovne
košarice što se može npr. upotrijebiti za raspoređivanje artikala na policama.
Npr. u diskontu gdje se prodaju tehničke olovke, kraj njih će sigurno stajati i
špicevi za te iste tehničke. Ili, kraj mapa za crtanje/likovni, u blizini te police
sigurno će nalaziti vodene boje, tempere i sl.
5. Stimulacija kupovine drugih artikala istog poduzeća, odnosno veće količine
sitih artikala, što može nadoknaditi pridobivanje novih kupaca. Kako ćemo
ovo postići? Npr. uz dva kupljena Ariel-a (praška za rublje) dobivate na
poklon omekšivač za rublje koji je stigao kao gratis u to poduzeće (ali kupci
to naravno ne znaju).
6. Zadržavanje kupaca – ovo je puno jeftinije od pridobivanja novih kupaca. Za
primjer možemo uzeti slanje reklamnih materijala te njihov odaziv na te
kataloge. Postoje dvije mogućnosti kome ćemo kataloge uputiti, hoćemo li ih
izabrati nasumično ili uz pomoć metode rudarenja podataka.
6
Rudarenje podataka korištenjem metode stabla odlučivanja
2.2. Metode rudarenja podataka
U rudarenju podataka koriste se metode već poznate iz statistike,
matematike i računovodstva. Među njima se najčešće koriste:
1. Metoda potrošne košarice: za ovu liniju je karakteristično da istraživači
ili drugi stručnjaci prvo definiraju košaru dobara i usluga koje drže nužnima,
a zatim se ukupna cijena ovih dobara i usluga određuje kao linija siromaštva.
Ova metoda se danas službeno koristi u SAD-u, Austriji, Njemačkoj,
Švedskoj6. Jedan od načina procjene ukupnih troškova je Engelov koeficijent.
Engel je proučavajući obrasce obiteljske potrošnje u 19.st.primjetio da postoji
obrnuti odnos između prihoda i postotaka ukupnih izdataka za prehranu. S
porastom dohotka naglo se povećavaju izdaci za druge potrebe (kulturne,
zdravstvene, higijenske) s time da ovi izdaci rastu brže nego dohodak.
Engelov koeficijent bi bio broj koji označava udio izdataka za granu u
ukupnom dohotku kućanstva. Drugi umjesto Engelovih koeficijenata koriste
omjer između izdataka za granu i cjelokupnog dohotka kućanstva. Budžetska
metoda ima prednost što je u načelo jednostavna-treba def.minimalni
standard življenja i onda odrediti količinu potrebnih resursa.
Ova je metoda bliska konceptu apsolutnog siro.i koristi objektivna mjerila
siromaštva. Osnovna poteškoća je vezana za utvrđivanja sadržaja košare,
sastav košare ovisi o socijalnim, ekonomskim i demografskim varijablama i
osjetljiv je na promjene u platnim razlikama koje se događaju u ekonomiji.
Temelji se na otkrivanju asocijativnih pravila koja pokazuju koji se parovi
artikla i s kojom vjerojatnošću kupuju zajedno7. Npr. Kupac će uz proizvod A
kupiti i proizvod B.
6
Čačić, V. i Varga, M. (2004). Informacijska tehnologija u poslovanju. Zagreb: Element,
str. 42.
7
Williams, G. (2011). Data Mining with Rattle and R. Florida: Springer, str. 125.
7
Rudarenje podataka korištenjem metode stabla odlučivanja
2. Metoda najbližeg susjeda (računanje udaljenosti): Ova metoda
omogućuje automatsko klasificiranje dokumenata. Npr. kad čitatelj pronađe
neki zanimljivi članak, pomoću ove metode može pronaći i druge slične
članke. Ovdje se ističu dva tipa, a to su: modeli rada i osnovnih procesa te
funkcija udaljenosti i tip zadatka. U računanju udaljenosti obavljaju se zadaće
utvrđivanja
apsolutnih
vrijednosti
razlike,
normalizacije
apsolutne
vrijednosti, Euklidska udaljenost i Manhattan udaljenost8. Euklidska
udaljenost je najkraći razmak između dvije točke u jednom prostoru. U
jednoj ravni je primjera radi definisana po Pitagorinoj teoremi. Udaljenost
dvije točke (x, y) kod jednog pravouglog trougla9:
Dužina horizontalne linije je kateta:
Dužina vertikalne linije je kateta:
Prema tome udaljenost je hipotenuza:
S druge strane, Manhattan Udaljenost je udaljenost između dvije točke
mjerene po osi pod pravim kutom. Naziv aludira na izgled rešetke od ulicama
Manhattana, što uzrokuje najkraći put automobil mogao potrajati između
dvije točke u gradu. Za 8-puzzle , ako je xi (i) i yi (i) su x i y koordinate
pločica I u stanje s, a ako je gornja linija (xi) i gornja linija (yi) su X i Y
koordinate pločica i na gol države, heuristička je: U sljedećem primjeru
Manhattan Udaljenost je 3+6 = 9 potezi:
8
Williams, G. (2011). Data Mining with Rattle and R. Florida: Springer, str. 134.
9
Witten, I. H. and Eibe, F. (2011). Data Mining. San Francisco: Morgan kaufmann, str. 319.
8
Rudarenje podataka korištenjem metode stabla odlučivanja
Radi lakšeg računanja udaljenosti upotrjebljava se transformacija iz
nenumeričke vrijednosti u numeričku te se najčešće upotrijebljavaju za
segmentaciju tržišta.
3. Grupiranje
ili
sjedinjavanje
objekata
sličnih
osobina:
jest
razvrstavanje jedinki u skupine u kojima je postignuta njihova najveća
sličnost (segmentacija kupaca: podatci o starosti, zanimanju, dosadašnjoj
kupnji). Postoje dva tipa metode grupiranja, a to su K means klasteriranje i
hijerarhijsko klasteriranje.
Proces K means klasteriranja se sastoji od: odabir K segmenta, određivanje
središta segmenta, pridruživanje elemenata na temelju udaljenosti središta,
izračun nove vrijednosti središta s novim elementima te ponavljanje akcije
dok se ne mijenja vrijednost središta. ovaj algoritam ima za cilj minimizirati
je objektivna
funkcija,
u
ovom
slučaju
kvadratna
funkcija
pogreške10. Objektivna funkcija11:
gdje
i klastera centru
je izabrana udaljenost mjera između točke podataka
, je pokazatelj udaljenosti od n točaka podataka do svojih
središta klastera.
Hijerarhijsko
klasteriranje je
metoda klastera koja
nastoji
izgraditi
hijerarhiju klastera. Ovdje postoje dvije vrste, a to su: aglomerativno
hijerarhijsko grupiranje koje podrazumijeva bottom up pristup u kojemu
svako promatranje počinje u vlastitom klasteru12.
10
Williams, G. (2011). Data Mining with Rattle and R. Florida: Springer, str. 140.
11
Isti, str. 142.
12
Isti, str. 144.
9
Rudarenje podataka korištenjem metode stabla odlučivanja
Kao drugi navodi se divizijsko hijerarhijsko grupiranje koji podrazumijeva
top down odnosno sve primjedbe počinje u nekoj skupini. Kao glavna
negativnost hijerahijskog klastera navodi se nemogućnost ponavljanja
klasifikacije nakon podjele na klastere.
4. Stabla odlučivanja: Ova metoda funkcionira na način da se na temelju
odlučivanja zasnovanih na poznatih situacijama i odlukama konstruira se
stablo odlučivanja. Ova metoda omogućuje laku interpretaciju grafova-stabla.
Osnovni cilj je određivanje varijanti i njihovih vrijednosti koji determiniraju
neku pojavu ili skup pojava13. Obično se primjenjuju u određivanju sklonosti
potrošača kupnji nekog proizvoda s obzirom na zadane atribute.
Slika 1.: Primjer stabla odluke za kupnju jogurt
13
Witten, I. H. and Eibe, F. (2011). Data Mining. San Francisco: Morgan kaufmann, str. 321.
10
Rudarenje podataka korištenjem metode stabla odlučivanja
5. Bayesove mreže su grafički prikaz distribucija vjerojatnosti. Uglavnom se
koriste za predstavljanje neodređenosti u raznim domenama na jednostavan i
lako razumljiv način14.
Razlikujemo tri vrste vjerojatnosti kod Bayesovih mreža15:
A priori vjerojatnost - vjerojatnost se procjenjuje na temelju provjerenih
modela koje nije potrebno provjeravati (primjer: postoji 50% vjerojatnosti da
će bačeni novčić pasti na “pismo“ i 50% vjerojatnosti da će pasti na “glavu“).
Uvjetna vjerojatnost - vjerojatnost da je nešto istina uz poznate dodatne
informacije o svijetu (npr. siguran sam da me boli zub - koja je vjerojatnost
karijesa).
Združena vjerojatnost - kombinacija dva ili više događaja, za prikaz svih
mogućih ishoda koristimo združenu distribuciju vjerojatnosti.
Bayesova mreža ima određenih prednosti: odlična je za modeliranje
vjerojatnosti, primjenjiva u stvarnim aplikacijama te kod ove mreže postoje
gotove implementacije16
14
Williams, G. (2011). Data Mining with Rattle and R. Florida: Springer, str. 152.
15
Isto.
16
Isti, str. 168.
11
Rudarenje podataka korištenjem metode stabla odlučivanja
Akcija
Potreba
Razmjere
Primjerena
visina
Visina

trave
Suha
Vrsta
trave
Ljetni
sat
Večer
trava
Slika 2.: Primjer Bayesove mreže
6. Asocijativna pravila: Ova pravila su pravila oblika AKO-TADA. Pokazuje
vjerojatnost da jedan događaj veže uz sebe drugi događaj.
Npr. Ako se dogodi A1, A2 i…An, tada se često dogodi B1, B2 i…Bn
Ako smo kupili printer, tada ćemo kupiti i papir17.
Drugim riječima, ova pravila su vezana za kupovinu stvari u paru, jer stvar A
ne može funkcionirati bez stvari B i obrnuto.
17
Williams, G. (2011). Data Mining with Rattle and R. Florida: Springer, str. 171.
12
Rudarenje podataka korištenjem metode stabla odlučivanja
7. Neuronske mreže su zamišljene su da djeluju slično ljudskom mozgu. One
se upotrebljavaju u analizi rizika i prognoziranju npr. vrijednosti dionica.
Rudarenje podataka temeljeno na ovoj metodi počinje «učenjem» mreže
pomoću podataka za koje je poznata vrijednost koju želimo prognozirati18.
Nakon toga naučeno znanje se provjerava. Postupak učenja i provjere
ponavlja se sve dok rezultati provjere ne budu zadovoljavajući.
8. Genetski algoritmi su temeljeni na ideji imitiranja pravila biološkog
razvoja. Koriste se za optimizaciju i strojno učenje pri rješavanju problema.
Prednost je mogućnost kreiranja generacije, genoma i modifikacija
populacije19.
18
Isti, str. 173.
19
Isti, str. 210.
13
Rudarenje podataka korištenjem metode stabla odlučivanja
2.3. Programi za rudarenje podataka
U ovom dijelu poglavlja obraditi ćemo programe koje su trenutno
najkorišteniji u procesima rudarenja podataka. Programi za DM pojavljuju se u
različitim oblicima i to kao samostalni programi koji podupiru samo jednu
metodu kao što su neuronske mreže, zatim kao uklopljeni u programske sustave
za razvoj aplikacija, onda kao samostalni alati za rudarenje, kao dio tj. modul
drugih programskih sustava kao što je sustav za upravljanje bazama ili
statističkih programskih paketa, ili kao gotova rješenja za pojedinačna
problemska područja kao što je izrada profila kupca. Za korištenje DMS
poslužitelja korisnik treba na svom računalu pripremiti podatke u obliku tablice
sa N+1 redaka (N je broj primjera) i M stupaca (M je broj atributa koji opisuju
primjere)20. U prvom redu tablice trebaju biti imena atributa. Tablica treba biti
pohranjena u datoteci u običnom tekstualnom obliku koju je moguće čitati, pisati
i mijenjati alatom kao što je Microsoft Wordpad. Podaci pripremljeni Microsoft
Excel alatom trebaju se eksportirati u tekstualni oblik. Izbor atributa klase
označava se stavljanjem uskličnika ('!') ispred naziva atributa21.
Osim što je nužno odabrati ciljni atribut koji određuje klase primjera,
potrebno je označiti i koji primjeri predstavljaju pozitivnu klasu koju želimo
modelirati. Primjerice, mi želimo generirati model pušača te zbog toga se ispred
svakog DA odgovora stavlja znak uskličnika (!), pa će to izgledati ovako !da ili
!pušač. U slučaju da želimo generirati model(e) za klasu nepušača tada bismo
uskličnik stavili ispred svakog 'ne' u tom stupcu.
20
Čačić, V. i Varga, M. (2004). Informacijska tehnologija u poslovanju. Zagreb: Element,
str. 74.
21
Isti, str. 76.
14
Rudarenje podataka korištenjem metode stabla odlučivanja
Ime
Starost
Spol
Obrazovanje
Zanimanje
Težina
Prihod
Pušac
Jan
30
M
Visoko
Radnik
90
14000
!da
Ivano
55
M
Više
Profesor
75.5
1600
!da
Zora
19
Ž
Visoko
Studentica
55
0
ne
Marko
45
M
Srednje
Vozač
65
800
!da
Tablica 1.: Podaci pripremljeni za analizu sa DMS poslužiteljem
Programski alati za rudarenje podataka koji se upotrebljavaju u poslovnim
primjenama dolaze iz područja programskih sustava namijenjenih upravljanju
podatcima a to su22:
1. Alate iz područja statističkih programskih sustava: Enterprise Miner (SAS),
Clementine (SPSS),
2. Specijalizirane alate za općenite/poslovne uporabe: Data Mining, Intelligent
Miner (IMB),
3. Alate uključene u Warehousing: OLAP,
4. Alate uključene u sustav upravljanja podataka: Microsoft SQL Server
Business Intelligence.
22
Čačić, V. i Varga, M. (2004). Informacijska tehnologija u poslovanju. Zagreb: Element,
str. 94.
15
Rudarenje podataka korištenjem metode stabla odlučivanja
Međutim, mogu se pojaviti greške u pripremi podataka. Iako je format
pripreme podataka vrlo jednostavan, nužno je da se on dosljedno poštuje. Česte
greške su izostavljanje vrijednosti koja je nepoznata (umjesto da se ona označi sa
'?'), korištenje hrvatskih znakova 'č', 'ž' i ''š' što nije dopušteno, te korištenje
decimalnog zareza umjesto decimalne točke23. U slučaju postojanja greške,
indukcija se nede izvesti, a korisnik će dobiti obavijest o greški sa upozorenjem
na mogući izvor problema. Način pripreme podataka i formalni uvjeti koje
trebaju zadovoljavati podaci su detaljno prikazani na samom poslužitelju u dijelu
koji je namijenjen novim korisnicima pod nazivom „Kako pripremiti datoteku“.
One pokazuju kako izgleda formalno korektno pripremljena datoteka i to u
raznim formatima u kojima je korišten razmak, zarez, točka-zarez, odnosno TAB
kao znak razdvajanja podataka. Rad poslužitelja uvijek se može testirati tako da
se prvo prenese neka od pripremljenih datoteka na vlastito računalo, a zatim se
ona pošalje poslužitelju na analizu preko glavne stranice.
23
Williams, G. (2011). Data Mining with Rattle and R. Florida: Springer, str. 216.
16
Rudarenje podataka korištenjem metode stabla odlučivanja
2.4. Proces rudarenja podataka
Proces rudarenja podataka sastoji se od više faza koje jedna osoba
samostalno ne može izvršiti. Te faze, odnosno zadatke, možemo promatrati iz tri
perspektive. Prva je problemska perspektiva koja je važna na samom početku i
kraju rudarenja podataka24. Sastoji se od odabira problema, njegova definiranja te
procjene i primjene znanja. Osoba koja obavlja ove zadatke može se jednostavno
nazvati korisnik. Druga perspektiva je podatkovna i obuhvaća sve zadatke vezane
uz pripremu podataka za njihovo rudarenje, a obavlja je informatičar25.
Metodološka perspektiva, kao treća i posljednja, sastoji se od svih
zadataka vezanih uz analizu podataka, metode selekcije, implementacije,
prezentacije i interpretacije rezultata. Osoba zadužena za te zadatke je stručnjak
rudarenja podataka (eng. data miner). Proces se odvija u nekoliko koraka:
1. KORAK: Definiranje problema
Ovo je prvi korak kod rudarenja podataka. Znači treba se definirati problem
koji se želi riješiti. Ako se problem loše definira, ne može se očekivati da će
rudarenje u poslovnom smislu biti uspješno, iako rezultati analize mogu biti
valjani. Ovdje možemo uzeti primjer pelena i piva26. Problem koji je ovdje bio
postavljen jest pronaći artikle koji se često prodaju zajedno. Primjer dobrog
definiranja problema je primjer banke s velikim brojem klijenata koji kasne s
otplatama rata hipotekarnih kredita. Ovdje banka želi ustanoviti da li je moguće
od podataka o zajmoprimci predvidjeti hoće li on kasniti s otplatama ili ne.
24
Witten, I. H. and Eibe, F. (2011). Data Mining. San Francisco: Morgan kaufmann, str.
25
Isto.
26
Isti, str. 343.
332.
17
Rudarenje podataka korištenjem metode stabla odlučivanja
2. KORAK: Prikupljanje i priprema podataka
Iskustva iz prakse pokazuju da je najveći trud u procesu rudarenja potrebno
uložiti u ovaj korak. Ovisno o kakvoći i organiziranosti podataka u organizaciji,
uloženi rad u ovoj fazi kreće se od 50% do 80% cjelokupnog truda u procesu
rudarenja27. Izbor i priprema podataka su kritične aktivnosti za konačni uspjeh
projekta. Ovaj korak obuhvaća izbor izvora podataka, integraciju podataka iz
različitih baza podataka, njihovo čišćenje i dodatno sakupljanje podataka koji su
potrebni, a nisu trenutno raspoloživi28.
3. KORAK: Izabiranje metode rudarenja
U ovom koraku se ne može znati najbolja metoda, jer sve ovisi o prirodi
problema. Npr. neuronske mreže su najbolje obrazloženje neke pojave npr.
vrijednost kuće, a u metoda stabla odlučivanja je pogodna za npr. analizu
odobravanja kredita. Znači potrebno je u veći metoda rudarenja prvo
eksperimentirati pa onda izabrati onu najbolju koja daje rezultate.
4. KORAK: Učenje
Ovdje metoda uči na podatcima. Ovdje postoji opasnost da se uz previše
učenja dobiju rezultati koji super odgovaraju podatcima na kojima je algoritam
učio i izgradio model, a loše budućim podatcima A cilj modela je da se dobro
ponaša na budućim podatcima.
5. KORAK: Interpretacija rezultata
U ovom koraku analitičar na kraju odlučuje je li pravilo zanimljivo,
relevantno i upotrebljivo za organizaciju.
27
Čačić, V. i Varga, M. (2004). Informacijska tehnologija u poslovanju. Zagreb: Element,
str. 112.
28
Panian, Ž. i Klepac, G. (2003). Poslovna inteligencija. Zagreb: Masmedia, str. 69.
18
Rudarenje podataka korištenjem metode stabla odlučivanja
U procesu rudarenja poželjno da sudjeluju29:
1. Informatičar – on brine o pripremi podataka,
2. Analitičar podataka – statističar. On brine o izboru metode i metodološkoj
interpretaciji rezultata rudarenja,
3. Stručnjak – on mora biti poznavatelj poslovnog područja, koji definira
poslovni problem, odabire relevantne podatke, interpretira rezultate i predlaže
aktivnosti na temelju rezultata rudarenja,
4. Voditelj projekta - on planira i organizacijski vodi projekt rudarenja
podataka.
Istraživanja su pokazalo je da većina poduzeća koja traže stručnjaka rudarenja
podataka dolaze iz IT sektora (43%), marketinga (19%) te iz bankarskog sektora i
osiguranja (17%)30.
Slika 3.: Prikaz djelatnika poduzeća koja zapošljavaju stručnjake za rudarenje
podataka.
29
Čačić, V. i Varga, M. (2004). Informacijska tehnologija u poslovanju. Zagreb: Element,
str. 98.
30
Williams, G. (2011). Data Mining with Rattle and R. Florida: Springer, str. 221.
19
Rudarenje podataka korištenjem metode stabla odlučivanja
Položaj u poduzeću na koji se zapošljavaju nije jedinstven, no najčešće je to
menadžer (20%), stručnjak rudarenja podataka (16%), statističar i/ili operacijski
istraživač (12%), marketinški analitičar (10%) te softverski inžinjer/arhitekt
(10%)31.
Slika 4.: Naziv radnog mjesta
Podjednaki broj poduzeća želi zaposliti osobe sa diplomom (40%) i
magisterijem (40%). Prilično veliki broj poslodavaca traži i doktorat (20%).
Vezano uz godine radnog iskustva rezultati pokazuju da su jednako traženi oni sa
manje od 5 godina iskustva i oni sa 5 do 10 godina iskustva. Samo u 3%
slučajeva zahtjeva se više od 10 godina iskustva32.
31
Williams, G. (2011). Data Mining with Rattle and R. Florida: Springer, str. 223.
32
Williams, G. (2011). Data Mining with Rattle and R. Florida: Springer, str. 241.
20
Rudarenje podataka korištenjem metode stabla odlučivanja
Slika 5.: Prikaz potrebne stručne spreme u poduzeću
Zadaci unutar procesa rudarenja podataka koji se očekuju od zaposlenika
su najčešće prezentiranje rezultata (29%), izgradnja novih modela (15%) i
priprema podataka (13%). Znanje klasifikacijske metode rudarenja podataka je
najtraženije (18%)33. Metode predviđanja i statističke tehnike su jednako
zastupljene sa po 8%. Znanje softvera koje je potrebno imati najviše odlazi na
SQL (44%) i SAS (42%).
Zanimljivo je spomenuti da specifični softver za rudarenje podataka
(primjerice Clementine) se vrlo rijetko spominje.
Dodatne vještine koje se zahtijevaju su analitičke vještine (42%), konzalting
(19%), projektni menadžment (16%), profiliranje korisnika (15%) i iskustvo u
području (15%)34.
33
34
Isti, str. 245.
Isti, str. 248.
21
Rudarenje podataka korištenjem metode stabla odlučivanja
Slika 6.: Prikaz radnih zadataka
Kada uzmemo u obzir sve ovdje navedeno dolazimo do profila stručnjaka
rudarenja podataka.
To su osobe koje su najvjerojatnije zaposlene u IT sektoru, mnogi od njih
rade na položaju menadžera i njihov posao je najčešće vezan uz prezentaciju
rezultata i razvoj modela za rudarenje podataka. Vjerojatno se služe
klasifikacijskom metodom, a od njih se zahtjeva i posjedovanje analitičkih
vještina.
22
Rudarenje podataka korištenjem metode stabla odlučivanja
3. STABLA ODLUČIVANJA
U procesu rudarenja podataka za probleme klasifikacije i predviđanja u
većini slučajeva se koristi stablo odlučivanja. Koristi se za rješavanje
prediktivnih problema uz nadzor učenja. Prediktivni problemi uključuju
predviđanje vrijednosti ciljnih atributa (varijable) u budućnosti, prepoznavanje
uzoraka, regresiju više značajki, razlikovnu analizu, procjenu funkcije više
značajki i nadgledano učenje. Dapače, stabla odluke se najviše upotrebljavaju za
rješavanje prediktivnih problema kod kojih se predviđa vrijednost binarne ciljne
značajke (slučaj kada ciljna značajka ima dvije razine 0 ili 1). U tom slučaju
metoda stabla odlučivanja se koristi za rješavanje jednostavnog nelinearnog
problema u čemu je puno uspješnija od drugih data mining metoda.
Jedna od bitnih svojstava stabla odlučivanja su što omogućuje čitanje
podataka u razumljivom obliku, najčešće u obliku AKO-ONDA (IF-ELSE).
Naravno, ovakav oblik se interpretira običnim jezikom, ali postoji i
mogućnost korištenja jezika za rad s bazama podataka pod nazivom SQL. No,
postoje situacije kada čitljivost modela nije od presudne važnosti. To se događa
kada se određeni problemi tiču samo točnosti klasifikacije ili predikcije modela.
Točnije možemo reći da generirani modeli moraju biti čitljivi za eksperte iz
domene problema i oni moraju prepoznati i odobriti primjenu znanja sadržanog u
novim modelima. No, stablo odlučivanja ima svoj način predočavanja, najčešće
uz pomoć algoritama koji omogućavaju konstruiranje stabla odlučivanja.
Stablo odlučivanja se predočava uz pomoć klasifikacijskog algoritma u formi
stablaste strukture uz pomoć dva tipa čvorova koji su povezani granama.
23
Rudarenje podataka korištenjem metode stabla odlučivanja
Među ta dva tipa ubrajaju se35:
1. Krajnji čvor s kojim se završava određena grana stabla. Oni definiraju klasu
koja pripada primjeru koji zadovoljava uvjete na toj grani stabla.
2. Čvor odluke definira uvjet u obliku vrijednosti određene varijable iz koje
izlaze grane koje zadovoljavaju određene vrijednosti tog atributa.
Stablo odlučivanja u svojemu djelovanju može krenuti od čvora odlučivanja
prema krajnjem čvoru ili obratno.
Slika 7.: Primjer izgradnje binarnog stabla
35
Williams, G. (2011). Data Mining with Rattle and R. Florida: Springer, str. 336.
24
Rudarenje podataka korištenjem metode stabla odlučivanja
Da bi stablo odlučivanja moglo djelotvorno djelovati potrebno je zadovoljiti
osnovne preduvjete za njegovo korištenje.
Među tim preduvjetima se ubrajaju36:
1. Opis u obliku parova vrijednosti-atributa - podaci o primjeru moraju biti opisani u obliku konačnog broja atributa;
2. Prethodno definiran konačan broj klasa (vrijednosti ciljnog atributa) - kategorije kojima primjeri pripadaju moraju biti definirane unaprijed i treba ih biti
konačan broj;
3. Klase moraju biti diskretne - svaki primjer mora pripadati samo jednoj od
postojećih klasa, kojih mora biti znatno manje negoli broja primjera;
4. Značajan broj primjera - obično je poželjno da u skupu primjera za generiranje stabla odlučivanja postoji barem nekoliko stotina primjera.
36
Isti, str. 338.
25
Rudarenje podataka korištenjem metode stabla odlučivanja
3.1. Prednosti i nedostaci metode stabla odlučivanja
Prednosti metode stabla odlučivanja su37:
1. Sposobnost generiranja razumljivih modela;
2. Relativno mali zahtjevi na računalne resurse (vrijeme i memorija);
3. Sposobnost korištenja svih tipova atributa (kategorički, numerički);
4. Stabla odlučivanja jasno odražavaju važnost pojedinih atributa za konkretni
klasifikacijski odnosno prediktivni problem.
U pozitivne karakteristike metode stabla odlučivanja ubraja se i mogućnost
rada s nedostajućim vrijednostima (missing values), koje se promatraju kao
dodatna kategorija vrijednosti značajke. Kod upotrebe drugih metoda
raspoznavanja uzoraka (regresije ili neuronskih mreža) nije moguće direktno
koristiti nedostajuće vrijednosti pa se redak u kojem se one pojavljuju u bilo
kojoj značajki odbacuje.
Zbog postojanja dodatnog nivoa (vrijednosti) ulazne značajke, povećava se
broj mogućih podjela pa je potrebna dodatna korekcija vrijednosti testova. Kako
bi se stabla učinila što robusnija, dodana je mogućnost pronalaženja zamjene za
svaku značajku pomoću koje je napravljena podjela (surogat).
U tom slučaju, kod apliciranja modela na neviđene podatke, kada model
naiđe na nedostajuću vrijednost značajke na kojoj treba napraviti podjelu, model
će upotrijebiti zamjensku značajku.
37
Williams, G. (2011). Data Mining with Rattle and R. Florida: Springer, str. 348.
26
Rudarenje podataka korištenjem metode stabla odlučivanja
Slabe strane metode stabla odlučivanja38:
1. Metode stabla odlučivanja su manje prikladne za probleme kod kojih se
traži predikcija kontinuiranih vrijednosti ciljnog atributa;
2. Metode Stabla odlučivanja sklona su greškama u više-klasnim problemima
sa relativno malim brojem primjera za učenje modela;
3. U nekim situacijama generiranje stabla odlučivanja može bit računalno
zahtjevan problem. Sortiranje kandidata za testiranje na čvorovima stabla može
biti zahtjevno, kao i metode 'skraćivanja' stabla, kod kojih je često potrebno
generirati velik broj stabala da bi odabrali ono koje je najbolje za klasifikaciju
primjera određenog problema;
4. Stabla odlučivanja nisu dobro rješenje za klasifikacijske probleme kod
kojih su regije određenih klasa 'omeđene' nelinearnim krivuljama u višedimenzionalnom atributnom prostoru. Većina metoda stabla odlučivanja testiraju
u svojim čvorovima vrijednosti jednog atributa, i time formiraju pravokutne regije i više-dimenzionalnom prostoru.
Još jedan od nedostataka metode stabla odlučivanja je njezina nestabilnost, tj.
mala promjena ulaznih podataka pomoću kojih se trenira model, može rezultirati
velikim promjenama topologije stabla. Istovremeno performanse stabla će
najvjerojatnije ostati približno iste. Nestabilnost se javlja zbog velikog broja
mogućih podjela koje često imaju približno jednaku važnost (competitor splits).
Zbog toga mala promjena podataka može dovesti do sasvim druge podjele, koja
dalje unosi promjene u sve grane ispod sebe.
38
Witten, I. H. and Eibe, F. (2011). Data Mining. San Francisco: Morgan kaufmann, str. 512.
27
Rudarenje podataka korištenjem metode stabla odlučivanja
3.2. Algoritmi u metodi stabla odlučivanja
Veoma bitan algoritam u stablu odlučivanja je svakako ID3. Navedeni
algoritam je izumio Ross Quinlan te se koristi kao generiranje stabla odluke iz
skupa. Ovaj algoritam je nastavak na prijašnji algoritam C4.5 te se koristi za
strojno učenje i za obradu domena na prirodnom jeziku. ID3 algoritam počinje s
izvornim skupom S kao korijenskim čvorom, to se provodi kroz neiskorišteni
atributni set Si i izračunava na taj način entropije H(S) određenog atributa. Nakon
čega se odabire atribut koji ima najmanju entropiju vrijednosti. Skup S se nakon
toga dijeli od odabranog atributa za proizvodnju podskupova podataka. No, to se
može zaustaviti u slijedećim slučajevima39:
1. Svaki element u podskupini pripada istoj klasi (+ ili -), a zatim se čvor
pretvori u krilo i označi klasu primjera,
2. Nema atributa da bude izabran, ali primjeri još uvijek ne pripadaju istoj
klasi odnosno neki su +, a neki -. Zatim se čvor pretvori u krilo i označava klasu
od primjera.
3. Nema primjera u podgrupama, to se događa kada nema primjera u skupu
zbog toga se treba poduprijeti određena vrijednost određenog atributa.
Da bi se mogle izračunati pogrješke prilikom stabla odlučivanja, a na temelju
ID3 algoritma koristi se slijedeća formula40:
39
Witten, I. H. and Eibe, F. (2011). Data Mining. San Francisco: Morgan kaufmann, str. 552.
40
Witten, I. H. and Eibe, F. (2011). Data Mining. San Francisco: Morgan kaufmann, str. 556.
28
Rudarenje podataka korištenjem metode stabla odlučivanja
U ovoj formuli
(tj. entropija).
je mjera za količinu nesigurnosti podataka skupa
je struja (data) postavljena za entropije koje izračunava, X je
skup klasa u skupini S, p(x) je udio broja elemenata u klasi x do broja elemenata
u skupu
. Ukoliko
=0 to označava da je set
savršeno klasificiran.
Classification and regression trees (CART) je algoritam za učenje stabala
odluke i regresije. CART algoritam se još naziva i košarica algoritam koji služi
za donošenje odluka. Prvi put je ovaj algoritam objavljen 1984. godine, a autor je
Leo Breiman41. Kod stabla odluke, izlaz je odluka o klasi kojoj pripada ulazni
podatak, dok je kod stabla regresije izlaz realni broj. CART algoritam gradi
binarna stabla i može raditi s kategorijskim i numeričkim atributima. Koristi
„sirove“ podatke, tj. podatke nije potrebno obraditi prije učenja stabla i
klasifikacije.
Proces učenja se temelji na određivanju testa (atributa i njegove vrijednosti)
koji najbolje razdjeljuje podatke. Ovaj algoritam se upotrjebljava samo kod
binearnih stabala, odnosno da je na svakoj obilaznici po dvije grane. Zbog toga je
središnji element tog algoritma način na koji se dolazi do optimalnog binarnog
odvajanja. S CART algoritmima dolazi se do upravljanja maksimalizacije
informacijskog sadržaja. Ovdje su podatci optimalno odvojeni putem
vrijednosnog praga koje se odnosi na određeni atribut.
C5.0 omogućava korištenje matrice troškova krivog razvrstavanja,
"boosting" i kros-validaciju i poboljšan je algoritam za traženje podjela. Zbog
svoje prirode da značajke s realnim brojevima dijeli na dvije grane, a diskretne
vrijednosti dijeli na više grana C4.5 i C5.0 algoritmi preferiraju podjelu na
nominalnim značajkama42.
41
Isto.
42
Isti, str. 572.
29
Rudarenje podataka korištenjem metode stabla odlučivanja
CHAID je vrsta stabla odlučivanja na temelju prilagođenog testiranja
značajnosti. Tehnika je razvijena u Južnoj Africi, a objavljena je 1980. godine
pod autorstvo Gordona V. Kassa. CHAID algoritam se može koristiti za
predviđanje (na sličan način kao u regresijskoj analizi, ova verzija je prvotno
poznata kao XAID), kao i za razvrstavanje te za detekciju interakcija između
varijabli. CHAID se zalaže za CH i-kvadrat koja se temelji na formalnom
produljenju US AID (Automatska interakcija Detection) i THAID (Theta
Automatska interakcija Detection) postupcima 1960-ih i 70-ih godina43.
U praksi, CHAID se često koristi u kontekstu izravnog marketinga za odabir
skupine potrošača i predviđa kako će njihovi odgovori na neke varijable utjecaati
na druge varijable, iako druge ranije aplikacije su u području medicinskih i
psihijatrijskih istraživanja. Poput drugih stabla odlučivanja, CHAID-ova je
prednost ta da je njegova proizvodnja vrlo vizualna i jednostavna za protumačiti.
Uobičajena alternativa ovoj tehnici je iscrpna tehnika. Ovom tehnikom spajanje
grana se nastavlja dok se ne postigne podjela na dvije grane. Tada se između svih
razmatranih podjela odabire ona s najvećom p-vrijednosti.
43
Witten, I. H. and Eibe, F. (2011). Data Mining. San Francisco: Morgan kaufmann, str. 578.
30
Rudarenje podataka korištenjem metode stabla odlučivanja
3.3. Problem u modeliranju podatka - Overfiting
Over-fitting je značajna poteškoća u primjeni metoda stabla odlučivanja, ali i
drugih tehnika modeliranja podataka. Jedan od najjednostavnijih i najčešće
korištenih sredstava za izbjegavanje overfittinga je podijela podataka u dva
skupa: skup treninga i valjani set. Treniramo korištenjem podataka za
učenje. Podatci valjanosti su neovisni o podacima treninga, tada je performansa
mreže dobra mjera generalizacije i dokle god mreža uči temeljne strukture
podataka na skupu validacije će poboljšati trening44.
Kada mreža prestaje učiti stvari za koje se očekuje da bi bilo istinite uzorku
podataka i uči stvari koje su istinite samo ovog uzorka nastup na skupu validacije
će zaustaviti poboljšanje.
Problem Overfitting se može riješiti na dva načina:
1. Prvi način je da se zaustavi rast stabla odlučivanja kako ne bi došlo do
savršene klasifikacije primjera iz skupa podataka za učenje45.
2. Drugi način je da se dopusti rast stabla do klasifikacije nakon čega se
skraćuju grane prema prethodno definiranom kriteriju.
U praksi se najčešće koristi drugi pristup jer je i veoma pouzdaniji jer je teško
unaprijed definirati željenu kompleksnost stabla odlučivanja46.
44
Isti, str. 579.
45
Isti, str. 599.
46
Isti, str. 600.
31
Rudarenje podataka korištenjem metode stabla odlučivanja
4. PRIMJER RUDARENJA PODATAKA
4.1. Programski paket - Weka
Alat Weka sadrži ugrađene najpoznatije (engl. state-of-the-art) algoritme
strojnog učenja, npr. naivni Bayesov klasifikator, JRip, J48, M5Rules itd. te
omogućuje cijeli proces rudarenja podacima, koji uključuje pripremu ulaznih
podataka, statističku evaluaciju procesa učenja i vizualizaciju ulaznih podatka i
rezultata strojnog učenja47. Rudarenje podacima je proces pronalaženja uzoraka
(engl. patterns) među podacima, koji se u alatu Weka odvija automatski.
Otkriveni uzorci moraju imati određeno značenje koje se može primjeniti kao
korisna informacija. Ulazni podaci su nezavisne instance koje predstavljaju
vrijednosti određenih atributa.
Atributi su stupci u ulaznoj tablici, dok se instance zapisuju u retke. Atributi
mogu biti numerički ili nominalni. Numerički atributi, često nazvani kontinuirani
atributi, mogu biti realne ili cijelobrojne vrijednosti. Nominalni atributi, čije ime
dolazi od latinske riječi nominal što u prijevodu znači ime, sadrže određeni skup
vrijednosti, unaprijed definirani (npr. atribut vrijeme može imati vrijednosti
sunčano, kišovito, maglovito). Alat Weka koristi vlastiti formalizam prikaza
ulaznih podataka poznat kao .arff format.
Alat Weka primjenjuje četiri vrste strojnog učenja: klasifikacijsko učenje,
numeričko predviđanje, učenje asocijacijskih pravila i grupiranje. Rezultat
klasifikacijskog učenja su klase (engl. class), npr. boja karte {crvena, crna}48.
Uspješnost klasifikacijskog učenja moguće je provjeriti tzv. nadgledanjem (engl.
supervise) rezultata.
47
Witten, I. H. and Eibe, F. (2011). Data Mining. San Francisco: Morgan kaufmann, str. 358.
48
Witten, I. H. and Eibe, F. (2011). Data Mining. San Francisco: Morgan kaufmann, str. 359.
32
Rudarenje podataka korištenjem metode stabla odlučivanja
Nad skupom podataka, čiji rezultat klasifikacije je unaprijed poznat i ne
sudjeluje u samom procesu učenja, primjene se metode za klasifikaciju te se
objektivno odredi uspješnost ovakve vrste učenja. Numeričko predviđanje je
vrsta klasifikacijskog učenja u kojem rezultat ima numeričku vrijednost. Iz
ulaznih podataka pomoću alata Weka moguću je određivanje atributa koji najviše
utječu na rezultat numeričkog predviđanja.
U učenju asocijacijskih pravila primjenjuju se asocijacijska pravila koja se
razlikuju od klasifikacijskih pravila u sljedećem: mogu predvidjeti bilo koji
atribut, ne nužno klasu, te u isto vrijeme mogu predvidjeti više od jednog
atributa, koji su najčešće ne-numerički. Grupiranje je vrsta strojnog učenja koja
se primjenjuje kada nisu unaprijed određene klase već se podaci koji pripadaju
zajedno u istu grupu prema određenom prirodnom pravilu zajedno grupiraju.
Uspješnost ovakvog učenja utvrđuje se subjektivno, tj. koliko su dobiveni
rezultati korisni krajnjem korisniku.
Grupiranje se može koristiti kao drugi korak u klasifikacijskom učenju gdje
se naučena pravila koriste za određivanje i pridjeljivanje novih podataka u grupe.
Ulazni skup podataka nad kojim se primjeni jedna vrsta strojnog učenja i kao
rezultat izgradi stablo odluke naziva se skup podatka za treniranje (engl. training
set). Usporedba ili evaluacija rezultata različitih vrsta strojnog učenja nad istim
skupom podataka za treniranje koristi se za određivanje uspješnosti učenja.
Korištenje Weka sustava započinje instalacijom na vlastito računalo
programa dostupnog na http://www.cs.waikato.ac.nz/ml/weka/49. Sustav se
neprestano nadograđuje, a posljednja stabilna verzija 3.6.4 zahtijeva da se sa
spomenute stranice prenese na svoje računalo datoteka „weka-3-6-4jre.exe“ te da
se pokrene njeno izvođenje50.
49
Isto.
50
Isti, str. 360.
33
Rudarenje podataka korištenjem metode stabla odlučivanja
Slika 8.: Početni prozor Weka sustava
U početnom prozoru sustava (Slika 8.) tipkom Explorer se prelazi u dio
namijenjen analizi podataka51. Postupak započinje otvaranjem datoteke sa
podacima. Jednostavniji način pripreme podataka za Weka sustav je preko Excel
tablice. U tom slučaju ne treba posebno definirati atribute već samo navesti
njihova imena u prvom redu tablice. Kada je završena priprema podataka, tada
tablicu treba zapisati u arff formatu.
Slika 9.: Weka Explorer
51
Williams, G. (2011). Data Mining with Rattle and R. Florida: Springer, str. 250.
34
Rudarenje podataka korištenjem metode stabla odlučivanja
Karakteristika Weka sustava je da pruža koristan i jednostavan uvid u
podatke. Odabirom jednog ili više atributa i pritiskom na tipku „Remove“
moguće je jednostavno isključiti neke atribute iz analize. Pritiskom na tipku
„Edit...“ moguće je prekontrolirati učitane podatke te ih po potrebi i promijeniti
za potrebe analize52. Nakon učitavanja podataka otvara se mogućnost da se počnu
koristiti osnovne funkcije sustava.
Izbor se vrši u gornjem dijelu Explorer prozora pritiskom na tipke
„Preprocess“ (transformacija podataka), „Classify“ (postupci izgradnje modela za
klasificirane primjere), „Associate“ (otkrivanje čestih uzoraka) i „Select
attributes“ (odabir podgrupe najznačajnijih atributa)53.
Nakon odabira tipkom „Preprocess“, pritiskom na tipku „Choose“ dobiva se
izbornik sa velikim brojem vrlo raznih funkcija koje omogućuju transformaciju
podataka. Podijeljene su u grupe ovisno o tome da li su primjeri klasificirani ili
nisu te da li se želi transformirati atribute ili primjere. Jedna od važnijih funkcija
je ona koja omogućuje transformaciju numeričkog atributa u skup nominalnih
vrijednosti. Funkcija se naziva „Discretize“ i postoji i za skupove klasificiranih
primjera i za one kada klasifikacija nije poznata54.
Najvažniji među njima je „bins“ koji određuje na koliko podgrupa će se
podijeliti vrijednosti. Osnovna vrijednost je 10 a za male skupove podataka je
preporučljivo odabrati 2. Važan je i „useEqualFrequency“ koji ima osnovnu
vrijednost False što znači da de generirane podgrupe pokrivati isti raspon
veličina. Promjenom na vrijednost True moguće je odrediti da treba podjednak
broj primjera rasporediti po svakoj podgrupi.
52
Witten, I. H. and Eibe, F. (2011). Data Mining. San Francisco: Morgan kaufmann, str. 361.
53
Isti, str. 362.
54
Isti, str. 363.
35
Rudarenje podataka korištenjem metode stabla odlučivanja
Slika 10.: Discretize Weka
U prozoru izbora vrijednosti parametara pritiskom na tipku „More“ dobiva se
više informacija o samoj funkciji te opis značenja pojedinih parametara. Nakon
što su podešeni parametri i prozor za njihov odabir zatvoren, odabrana funkcija
se izvodi pritiskom na tipku „Apply“.
Ako su naši podaci klasificirani, postupak izgradnje modela započinje tipkom
„Classify“ nakon čega je pritiskom na tipku „Choose“ moguće izabrati neki od
ponuđenih postupaka. Izbor je prilično velik a najznačajniji postupci su
induciranje stabala odlučivanja poznat kao J48 i JRip postupak za učenje pravila
originalno poznat kao RIPPER55. Za sve klasifikacijske postupke postoji
mogućnost izbora načina provjere prediktivne točnosti induciranog modela. Ako
ne postoji nezavisni testni skup a skup za učenje ima više od pedesetak primjera,
preporučljivo je iskoristiti mogućnost unakrsne validacije.
55
Witten, I. H. and Eibe, F. (2011). Data Mining. San Francisco: Morgan kaufmann, str. 364.
36
Rudarenje podataka korištenjem metode stabla odlučivanja
Ako se želi dobiti grafički prikaz generiranog stabla, treba pritisnuti desnu
tipku miša na spomenuti natpis i odabrati funkciju „Visualize tree“. Nakon
odabira tipkom „Associate“, pritiskom na tipku „Choose“ dobiva se izbornik sa
malim brojem funkcija od kojih je najvažnija Apriori. Ova funkcija se može
koristiti samo ako ne postoje string atributi te ako su numerički prethodno
pretvoreni u nominalne. Nakon odabira tipkom „Select Attributes“ moguće je
izabrati veći broj raznih postupaka za izbor značajnih atributa. Postupak se sastoji
od kombinacije dvije funkcije pa se prvom tipkom „Choose“ odabire mjera sa
kojom će se evaluirati atributi a sa drugom tipkom „Choose“ se odabire kako de
se pretraživati skup atributa56. Za odabrani postupak evaluacije nije moguće
koristiti sve postupke pretraživanja ali Weka sustav će nas obavijestiti ako
pokušamo napraviti nedozvoljenu kombinaciju i odmah predložiti neki od
primjerenih načina pretraživanja. Postupci odabira atributa važni su u strojnom
učenju jer se eliminacijom nebitnih atributa iz skupa za učenje može poboljšati
prediktivna kvaliteta induciranih modela.
Za otkrivanje znanja postupci odabira atributa su korisni jer pružaju
informaciju o važnosti pojedinih atributa. Postoji velik broj načina evaluacije
atributa koji ih rangiraju po različitim kriterijima. Niti jedan od načina nije
apsolutno najbolji. To je posebno važno imati na umu za primjene u otkrivanju
znanja jer različiti postupci mogu različito rangirati atribute a interpretacija ovisi
o postupku koji je primijenjen. Jedan od poznatijih načina rangiranja koji uzima u
obzir i međuzavisnosti među atributima je Relief algoritam57.
56
57
Williams, G. (2011). Data Mining with Rattle and R. Florida: Springer, str. 301.
Williams, G. (2011). Data Mining with Rattle and R. Florida: Springer, str. 314.
37
Rudarenje podataka korištenjem metode stabla odlučivanja
4.2. Primjer rudarenja podataka korištenjem stabla odlučivanja
Primjer koji ćemo koristiti bavi se životinjskim carstvom,prikazat ćemo na
slici koje ćemo koristiti:
Slika 11.:Prikaz seta podataka
Prvi korak kao što smo spomenuli je pokrenuti program weka zatim izabrati
'Explorer' zatim 'Open file' i tu odabrati odredenu arff datoteku.
38
Rudarenje podataka korištenjem metode stabla odlučivanja
Slika 12.: Unos podataka u weka programu
Znači
imamo
73
različitih
životinja
(antilopa,
tigar,lasta,medvjed,
divljasvinja, bivol, tele, geopard, jelen, dupin, slon,zirafa, djevojka, koza, gorila,
hrcak,zec, leopard, lav, ris, kanadskakuna, krtica,kljunar, tvor, poni,puma,
rakun, sob,vjeverica, vampir, poljskimis,vuk,koka, vrana, golubica, patka,
flamingo, galeb, jastreb, noj,papagaj, pingvin, , vrabac, labud,zmija, kornjaca,
premosnik,grgec,saran,som,morskipas,bakalar,purica,piranja,lignja,magarac,list
,krava,mrav,morka,raza,
tuna,zaba,
buha,
komarac,
pcela,
kucnamuha,
bubamara, moljac, termit, osa skoljka,rak,skorpion,)
koje ćemo razvrstat po 12 atributa: (životinja, dlaka, perje, mlijeko, zračna,
vodena, otrovna, peraje, noge, rep, domaća i tipu životinja kao što su: reptil,
insekt , sisavac, ptica, riba ).
39
Rudarenje podataka korištenjem metode stabla odlučivanja
Drugi korak nam je označiti sve atribute zatim prijeći na gumb'classify' i izabrati
po kojem načinu ćemo clasificirati. U Classify podmeniju potrebno je odabrati
klasifikator
i Test options te atribut na kojeg se odnosi predikcija. Nakon
pokretanja klasifikacije u Classify output prozoru prikazani su rezultati
predikcije.
Test options box razlikuje četiri različita moda:
• Use training set, klasifikator se evaluira prema tome kako dobro vrši
predikciju klase primjera na kojima se trenira. Broj pogrešnih klasifikacija na
podacima za treniranje nije dobar pokazatelj performansi našeg prediktivnog
modela na budućim podacima.
• Supplied test set, klasifikator se evaluira prema tome kako dobro vrši
predikciju klase prema primjerima koji se učitavaju iz datoteke.
• Cross-validation, klasifikator se evaluira uz pomoć kros-validacije koristeći
različiti broj "previjanja" koja se mogu specificirati. Prvo se cijeli 12set podatak
podijeli na k podskupova podataka jednake duljine. Svi ti podskupovi služe kao
podaci za treniranje modela. To se zove k-fold cross – validation. Podijela ne 10
dijelova pokazuje se kao najbolja.
• Perscentage split, klasifikator se evaluira prema tome kako dobro vrši
predikciju podataka koji se zadržavaju za testiranje. Količina tih podataka u
ukupnom skupu podataka se određuje upisivanjem postotka u polje.
Prikazani izlazni rezultati podijeljeni su prema sekcijama:
• Run information, što predstavlja informaciju o odabranom klasifikatoru,
datoteci sa podacima, o relacijama, broju primjera, broju i imenima atributima i
odabranim opcijama testa.
• Classifier model (full training set), predstavlja tekstualnu reprezentaciju
klasifikacijskog modela koji je proizveden na cijelom setu podataka.
40
Rudarenje podataka korištenjem metode stabla odlučivanja
• Summary, predstavlja listu statističkih parametara, koji predočavaju kako je
točno klasifikator uspio izvršiti predikciju.
• Detailed Accuracy By Class, predstavlja rezultat predikcijske točnosti,
prema vrijednostima klase.
• Confusion Matrix, prikazuje koliko je primjera dodijeljeno svakoj klasi.
Elemente konfizijske matrice predstavljaju: u retcima, broj testova po klasama
(class number), a u stupcu, broj testova koji su klasificirani kao svaka od klasa
(classified as). Matrica pruža uvid u to koliko je klasifikacija dobra. Idealni
klasifikator sadrži nule svugdje osim na dijagonali konfuzijske matrice.
Slika 13.: Prikaz klasifikacije korištenjem Use trening set po filteru trees.J48
41
Rudarenje podataka korištenjem metode stabla odlučivanja
Na slici je prikazano jedan od načina klasifikacije po filteru Trees.J48 i
pokaziva točnost od 93,1507 i netočnost 6,849. Ovaj klasifikator nastao je na
temelju vrlo popularnog algoritma za izgradnju stabla odluke C4.5. i predstavlja
njegovo poboljšanje.
Kapa κ statistika ili Kapa κ koeficijent računa se samo za nominalne klase.
Ona se računa na osnovu konfuzijske matrice. κ koeficijent kvantificira slaganje
između trenutne klasifikacije i predikcije.
Računa se:
gdje je P(A) točnost promatranog slaganja, P(E) procijenjena vjerojatnost
slučajnog slaganja, T suma svih brojeva u konfuzijskoj matrici, mii su brojevi na
dijagonali konfuzijske matrice, mi+ zbroj po recima, m+i zbroj po stupcima. κ se
približava prema 1 kada se vjerojatnost slučajnog slaganja smanjuje. κ je
negativan kada se vjerojatnost slučajnog slaganja veća od vjerojatnosti
promatranog slaganja. κ je jednaka 0 kada je vjerojatnost slaganja jednaka
vjerojatnosti slučajnog slaganja.
K&B Relative Info Score (Kononenko & Bratko Relative Information score)
služi za usporedbu više klasifikatora u istoj domeni. Omjer je srednjeg
koeficijenta informacijskog dobitka i entropije.
K&B Information Score predstavlja mjeru performansi klasifikatora. Kako se
računa informacijska dobit biti će kasnije prikazano. Srednja vrijednost se dobiva
dijeljenjem informacijske dobiti sa brojem primjera.
42
Rudarenje podataka korištenjem metode stabla odlučivanja
Mean absolute error (MAE) predstavlja pogrešku distribucije vjerojatnosti
predikcije za nominalne klase i grešku u predikciji za numeričke klase.
Root mean square error (RMS) predstavlja srednju kvadratnu pogrešku, a
Relative apsolute error (RAE) relativnu pogrešku
TP (True Positive) predstavlja broj točnih pozitivnih predikcija, FP (False
Positive) predstavlja broj pogrešnih pozitivnih predikcija.
Preciznost (Precision) 
Pr= TP/(TP+FP).
Recall 
R= TP/(TP+FN).
F-mjera(F-Measure)

F=(2*Pr*R)/(Pr+R)
Slika 14.: Konfuzijska matrica
43
Rudarenje podataka korištenjem metode stabla odlučivanja
U konzufijskoj matrici vidimo točnost i pogreške po klasifikacijskim
podatcima, u dijagonali označena crvenom bojom na slici su pogođeni podatci,a
podaci okolo dijagonale smatraju se pogreškama,sto znači da je pogođeno 68
životinja a pogrešno kvalificiranih je 5.
Još jedna bitna karakteristika je vizualizaciju stabla koje kreira prema
ulaznim podacima.
Slika 15.: Vizualizacija stabla odlučivanja (zoo data)
U stablu možemo vidjeti da je razvrstao podatke po tipu životinje (sisavac,
riba,ptica,insekt,reptil,riba).
Ciljni atribut uzima proizvoljno od zadanih 12 atributa. U podatcima je
sisavac najviše definiran po mlijeku, ptice po perju, po broju nogu zaključio je
koja je vrsta reptil, a koja insekt, vodena karakteristika je označila ribe.
44
Rudarenje podataka korištenjem metode stabla odlučivanja
Ostale karakteristike su miješane, npr. rep imaju i sisavci i ribe i ptice te je
uklonjen taj atribut u vizualizaciji stabla,također su uklonjeni atributi (zračna,
dlaka,otrovna,peraje,domaća), upravo zbog činjenica jer ne definiraju ništa
konkretno da bi se moglo odredit koja je vrsta životinje.
45
Rudarenje podataka korištenjem metode stabla odlučivanja
5. ZAKLJUČAK
Osnovno poimanje računala vezano je uz podatke, ali uz podatke oni čuvaju i
znanje, a iz tog znanja mogu proizvoditi nova znanja. Poznata izreka koja kaže da
tko ima informaciju ima moć danas više nije adekvatna. Informacija nije
dovoljna, nužno je znanje što učiniti s tim informacijama. Znanje je snaga, pa se
kaže da će samo ona gospodarstva biti uspješna u ovom stoljeću koja će znati
koristiti sadašnje i generirati novo znanje.
Stabla odlučivanja su vrlo moćna i popularna metoda rudarenja podataka
koja se uglavnom koristi za probleme klasifikacije i predviđanja. Stabla odluke se
najviše upotrebljavaju za rješavanje prediktivnih problema. Privlačnost ove
metode leži u činjenici da nudi modele podataka u 'čitljivom', razumljivom
obliku, često u obliku AKO-ONDA (IF-ELSE) pravila. Ta pravila se lako mogu
direktno interpretirati običnim jezikom, ili pak koristiti u nekom od jezika za rad
s bazama podataka (SQL).
Weka kao program je vrlo jednostavan za korištenja. Karakteristika Weka
sustava je da pruža koristan i jednostavan uvid u podatke. Uz velik izbor metoda
nudi i velik broj filtera s kojima možemo vršiti analizu. Sami početak je dosta
kompliciran, priprema podataka je najveći dio posla,a kasnije se može reći da
program sve odrađiva sam. Ako treba istaknuti neki nedostatak onda bih
primjetila grafičko sučelje koje je dosta monotono, pogotovo prilikom
vizualizacijskih prikaza.
Primjenom stabla odlučivanja u sustavu Weka mogu se dobiti korisni podaci
koji pomažu u donošenju poslovnih odluka, ali tijekom analiziranja ne treba stati
samo na toj metodi, trebalo bi analizirati i druge metode i zaključiti najbolji
rezultat koje će vam uvelike pomoći.
46
Rudarenje podataka korištenjem metode stabla odlučivanja
6. LITERATURA
[1] Čačić, V. i Varga, M. (2004). Informacijska tehnologija u poslovanju.
Zagreb: Element.
[2] Panian, Ž. i Klepac, G. (2003). Poslovna inteligencija. Zagreb:
Masmedia.
[3] Pudi, V. and Krishna, R. (2009). Data Mining. Oxford: Oxford
University Press.
[4] Williams, G. (2011). Data Mining with Rattle and R. Florida: Springer.
[5] Witten, I. H. and Eibe, F. (2011). Data Mining. San Francisco: Morgan
kaufman.
[6] Kraljević G., Rudarenje podataka,
< http://www.fpmoz.ba/gkraljevic/dm_materijali.htm>, (05.04.2014.)
[7] Weka-službena stranica, <http://www.cs.waikato.ac.nz/ml/weka/>,
(10.5.2014.)
[8] Dr. Wenjia Wang, School of Computing Sciences,
<https://blog.itu.dk/SPVCE2010/files/2010/11/wekatutorial.pdf/ >,
(20.5.2014)
47
Rudarenje podataka korištenjem metode stabla odlučivanja
PRILOG
Izvorni kod iz program wekw koristen za primjer (poglavlje 4.1)
Title: Zoo database
Class# Set od zivotinja
antilopa, medvjed, divljasvinja, bivol, tele, geopard,
jelen, dupin,
slon,tigar,zirafa, djevojka, koza, gorila, hrcak, zec, leopard, lav, ris,
kanadskakuna, krtica,tvor, poni,krava puma,rakun, sob, vjeverica, vampir,
poljskimis,vuk
koka,vrana,golubica,patka,flamingo,galeb,jastreb,noj,papagaj,pingvin,morka,
mocvarnica,pile,kanarinac,vrabac, labud,lesinar, puran,purica.
zmija, kornjaca,
grgec, saran, som, morskipas, bakalar,stuka, piranja, tuna, lignja,list, krastaca
buha, komarac, pcela, kucnamuha, bubamara, moljac, termit, osa,lasta
skorpion
Broj unosa : 73
Broj atributa: 10 (ime zivotinje, 6 Boolean atributa, 2 numericka)
Informacije atributa: (naziv atributa i vrsti vrijednost domene)
1. naziv zivotinje: jedinstven za svaki primjer
2. dlaka Boolean
3. perje Boolean
4. mlijeko Boolean
5. zracna Boolean
6. vodena Boolean
7. otrovna Boolean
8. peraje Boolean
9. noge Numeric (set vrijednosti: {0,2,4,5,6,8})
10. rep Boolean
11.domaća Boolean
12. tip Numeric (vrijednosti u rasponu [1,7])
48
Rudarenje podataka korištenjem metode stabla odlučivanja
Atributi bez vrijednosti: Nema
Distribucija klasa: S obzirom na gore
@RELATION zoo
@ATTRIBUTE životinja
{antilopa,morke,purica,puran,mocvarka,djevojka,kukavica,pile,kanarinac,tigar,la
sta,medvjed, divljasvinja, bivol, tele, geopard, jelen, dupin, slon,zirafa, koza,
gorila, hrcak,zec, leopard, lav, ris, kanadskakuna, krtica, tvor, poni,puma, rakun,
sob,vjeverica, vampir, poljskimis,vuk,koka, vrana, golubica, patka, flamingo,
galeb, jastreb,seva, noj,papagaj, pingvin, fazan, vrabac, labud, lesinar,zmija,
kornjaca,
premosnik
,grgec,
saran,
som,
morskipas,
piranja,lignja,magarac,list,tuna, vodenjak, krastaca,
bakalar,stuka,
buha, komarac, pcela,
kucnamuha, bubamara, termit, osa ,skorpion,}
@RELATION zoo
@ATTRIBUTE dlaka {false, true}
@ATTRIBUTE perje {false, true}
@ATTRIBUTE mlijeko {false, true}
@ATTRIBUTE zracna {false, true}
@ATTRIBUTE vodena {false, true}
@ATTRIBUTE otrovna {false, true}
@ATTRIBUTE peraje {false, true}
@ATTRIBUTE noge INTEGER [0,9]
@ATTRIBUTE rep {false, true}
@ATTRIBUTE domaca {false, true}
@ATTRIBUTE tip { sisavac, ptica, riba, insekt ,repti
@DATA
49
Rudarenje podataka korištenjem metode stabla odlučivanja
Instances (73):
antilopa,true,false,true,false,false,false,false,4,true,false,sisavac
tigar,true,false,true,false,false,false,false,4,true,false,sisavac
grgec,false,false,false,false,true,false,true,0,true,false,riba
lignja,false,false,,false,false,true,false,true,0,false,false,riba
list,false,false,false,false,true,false,true,0,true,false,riba
medvjed,true,false,true,false,false,false,false,4,false,false,sisavac
divljasvinja,true,false,true,false,false,false,false,4,true,false,sisavac
bivol,true,false,true,false,false,false,false,4,true,false,sisavac
tele,true,false,true,false,false,false,false,4,true,false,sisavac
saran,false,false,false,false,true,false,true,0,true,false,riba
som,false,false,false,false,true,false,true,0,true,false,riba
geopard,true,false,true,false,false,false,false,4,true,false,sisavac
koka,false,true,false,true,false,false,false,2,true,true,ptica
vrana,false,true,false,true,false,false,false,2,true,false,ptica
jelen,true,false,true,false,false,false,false,4,true,false,sisavac
morskipas,false,false,false,false,true,true,false,0,true,false,riba
dupin,false,false,true,false,true,true,true,0,true,false,sisavac
golubica,false,true,false,true,false,false,false,2,true,true,ptica
lasta,false,true,false,true,false,false,false,2,true,true,ptica
purica,false,true,false,true,false,false,false,2,true,true,ptica
puran,false,true,false,true,false,false,false,2,true,true,ptica
slon,true,false,true,false,false,false,false,4,true,false,sisavac
flamingo,false,true,false,true,false,false,false,2,true,true,ptica
buha,false,false,false,true,false,true,false,6,false,false,insekt
zirafa,true,false,true,false,false,false,false,4,true,false,sisavac
komarac,false,false,false,true,false,true,false,6,false,false,insekt
morke,false,true,false,true,false,false,false,2,true,true,ptica
koza,true,false,true,false,false,false,true,4,true,true,sisavac
gorila,true,false,true,false,false,false,true,2,false,false,sisavac
galeb,false,true,false,true,true,true,false,2,true,false,ptica
50
Rudarenje podataka korištenjem metode stabla odlučivanja
vrabac,false,true,false,true,true,true,false,2,true,false,ptica
bakalar,false,false,false,false,true,false,true,0,true,false,riba
pile,false,true,false,true,false,false,false,2,true,true,ptica
hrcak,true,false,true,false,false,false,false,4,true,true,sisavac
zec,true,false,true,false,false,false,false,4,true,false,sisavac
jastreb,false,true,false,true,false,false,false,2,true,false,ptica
pcela,true,false,false,true,false,false,false,6,false,true,insekt
kucnamuha,true,false,false,true,false,false,false,6,false,false,insekt
bubamara,false,false,false,true,false,true,false,6,false,false,insekt
seva,false,true,false,true,false,false,false,2,true,false,ptica
kukavica,false,true,false,true,false,false,false,2,true,true,ptica
kanarinac,false,true,false,true,false,false,false,2,true,true,ptica
leopard,true,false,true,false,false,false,false,4,true,false,sisavac
lav,true,false,true,false,false,true,false,4,true,false,sisavac
ris,true,false,true,false,false,true,false,4,true,false,sisavac
mocvarka,false,true,false,true,false,false,false,2,true,true,ptica
kanadskakuna,true,false,true,false,true,true,false,4,true,false,sisavac
krtica,true,false,true,false,false,false,false,4,true,false,sisavac
noj,false,true,false,false,false,false,false,2,true,false,ptica
papagaj,false,true,false,true,false,false,false,2,true,true,ptica
pingvin,false,false,false,false,true,false,true,2,true,false,ptica
fazan,false,true,false,true,false,false,false,2,true,false,ptica
stuka,false,false,false,false,true,true,true,0,true,false,riba
piranja,false,false,false,false,true,true,true,0,true,false,riba
poni,true,false,true,false,false,false,false,4,true,true,sisavac
magarac,true,false,true,false,false,false,false,4,true,true,sisavac
puma,true,false,true,false,false,true,false,4,true,false,sisavac
rakun,true,false,true,false,false,true,false,4,true,false,sisavac
sob,true,false,true,false,false,false,false,4,true,true,sisavac
zmija,false,false,false,false,true,true,false,0,true,false,reptil
labud,false,true,false,true,true,false,false,2,true,false,ptica
termit,false,false,false,false,false,true,false,6,false,false,insekt
51
Rudarenje podataka korištenjem metode stabla odlučivanja
kornjaca,false,false,false,false,false,false,false,4,true,false,reptil
premosnik,false,false,false,false,false,true,false,4,true,false,reptil
tvor,true,false,true,false,false,true,false,4,true,false,reptil
vjeverica,true,false,false,false,false,true,false,4,true,false,reptil
tuna,false,false,false,false,true,true,true,0,true,false,riba
vampir,true,false,true,true,false,false,false,2,true,false,sisavac
djevojka,true,false,true,true,false,false,false,2,true,false,sisavac
poljskimis,true,false,true,false,false,false,false,4,true,false,sisavac
lesinar,false,true,false,true,false,true,false,2,true,false,ptica
osa,true,false,false,true,false,false,false,6,false,false,insekt
vuk,true,false,true,false,false,true,false,4,true,false,sisavac
52