Page 1
Sveučilište Josipa Jurja Strossmayera U Osijeku
Ekonomski fakultet u Osijeku
Diplomski studij: Poslovna informatika
Diplomski rad iz kolegija
Sustavi poslovne inteligencije
Naslov rada:
Neuronska mreža i stablo odlučivanja za klasifikaciju kupaca
prema kupnji ručnika
Mentor: Student:
Prof. dr. sc. Marijana Zekić-Sušac Irena Lukić
Osijek, rujan 2011.
Page 2
2
SADRŢAJ
Saţetak………………………………………………………………………………….4
Summary………………………………………………………………………………..4
1. Uvod……………………………………………………………………………6
2. Cilj i svrha rada…………………………………………………………………7
3. Prethodna istraţivanja…………………………………………………………..8
4. Metodologija neuronskih mreţa……………………………………………….11
4.1. Razvoj neuronskih mreţa………………………………………………….11
4.2. Općenito o neuronskim mreţama…………………………………………..12
4.3. GraĎa neuronskih mreţa……………………………………………………14
4.3.1. Broj slojeva…………………………………………………………..15
4.3.2. Tip veza izmeĎu neurona……………………………………………15
4.3.3. Veza izmeĎu ulaznih i izlaznih podataka……………………………16
4.3.4. Ulazne i prijenosne funkcije…………………………………………17
4.3.5. Tipovi učenja…………………………………………………………18
4.3.6. Sigurnost ispaljivanja………………………………………………...19
4.3.7. Vremenske karakteristike…………………………………………….19
4.3.8. Vrijeme učenja………………………………………………………..19
4.4. Neuronske mreţe za problem klasifikacije…………………………………..20
4.5. Višeslojni perceptron…………………………………………………………20
5. Metodologija stabala odlučivanja…………………………………………………22
5.1. Prednosti i nedostaci stabla odlučivanja………………………………………23
5.2. Pretpostavka uporabe stabla odlučivanja………………………………………24
5.3. Algoritam stabla odlučivanja………………………………………………….25
5.4. Kriteriji ocjenjivanja kvalitete stabla odlučivanja……………………………..25
6. Opis podataka i modela……………………………………………………………26
7. Dijagram u SAS programu Enterprise Miner……………………………………..28
8. Rezultati……………………………………………………………………………30
8.1. Rezultati testirane arhitekture neuronske mreţe……………………………….30
8.2. Rezultati testirane arhitekture stabla odlučivanja………………………………34
8.3. Usporedba rezultata neuronske mreţe i stabla odlučivanja…………………….41
9. Zaključak……………………………………………………………………………44
Page 3
3
10. Literatura……………………………………………………………………………45
Popis slika i tablica………………………………………………………………………….48
Ţivotopis……………………………………………………………………………………..49
Page 4
4
Sažetak
Tema diplomskog rada je kreiranje modela neuronskih mreţa i stabala odlučivanja za
klasifikaciju kupaca prema kupovini ručnika. Cilj je klasificirati kupce s obzirom hoće li
kupiti ručnike ili neće. Svrha rada je uočiti koje ulazne varijable imaju najveći utjecaj, a koje
varijable nemaju gotovo nikakav utjecaj na odluku kupaca hoće li ili neće kupiti ručnike. Za
ovo istraţivanje korištena je metodologija neuronskih mreţa i stabala odlučivanja.
Nakon provedenog istraţivanja dokazano je da je neuronska mreţa dala bolje rezultate kada
se radi o kupcima koji će kupiti ručnike, dok je stablo odlučivanja pokazalo bolje rezultate
kada se radi o predviĎanjima kupaca koji neće kupiti ručnike. Neuronska mreţa je prepoznala
67,74% kupaca koji neće kupiti ručnik i 71% kupaca koji će kupiti ručnik, dok je stablo
odlučivanja prepoznalo čak 75% onih kupaca koji neće kupiti ručnike i 67,96% kupaca koji će
kupiti ručnik.
Prosječna stopa točnosti klasifikacije modela neuronske mreţe iznosi 69,37% dok prosječna
stopa točnosti klasifikacije modela stabla odlučivanja iznosi 71,48%. Moţemo uočiti da je
model stabla odlučivanja primjenjiviji s obzirom da je pokazao veću stopu točnosti
klasifikacije.
Postotak stope točnosti klasifikacije bi se mogao povećati, tj. poboljšati kada bi se istraţivanje
proširilo na veći broj kupaca.
Ključne riječi: neuronska mreţa, stablo odlučivanja, ručnici, kataloška prodaja
Page 5
5
SUMMARY
Subject of this work is to create models of neural networks and decision trees to classify
customers according to purchasing towels. The purpose of this work is to observe what input
variables have the greatest impact, and which variables have almost no impact on customers'
decision to buy the towels. For this study the methodology of neural networks and decision
trees was used.
The experiments showed that the neural network gave better results in predicting customers
who will buy towels, while the decision tree shown better results when it comes to predicting
which customers will not buy the towels. Neural network is recognized 67.74% of customers
who will buy a towel and 71% of customers who will not buy a towel, while the decision tree
recognized as many as 75% of those customers will not buy towels and 67.96% of customers
who will buy a towel.
The average accuracy rate of classification model neural network is 69.37% while the average
rate of accuracy of classification of the decision tree model is 71.48%. It may be noted that
the decision tree model is more aplicable with respect to the demonstrated higher accuracy
rate of classification.
Classification accuracy rate could be possibly increased by expanding the data sample to
include more customers.
Keywords: neural networks, decision tree, towels, catalog sales
1. UVOD
Page 6
6
Danas se za obradu znanja najviše koriste dvije tehnike: ekspertni sustavi s automatskim
učenjem i neuronske mreţe. Umjetne neuronske mreţe, zbog svoje matematičke strukture,
obećavaju znatno veća dostignuća u budućem razvoju. [24]
Umjetna neuronska mreţa jest metoda za rješavanje sloţenih nesekvencijalnih
zadataka kao što su učenje, optimiziranje ili prepoznavanje. Metoda je stara preko 50 godina,
ali nagli razvoj doţivljava tek zadnjih 15-ak godina. Sama ideja inspirirana je biološkim
neuronima - ţivčanim stanicama koje su temelj ţivčanog sustava. Ljudski mozak sastoji se od
10 milijardi meĎusobno spojenih neurona. Učenjem se “čvrstoća” veza izmeĎu neurona
povećava i stabilizira. Te veze nositelji su informacija i znanja. [24]
Tema diplomskog rada je kreiranje modela neuronskih mreţa i stabala odlučivanja za
klasifikaciju kupaca prema kupovini ručnika.
Stabla odlučivanja vrlo su moćne i popularne tehnike modeliranja za klasifikacijske i
predikcijske probleme. Privlačnost stabla odlučivanja leţi u činjenici da, u odnosu na npr.
neuronske mreţe nude modela podataka u 'čitljivom', razumljivom obliku - ustvari u obliku
pravila. Ta pravila se lako mogu direktno interpretirati običnim jezikom, ili pak koristiti u
nekom od jezika za rad s bazama podataka (SQL), tako da se odreĎeni primjeri iz baze mogu
izdvojiti korištenjem pravila generiranih stablom odlučivanja. [17]
U poduzeću koje se bavi kataloškom prodajom biljeţene su kupovine njihovih kupaca. Na taj
način prikupljeni su podaci o kupcima i o artiklima koje su oni kupovali.
Model se sastoji od 41 varijable, od kojih je 40 ulaznih varijabli (intervalna, ordinalne i
binarne), i jedna izlazna varijabla (binarna).
Pretraţena su i prethodna istraţivanja o korištenju modela neuronske mreţe i stabla
odlučivanja, te su opisane i metode koje su korištene za obradu podataka. U nastavku rada su
navedeni i podaci korišteni za istraţivanje, te se na kraju nalaze i rezultati samog istraţivanja.
U samom zaključku rada je objašnjeno kako bi se istraţivanje moglo proširiti, odnosno koje
varijable bi se mogle ispitati kako bismo došli do dodatnih informacija.
Page 7
7
2. Cilj i svrha rada
Ovo istraţivanje bi moglo koristiti gotovo svim vlasnicima trgovina ukoliko se ne radi o
specijaliziranim trgovinama, a pogotovo bi veliku korist mogli imati vlasnici većih
supermarketa gdje se prodaje roba široke potrošnje i gdje je veći proizvodni asortiman.
Cilj je klasificirati kupce s obzirom hoće li kupiti ručnike ili neće. Svrha rada je uočiti koje
ulazne varijable imaju najveći utjecaj a koje varijable nemaju gotovo nikakav utjecaj na
odluku kupaca hoće li ili neće kupiti ručnike. Za ovo istraţivanje korištena je metodologija
neuronskih mreţa i stabala odlučivanja.
3. Prethodna istraživanja
Page 8
8
Uspješna primjena neuronskih mreţa prisutna je u mnogim područjima, npr. zdravstvu,
elektrotehnici, vojsci, poslovanju, obrazovanju, i drugim. Prema istraţivanjima Wong-a et al.
(1997), najveći udio poslovnih primjena NM u posljednjih 10 godina pripada proizvodnji i
operacijama (53.5%), zatim financijama (25.4%), te marketingu i drugim područjima.
Rezultati primjene neuronskih mreţa pokazuju da one u većini slučajeva daju bolje rezultate
od metoda tradicionalnog računalstva, a prednosti primjene ove metode mogu se provjeriti u
izvještajima brojnih tvrtki koje ih koriste, kao npr. izvještaji tvrtke o primjeni neuronskih
mreţa za zadovoljavanje potreba kupaca, u zdravstvu, i dr. [1]
Modeli neuronske mreţe i stabla odlučivanja su pokazali dobre rezultate i kada se radi o
predviĎanju uspješnosti studenata. Rad se bavi kreiranjem modela za predviĎanje uspješnosti
studenata i analizom čimbenika koji utječu na uspješnost. Model temeljen na stablima
odlučivanja pokazao je znatno veću točnost klasifikacije od neuronskih mreţa, ukazujući da
su stabla odlučivanja uspješnija metoda u predviĎanju uspješnosti studenata na promatranom
skupu podataka. Analiza čimbenika uspješnosti pokazala je da je vrijeme provedeno u učenju,
prisutnost na vjeţbama, vrsta materijala iz kojih se uči, te vaţnost dobivene ocjene za studenta
meĎu najznačajnijim prediktorima uspješnosti studenta. [2]
Suvremeni sustavi za izračun potrošnje plina takoĎer koriste neuronske mreţe. Kod primjene
neuronskih mreţa potrebno je odrediti što bolju strukturu neuronske mreţe te odrediti
elemente koji će se uzimati u obzir. TakoĎer treba pravilno odabrati način učenja neuronske
mreţe kao i način arhiviranja svih izmjerenih podataka. Sustav mora omogućiti pravovremenu
reakciju opskrbljivača na distributivnom sustavu u slučaju prekoračenja planiranih vrijednosti
potrošnje plina. U tu svrhu opskrbljivaču mora biti omogućen podatak o trenutnoj potrošnji
plina na distributivnom sustavu. Veliki problem prilikom izrade prognoze potrošnje je
pogreška u prognoziranim meteorološkim podacima. Potrošnja plina najviše ovisi o vanjskoj
temperaturi, a netočnost koja je prisutna u prognozi značajno se prenosi i na sustav za izradu
prognoze potrošnje plina. Nominacije potrošnje plina koje se rade za naredni dan uvelike se
oslanjaju na vremensku prognozu i to prvenstveno na prognozu temperature za naredni dan.
Analiza dobivenih rezultata u promatranom razdoblju ukazala je na značajan utjecaj
temperature na točnost nominiranih vrijednosti. [3]
Neuronske mreţe su pronašle svoju primjenjivost i u procjenjivanju kvalitete obraĎivane
površine. Prikupljeni rezultati eksperimentalnih istraţivanja, na radnom predmetu „razvodnik
Page 9
9
ureĎaja za ronjenje“, posluţili su za procjenjivanje površinske hrapavosti primjenom
neuronskih mreţa. Analizirane su različite neuronske mreţe širenja unazad, te je izabrana
mreţa s najmanjom razinom RMS (eng. Root Mean Square) greške. Procjena površinske
hrapavosti koju daje model, moţe olakšati rad manje iskusnim tehnolozima i na taj način
skratiti vrijeme tehnološke pripreme proizvodnje. [5]
Umjetne neuronske mreţe pokazale su se korisnim u primjeni kod sloţenih kemijskih i
biokemijskih procesa gdje standardnim metodama nije moguće uspješno modelirati procese i
dobivene modele primijeniti za voĎenje procesa. Danas, zahvaljujući intenzivnom razvoju
teorije i praktične primjene neuronskih mreţa, stoje na raspolaganju brojne strukture i
algoritmi. [6]
Umjetna neuronska mreţa je sustav temeljen na radu biološke neuronske mreţe, drugim
riječima, ona predstavlja oponašanje biološke neuronske mreţe. Istraţena je uloga umjetne
neuronske mreţe u detekciji abnormalnosti u funkciji rada pluća. UsporeĎena su svojstva
dviju različitih verzija neuronski mreţnih ART algoritama kao što su neizravne ART i
ARTFC metode korištene za klasifikaciju plućnih funkcija, otkrivanje restriktivnih,
opstruktivnih i normalnih uzoraka dišnih abnormalnosti putem svake neuronske mreţe s
podacima prikupljenim spirometrijom. Spirometrijski podaci su prikupljeni na 150 pacijenata
standardnim postupkom prikupljanja, gdje se 100 ispitanika koristi za obuku i 50 za testiranje.
Rezultati su pokazali da standardi neizravni ART algoritam raste brţe od ARTFC, koji
uspješno rješava problem kategorizacije proliferacija. [7]
Segmentacija trţišta postupak je bez kojega se ne moţe zamisliti suvremeno poslovanje
poduzeća orijentiranoga na ţelje i potrebe klijenta poradi maksimizacije zadovoljstva
uslugom i kvalitetom usluge, kao i maksimizacije financijskoga rezultata poduzeća. Pri
segmentaciji trţišta uključene su brojne varijable, tj. metode, kao što su segmentacija na
osnovi demografskih karakteristika potrošača, socioekonomske karakteristike, obiljeţja
kupovnih situacija i slično. Neuronske mreţe pokazale su se kao vrlo djelotvorni modeli.
Neuronskim mreţama moţe se uspješno segmentirati trţište i na taj način dobiti slika
odreĎenog broja trţišnih segmenata. [4]
TakoĎer su za Hrvatske šume znanstvenici istraţili primjenjivost umjetnih neuronskih mreţa
u procjeni sastojinskih obrasta sa cikličkih snimaka. Procjena je provedena primjenom
Page 10
10
višeslojnog perceptrona, kao najkorištenijeg modela neuronskih mreţa u daljinskim
istraţivanjima. TakoĎer je korištena samoorganizirajuća neuronska mreţa sa svrhom kontrole
utvrĎenih obrasta. Kako se u šumarstvu svakodnevno provodi velik broj različitih mjerenja,
upravo umjetne neuronske mreţe predstavljaju model temeljen na teoriji učenja,
kojim bi se značajnije moglo unaprijediti korištenje ovako velikog broja
podataka, koji su se do sada rješavali isključivo statističkim metodama i metodama
operacijskih istraţivanja. Ovakva neuronska mreţa pokazala je dobre rezultate u procjeni,
kontroli i raspodjeli obrasta. [14]
Stabla odlučivanja su takoĎer našla svoju primjenu u raznim gospodarskim djelatnostima.
Šalomon, Boţanić i Dobša uspješno su koristili stabla odlučivanja kako bi pronašli varijablu
koja je najznačajnija za mikrobiološku kvalitetu u proizvodnji svjeţeg sira. Rezultati metode
glavnih komponenata, s obzirom na broj kvasaca i plijesni u gramu svjeţeg sira, pokazali su
da najveći utjecaj na kvalitetu sira ima mikrobiološka čistoća zraka. Pomoću metode stabla
odlučivanja dobiveni su interni standardi za ukupan broj aerobnih mezofilnih bakterija te
kvasaca i plijesni u zraku koji utječu na mikrobiološku kvalitetu svjeţeg sira. [15]
4. Metodologija neuronskih mreža
4.1. Razvoj neuronskih mreža
Page 11
11
Pedesetih godina prošlog stoljeća na konferenciji Dartmouth Summer Research Project on
Artifical Intelligence, kao jedna od grana umjetne inteligencije, profiliralo se neuronsko
računarstvo. Na toj konferenciji najavljeno je ostvarivanje vizije računalnog modela koji
će u nekim temeljnim principima oponašati funkcioniranje mozga. Neuronsko računarstvo
se pojavljuje kao odgovor Von Neumann-ovim računalima nastojeći simulirati ili ostvariti
paralelnu obradu informacija koju koristi ljudski mozak dok razmišlja, sjeća se i rješava
probleme. [1]
Za razvoj neuronskih mreţa od presudnog je značaja nekoliko godina: [1]
• 1958. Perceptron - prva neuronska mreţa (Frank Rosenblatt), učenje se odvija samo u dva
sloja, nije mogla rješavati probleme klasifikacije koji nisu linearno djeljivi (npr. XOR
problem)
• 1969. Minsky i Papert objavljuju rad u kojem oštro kritiziraju nedostatke Perceptrona, što
uzrokuje prestanak ulaganja u istraţivanja neuronskih mreţa.
• 1974. višeslojna perceptron mreţa - MLP (Paul Werbos)- prva verzija Backpropagation
mreţe, prevladava nedostatak perceptrona uvoĎenjem učenja u skrivenom sloju
• 1986. Backpropagation mreţu usavršuju Rumelhart, Hinton, Williams, i ona vraća ugled
neuronskim mreţama, jer omogućuje aproksimiranje gotovo svih funkcija i rješavanje
praktičnih problema
• … - otada se razvijaju brojni algoritmi za NM koji s pomoću različitih
pravila učenja, ulaznih i izlaznih funkcija rješavanju probleme
predviĎanja, klasifikacije i prepoznavanja uzoraka.
4.2. Općenito o neuronskim mrežama
Neuronske mreţe su metoda umjetne inteligencije (UI) strukturirane prema ljudskom mozgu.
Page 12
12
Neuronske mreţe su programi ili hardverski sklopovi koji iterativnim postupkom iz prošlih
podataka nastoje pronaći vezu izmeĎu ulaznih i izlaznih varijabli modela, kako bi se za nove
ulazne varijable dobila vrijednost izlaza (ili drugim riječima, uče na primjerima). Od početka
svoje prisutnosti u znanosti, neuronske mreţe istraţivane su s dva različita pristupa. Prvi,
biološki pristup, istraţuje neuronske mreţe kao pojednostavljene simulacije ljudskog mozga i
upotrebljava ih za testiranje hipoteza o funkcioniranju ljudskog mozga. Drugi pristup tretira
neuronske mreţe kao tehnološke sustave za sloţenu obradu informacija. [13]
Slika 1. Prikaz neuronske mreţe [1]
Postoje dvije vrste NM: [8]
1. Biološka neuronska mreţa
2. Umjetna neuronska mreţa
Biološka neuronska mreža
Biološka neuronska mreţa je graĎena od stvarnih bioloških neurona koji su fizički ili
funkcionalno povezani u periferni ţivčani sustav ili središnji ţivčani sustav. U području
neuroznanosti, često se identificiraju kao grupe neurona koje izvode specifičnu fiziološku
funkciju. [8] Biološki neuron je stanica koja prima informacije od drugih neurona putem
dendrita, obraĎuje ih, a zatim šalje impuls putem aksona i sinapsi drugim neuronima u mreţi.
Page 13
13
Učenje se odvija promjenom jačine sinaptičkih veza. Milijuni neurona u mreţi mogu
paralelno obraĎivati informacije. [11]
Biološke neuronske mreţe sastavni su dio čovjeka čiji se mozak sastoji od 100 milijardi
neurona, a zasluţne su za izvoĎenje vrlo vaţnih funkcija kao što su razmišljanje, učenje,
emocije, precepcija, motorika itd. [9]
Slika 2. Struktura biološkog neurona [22]
Umjetna neuronska mreža
Umjetna neuronska mreţa je graĎena od meĎusobno povezanih umjetnih neurona
(programskih konstrukata sa svojstvima bioloških neurona). Umjetne neuronske mreţe se
mogu koristiti ili za razumijevanje bioloških neuronskih mreţa ili za rješavanje problema za
koji je potrebna umjetna inteligencija, bez potrebe stvaranja modela stvarnog biološkog
sustava. [8] Umjetni neuron je jedinica za obradu podataka (varijabla) koja prima ponderirane
ulazne vrijednosti od drugih varijabli, prema nekoj formuli transformira primljenu vrijednost,
te šalje izlaz drugim varijablama. Učenje se odvija promjenom vrijednosti “teţina” meĎu
varijablama. [11] Razvojem umjetnih neuronskih mreţa došlo je do velikog napretka na
području umjetne inteligencije. Iako relativno nepoznata disciplina meĎu širom populacijom u
Page 14
14
doba sve veće popularizacije osobnih računala postiţe velike napretke. Na ovome polju
znanstvenici raznih znanstvenih disciplina projektiraju sve veći broj umjetnih neuronskih
mreţa sa svrhom rješavanja problema kao što su prepoznavanje, predviĎanje, optimizacija,
asocijativna memorija i kontrola. [22]
Slika 3. Struktura umjetnog neurona [22]
4.3. Građa neuronskih mreža
Neurone je potrebno organizirati u slojeve kako bi se dobila struktura neuronske mreţe.
Slojevi se meĎusobno povezuju vezama opterećenim teţinskim koeficijentima. Ulazni i
izlazni slojevi mreţe su u direktnoj interakciji s okolinom, a sloj koji nema te interakcije
naziva se skrivenim slojem. [23]
Proces dizajniranja neuronske mreţe sastoji se od četiri faze: [13]
1) rasporeĎivanje neurona u različite slojeve,
2) odreĎivanje tipa veze izmeĎu neurona (inter-slojne i intra-slojne veze),
3) odreĎivanje načina na koji neuroni primaju ulaze i proizvode izlaze,
4) odreĎivanje pravila učenja za prilagoĎavanje teţina veza.
Rezultat dizajniranja neuronske mreţe je arhitektura mreţe. Prema gornjem
procesu dizajniranja, kriteriji za razlikovanje arhitektura neuronskih mreţa su: [13]
Page 15
15
broj slojeva,
tip veze izmeĎu neurona,
veza izmeĎu ulaznih i izlaznih podataka,
ulazne i prijenosne funkcije,
tip učenja,
sigurnost ispaljivanja,
vremenske karakteristike,
vrijeme učenja.
4.3.1. Broj slojeva
S obzirom na broj slojeva NM mogu biti: [10]
1. dvoslojne – imaju samo ulazni i izlazni sloj, npr. Perceptron, ADALINE,
2.višeslojne – imaju ulazni, izlazni i jedan ili više skrivenih slojeva, npr.
Backpropagation, Radial Basis Function, itd.
4.3.2. Tip veze između neurona
Veze u mreţi mogu se ostvariti izmeĎu dva sloja (inter-slojne veze) i izmeĎu neurona u
jednom sloju (intra-slojne veze). Postoje različiti tipovi inter-slojnih veza: [13]
a) potpuno povezane – svaki neuron u prvom sloju povezan je sa svakim neuronom u drugom
sloju
b) djelomično povezane – svaki neuron u prvom sloju ne mora nuţno biti povezan sa svakim
neuronom u drugom sloju
c) unaprijed – veze izmeĎu neurona su jednosmjerne, neuroni prvog sloja šalju svoje izlaze
neuronima u drugom sloju, ali nema povratne veze
d) dvosmjerne – postoji povratna veza kada neuroni drugog sloja šalju svoj izlaz nazad
neuronima u prvom sloju
e) hijerarhijske – neuroni jednog sloja povezani su samo s neuronima susjednog sloja
f) rezonantna – dvosmjerna veza gdje neuroni nastavljaju slati informacije izmeĎu slojeva sve
dok odreĎeni uvjet nije zadovoljen.
Page 16
16
Veze izmeĎu neurona u jednom sloju (intra-slojne) mogu biti: [13]
a) Ponavljajuće
b) On-center/off-surround
Neke od intra-slojnih mreţa s ponavljajućom vezom su: [13]
Hopfield-ova mreţa
Ponavljajuća9 Mreţa “širenje unatrag
Neke od mreţa s on-center/off-surround vezom su: [13]
ART1, ART2, ART3
Kohonenova samo-organizirajuća mreţa
Counterpropagation mreţa,
Mreţa s konkurentnim učenjem.
4.3.3. Veza između ulaznih i izlaznih podataka
Neuronske mreţe mogu se takoĎer razlikovati s obzirom na veze izmeĎu ulaza i
izlaza i mogu biti: [13]
1) autoasocijativne – ulazni vektor je istog sastava kao i izlazni (česte su u
problemima prepoznavanja uzoraka),
2) heteroasocijativne – izlazni vektor se razlikuje od ulaznog vektora.
Autoasocijativne mreţe koriste se u prepoznavanju uzoraka, obradi signala, filtriranju
smetnji i sličnim problemima koji nastoje prepoznati uzorak ulaznih podataka.
4.3.4. Ulazne i prijenosne funkcije
Ulazne (sumacijske) funkcije
Page 17
17
Kada neki neuron prima ulaz iz prethodnog sloja, vrijednost njegovog ulaza računa
se prema ulaznoj funkciji, obično zvanoj “sumacijska” funkcija. Najjednostavnija
sumacijska funkcija za neuron i odreĎena je mnoţenjem izlaza poslanog od strane
neurona j prema neuronu i (označenom kao izlaz j) s teţinom veze izmeĎu neurona i i
neurona j, zatim sumiranjem tog umnoška za sve neurone j povezane s neuronom i, ili: [13]
Izlazne (prijenosne) funkcije
Izlaz neurona računa se prema tzv. prijenosnoj funkciji. Nekoliko najčešće korištenih
prijenosnih funkcija su: [13]
funkcija koraka (step funkcija),
signum funkcija,
sigmoidna funkcija,
hiperboličko-tangentna funkcija,
linearna funkcija,
linearna funkcija s pragom.
Sigmoidna (ili logistička) funkcija jedna je od najčešće upotrebljavanih prijenosnih funkcija
u neuronskim mreţama. [13]
Graf sigmoidne funkcije prikazan je na slici:
Page 18
18
Slika 4. Graf sigmoidne funkcije [13]
Graf hiperboličko-tangentne funkcije sličan je grafu sigmoidne funkcije, osim što je interval
vrijednosti ovdje [-1,1]. Zbog svoje mogućnosti mapiranja vrijednosti u pozitivna kao i u
negativna područja, ova funkcija upotrebljava se u svim našim eksperimentima. [13]
Slika 5. Graf hiperboličko- tangentne funkcije [13]
4.3.5. Tipovi učenja
Svaka neuronska mreţa prolazi kroz tri operativne faze: [13]
1) faza učenja (treniranja) – mreţa uči na uzorku za treniranje, teţine se prilagoĎavaju u cilju
minimiziranja ciljne funkcije, npr. korijena srednjeg kvadrata greške (eng. Kratica RMS
greška)
2) faza testiranja – mreţa se testira na uzorku za testiranje dok su teţine fiksirane
Page 19
19
3) operativna faza (faza opoziva) – neuronska mreţa se upotrebljava u novim slučajevima s
nepoznatim rezultatima (teţine su takoĎer fiksirane)
Pravila učenja
Pravilo učenja predstavlja formulu koja se upotrebljava za prilagoĎavanje teţina veza meĎu
neuronima. IzmeĎu različitih do sada razvijenih pravila učenja, najčešće se koriste naredna
četiri: [13]
1) Delta pravilo,
2) Poopćeno Delta pravilo,
3) Delta-Bar-Delta i Prošireno Delta-Bar-Delta pravilo,
4) Kohonen-ovo pravilo.
4.3.6. Sigurnost ispaljivanja
Prema sigurnosti ispaljivanja neuronske mreţe se mogu podijeliti na: [13]
1. determinističke mreţe – kada neuron dostigne odreĎenu razinu aktivacije šalje impulse
drugim neuronima,
2. stohastičke mreţe – ispaljivanje nije sigurno i odvija se prema probabilističkoj
distribuciji.
4.3.7. Vremenske karakteristike
S obzirom na vremenske karakteristike postoje: [13]
1. statičke mreţe – primaju ulaze u jednom prolazu
2. dinamičke mreţe – primaju ulaze u vremenskim intervalima
4.3.8. Vrijeme učenja
Učenje neuronskih mreţa moţe biti: [13]
1. skupno (batch) učenje – mreţa uči samo u fazi učenja, dok su u ostalim fazama teţine
Page 20
20
fiksirane
2. on-line učenje – mreţa prilagoĎava svoje teţine i u fazi opoziva
4.4. Neuronske mreže za problem klasifikacije
Postoje brojni algoritmi za klasifikaciju. Neki od njih, koji su potvrĎeni kao dobri
klasifikatori, su probabilistička NM, mreţa učeće vektorske kvantizacije, te mreţe opće
namjene kao što su mreţa "širenje unatrag", odnosno njezin algoritam višeslojni preceptron
(MLP) i mreţa s radijalno zasnovanom funkcijom koje takoĎer mogu biti upotrabljavane kao
klasifikatori ako se SoftMax aktivacijska funkcija doda u izlazni sloj. [13]
4.5. Višeslojni perceptron
Višeslojni perceptron ima glavna svojstva: [12]
Model neurona ima nelinearnu izlaznu karakteristiku koja je glatka (za razliku od
Rosenblattovog perceptrona)
Često se koristi sigmoidna aktivacijska funkcija oblika:
Mreţa sadrţi jedan ili više skrivenih slojeva neurona
Mreţa je dobro povezana (postoji puno sinapsi)
Page 21
21
Slika 6. Struktura mreţe višeslojni perceptron [12]
Mreţa na slici sadrţi jedan ulazni sloj, dva skrivena sloja o jedan izlazni sloj neurona.
Karakteristike: [12]
Broj neurona u pojedinom sloju moţe biti različit
Izlazi neurona jednog sloja su ulazi u sljedeći sloj
Nema povratnih veza.
Navedene karakteristike temelj su dobrih svojstava višeslojnih perceptrona no isto tako i
slijedećih mana: [12]
Višestruke nelinearnosti i visoka povezanost oteţava teoretsku analizu ove mreţe
Korištenje skrivenih neurona oteţava vizualizaciju procesa učenja
Proces učenja je teţi zbog velikog broja neurona i zbog potrebe da mreţa sama odluči
što trebaju naučiti skriveni neuroni (za izlazne neurone se zna)
Page 22
22
5. Metodologija stabala odlučivanja
Stabla odlučivanja vrlo su moćne i popularne tehnike modeliranja za klasifikacijske i
predikcijske probleme. Privlačnost stabla odlučivanja leţi u činjenici da, u odnosu na npr.
neuronske mreţe nude modela podataka u 'čitljivom', razumljivom obliku - ustvari u obliku
pravila. Ta pravila se lako mogu direktno interpretirati običnim jezikom, ili pak koristiti u
nekom od jezika za rad s bazama podataka (SQL), tako da se odreĎeni primjeri iz baze mogu
izdvojiti korištenjem pravila generiranih stablom odlučivanja. [17]
Stablo odlučivanja je dijagram koji prikazuje dogaĎaje i odluke unutar problema i njihov
kronološki slijed. Smisao je stabla odlučivanje da, bez obzira na sloţenost problema, utječe na
jasno definiranje problema, razmatranje svih smjerova akcija i pojasni prirodu rizika i
neizvjesnosti unutar razmatranog problema. Kronološki slijedi unutar stabla odlučivanja kreće
s lijeva na desno. [18]
Stablo odlučivanja jest klasifikacijski algoritam u formi stablaste strukture u kojoj se razlikuju
dva tipa čvorova povezanih granama: [17]
a) krajnji čvor ("leaf node") - kojim završava odredjena grana stabla. Krajnji čvorovi
definiraju klasu kojoj pripadaju primjeri koji zadovoljavaju uvjete na toj grani stabla
b) čvor odluke ("decision node") - ovaj čvor definira odredjeni uvjet u obliku vrijednosti
odredjenog atributa (varijable), iz kojeg izlaze grane koje zadovoljavaju odredjene
vrijednosti tog atributa.
Stablo odlučivanja moţe se koristiti za klasifikaciju primjera, tako da se krene od prvog čvora
odlučivanja u korijenu stabla i kreće po onim granama stabla koja primjer sa svojim
vrijednostima zadovoljava sve do krajnjeg čvora koji klasificira primjer u jednu od postojećih
klasa problema. [17]
Osnovni preduvjeti za korištenje tehnike stabla odlučivanja su: [17]
Opis u obliku parova vrijednosti-atributa - podaci o primjeru moraju biti opisani u obliku
konačnog broja atributa;
Page 23
23
Prethodno definiran konačan broj klasa (vrijednosti ciljnog atributa) - kategorije kojima
primjeri pripadaju moraju biti definirane unaprijed i treba ih biti konačan broj;
Klase moraju biti diskretne - svaki primjer mora pripadati samo jednoj od postojećih klasa,
kojih mora biti znatno manje negoli broja primjera;
Značajan broj primjera - obično je poţeljno da u skupu primjera za generiranje stabla
odlučivanja postoji barem nekoliko stotina primjera.
Slika 7. Jednostavno stablo odlučivanja [17]
5.1. Prednosti i nedostaci stabla odlučivanja
Prednosti metode stabla odlučivanja su: [17]
o Sposobnost generiranja razumljivih modela;
o Relativno mali zahtjevi na računalne resurse (vrijeme i memorija);
o Sposobnost korištenja svih tipova atributa (kategorički, numerički);
o Stabla odlučivanja jasno odraţavaju vaţnost pojedinih atributa za konkretni
klasifikacijski odnosno predikcijski problem.
Page 24
24
Slabe strane metode stabla odlučivanja: [17]
o Metode stabla odlučivanja su manje prikladne za probleme kod kojih se traţi
predikcija kontinuiranih vrijednosti ciljnog atributa;
o Metode Stabla odlučivanja sklona su greškama u više-klasnim problemima sa
relativno malim brojem primjera za učenje modela;
o 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;
o Stabla odlučivanja nisu dobro rješenje za klasifikacijske probleme kod kojih su
regije odreĎenih klasa 'omeĎene' nelinearnim krivuljama u više-
dimenzionalnom 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;
5.2. Pretpostavke uporabe stabla odlučivanja
Postoji nekoliko pretpostavki za uporabu metode stabla odlučivanja: [16]
• Donositelj odluke ima na raspolaganju većinu relevantnih inačica odluke
• Moguće posljedice (ishodi) inačica odluke mogu se na neki način kvantificirati
• Pri izboru se razmatraju samo ona obiljeţja inačica odluka koja se mogu kvantificirati
• Stablo odlučivanja moţe se analizirati ako postoje subjektivne vjerojatnosti nastupanja
nesigurnih dogaĎaja
Page 25
25
5.3. Algoritam stabla odlučivanja
CART algoritam (klasifikacijski i regresijski algoritam) vrši klasifikaciju i generira
regresijsko stablo odluke koje poslije sluţi za predikciju. Prvo se izgraĎuje maksimalno stablo
koje se zatim smanjuje (pruning) na odgovarajući nivo. CART algoritam je popularan jer
naglašava smanjivanje (pruning) da bi postigao robusni model. [21]
CART je neparametarska tehnika stabla odlučivanja ili klasifikaciju ili regresijsko stablo
ovisno o tome je li zavisna varijabla kategorijalna ili numerička. Stabla odlučivanja nastaju
kao skup pravila temeljena na varijablama u modeliranju. [19]
Algoritam CART uzima u obzir sva moguća grananja kako bi pronašao najbolje grananje za
točnost modela. Najbolje grananje odreĎuje se za svaki atribut u svakom čvoru, a pobjednik
se izabire s pomoću Gini indeksa. [2]
5.4. Kriteriji ocjenjivanja kvalitete stabla odlučivanja
Logičan kriterij prema kojem će se ocjenjivati kvaliteta stabla je njegova točnost. Točnost
stabla je moguće definirati na više načina. Mjerenje postotka točno razvrstanih uzoraka je
jedna tehnika mjerenja točnosti modela. Svaka krajnja grana stabla se razvrstava u neki od
nivoa izlazne značajke ovisno o omjeru klijenata u toj grani. Tako se npr. kod stabla za
razvrstavanje s binarnom ciljnom značajkom, sve jedinke iz grane u kojoj je postotak jedinki
jedne klase veći od 50%, sve jedinke iz te grane proglašavaju jedinkama te klase. [20]
Page 26
26
6. Opis podataka i modela
U poduzeću koje se bavi kataloškom prodajom biljeţene su kupovine njihovih kupaca. Na taj
način prikupljeni su podaci o kupcima i o artiklima koje su oni kupovali. Pomoću tih podataka
potrebno je odrediti kojim kupcima treba slati kataloge odnosno kod kojih kupaca postoji
mogućnost da će kupiti odreĎene artikle. U ovom modelu cilj je klasificirati kupce koji se
nalaze u bazi i razvrstati ih na one koji će kupiti ručnike i one koji neće kupiti ručnike.
Model se sastoji od 41 varijable, od kojih je 40 ulaznih varijabli (intervalna, ordinalne i
binarne), i jedna izlazna varijabla (binarna). U ovom slučaju izlazna ili binarna varijabla je
TOWELS_BIN. Ta varijabla je dobivena od varijable TOWELS, tako da smo varijablu
TOWELS pretvorili u binarnu, što znači da 0 označava da kupci ne kupuju ručnike, a 1 znači
da kupci kupuju ručnike. Sve varijable su slovčanog ili brojčanog tipa, pa tako npr. imamo
varijablu AMOUNT koja je intervalna i brojčanog tipa ili varijablu MOBILE koja je binarna i
slovčanog tipa.
Page 27
27
Naziv varijable Vrsta varijable Opis varijable
Purchase Ulazna, binarna Da li je obavljena kupovina (da/ne)
Amount Ulazna, kontinuirana Koliki je iznos potrošen
Income Ulazna, kontinuirana Koliki je godišnji prihod
Homeval Ulazna, kontinuirana Kolika je vrijednost kuće / stana
Frequent Ulazna, kontinuirana Kolika je učestalost narudţbe
Recency Ulazna, kontinuirana Koliko je dana prošlo od posljednje kupovine
Martial Ulazna, binarna Da li je kupac u braku (da/ne)
Sex Ulazna, binarna Spol kupca (m/ţ)
Age Ulazna, kontinuirana Starost kupca
Telind Ulazna, kontinuirana Da li je kupac zaposlen u telemarketingu
Apartment Ulazna, binarna Da li kupac iznajmljuje stan
Mobile Ulazna, binarna Da li je kupac u stanu duţe od jedne godine
Domestic Ulazna, kontinuirana Broj kupljenih domaćih proizvoda
Apparel Ulazna, kontinuirana Broj kupljenih odjevnih predmeta
Leisure Ulazna, kontinuirana Broj kupljenih artikala za slobodno vrijeme
Luxury Ulazna, kontinuirana Broj kupljenih luksuznih dobara
Promo 7 Ulazna, kontinuirana Broj promocija od 1- 7 mjeseci
Promo13 Ulazna, kontinuirana Broj promocija 0d 7 – 13 mjeseci
County Ulazna, kontinuirana Šifra regije kupca
Mensware Ulazna, kontinuirana Broj kupljenih muških odjevnih predmeta
Homeacc Ulazna, kontinuirana Broj kupljenih komada namještaja
Lamps Ulazna, kontinuirana Broj kupljenih svjetiljki
Linens Ulazna, kontinuirana Broj kupljenih komada posteljine
Blankets Ulazna, kontinuirana Broj kupljenih komada pokrivača
Towels Odbijena,kontinuirana Broj kupljenih komada ručnika
Outdor Ulazna, kontinuirana Broj kupljenih predmeta za izvan kuće
Coats Ulazna, kontinuirana Broj kupljenih komada kaputa
Wcoat Ulazna, kontinuirana Broj kupljenih komada ţenskih kaputa
Wappar Ulazna, kontinuirana Broj kupljenih ţenskih odjevnih predmeta
Hhappar Ulazna, kontinuirana Broj kupljenih odjevnih predmeta za ţene i muškarce
Jewelry Ulazna, kontinuirana Broj kupljenih komada nakita
Tmktord Ulazna, kontinuirana Koliki je broj narudţbi putem telemarketinga
Race Ulazna, kontinuirana Koja je rasna pripadnost kupca
Heat Ulazna, kontinuirana Koju vrstu grijanja kupac koristi
Numcars Ulazna, kontinuirana Broj automobila koje kupac posjeduje
Numkids Ulazna, kontinuirana Broj djece kupca
Travtime Ulazna, kontinuirana Duljina vremena putovanja
Edlevel Ulazna, kontinuirana Kolika je razina obrazovanja kupca
Job Ulazna, kontinuirana Koja je vrsta zaposlenja kupca
Valratio Ulazna, kontinuirana Kolika je vrijednost po jednoj pošiljci
Dining Ulazna, kontinuirana Broj kupljenih pribora za objedovanje
TOWELS_BIN Izlazna, binarna Kupljeni ručnici (0 –ne, 1-da)
Tablica 1. Popis varijabli
U gornjoj tablici nalazi se izlazna varijabla TOWELS_BIN koja je intervalna i brojčanog tipa.
Varijabla TOWELS_BIN ima 2 vrijednosti: 0 i 1, pri čemu vrijednost 0 označava da kupac
nije kupio ručnik, a vrijednost 1 označava da je kupac kupio ručnik.
Page 28
28
7. Dijagram u SAS programu Enterprise Miner
Slika 8. Dijagram u SAS programu Enterprise Miner
Koraci u izgradnji modela neuronske mreţe i stabla odlučivanja u programu SAS su sljedeći:
Učitavanje ulaznih podataka
Transformacija varijabli (pretvaranje u binarni oblik ako je potrebno)
Odabir izlazne varijable
Izbor parametara modela
ProvoĎenje treniranja i testiranja modela
Analiza rezultata
Izrada izvješća
Usporedba rezultata neuronskih mreţa i stabala odlučivanja
Prvi korak, nakon što smo ušli u Enterprise Miner, je učitavanje baze iz excel datoteke
Kataloska_prodaja. Podaci se učitavaju pomoću bloka Sasuser.Irena. Za provjeru podataka u
Page 29
29
bazi i provjeru varijabli koje se koriste, pomoći će nam blok Insight. On sluţi za tablični
pregled učitanih podataka i nema nikakav utjecaj na neuronsku mreţu ili stablo odlučivanja.
Blok Transform Variables sluţi za kreiranje novih varijabli, dok se u sljedećem bloku Dana
Set Attributes varijablama dodjeljuje uloga (target/rejected) i odreĎuje se hoće li varijabla biti
intervalna ili binarna. U bloku Data Partition odreĎuje se metoda uzimanja uzorka i pravi se
razdvajanje uzorka koji ide u treniranje, validaciju i testiranje. U ovom slučaj 60% podataka
se koristilo za treniranje, 20% podataka za validaciju, te 20% za testiranje. U bloku Neural
Network odreĎuje se koji će se algoritam koristiti za u neuronskoj mreţi i odreĎuje se broj
skrivenih neurona. Blok Assesment koristimo za koristimo za uvid u graf koji prikazuje
koliki će biti postotak odgovora u odnosu na postotak poslanih kataloga. Ovaj blok se takoĎer
koristi i za grafički prikaz matrice konfuzije u kojoj se prikazuju točno i netočno klasificirani
slučajevi. Posljednji blok koji je potrebno umetnuti u dijagram je blok Tree kojeg treba
povezati s prije dodanim blokovima, Dana Partition i Assessment u svrhu dobivanja podataka
koje je potrebno usporediti s podacima koje je dala neuronska mreţa. Pokretanjem zadnjeg
bloka Reporter otvara se datoteka u Internet Exploreru u kojoj se mogu vidjeti svi dobiveni
rezultati kao i korištene varijable.
Page 30
30
8. Rezultati
Trenirano je i testirano više arhitektura neuronske mreţe. Temeljem testiranja dobiveni su
rezultati neuronske mreţe i stabla odlučivanja. Kao mjerilo za uspješnost modela korištena je
prosječna stopa netočne klasifikacije (misclassification rate). Testirana je i metoda stabla
odlučivanja kako bi se dobiveni rezultati usporedili sa rezultatima modela neuronske mreţe.
8.1. Rezultati testiranih arhitektura neuronske mreže
Tablica 2. Rezultati neuronske mreţe
Neuronska mreţa je postavljena na način da je 60% podataka postavljeno za testiranje, 20%
za validaciju i 20% za testiranje. Testiranje je započelo Standard Backprop algoritmom
Rb Broj skrivenih
neurona
Algoritam
treniranja
Stopa netočne klasifikacije
(misclassification rate)
Treniranje Validacija Testiranje
1 10 Standard
backprop
0,26 0,298 0,298
2 20 Standard
backprop
0,29 0,298 0,303
3 6 Standard
backprop
0,27 0,295 0,293
4 5 Quickprop 0,24 0,308 0,308
5 6 RPROP 0,26 0,265 0,303
6 7 Standard
backprop
0,29 0,326 0,313
7 15 Standard
backprop
0,27 0,298 0,295
8 25 Standard
backprop
0,28 0,318 0,300
9 15 RPROP 0,26 0,300 0,288
10 20 RPROP 0,28 0,305 0,328
Page 31
31
treniranja i sa 10 skrivenih neurona. Nadalje je povećan broj neurona na 20 sa istim
algoritmom treniranja. Za ocjenu neuronske mreţe korištena je stopa netočne klasifikacije.
MeĎutim kako je povećan broj skrivenih neurona stopa netočne klasifikacije se povećala.
Promjenom algoritma treniranja na RPROP se stopa netočne klasifikacije takoĎer povećala uz
smanjenje broja skrivenih neurona, dok je promjenom algoritma treniranja na RPROP
pokazano da mreţa daje bolje rezultate uz malo povećanje broja skrivenih neurona. Tako su
najbolje dobiveni rezultati oni sa 15 skrivenih neurona i RPROP algoritmom treniranja. Stopa
netočne klasifikacije iznosi 0,288 što znači da je netočno klasificirano svega 28,8% podataka,
a ostatak od 71,20% je točno klasificirano.
Slika 9. Matrica konfuzije za neuronsku mreţu na uzorku za validaciju
Page 32
32
Stvarno (actual)
Pre
dv
iđen
o
(pre
dic
ted
)
0 1
0 84 78
1 40 191
Ukupno: 124 269
Točnost modela (%) 67,74% 71%
Tablica 3. Tablica matrice konfuzije za neuronsku mreţu na uzorku za validaciju
Matrica konfuzije prikazuje točno i netočno klasificirane slučajeve prema odabranom modelu.
U polju sa vrijednostima 0 i 0 nalaze se kupci koji uistinu neće kupiti proizvod, u ovom
slučaju je to ručnik, a za koje je mreţa prepoznala da ih neće kupiti. Ovdje su to 84 kupca od
124. U polju sa vrijednostima 1 i 0 nalaze kupci koji će kupiti ručnike ali ih mreţa nije
prepoznala, odnosno prepoznala ih je kao kupce koji neće kupiti ručnike. Ovdje je to 78
kupaca. Polje sa vrijednostima 0 i 1 iznosi 40. Taj broj pokazuje da postoji 40 kupaca koji
neće kupiti ručnike, ali ih je mreţa pogrešno svrstala, znači svrstala ih je meĎu one koji će
kupiti ručnike. U polju s vrijednostima 1 i 1 nalaze se oni kupci koji će uistinu kupiti ručnike,
a koje je mreţa točno klasificirala. To je 191 kupac od njih 269. Točnost modela pokazuje da
je u 67,74% prepoznao one kupce koji neće kupiti proizvod, a u 71% slučajeva je točno
prepoznao one koji će kupiti ručnike. Matrica konfuzije bolje je prepoznala one kupce koji
pripadaju u kategoriju da će kupiti ručnike. Prosječna stopa točnosti iznosi 69,37%.
Page 33
33
Slika 10. Lift chart dijagram za neuronsku mreţu
Iz ovoga lift-chart dijagrama neuronske mreţe vidljiva je točnost predviĎanja ovisno o tome
koliki postotak za uzorak se uzme. Na x-osi nalaze se postotci kupaca iz uzorka kojima bi se
mogli poslati katalozi, a na y-osi se nalazi stopa odgovora na slanje kataloga. Crvena linija
pokazuje stopu odaziva na slanje kataloga, dok plava linija pokazuje stopu odgovora ako se ne
koristi nikakav model za slanje kataloga. Ukoliko bi katalog bio poslan na adrese 10% kupaca
stopa odaziva kupaca na poslane kataloge bi iznosila 97%. To znači da bi od tih 10% kupaca
njih 97% kupilo ručnike. Kako bi katalozi bili poslani na sve veći broja adresa kupaca to bi
stopa odaziva bili manja. Tako npr. ako katalozi budu poslani na adrese 70% kupaca stopa
odaziva bi iznosila 71%, dok bi za 90% kupaca iznosila samo 62%. U ovome slučaju najbolje
stopa odgovora na poslani katalog dobivena je slanjem kataloga na adrese 10% kupaca. Na
kraju moţemo zaključiti iz grafikona da je svakako bolje koristiti odabrani model nego kada
se ne koristi nikakav model.
Page 34
34
8.2. Rezultati testiranih arhitektura stabla odlučivanja
Tablica 4. Testirane arhitekture stabla odlučivanja
Kao metode za prijelom stabla postoje 3 algoritma za prijelom stabla. To su Chi-square,
Entropy reuction i Gini reduction. Najbolji rezultati, odnosno najmanja stopa netočne
klasifikacije na uzorku za validaciju, su dobiveni korišteni Gini reduction algoritmom za
prijelom stabla uz 13 čvorova i stopom od 30,53%.
Slika 11. Prozor s rezultatima stabla dobiveni korištenjem algoritma Gini reduction
Rb Algoritam za
prijelom stabla
Broj čvorova Stopa netočne klasifikacije
(misclassification rate)
Treniranje Validacija
1 Chi-square test 9 0,2610 0,3079
2 Entropy
reduction
5 0,2678 0,3104
3 Gini reduction 13 0,2585 0,3053
Page 35
35
Slika 12. Stablo odlučivanja za najbolji model
Na slici je prikazano najbolje stablo odlučivanja koje se dobilo upotrebom Gini reduction
algoritma za prijelom stabla uz 13 čvorova. Izlazna varijabla su ručnici, tj. TOWELS_BIN,
dok su varijable vaţne za prijelom HOMEACC (broj kupljenih komada namještaja),
PROMO13 (broj promocija od 7-13 mjeseci), LINENS (broj kupljenih komada posteljine),
DOMESTIC (broj kupljenih domaćih proizvoda) i RECENCY (koliko je dana prošlo od
posljednje kupovine).
U prvom korijenu stabla odlučivanja model je na uzorku za validaciju oood ukupno 393
kupca razvrstao njih 162 u klasu 0, odnosno u one kupce koji neće kupiti proizvod a 231
kupca u je razvrstao u klasu 1, odnosno u one kupce koji će kupiti proizvod.
Prva varijabla na koju se stablo grana je HOMEACC te je njezina granična vrijednost 1.5.
1. PRIJELOM- ukoliko je vrijednost HOMEACC manja od 1.5 tada:
Model je u klasu 0 (kupci koji neće kupiti proizvod) svrstao 136 kupaca od 265,
odnosno 51,3%
Page 36
36
Model je u klasu 1 (kupci koji će kupiti proizvod) svrstao 129 kupaca od 265,
odnosno 48,7%
Kako rezultati na ovom čvoru nisu dovoljno dobri, stablo se dalja grana na varijablu
PROMO13. Ovdje se granične vrijednosti dijele u dvije skupine, ovisno o tome je li
PROMO13 manji ili veći ili jednak od 12.5.
1.1. PRIJELOM- ukoliko je vrijednost PROMO13 manja od 12.5 tada:
Model je u klasu 0 (kupci koji neće kupiti proizvod) svrstao 76 kupaca od 116,
odnosno 65,5%
Model je u klasu 1 (kupci koji će kupiti proizvod) svrstao 40 kupaca od 116,
odnosno 34,5%
Kako ni ovim grananjem nisu dobiveni zadovoljavajući rezultati stablo se i dalje grana na
varijablu DOMESTI. Ovdje se granične vrijednosti dijele u dvije skupine, ovisno o tome je li
DOMESTIC manji ili veći ili jednak 1.5.
1.1.1.PRIJELOM- ukoliko je vrijednost DOMESTIC manja od 1.5 tada:
Model je u klasu 0 (kupci koji neće kupiti proizvod) svrstao 63 kupaca od 87,
odnosno 72,4%
Model je u klasu 1 (kupci koji će kupiti proizvod) svrstao 24 kupaca od 87,
odnosno 27,6%
1.1.2. PRIJELOM- ukoliko je vrijednost DOMESTIC veća ili jednaka 1.5 tada:
Model je u klasu 0 (kupci koji neće kupiti proizvod) svrstao 13 kupaca od 29,
odnosno 44,8%
Model je u klasu 1 (kupci koji će kupiti proizvod) svrstao 16 kupaca od 29,
odnosno 55,2%
1.2. PRIJELOM- ukoliko je vrijednost PROMO13 veća ili jednaka 12.5 tada:
Model je u klasu 0 (kupci koji neće kupiti proizvod) svrstao 60 kupaca od 149,
odnosno 40,3%
Page 37
37
Model je u klasu 1 (kupci koji će kupiti proizvod) svrstao 89 kupaca od 149,
odnosno 59,7%
Stablo se i dalje grana na varijablu LINENS. Ovdje se granične vrijednosti dijele ovisno o
tome je li LINENS veći ili manji ili jednak od 1.5.
1.2.1.PRIJELOM- ukoliko je vrijednost LINENS manja od 1.5 tada:
Model je u klasu 0 (kupci koji neće kupiti proizvod) svrstao 53 kupaca od 121,
odnosno 43,8%
Model je u klasu 1 (kupci koji će kupiti proizvod) svrstao 68 kupaca od 121,
odnosno 56,2%
1.2.2.PRIJELOM- ukoliko je vrijednost LINENS veća ili jednaka 1.5 tada:
Model je u klasu 0 (kupci koji neće kupiti proizvod) svrstao 7 kupaca od 28,
odnosno 25%
Model je u klasu 1 (kupci koji će kupiti proizvod) svrstao 21 kupaca od 28,
odnosno 75%
2. PRIJELOM- ukoliko je vrijednost HOMEACC veća ili jednaka 1.5 tada:
Model je u klasu 0 (kupci koji neće kupiti proizvod) svrstao 26 kupaca od 128,
odnosno 20,3%
Model je u klasu 1 (kupci koji će kupiti proizvod) svrstao 102 kupaca od 128,
odnosno 79,7%
Kako ni ovdje nisu dobiveni zadovoljavajući rezultati stablo se i dalje grana na varijablu
LINENS. Ovdje se granične vrijednosti dijele ovisno o tome je li varijabla LINENS manja ili
veća ili jednaka od 0.5.
2.1. PRIJELOM- ukoliko je vrijednost LINENS manja od 0.5 tada:
Model je u klasu 0 (kupci koji neće kupiti proizvod) svrstao 14 kupaca od 47,
odnosno 29,8%
Model je u klasu 1 (kupci koji će kupiti proizvod) svrstao 33 kupaca od 47,
odnosno 70,2%
Page 38
38
Stablo se i dalje grana na varijablu RECENCY.Ovdje se granične vrijednosti dijele ovismo o
tome je li RECENCY manje ili veće ili jednako od 107.
2.1.1.PRIJELOM- ukoliko je vrijednost RECENCY manja od 107 tada:
Model je u klasu 0 (kupci koji neće kupiti proizvod) svrstao 7 kupaca od 27,
odnosno 25,9%
Model je u klasu 1 (kupci koji će kupiti proizvod) svrstao 20 kupaca od 27,
odnosno 74,1%
2.1.2.PRIJELOM- ukoliko je vrijednost RECENCY veća ili jednaka 107 tada:
Model je u klasu 0 (kupci koji neće kupiti proizvod) svrstao 7 kupaca od 20,
odnosno 35%
Model je u klasu 1 (kupci koji će kupiti proizvod) svrstao 13 kupaca od 20,
odnosno 65%
2.2. PRIJELOM- ukoliko je vrijednost LINENS veća ili jednaka 0.5 tada:
Model je u klasu 0 (kupci koji neće kupiti proizvod) svrstao 12 kupaca od 81,
odnosno 14,8%
Model je u klasu 1 (kupci koji će kupiti proizvod) svrstao 69 kupaca od 81,
odnosno 85,2%
Page 39
39
Slika 13. Matrica konfuzije za stablo odlučivanja na uzorku za validaciju
Stvarno (actual)
Pre
dv
iđen
o
(pre
dic
ted
)
0 1
0 63 99
1 21 210
Ukupno: 84 309
Točnost modela (%) 75% 67,96%
Tablica 5. Tablica matrice konfuzije za stablo odlučivanja na uzorku za validaciju
Matrica konfuzije prikazuje točno i netočno klasificirane slučajeve prema odabranom modelu.
U polju sa vrijednostima 0 i 0 nalaze se kupci koji uistinu neće kupiti proizvod, u ovom
slučaju je to ručnik, a za koje je mreţa prepoznala da ih neće kupiti. To su 63 kupca od njih
84. U polju sa vrijednostima 1 i 0 nalaze kupci koji će kupiti ručnike ali ih mreţa nije
prepoznala, odnosno prepoznala ih je kao kupce koji neće kupiti ručnike. Ovdje je to 99
kupaca. Polje sa vrijednostima 0 i 1 iznosi 21. Taj broj pokazuje da postoji 21 kupaca koji
neće kupiti ručnike, ali ih je mreţa pogrešno svrstala, znači svrstala ih je meĎu one koji će
Page 40
40
kupiti ručnike. U polju s vrijednostima 1 i 1 nalaze se oni kupci koji će uistinu kupiti ručnike,
a koje je mreţa točno klasificirala. To je 210 kupaca od njih 309. Točnost modela pokazuje da
je u 75% slučajeva prepoznao one kupce koji neće kupiti proizvod, a u 67,96% slučajeva je
točno prepoznao one koji će kupiti ručnike. Matrica konfuzije bolje je prepoznala model onih
koji pripadaju u kategoriju da neće kupiti ručnike. Prosječna stopa točnosti iznosi 71,48%.
Slika 14. Lift chart dijagram za stablo odlučivanja
Iz ovoga lift-chart dijagrama stabla odlučivanja vidljiva je točnost predviĎanja ovisno o tome
koliki postotak za uzorak se uzme. Na x-osi nalaze se postotci kupaca iz uzorka kojima bi se
mogli poslati katalozi, a na y-osi se nalazi stopa odgovora na slanje kataloga. Crvena linija
pokazuje stopu odaziva na slanje kataloga, dok plava linija pokazuje stopu odgovora ako se ne
koristi nikakav model za slanje kataloga. Ukoliko bi katalog bio poslan na adrese 10% kupaca
stopa odaziva na katalog bi iznosila 82%. To znači da bi od tih 10% kupaca njih 82% kupilo
ručnike. Kako bi katalozi bili poslani na sve veći broja adresa kupaca to bi stopa odaziva bili
manja. Tako npr. da katalozi budu poslani na adrese 70% kupaca stopa odaziva bi iznosila
69%, dok bi za 90% kupaca iznosila samo 63%. U ovome slučaju najbolje stopa odgovora na
poslani katalog dobivena je slanjem kataloga na adrese 20% kupaca, gdje bi stopa odgovora
Page 41
41
iznosila 84%. Na kraju moţemo zaključiti iz grafikona da je svakako bolje koristiti odabrani
model nego kada se ne koristi nikakav model.
8.3. Usporedba rezultata neuronske mreže i stabla odlučivanja
Slika 15. Usporedni lift-chart dijagram za neuronsku mreţu i stablo odlučivanja
Iz ovog lift-chart dijagrama neuronske mreţe i stabla odlučivanja vidljiva je točnost
predviĎanja ovisno o tome radi li se o neuronskoj mreţi ili o stablu odlučivanja, kao i tome
koliki se postotak uzme u obzir. Npr. ako pošaljemo kataloge na 10% kupaca stopa odgovora
u modelu neuronske mreţe bi iznosila 97%, dok bi u modelu stabla odlučivanja iznosila 82%.
Kako bi katalozi bili poslani na sve veći broj adresa kupaca to bi stopa odgovora bila manja,
ali postoji izuzetak kod modela stabla odlučivanja gdje bi se stopa odgovora na poslane
kataloge na adrese 20% kupaca povećala i iznosila bi 84%, dok se daljnjim povećanjem broja
poslanih kataloga stopa odgovora smanjuje. Na slici je vidljivo da neuronska mreţa daje bolje
rezultate sve dok se radi o slanju kataloga na adrese do 75% kupaca, nakon čega stablo
Page 42
42
odlučivanja pokazuje bolje rezultate. Dakle, u većini slučajeva neuronska mreţa daje bolje
rezultate pa je samim time i primjenjivija.
Neuronska mreţa Stablo odlučivanja
Slika 16. Matrica konfuzije za Slika 17. Matrica konfuzije za
neuronsku mreţu stablo odlučivanja
Tablica 6. Tablica matrice Tablica 7. Tablica matrice
konfuzije za neuronsku mreţu konfuzije za stablo odlučivanja
Prema stopama točnosti moţemo uočiti da oba modela daju vrlo dobra rezultate. Samim time
moţe se zaključiti da su modeli uspješni u predviĎanju s obzirom na kupovinu ručnika.
Klasa Stopa
točnosti
0 67,74%
1 71%
Prosječna
stopa točnosti
69,37%
Klasa Stopa
točnosti
0 75%
1 67,96%
Prosječna
stopa točnosti
71,48%
Page 43
43
MeĎutim model neuronske mreţe je bolje prepoznao one kupce koji spadaju u kategoriju onih
koji će kupiti ručnike (71%), dok je model stabla odlučivanja bolje prepoznao one kupce koji
spadaju u kategoriju onih koji neće kupiti ručnike (75%). Gledajući sveukupno stope točnosti
za prepoznavanje kupaca koji će kupiti proizvod i onih kupaca koji neće kupiti proizvod
model stabla odlučivanja pokazuje bolje rezultate gdje prosječna stopa točnosti iznosi
71,48%, dok prosječna stopa točnosti za model neuronske mreţe iznosi 69,37% što takoĎer
predstavlja dobar rezultat.
Page 44
44
9. Zaključak
U ovom radu je kreiran modela neuronskih mreţa i model stabala odlučivanja za klasifikaciju
kupaca prema kupovini ručnika. Cilj je bio klasificirati kupce s obzirom hoće li kupiti ručnike
ili neće. Ispitano je i koje ulazne varijable imaju najveći utjecaj, a koje varijable nemaju
utjecaj na odluku kupaca hoće li kupiti ručnike.
Nakon provedenog istraţivanja dokazano je da je neuronska mreţa dala bolje rezultate kada
se radi o kupcima koji će kupiti ručnike, dok je stablo odlučivanja pokazalo bolje rezultate
kada se radi o predviĎanjima kupaca koji neće kupiti ručnike. Neuronska mreţa je prepoznala
67,74% kupaca koji neće kupiti ručnik i 71% kupaca koji će kupiti ručnik, dok je stablo
odlučivanja prepoznalo čak 75% onih kupaca koji neće kupiti ručnike i 67,96% kupaca koji će
kupiti ručnik.
Prosječna stopa točnosti klasifikacije modela neuronske mreţe iznosi 69,37% dok prosječna
stopa točnosti klasifikacije modela stabla odlučivanja iznosi 71,48%. Moţemo uočiti da je
model stabla odlučivanja primjenjiviji s obzirom da je pokazao veću stopu točnosti
klasifikacije.
Postotak stope točnosti klasifikacije bi se mogao povećati, tj. poboljšati kada bi se istraţivanje
proširilo na što veći broj kupaca, slanjem većeg broja kataloga. TakoĎer, kako bi rezultati bili
što bolji, potrebno je ispitati još neke varijable koje bi mogle imati utjecaj na odluku kupca
hoće li kupiti ručnike.
Page 45
45
10. Literatura
[1] Edukacijski repozitorij za Inteligentne sustave,
http://eris.foi.hr/11neuronske/nn-primjena.html 19.09.2011.
[2] M. Zekić-Sušac, A. Frajman_Jakšić, N. Drvenkar, Neuronske mreţe i stabla odlučivanja
za predviĎanje uspješnosti studiranja, Ekonomski vjesnik, Vol. No. 2, 2009., str. 314.-325.
http://hrcak.srce.hr/73924 07.09.2011.
[3] M. Fistonić, M. Bilandţija, B. Vukadinović, PredviĎanje potrošnje prirodnog plina-
zahtjevi i iskustva u primjeni neuronskih mreţa
http://www.ptmg.hr/media/Predvianjepotronjeprirodnogplina.pdf 07.09.2011.
[4] M. Dragičević, Neuronske mreţe i analitički hijerarhijski proces u segmentaciji turističkog
trţišta, str. 81.- 98.
http://emip.unidu.hr/pdf/2006/1/08-marija%20dragicevic.pdf
[5] G. Šimunović, T. Šarić, R. Lujić, Primjena neuronskih mreţa u procjenjivanju kvalitete
obraĎivane površine, Tehnički vjesnik, Vol.16. No.2 lipanj 2009., str. 43.- 47.
http://hrcak.srce.hr/38666 19.09.2011.
[6] N. Bolf, I. Jebrić, Primjena umjetnih neuronskih mreţa pri identificiranju i voĎenju
procesa, Kemija u industriji, Vol. 55. No. 11. studeni 2006., str. 457.-468.
http://hrcak.srce.hr/6871 19.09.2009.
[7] A. Mirceska, A. Kulakov, S. Stoleski, Uloga umjetne neuronske mreţe u detekciji
abnormalnosti u funkciji rada pluća, Engineering Review, Vol. 29. No. 2 prosinac 2009., str.
1.- 13.
http://hrcak.srce.hr/index.php?show=clanak&id_clanak_jezik=71115 19.09.2011.
[8] Wikipedia, Slobodna enciklopedija, Neuronska mreţa,
http://hr.wikipedia.org/wiki/Neuronska_mre%C5%BEa 07.09.2011.
Page 46
46
[9] K. Mačkić, Primjena neuronskih mreţa u fizici i informatici, Diplomski rad,
http://www.phy.hr/~planinic/diplomski/Kenan_Mackic.pdf
[10] M. Zekić-Sušac, Nastavni materijali iz kolegija Sustavi poslovne inteligencije,
Poglavlje 2. Neuronske mreţe,
http://moodle.carnet.hr/mod/resource/view.php?id=23158 19.09.2011.
[11] M. Zekić-Sušac, Nastavni materijali iz kolegija Sustavi poslovne inteligencije,
Poglavlje 2. – 2. Dio Neuronske mreţe,
http://moodle.carnet.hr/file.php/278/pogl2_NM_2dio.pdf 19.09.2011.
[12] S. Lončarić, Neuronske mreţe: Višeslojni perceptron,
http://www.fer.hr/_download/repository/06-ViseslojniPerceptron-1s.pdf 19.09.2011.
[13] M. Zekić-Sušac, Neuronske mreţe u predviĎanju profitabilnosti ulaganja, Doktorska
disertacija, Varaţdin, 1999.
http://oliver.efos.hr/nastavnici/mzekic/doktor.html 19.09.2011.
[14] D. Klobučar, R. Pernar, Umjetne neuronske mreţe u procjeni sastojinskih obrasta s
cikličkih snimaka, Šumarski list br. 3-4, CXXXIII (2009), str. 145.-155.
http://www.sumari.hr/sumlist/pdf/200901450.pdf 10.09.2011.
[15] B. Šalomon Sobota, R. Boţanić, J. Dobša, Analiza varijabli koje utječu na mikrobiološku
kvalitetu u proizvodnji svjeţeg sira, Mljekarstvo, Vol.60 No. 4, Prosinac 2010. str. 252.-259.
http://hrcak.srce.hr/index.php?show=clanak&id_clanak_jezik=93747
[16] D. Tipurić, Stablo odlučivanja,
http://web.efzg.hr/dok/OIM/dtipuric/8-Stablo%20odlu%C4%8Divanja-2010.pdf 10.09.2011.
[17] DMS - posluţitelj za analizu podataka,
http://dms.irb.hr/tutorial/hr_tut_dtrees.php 20.09.2011.
Page 47
47
[18] M. Njavro, Upravljanje rizikom u poljoprivredi,
http://www.agr.unizg.hr/cro/nastava/ms/moduli/doc/ag2033_analiza_rizika.pdf 20.09.2011.
[19] Predictive analytics
http://en.wikipedia.org/wiki/Predictive_analytics 20.09.2011.
[20] I. Vrančić, Magistarski rad na temu Metode raspoznavanja uzoraka za analizu poslovno
financijskih podataka (2001.)
http://www.skladistenje.com/download/magisterij_IV.pdf 10.09.2011.
[21] S.Sovilj, Seminarski rad na temu: Otkrivanje znanja u skupovima podataka (2003.),
http://www.zemris.fer.hr/predmeti/kdisc/Sem1.pdf 11.09.2011.
[22] CNT- Centar za nove tehnologije, Mehatronika, Umjetne neuronske mreţe,
http://www.tsrb.hr/meha/index.php?option=com_content&task=view&id=14&Itemid=1
11.09.2011.
[23] I. Ţmak, Magistarski rad na temu: PredviĎanje svojstava materijala neuronskim
mreţama, 2003.
http://bib.irb.hr/datoteka/129682.Zmak_magistarski.pdf 11.09.2011.
[24] J. Galinec, T. Filetin, Mogućnosti primjene neuronskih mreţa u ispitivanju materijala,
http://titan.fsb.hr/~tfiletin/pdf/neuro_matest97.pdf
Page 48
48
Popis slika i tablica
Slika 1. Prikaz neuronske mreţe……………………………………………………..12
Slika 2. Struktura biološkog neurona…………………………………………………13
Slika 3. Struktura umjetnog neurona…………………………………………………14
Slika 4. Graf sigmoidne funkcije……………………………………………………..18
Slika 5. Graf hiperboličko- tangentne funkcije……………………………………….18
Slika 6. Struktura mreţe višeslojni perceptron…………………………………….…..21
Slika 7. Jednostavno stablo odlučivanja…………………………………………….…23
Slika 8. Dijagram u SAS programu Enterprise Miner………………………………...28
Slika 9. Matrica konfuzije za neuronsku mreţu na uzoru za validaciju…………….…31
Slika 10. Lift chart dijagram za neuronsku mreţu………………………………….…33
Slika 11. Prozor s rezultatima stabla dobiveni korištenjem algoritma Gini reduction…34
Slika 12. Stablo odlučivanja za najbolji model…………………………………………35
Slika 13. Matrica konfuzije za stablo odlučivanja na uzorku za validaciju…………….39
Slika 14. Lift chart dijagram za stablo odlučivanja………………………………………40
Slika 15. Usporedni lift chart dijagram za stablo odlučivanja i neuronsku mreţu………..41
Slika 16. Matrica konfuzije za neuronsku mreţu…………………………………………42
Slika 17. Matrica konfuzije za stablo odlučivanja………………………………………..42
Tablica 1. Popis varijabli…………………………………………………………………27
Tablica 2. Tablica testiranih arhitektura neuronske mreţe………………………………30
Tablica 3. Tablica matrice konfuzije za neuronsku mreţu na uzorku za validaciju…….32
Tablica 4. Tablica testirane arhitekture stabla odlučivanja………………………………34
Tablica 5. Tablica matrice konfuzije za stablo odlučivanja na uzorku za validaciju……..39
Tablica 6. Tablica matrice konfuzije za neuronsku mreţu……………………………….42
Tablica 7. Tablica matrice konfuzije za stablo odlučivanja………………………………42
Page 49
49
Ţivotopis
Irena Lukić
RoĎena je 23.08.1986. godine u Vinkovcima. U razdoblju od 1993.-2001. godine pohaĎa
Osnovnu školu Josipa Lovretića u Otoku, te 2001. godine upisuje Ekonomsku i trgovačku
školu Ivana Domca u Vinkovcima, smjer ekonomist.
Nakon završene srednje škole, 2005. godine upisuje Ekonomski fakultet u Osijeku. Završivši
preddiplomski studij, smjera Poslovna informatika, 2009. godine stječe titulu prvostupnice
ekonomije.
Iste te godine upisuje diplomski studij na ekonomskom fakultetu u Osijeku, takoĎer smera
Poslovna informatika.