Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 20

UNIVERZITET U TUZLI

FAKULTET ELEKTROTEHNIKE
PRINCIPI BIOMEDICINSKOG INŽENJERINGA

SEMINARSKI RAD
BIOMEDICINSKE METODE KLASIFIKACIJE

Student: Predmetni profesor:


Adna Beganović dr.sc. Damir Demirović, vanr. prof.

Tuzla, Maj 2020.


Sadržaj
1. Teoretski uvod.........................................................................................................................3
2. Metode klasifikacije.................................................................................................................5
2.1. Naivni Bayesov klasifikator (Naive Bayes classifier)......................................................5
2.1.1. Primjer upotrebe modela Bayesovog klasifikatora....................................................6
2.2. Klasifikator najbližih susjeda (K Nearest Neighbor)........................................................8
2.2.1. Primjer upotrebe metode klasifikatora najbližih susjeda.........................................10
2.3. Umjetne neuronske mreže (ANN)..................................................................................11
2.4. Metoda potpornih vektora (MVP metoda)......................................................................12
2.5. Stablo odlučivanja (DT algoritam).................................................................................15
2.5.1. Upotreba stabla odlučivanja kod testiranja znanja metodom kviza............................15
2.5.2. ID3 algoritam..............................................................................................................17
3. Zaključak...............................................................................................................................19
4. Literatura................................................................................................................................20
1. Teoretski uvod

Mašinsko učenje koristi teoriju statistike za stvaranje matematičkih modela, jer je glavni zadatak
proizvesti zaključak iz uzorka. Kada se stvori model, njegovo predstavljanje i algoritamsko
rješenje za zaključivanje zahtijeva da i on bude efikasan. U nekim aplikacijama efikasnost
algoritma mašinskog učenja može biti jednaka koliko i njegova tačnost klasifikacije. Mašinsko
učenje koristi se kod mnogih problema u obradi biomedicinskih signala kao elementa podrške
odlučivanju.
Metode klasteriranja koriste se za razdvajanje ili podjelu podataka ili uzoraka u više klasa, a
korisnik može prepoznati i unijeti u algoritam klastera samo broj klastera. Klasifikacija je slična
grupiranju, osim što se klasifikator osposobljava pomoću skupa prethodno označenih podataka.
Stoga su podaci za testiranje nekako klasificirani koristeći sličnost kategorije označenih
podataka. U praksi je cilj pronaći granicu između dvije ili više klase i označi ih na osnovu
njihovih odmjerenih značajki. Uvijek postoji neizvjesnost u grupiranju ili razvrstavanju u vezi s
tim koje se značajke trebaju koristiti i kako se te značajke izdvajaju ili poboljšavaju.
Najpopularnije su linearna diskriminatorna analiza (LDA), Naive Bayes (NB), k najbliži susjed
(k-NN), umjetne neuronske mreže (ANN), vektorski strojevi za podršku (SVM) i stablo-odluka
(DT) algoritmi.
Istraživačka zajednica ima veliko interesovanje za tehnike mašinskog učenja za prepoznavanje,
klasifikaciju i dijagnostiku bolesti. Nekoliko primjera, uključujući dijagnozu srčanih bolesti i
poremećaja mozga ili mišića, obično dovode do životnih okolnosti. Analiza biomedicinskih
signala je presudna za praćenje abnormalnosti u ljudskom tijelu. Dijagnostički postupak
uključuje eliminaciju karakteristika iz biomedicinskih signala i uspješnu usporedbu s poznatim
bolestima da bi se otkrile razlike između normalnih karakteristika signala. Takav sistem praćenja
mora biti u mogućnosti da pronađe nepravilnosti predstavljene promjenama oblika signala.
Mašinske metode učenja mogu automatizirati proces biomedicinske analize signale i svrstati se u
normalne i patološke obrasce stvaranjem površina za odlučivanje koje klasificiraju ove obrasce.

Proces klasifikacije biomedicinskog signala općenito se može podijeliti na četiri stepena, naime
(1) prikupljanje i segmentacija signala,
(2) označavanje signala,
(3) karakteristika ekstrakcije / smanjenja dimenzija i
(4) prepoznavanje i klasifikacija.

Kao što se vidi na slici 1., biomedicinski signali se snimaju iz ljudskog tijela i zatim označavaju
da bi se smanjila buka koja je otkrivena drugim električnim aktivnostima tijela ili drugim
vrstama artefakata. Zatim se svojstva izdvajaju iz biomedicinskog signala stečenog iz prethodne
faze i pretvaraju u karakteristični vektor. Relevantnu strukturu u sirovim podacima karakterizira

3
vektor značajki. U trećem koraku, smanjenje dimenzije primenjuje se za premeštanje suvišnih
informacija iz vektora karakteristika, stvarajući vektor smanjene karakteristike. U četvrtoj fazi
klasifikator kategorizira vektor s smanjenim značajkama.

Slika 1: Proces klasifikacije biomedicinskog singala

4
2. Metode klasifikacije

2.1. Naivni Bayesov klasifikator (Naive Bayes classifier)

Bayesov klasifikator pripada generativnom, probabilističkom, parametarskom, linearnom


modelu nadziranog učenja. Svi Bayesovi klasifikatori temeljeni su na Bayesovoj formuli koja
definira uslovnu vjerovatnoću događaja.
Teorem Bayesova formula:
Neka je {H1, H2, . . . , Hn} potpun suistem događaja na vjerojatnosnom prostoru (Ω,P (Ω), P) i
neka je A ∈ P (Ω) takav da je P(A) > 0.
Tada ∀i ∈ {1, 2, . . . , n} vrijedi:
P ( Hi| A )=P ¿ ¿

Ona opisuje vjerovatnoću događanja hipoteza u slučaju kada unaprijed znamo da se ostvario neki
događaj. Vjerovatnost P(Hi) nazivamo a priori vjerovatnoće hipoteze Hi , a P(Hi |A) a posteriori
vjerovatnoće hipoteze Hi .
U našem slučaju izračunavamo vjerovatnoću klase za zadani document, pa formulu možemo
zapisati na sljedeći način:
P(c )· P(d∨c)
P ( c|d )=
P(d )

Najvjerovatnija klasa c iz skupa svih klasa C je ona s najvećom a posteriori vjerovatnoćom (engl.
maximum a posteriori), kraće MAP. Odnosno, tražimo takav c ∈ C za koji će P(c|d) biti
maksimalan:
cMAP=arg max c ∈C P( c∨d)
cMAP=arg max c ∈C P( c)· P(d∨c)
cMAP=arg max c ∈C P ( c ) · P ( t 1 ,t 2, . . ., tn|c )

Vjerojatnoća klase P(c) računa se kao omjer broja dokumenata te klase u ukupnom broju
dokumenata, međutim vjerojatnoću P(t1, t2, . . . , tn|c) nije moguće jednostavno izračunati.

5
Zato uvodimo pojednostavljenje u kojem ne pazimo na redoslijed pojmova, nego samo na broj
pojavljivanja. Takav model nazivamo vreća riječi (engl.bag of words). Nadalje, pretpostavimo da
su vjerojatnoće pojmova uz zadanu klasu P(ti, cj) nezavisne. Iako obje pretpostavke nisu u
potpunosti ispravne koristimo ih zbog značajnog pojednostavljenja izračuna. Nakon primjene
navedenog slijedi:
P(t 1 , t 2 , .. . , tn∨c)=P(t 1∨c) · P(t 2∨c )· . .. · P (tn∨c)

P(ti |c) računamo kao omjer broja pojavljivanja pojma t i i ukupnog broja pojmova u
dokumentima s klasom c.
Te dolazimo do konačnog izraza za određivanje klase:
cNB=arg max c ∈ C P(c )· Y t ∈T P(t∨c)
Naivni Bayesov klasifikator, kao i ostali jednostavni modeli, ima problem visoke pristranosti
(engl. high bias), koja je definirana kao razlika izmedu predviđenog i stvarnog modela. Većinom
je dobar odabir u slučajevima kada imamo vrlo malo primjera za učenje.

2.1.1. Primjer upotrebe modela Bayesovog klasifikatora

U slučaju određenog događaja koji se može pratiti kao skup parametara analiza predstavlja
provjeru svih definiranih parametara i izračun vjerojatnosti pomoću Bayesovog algoritma.
Nakon izračuna provodi se provjera razine vjerojatnosti i provedba kontrolnih mjera. Kontrolne
mjere mogu biti preventivne ili dojavne, što ovisi o postojanju i izvedbi agenata.
Neodređeni događaj uvjetuje provjeru definiranih postavki koje predstavljaju definiciju
događaja. U slučaju postojanja kriterija za događaj, provodi se ista procedura kao i za određeni
događaj. Kontrolne mjere koje mogu postojati u modelu su dodatne kontrole od strane eksperata.
Široki pojasevi nesigurnosti kojima se postiže česta potreba za reakcijom eksperta dodatno
povećavaju vrijeme učenja.

load fisheriris
X = meas(:,3:4);
Y = species;
tabulate(Y)

Mdl =
ClassificationNaiveBayes
ResponseName: 'Y'
CategoricalPredictors: []
ClassNames: {'setosa' 'versicolor' 'virginica'}
ScoreTransform: 'none'
NumObservations: 150
DistributionNames: {'normal' 'normal'}
DistributionParameters: {3x2 cell}

6
setosaIndex = strcmp(Mdl.ClassNames,'setosa');
estimates = Mdl.DistributionParameters{setosaIndex,1}

figure
gscatter(X(:,1),X(:,2),Y);
h = gca;
cxlim = h.XLim;
cylim = h.YLim;
hold on
Params = cell2mat(Mdl.DistributionParameters);
Mu = Params(2*(1:3)-1,1:2); % Extract the means
Sigma = zeros(2,2,3);
for j = 1:3
Sigma(:,:,j) = diag(Params(2*j,:)).^2; % Create diagonal covariance matrix
xlim = Mu(j,1) + 4*[-1 1]*sqrt(Sigma(1,1,j));
ylim = Mu(j,2) + 4*[-1 1]*sqrt(Sigma(2,2,j));
f = @(x1,x2)reshape(mvnpdf([x1(:),x2(:)],Mu(j,:),Sigma(:,:,j)),size(x1));
fcontour(f,[xlim ylim]) % Draw contours for the multivariate normal distributions
end
h.XLim = cxlim;
h.YLim = cylim;
title('Naive Bayes Classifier -- Fisher''s Iris Data')
xlabel('Petal Length (cm)')
ylabel('Petal Width (cm)')
legend('setosa','versicolor','virginica')
hold off

Slika 2: Rezultat primjera upotrebe Bayesove metode klasifikacije

2.2. Klasifikator najbližih susjeda (K Nearest Neighbor)

7
Algoritam najbližih susjeda jedna je od najjednostavnijih metoda mašinskog učenja. Pripada
diskriminativnom, neparametarskom, nelinearnom modelu nadziranog učenja, a određivanje
klase nepoznatog dokumenta svodi se na određivanje većinske klase najbližih dokumenata iz
skupa za učenje. Za udaljenost između podataka mogu se koristiti različite metrike. Neke od
najpoznatijih su euklidska i Manhattan udaljenost, a izbor ovisi o problemu koji treba riješiti.

Slika 3: Euklidska (puna linija) i Manhattan (iscrtkana linija) udaljenost

Moguće je, često i poželjno, bližim susjedima pridijeliti veći značaj, odnosno težinu. Često se
koristi težinski faktor d −1 gdje je d udaljenost do susjeda.
Kažemo da k-NN pripada vrsti mašinskog učenja koju nazivamo učenje zasnovano na
slučajevima (engl. instance-based) često nazivanim i memory-based jer prilikom određivanja
klase prolazi po svim instancama iz skupa za učenje koje pohranjuje u memoriji. Vremenska
složenost same pretrage i određivanja klase ne ovisi o broju klasa, nego isključivo o broju
primjera za učenje pa je k-NN pogodniji za rješavanje problema s velikim brojem klasa. Iako je
većinom poželjno imati velik broj primjera za učenje kod k-NN-a takav pristup značajno
usporava postupak klasifikacije.
Vrijednost k odreduje se heuristički, npr. Provođenjem cross-validation postupka kako bi se
utvrdio najbolji k za konkretan slučaj. Povećanje vrijednosti k povećava pristranost, ali
smanjuje varijancu, odnosno varijaciju kvalitete predviđanja modela. Suprotno navedenom,
smanjenje vrijednosti k povećava varijancu, ali smanjuje pristranost. Cilj je odabrati takav k za
koji će pristranost i varijanca biti minimizirani.
Na slici 3 središte svakog grafa predstavlja savršeni model, a zelene tačke predstavljaju
izgrađene modele prema različitim skupovima za učenje.

8
Slika 4: Ilustracija pristranosti i varijance

Pokazalo se da je k koji je jednak kvadratnom korijenu broja primjera za učenje dobar početak za
pronalazak najbolje vrijednosti. Valja izbjegavati parne vrijednosti kako bi se smanjila
mogućnost pojave situacija kada se dvije klase pojavljuju jednak broj puta što je posebno važno
kod binarnog klasifikatora kod kojeg su moguće samo dvije klase.

Slika 5: Problem 1-NN klasifikacije

9
Kao što smo mogli uočiti k-NN je vrlo jednostavan za shvatanje i implementaciju što je jedna od
prednosti. Također, pokazao se otpornim na šum (osim 1-NN) te se zbog brzine izvođenja
nameće kao izbor u situacijama kada je skup klasa jako velik.
Neke od mana k-NN-a su sporo određivanje susjeda u slučaju velikog broja dokumenata,
ograničenost memorijom te potreba za utvrđivanjem najbolje vrijednosti za k.

2.2.1. Primjer upotrebe metode klasifikatora najbližih susjeda

load fisheriris
X = meas(:,3:4); % Measurements of original flowers
Y = [5 1.45;6 2;2.75 .75]; % New flower data

[mIdx,mD] = knnsearch(X,Y,'K',10,'Distance','minkowski','P',5);
[cIdx,cD] = knnsearch(X,Y,'K',10,'Distance','chebychev');

gscatter(X(:,1),X(:,2),species)
line(Y(:,1),Y(:,2),'Marker','x','Color','k',...
'Markersize',10,'Linewidth',2,'Linestyle','none')
line(X(mIdx,1),X(mIdx,2),'Color',[.5 .5 .5],'Marker','o',...
'Linestyle','none','Markersize',10)
line(X(cIdx,1),X(cIdx,2),'Color',[.5 .5 .5],'Marker','p',...
'Linestyle','none','Markersize',10)
legend('setosa','versicolor','virginica','query point',...
'minkowski','chebychev','Location','best')

Slika 6: Rezultat primjera upotrebe klasifikacije metodom Najbližeg susjeda

10
2.3. Umjetne neuronske mreže (ANN)

Umjetna neuronska mreža (engl.: Artificial Neural Network, skraćeno ANN) je zbir


umjetnih neurona (najčešće kao apstraktnih pojmova) koji su međusobno povezani i interaktivni
kroz operacije obrade signala. Uređena je po uzoru na ljudski mozak. Mreža može imati niz ili
jedan ulaz ulaza i uvijek jedan izlaz, između kojih se nalazi jedan ili više tzv. skrivenih slojeva
(tzv. višeslojne mreže). Pojedinačni neuroni su, kao i slojevi, međusobno spojeni vezama kroz
koje idu signali. Veze među njima se aktiviraju ako je zadovoljen uvjet postavljen tzv.
aktivacijskom funkcijom.
Glavna primjena umjetnih mreža je kod traženja zavisnosti između podataka koji nisu u
isključivo linearnoj vezi, a opet mogu se ujediniti u jedan složeni ulazni skup. Ujedinjavanje
takvih podataka zadatak je stručnjaka u području u kojemu se neuronske mreže primjenjuju, dok
je njihova analiza kasnije u domeni vrste neuronske mreže koja je odabrana. Danas postoji
nekoliko glavnih vrsta mreža, no temeljno je obilježje svih mreža, bez obzira na oblik i broj veza
unutar njih, da se odlikuju svojstvom „učenja”, tj. uvježbavanja kroz niz ponavljajućih postupaka
analize. Od cijeloga skupa podataka veći dio upotrijebljen je za učenje, a manji za ponovno
predviđanje poznatih vrijednosti. Tako je moguće izračunati pogrješku predviđanja, koja bi s
većim brojem pokušaja trebala biti manja. Takav postupak „učenja” nalik je na ljudsko učenje iz
iskustva pa odatle i naziv „neuronske mreže”.
Neuronske mreže se ponekad pokažu uspješnijim od drugih načina obrade podataka, posebno
ako se takvi podatci ne mogu obraditi strukturiranim algoritmom ili, kako je ranije napisano,
linearnom vezom. Neuronske mreže česti su motiv za različite priče, posebno ZF-a, a "po navici"
većina ljudi ih povezuje s čovjekom i ljudskim umom. Takva slika ipak je pretjerano
romansirana, jer svaka sličnost ljudskog mozga i neuronskih mreža završava na konceptu
neuronskih veza te mogućnosti ponavljanja, odnosno učenja.
Razlika među mrežama je u arhitekturi, u načinu učenja i signalima (tzv. limiterima). Arhitektura
se dijeli na mreže s vezama koje uvijek idu isključivo prema sljedećem sloju, ali nisu zatvorene,
pa čak nemaju i jednostruke veze (engl. Feedforward ANN, krat. FFNN), odnosno neuron može
biti povezan s više njih u sljedećem sloju. Druga vrsta su povratne (engl. recurrent NN), odnosno
mreže gdje su veze zatvorene (engl. directed cycle) na način da se rezultat analize vraća na
početak i uvježbavanje ponavlja s ciljem minimiziranja pogrješke.
Po načinu učenja mreže se dijele na nadgledane (engl. supervised), zatim tzv. pojačane (engl.
reinforcement) gdje se podatci pribavljaju interaktivno iz okoline (a nisu dani kao prethodna
mjerenja) te nenadgledane (engl. unsupervised). Podatci mogu biti, poput varijabli, kontinuirani
(na primjer od 0 do 1) ili diskretni (na primjer 0 ili 1). Najčešće vrste neuronskih mreža su:
 nadgledane poput višeslojne perceptronske mreže temeljene na povratnom postupku
(engl. krat. MLP),
 samoorganizirajuće karte (engl. krat. SOM) i
 Hopfieldova neuronska mreža.

11
2.4. Metoda potpornih vektora (MVP metoda)

Metoda potpornih vektora (SVM, od eng. support vector machines) smatra se jednim od
najboljih kreativnih pristupa za klasifikaciju podataka. Razvijena je u području računarskih
nauka tokom 1990tih godina na ideji jednostavnog pristupa: klasifikator maksimalnom
marginom (MMC od eng. Maximal Margin Classifier).
MMC je način odvajanja dvije klasifikacijske skupine pomoću optimalne (ili maksimalne)
razdvajajuće hiperravnine (od eng. optimal separating hyperplane). U p-dimenzionalnom
prostoru hiperravnina (od eng. hyperplane) je naziv za podprostor s dimenzijom p-1. Na primjer,
u dvodimenzionalnom prostoru hiperravnina će predstavljati jednodimenzionalan podprostor –
pravac.
Hiperravninu u prostoru s p dimenzija matematički definiramo kao:
0 1 X 12 X 2 … pX p 0
za parametre β0, β1, β2, ... i βp.

Ukoliko neka opservacija X sa svim svojim pripadajućim svojstvima X1,...,Xp u p-


dimenzionalnom prostoru zadovoljava gornju jednačinu] tada ona leži na hiperravnini. U
suprotnom, rješenje jednačine za neku opservaciju X može biti veće ili manje od 0, te s obzirom
na rješenje, tačka je svrstana u jedan od dva razreda koji su nastali dijeljenjem hiperravninom.
Budući da se u ovom slučaju hiperravnina koristi za klasifikaciju podataka, često se naziva
klasifikatorom.

Marginom se naziva prostor između hiperravnini najbližih tačaka i same hiperravnine. Jasno je
da postoji beskonačno mnogo hiperravnina kojima možemo razdvojiti podatke, a svaka od tih
hiperravnina ima različitu širinu margine. Prilikom traženja optimalne razdavjajuće hiperravnine
odabire se ona koja ja najudaljenija i nalazi se između dva razreda podataka - ima maksimalnu
marginu.

Prema opservacijama X u p-dimenzionalnom prostoru općenito se odnosi kao prema vektorima.


Potporni vektori (od eng. support vectors) su opservacije koje diktiraju položaj optimalne
razdvajajuće hiperravnine. Oni predstavljaju opservacije koje leže na rubovima margine i
jednako su udaljene od razdvajajuće hiperravnine (slika 7). Promijeni li se položaj nekog od
vektora podrške promijenit će se i položaj optimalne razdvajajuće hiperravnine. No, ako se
promjeni položaj bilo koje druge tačke, to neće utjecati na razdvajajuću hiperravninu.

12
Slika 7: Dva razreda opservacija razdvojeni optimalnom razdvajajućom hiperravninom. Uzduž
hiperravnine označeno je područje margine, a na rubu hiperravnine nalaze se potporni vektori

Stvarni biološki podaci grafički prikazani često izgledaju neuredno i razredi među podacima nisu
jasno definirani. U tom slučaju gornjom metodom nemoguće je pronaći optimalnu razdvajajuću
hiperravninu jer bi se neki od podataka mogao naći unutar prostora margina ili čak na pogrešnoj
strani hiperravnine.
Problem klasifikacije takvih podataka riješen je propusnom hiperravninom. Drugim riječima,
algoritam će točno razdvojiti maksimalan broj podataka u skupine, a samo nekim točkama
dopušta ne poštivanje pravila razdvajanja. Prilikom traženja optimalne razdvajajuće hiperravnine
definira se vrijednost C koja će omogućiti praćenje takvih pogrešaka. U konačnici odabrana
hiperravnina ne smije imati više od C pogrešaka na podacima za trening. Vrijednost parametra C
ručno se određuje i tako regulira osjetljivost algoritma, a posredno regulira i širinu margine, te
sam položaj hiperravnine. Na primjer, ako je C vrijednost velika algoritam će dopuštati puno
pogrešaka te će moći povećati prostor margine, a ako je C mali morat će tražiti uske margine
koje će podatci rijetko prelaziti. Pored opservacija koje leže na margini, veliki utjecaj na položaj
optimalne hiperravnine imaju i podaci koji ne poštuju pravila razdvajanja (pogreške), te se oni

13
zajedno nazivaju potpornim vektorima. Ova metoda klasifikacije otporna je na ponašanje
opservacija koje se nalaze daleko od hiperravnine jer je ona pod utjecajem malog podskupa
podataka za trening.

14
2.5. Stablo odlučivanja (DT algoritam)

Stabla odlučivanja ([QUIN1975], [GIAR1998]) osim što omogućuju prikaz znanja, također služe
i kod zaključivanja pomoću znanja. Ona se baziraju na metodi "podijeli pa vladaj" gdje se skup
primjera dijeli na podskupove i proces podijele se rekurzivno ponavlja sve dok se ne dođe do
jednog primjera koji zapravo vrši klasifikaciju znanja. Elementi znanja kod stabla odlučivanja su
čvorovi i grane. Grane povezuju "roditeljske čvorove" s "dječjim čvorovima". Čvor bez roditelja
naziva se "korijenski čvor", a čvorovi bez djece su "listovi". Listovi se još nazivaju "čvorovi
odgovora" jer oni predstavljaju sva moguća rješenja zadanog problema. Svi ostali čvorovi su
"čvorovi odluke".

2.5.1. Upotreba stabla odlučivanja kod testiranja znanja metodom kviza

Slika 8 daje primjer stabla odlučivanja kod određivanja o tome da li ćemo gledati neki film.
Čvorovi odgovora su dakle "DA" ili "NE". Čvorovi odlučivanja sadrže pitanja o redatelju, kritici
filma, o tome ima li nasilja u filmu itd., dok grane predstavljaju odgovore na pitanja. Ako je
redatelj nepoznat onda ćemo ovisno o kritici odlučiti da li ćemo gledati film. U slučaju da je
redatelj poznat, tada se odgovara na daljnja pitanja, sve dok ne dođemo do odluke o gledanju
filma.

Slika 8: Primjer stabla odlučivanja

15
Na ovaj način smo film klasificirali u filmove koje ćemo gledati i u one koje nećemo gledati.
Općenito znanje možemo podijeliti u više od dvije klase, kao što i grane u stablu odlučivanja
mogu imati više vrijednosti. Tako filmove možemo podijeliti u odlične, dobre, prosječne i loše, a
grane čvora "kritika" mogu imati sljedeće vrijednosti: loša, srednja, dobra. Prvi kriterij za
gledanje filma ne mora biti redatelj. Kod odluke o gledanju filma može se prvo gledati da li ima
nasilja u filmu ili se može izabrati bilo koji drugi čvor odluke za korijen stabla. Isto tako se može
izabrati bilo koji preostali čvor odluke kao korijen podstabla korijenskog čvora. Stablo se može
izgraditi na nekoliko načina, odnosno, odluke se mogu nalaziti u bilo kojem čvoru stabla.

Kod procesa izgradnje stabla odlučivanja potrebno je pripremiti skup podataka nad kojima će se
vršiti klasifikacija. Kod pripreme se podaci razvrstavaju u tablicu gdje stupci tablice sadrže
vrijednosti određenog atributa.

Tabela 1: Primjer skupa podataka o vremenu

Tabela 1 Problem učenja iz skupa podataka ostvaruje se izgradnjom stabla odluke po principu
"podijeli pa vladaj". Čvorovi stabla testiraju pojedine atribute. Kod nominalnih atributa se atribut
uspoređuje s konstantom ili se primjenjuje neka funkcija za usporedbu. Ovisno o rezultatu
usporedbe se bira grana čvora i stablo se dalje gradi rekurzivnim postupkom sve dok se ne dođe
do listova stabla koji daju klasifikaciju odabranog primjerka iz skupa podataka. daje primjer
skupa podataka gdje su svi atributi nominalni, odnosno skup vrijednosti atributa je konačan.
Nominalni atribut "igrati" ima dvije vrijednosti: DA i NE. Ako je vrijednost atributa "igrati" DA,
onda će se igrati na otvorenom terenu. Primjer u skupu podataka predstavlja jedan red u tablici.
16
Jedan od primjera kada se neće igrati na otvorenom terenu kaže; ako je vrijeme sunčano, topla
temperatura, visoka vlaga i ako je vjetrovito, onda se neće igrati. Čvorovi kod stabla odlučivanja
testirat će vrijednosti atributa i imat će onoliko grana koliko atribut ima različitih vrijednosti.
Kod brojčanih atributa skup vrijednosti se dijeli u dva ili više podskupova.
Stablo odlučivanja također vrši klasifikaciju onih primjera koji se ne nalaze u skupu podataka.
Zbog toga se može reći kako stablo odlučivanja vrši indukciju znanja.
Postoji nekoliko algoritama za izgradnju stabla odlučivanja, a svi oni se baziraju na ID3
algoritmu. ID3 je jedan od algoritama za klasifikaciju pomoću kojeg se pokušava riješiti problem
važnosti atributa u cjelokupnom odlučivanju, odnosno klasificiranju.

2.5.2. ID3 algoritam

ID3 je najjednostavniji algoritam [QUIN1975] za izgradnju stabla odlučivanja i može se


primijeniti kod onog znanja gdje su podaci opisani nominalnim atributima. Na skupu podataka
danom u tabeli 1 pokazat ćemo izgradnju stabla odlučivanja pomoću ID3 algoritma. Ciljni atribut
na osnovu kojeg će se vršiti klasifikacija će biti da odluka da li će se igrati na otvorenom terenu
ili ne. Ako je vrijeme sunčano onda imamo 2 primjera igranja na otvorenom i 5 primjera kada se
neće igrati na otvorenom terenu. Na slici 10 je za svaki atribut i za svaku vrijednost atributa
prikazano koliko primjera imaju za ciljni atribut vrijednost DA (igranje na otvorenom terenu),
odnosno NE (ne igranje na otvorenom terenu).

Slika 10: Podjela stable po atributima

17
Prvo je potrebno odabrati atribut koji ćemo staviti u korijen stabla. Za svaki atribut i za svaku
vrijednost atributa prebrojava se koliko puta dana grana čvora vodi proces odlučivanja u
određenu vrijednost ciljnog atributa.
Primjeri u ovom skupu podataka se dijele u dvije klase, SDA i SNE. Recimo da skup primjera S
sadrži d elemenata iz klase SDA i n elemenata iz klase SNE. Po teoriji informacija se količina
informacije, potrebna da se odredi pripadnost proizvoljnog primjerka iz skupa podataka S nekoj
od klasa SDA ili SNE, računa se po formuli:
−d d n n
I ( d , n )= log 2 − log 2
d +n d+ n d+ n d+ n

Formula predstavlja informacijsku vrijednost kojom se mjeri koliko dobro dani atribut razdvaja
primjerke prema njihovoj klasifikaciji. Informacijska vrijednost će biti 0 ako svi primjerci
pripadaju istoj klasi. Recimo da skup S ima 5 primjera i svih 5 pripadaju klasi SDA, odnosno 0
primjera se nalazi u SNE. Tada će informacijska dobit iznositi 0. Informacijska vrijednost će biti
maksimalna samo u slučaju kada skup S sadrži istovjetan broj primjera u svakoj klasi. U teoriji
informacije se mjera čistoće, koju ćemo koristiti prilikom određivanja homogenosti skupa
primjera, naziva prosječna informacijska vrijednost. Pretpostavit ćemo da se skup podataka S u
odnosu na atribut A dijeli u m podskupova Si ,i ∈{1,2,...,m}. Ako skup Si sadrži di primjera koji
pripadaju klasi SDA i ni primjera koji pripadaju klasi SNE, tada se prosječna informacijska
vrijednost atributa A potrebna za klasifikaciju primjera u sve podskupove Si dobiva po formuli:

m
d i + ni
I ( A ) =∑ I (d i ,n i)
i=1 d+ n

Uz izračunatu prosječnu informacijsku vrijednost atributa A potrebno je definirati mjeru


efektivnosti od A u odnosu na dani skup podataka S. Informacijski dobitak (gain) je mjera kojom
se određuje očekivana redukcija prosječne informacijske vrijednosti atributa A uzrokovana
razdvajanjem primjera na osnovu tog atributa, odnosno:
D(S, A) = I(d,n) − I(A)

ID3 algoritam se zaustavlja kada svi atributi budu iskorišteni u nekoj grani stabla, ili dok svi
primjerci koji pripadaju čvoru imaju istu klasu, tj. kad je informacijska dobit primjerka 0.

18
3. Zaključak

U ovom seminarskom radu dan je teoretski uvod u područje metoda biomedicinske klasifikacije.
Napravljena je podjela modela nadziranog mašinskog učenja te su temeljem te podjele posebno
objašnjeni naivni Bayesov klasifikator i klasifikator najbližih susjeda (k-NN), metoda umjetnih
neuronskih mreža te metoda potpornih vektora i algoritmi stable odlučivanja.
Odabir klasifikatora uveliko ovisi o svakom pojedinom slučaju, ali postoje smjernice koje bi
trebale pomoći prilikom odabira. Tako se preporučuje odabir k-NN-a u slučajevima kada je
skup mogućih klasa vrlo velik, ali ne i u situacijama kada imamo vrlo velik broj dokumenata
kojima treba odrediti klasu zbog potrebe za velikim brojem operacija tijekom izračuna
udaljenosti između susjeda i ograničenosti memorijom (pripada memory-based mašinskom
učenju).
Šum u skupu za učenje znatno ne umanjuje preciznost pa kažemo da je robustan. Kako pripada
parametarskom modelu, naivni Bayesov klasifikator ima ograničenu primjenu jer se
pretpostavlja teorijska razdioba podataka, ali zato vrijeme učenja ne ovisi o broju primjera.
Obzirom da se radi o linearnom modelu, postoje ograničenja na primjenu (primjer XOR
funkcije).
Pokazane su implementacije prethodno objašnjenih klasifikatora.
Ukazani su nedostatci implementacije klasifikatora najbližih susjeda, koji za razliku od naivnog
Bayesovog, zahtjeva pohranu polja dokumenata temeljem kojih želimo klasificirati. Za navedeni
nedostatak predloženo je rješenje korištenjem razreda na kojem se i temelji gotova
implementacija.

19
4. Literatura

 Abdulhamit Subasi - Practical Guide for Biomedical Signals Analysis Using Machine
Learning Techniques_ A MATLAB Based Approach-Academic Press (2019).pdf
 Renato Bošnjak-Diplomski rad na temu: Usporedba metoda za klasifikaciju tekstualnih
dokumenata
 Hrvoje Očevčić-Doktorska disertacija na temu: Modeč procjene vjerovatnosti neželjenih
događaja u informacijskom sustavu upotrebom Bayesovog teorema
 Branko Žitko-Seminarski rad na temu: Upotreba stabla odlučivanja kod testiranja znanja
metodom kviza
 https://hr.wikipedia.org/wiki/Umjetna_neuronska_mre%C5%BEa

20

You might also like