AUTOMATSKO PRILAGOÐAVANJE KLASIFISANOG ......Naslov master rada : Automatsko prilago aanjev klasi...

Post on 11-Jun-2020

10 views 0 download

Transcript of AUTOMATSKO PRILAGOÐAVANJE KLASIFISANOG ......Naslov master rada : Automatsko prilago aanjev klasi...

UNIVERZITET U BEOGRADUMATEMATIČKI FAKULTET

Milan M. Čugurović

AUTOMATSKO PRILAGOÐAVANJEKLASIFIKATORA RUKOM PISANOG

TEKSTA POJEDINAČNIM KORISNICIMA

master rad

Beograd, 2019.

Mentor:

dr Mladen Nikoli¢, docent

Univerzitet u Beogradu, Matemati£ki fakultet

�lanovi komisije:

dr Predrag Jani£i¢, redovni profesor

Univerzitet u Beogradu, Matemati£ki fakultet

dr Jovana Kova£evi¢, docent

Univerzitet u Beogradu, Matemati£ki fakultet

Datum odbrane: 23.09.2019.

Dugujem zahvalnost mentoru doc. dr Mladenu Nikoli¢u nasaradnji tokom izrade projekta i pisanja rada, £lanovima

komisije prof. dr Predragu Jani¢i¢u i doc. dr JovaniKova£evi¢ na detaljnom £itanju i komentarima na tezu, dr

Novaku Novakovi¢u iz kompanije Majkrosoft razvojni centarSrbija na saradnji tokom izrade projekta, kao i kolegiOgnjenu Koci¢u na korisnim savetima i sugestijama.

Naslov master rada: Automatsko prilago�avanje klasi�katora rukom pisanog tek-

sta pojedina£nim korisnicima

Rezime: Iako je razvoj ra£unarstva zna£ajno uticao na na£in na koji pi²emo, ob-

ra�ujemo i £uvamo tekst, pisanje teksta rukom je i dalje verovatno dominantna

praksa. Ipak, i u tom kontekstu je poºeljno iskoristiti prednosti obrade i £uva-

nja podataka koje moderni ra£unari pruºaju. Jedan od prvih koraka ka tom cilju

je prepoznavanje rukom napisanog teksta, odnosno njegovog prevo�enja iz slike u

niz karaktera koji se £uvaju u digitalnom obliku. �iroka upotreba tablet ra£unara

tako�e daje podstrek razvoju aplikacija koje obra�uju rukom pisani tekst i imaju

potrebu za njegovim prepoznavanjem. Takvi sistemi su u novije vreme £esto za-

snovani na metodama ma²inskog u£enja i kod njih je povremena gre²ka o£ekivana

pojava. Naravno, u£estalost gre²aka je poºeljno smanjiti.

Smanjenje u£estalosti gre²aka predstavljeno u ovom radu koristi £injenicu da se

speci�£nosti pojedina£nih rukopisa prakti£no ne menjaju i implementira metod koji

vr²i prepoznavanje speci�£nosti rukopisa korisnika na £ijem ra£unaru se izvr²ava.

Ovakvo prilago�avanje je izvr²eno pra¢enjem na kojim karakterima izvorni prepo-

znava£ gre²i, inkrementalnim obu£avanjem alternativnih modela koji se fokusiraju

na te karaktere i ocenom statisti£kog modela koji bira izme�u polaznog prepoznava£a

i alternativnih modela. Pri tome, alternativni modeli ne uklju£uju skupo obu£avanje

s obzirom da se ono izvr²ava na ra£unaru korisnika. U radu je kori²¢en programski

jezik Python sa svojim bibliotekama za ma²insko u£enje, numeri£ka izra£unavanja

i sli£no. Kao skupovi podataka za obu£avanje i evaluaciju kori²¢eni su skup rukom

pisanih karaktera NIST Special Database 19 Ameri£kog nacionalnog instituta za

standarde i tehnologiju kao i skup podataka Deepwriting objavljen od strane grupe

istraºiva£a sa ETH Univerziteta u Cirihu.

Klju£ne re£i: neuronske mreºe, rukom pisani tekst, klasi�kacija stila, algoritam

najbliºih suseda, klasterovanje

Sadrºaj

1 Uvod 1

2 Osnovni pojmovi ma²inskog u£enja 4

2.1 Osnovni pojmovi i podele . . . . . . . . . . . . . . . . . . . . . . . . 4

2.2 Model, funkcija gre²ke i regularizacija . . . . . . . . . . . . . . . . . . 6

2.3 Algoritam k najbliºih suseda . . . . . . . . . . . . . . . . . . . . . . . 8

2.4 Algoritam klasterovanja K-sredina . . . . . . . . . . . . . . . . . . . . 10

2.5 Neuronske mreºe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.6 Strati�kacija i ponovno uzorkovanje . . . . . . . . . . . . . . . . . . . 20

3 Matemati£ke osnove 21

3.1 Bernulijeva raspodela . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3.2 Beta funkcija i beta raspodela . . . . . . . . . . . . . . . . . . . . . . 22

3.3 Bajesovska statistika, konjugovane raspodele, apriorne i aposteriorne

verovatno¢e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3.4 Konjugovanost binomne i beta raspodele . . . . . . . . . . . . . . . . 29

4 Metod prilago�avanja 31

4.1 Pregled predloºenog metoda pove¢anja preciznosti klasi�katora u£e-

njem speci�£nosti pojedina£nih korisnika . . . . . . . . . . . . . . . . 32

4.2 Tehni£ki detalji implementacije . . . . . . . . . . . . . . . . . . . . . 36

5 Evaluacija re²enja 41

5.1 Skupovi o�ajn rukom pisanih karaktera . . . . . . . . . . . . . . . . . 42

5.2 Kori²¢eni skupovi o�ajn rukom pisanih karaktera . . . . . . . . . . . 42

5.3 Preprocesiranje podataka . . . . . . . . . . . . . . . . . . . . . . . . . 47

5.4 Podela podataka . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

5.5 Treniranje baznog klasi�katora . . . . . . . . . . . . . . . . . . . . . . 49

v

SADR�AJ

5.6 Strati�kacija i ponovno uzorkovanje . . . . . . . . . . . . . . . . . . . 50

5.7 Rezultati evaluacije bez ponovnog uzorkovanja . . . . . . . . . . . . . 52

5.8 Rezultati evaluacije sa ponovnim uzorkovanjem . . . . . . . . . . . . 53

5.9 Pore�enje sa najboljim poznatim rezultatima . . . . . . . . . . . . . . 54

6 Zaklju£ak i budu¢i rad 56

Literatura 58

vi

Glava 1

Uvod

Oblast opti£kog prepoznavanja karaktera (eng. optical character recognition,

OCR) predstavlja domen istraºivanja vi²e podoblasti ra£unarstva kao ²to su ve²ta£ka

inteligencija (eng. arti�cial inteligence), prepoznavanje obrazaca (eng. pattern re-

cognition), ra£unarska vizija (eng. computer vision) i druge. Opti£ko prepoznavanje

karaktera odnosi se na op²te tehnike koje se koriste u oblastima obrade rukom pisa-

nih karaktera ili digitalizacije slika, tako da one mogu biti elektronski skladi²tene,

pretraºivane i modi�kovane. Automatsko prepoznavanje rukom pisanih karaktera

moºe se smatrati podobla²¢u pomenute oblasti.

Problem automatskog prepoznavanja rukom pisanih karaktera predstavlja jedan

nadasve prakti£an problem. Inspirisan primenom u praksi razvija se kako u okviru

akademske zajednice, tako i u okviru industrijskog sektora. U industriji se re²enja

ovog problema direktno komercijalizuju uklju£ivanjem prepoznava£a rukom pisanih

karaktera u ure�aje poput tableta, pametnih telefona i sli£no. Zahvaljuju¢i tome

svakodnevni ºivot prose£nog korisnika nekada postaje jednostavniji. Problem auto-

matskog prepoznavanja rukom pisanih karaktera sre¢e se u dve varijante: o�ajn i

onlajn varijanti. Prva rukopis predstavlja kao sliku gledaju¢i na njega kao na sta-

ti£ki objekat, dok druga na rukopis gleda sa dinami£ke strane, uzimaju¢i u obzir

kretanje ruke odnosno olovke prilikom njegovog nastanka. Ilustracija ovoga data je

na slici 1.1.

Pionirski poku²aj automatskog prepoznavanja rukom pisanih karaktera datira

jo² iz pedesetih godina pro²log veka [25]. Nakon ovog po£etnog poku²aja nekoliko

grupa istraºiva£a radilo je nezavisno na ovom problemu. U okviru softverskih i

hardverskih ograni£enja tada²njeg ra£unarstva ostvareni su zapaºeni rezultati. U

poslednjih desetak godina intenzivan razvoj neuronskih mreºa doveo je do pome-

1

GLAVA 1. UVOD

Slika 1.1: Rukom pisani karakteri, o�ajn i onlajn varijanta, redom

ranja granica u mnogim oblastima, pa tako i u oblasti prepoznavanja rukom pisa-

nih karaktera. Preciznost klasi�kacije koju ostvaruju konvolutivne neuronske mreºe

nadma²uje rezultate svih metoda razvijenih do tada.

Kao ²to prethodni pasus isti£e, konvolutivne neuronske mreºe uvele su revolu-

ciju i u ovu oblast zna£ajno nadma²uju¢i performanse dosada²njih klasi�katora. I

pored velikog pobolj²anja, one imaju jo² prostora za napredak. Cilj ovog rada je-

ste upravo pove¢avanje preciznosti neuronskih mreºa kreiranih u svrhu klasi�kacije

rukom pisanih karaktera. Pobolj²anje se bazira na £injenici da je rukopis svakog po-

jedinca ne²to jedinstveno, odnosno ne²to ²to ga u velikoj meri identi�kuje. Metod

pobolj²anja, kog ovaj rad prezentuje, teºi pove¢anju preciznosti baznog klasi�katora

u£enjem speci�£nosti rukopisa korisnika.

Novi pristup zasniva se na ideji poznavanja stila pisanja karaktera za svakog

pojedina£nog korisnika. Pobolj²anje pretreniranog klasi�katora rukom pisanih ka-

raktera zasniva se na dinami£kom pra¢enju kako gre²aka tako i uspe²nih predvi�anja

tog klasi�katora. Ovim pra¢enjem kreira se takozvana istorija pisanja korisnika. Na

osnovu nje se formira skup od nekoliko modela k najbliºih suseda, za razne vred-

nosti k i na principijelan na£in (koji ¢e biti opisan kasnije) se ocenjuje pouzdanost

kako baznog klasi�katora, tako i ovih modela. Na osnovu tih ocena se odlu£uje koju

labelu predvideti.

Predloºeni metod daje zna£ajno pobolj²anje preciznosti. Na skupu podataka

kori²¢enom u ovom radu, preciznost baznog klasi�katora pove¢ana je za vi²e od

dva procenta. Time su nadma²eni dosada²nji rezultati objavljeni na ovom skupu

podataka. Preciznost (eng. accuracy) dostignuta u ovom radu je 89.60%.

Rad je podeljen u nekoliko poglavlja. U okviru poglavlja 2 opisani su relevantni

pojmovi ma²inskog u£enja na koje se oslanja ovaj rad. Uvedene su osnovne de�ni-

cije, diskutovane odgovaraju¢e podele, i detaljno opisane tehnike koje se koriste u

2

GLAVA 1. UVOD

okviru ovog rada: metod k najbliºih suseda, algoritam klasterovanja k sredina kao i

konvolutivne neuronske mreºe. Svaka od prethodnih tema predstavlja zna£ajan deo

prezentovanog metoda pobolj²anja. Poglavlje 3 odnosi se na precizne matemati£ke

osnove koje pruºaju teorijsku potporu metodu. U okviru njega diskutuje se kako

Bernulijeva raspodela slu£ajne promenljive, tako i Beta funkcija odnosno raspodela.

Uvode se pojmovi apriorne i aposteriorne verovatno¢e i izvodi dokaz teoreme o ko-

njugovanosti Beta i Bernulijeve raspodele. Poglavlje 4 razmatra predloºeno re²enje,

kako sa teorijskog tako i sa prakti£nog aspekta. Diskutuju se tehni£ki detalji imple-

mentacije, kao i metod pobolj²anja. Poglavlje 5 navodi precizne rezultate evaluacije

predloºenog pristupa.

3

Glava 2

Osnovni pojmovi ma²inskog u£enja

Ma²insko u£enje predstavlja trenutno vrlo popularnu granu ve²ta£ke inteligen-

cije, odnosno ra£unarstva uop²te. Iako je pomenuta oblast nastala jo² pedesetih

godina pro²log veka kada je razvijen perceptron, prvi sistem koji je bio sposoban da

u£i jednostavne zavisnosti (Rozenblat 1957.), tek po£etkom ovog veka ma²insko u£e-

nje dolazi u ºiºu kako stru£ne, tako i lai£ke javnosti. Zahvaljuju¢i razvoju tehologije

gra�£kih karata ra£unari postaju sposobni da u kratkom vremenskom peridu odrade

obimna izra£unavanja, ²to doprinosi ponovnom oºivljavanju neuronskih mreºa, koje

su nastale jo² ²ezdesetih godina pro²log veka. Industrija, kao i akademska zajed-

nica poslednjih godina daju veliki doprinos kako prakti£noj primeni, tako i novim

nau£nim rezultatima oblasti.

U nastavku ¢e biti izloºeni neki od osnovnih pojmova ma²inskog u£enja. Obla-

stima koje se koriste u ovom radu bi¢e posve¢ena posebna paºnja. Prezentacija

ove teme prati¢e izlaganje iz knjige �Ma²insko u£enje� autora Mladena Nikoli¢a i

An�elke Ze£evi¢ [28].

2.1 Osnovni pojmovi i podele

U okviru ma²inskog u£enja podaci su izuzetno zna£ajni. Otuda je neophodno de-

�nisati ²ta oni predstavljaju i koje vrste podataka postoje. Postoje dve osnovne vrste

podataka koje se pominju u metodama ma²inskog u£enja. Za skup podataka kaºemo

da je labelovan ako ga moºemo predstaviti u obliku D = {(x(n), y(n)) ∈ Ad×B}Nn=1

gde je Ad prostor atributa a B skup labela, dok je sa N ozna£en broj primeraka

skupa D. Za skup podataka kaºemo da nije labelovan ako se predstavlja u obliku

D = {x(n) ∈ Ad}Nn=1. Svaki primerak x(n) predstavlja vektor u d-dimenzionom pro-

4

GLAVA 2. OSNOVNI POJMOVI MA�INSKOG U�ENJA

storu atributa. Svaki element ovog vektora nazivamo atributom. Element y(n), kada

postoji odnosno u slu£aju labelovanog skupa podataka, predstavlja element skupa

labela odnosno oznaka. Njime se ostvaruje veza izme�u vektora atributa i skupa

labela.

Fokusiraju¢i se na prirodu problema u£enja, moºe se do¢i do osnovne podele

metoda ma²inskog u£enja. Na osnovu toga, oblast se deli na nadgledano u£enje

(eng. supervised learning), nenadgledano u£enje (eng. unsupervised learning) i

u£enje uslovljavanjem (eng. reinforcement learning) [28].

Nadgledano u£enje se karakteri²e £injenicom da je na raspolaganju labelo-

van skup podataka. Dakle skup podataka se sastoji od ure�enih parova onoga na

osnovu £ega se u£i i onoga ²ta je iz toga potrebno nau£iti. Ovaj vid u£enja poku-

²ava da prona�e vezu izme�u skupa atributa i odgovaraju¢eg skupa labela. Ako

svakom vektoru atributa x odgovara jedna ciljna labela y ∈ L, L = {l1, l2, ..., lc},problem nadgledanog u£enja naziva se problemom klasi�kacije. Odgovaraju¢e vred-

nosti ciljne promenljive y nazivamo klasama. Sa druge strane, ako svakom vektoru

atributa x odgovara vrednost ciljne promenljive y ∈ B, za neki neprekidan skup

B, problem u£enja naziva se problemom regresije. Modeli nau£eni metodama nad-

gledanog u£enja obi£no se koriste za predvi�anja i prepoznavanja. Ovo je u praksi

najzna£ajniji vid ma²inskog u£enja. Neki od primera problema nadgledanog u£e-

nja jesu prepoznavanje saobra¢ajnih znakova, detekcija kao i prepoznavanje lica na

slikama, predvi�anje cena akcija na berzi, detekcija kancera, vremenska prognoza.

Nenadgledano u£enje se karakteri²e £injenicom da skupu podataka na osnovu

kojeg se u£i nedostaju labele. Ovo odgovara nedostatku informacije o tome ²ta je

potrebno nau£iti. Metodi nenadgledanog u£enja obi£no traºe neku relevantnu struk-

turu u podacima. Neki od metoda nenadgledanog u£enja jesu metode klasterova-

nja, ocene gustine raspodele, pronalaºenje veza izme�u skupa atributa, smanjenje

dimenzionalnosti podataka. Metod nenadgledanog ma²inskog u£enja moºe uklju£iti

i kombinaciju prethodno navedenih metoda. Primena metoda nenadgledanog u£e-

nja obi£no predstavlja vid preprocesiranja podataka za metode nadgledanog u£enja.

Ovo nije nuºno, odnosno metod nenadgledanog u£enja moºe imatu korisnu ulogu

sam po sebi.

U£enje potkrepljivanjem predstavlja kompromis prethodna dva pristupa. Ko-

risti se u situacijama kada je potrebno problem re²iti dono²enjem niza odluka. Pret-

postavlja se da je sistem predstavljen agentom koji opaºa teku¢e stanje okruºenja,

na osnovu koga preduzima odgovaraju¢e akcije, za koje dobija odgovaraju¢e na-

5

GLAVA 2. OSNOVNI POJMOVI MA�INSKOG U�ENJA

grade. Rezultat toga je u£enje odgovaraju¢e optimalne politike pona²anja. Klju£na

pretpostavka je da u vreme u£enja nije poznato koja akcija je optimalna u odgova-

raju¢em kontekstu, s obzirom da bi se tada radilo o problemu nadgledanog u£enja.

Neki od problema u£enja potkrepljivanjem su samovoze¢i automobili, roboti koji se

sami kre¢u kao i automatsko igranje ²aha. O ovom vidu ma²inskog u£enja ne¢e biti

vi²e re£i u daljem tekstu, £italac za vi²e informacija moºe pogledati odgovaraju¢u

literaturu.

2.2 Model, funkcija gre²ke i regularizacija

Na osnovu toga kakve zavisnosti modeluju, metodi ma²inskog u£enja dele se na

probabilisti£ke generativne modele (koji modeluju zajedni£ku raspodelu podataka

kojom se opisuju zavisnosti kako izme�u atributa i ciljne promenljive, tako i zavisno-

sti me�u samim atributima), probabilisti£ke diskriminativne modele (koji modeluju

uslovnu raspodelu ciljne promenljive u odnosu na vrednosti atributa) i neprobabili-

sti£ke diskriminativne (koji ne modeluju raspodelu, ve¢ ocenjuju funkciju zavisnosti

ciljne promenljive u odnosu na date vrednosti atributa) [28].

Ocena kojom se aproksimira bilo ciljna gustina raspodele bilo funkcija veze ciljne

promenljive u odnosu na zadate vrednosti atributa naziva semodelom. Prema na£inu

reprezentacije, modele delimo na dve kategorije: parametarske i neparametarske.

Parametarska reprezentacija modela pretpostavlja da je model funkcija fw(x)

koja modeluje zavisnost ciljne promenljive y u odnosu na date vrednosti atributa

x a koju kon�guri²e kona£an skup parametara w. Izbor modela svodi se na izbor

vrednosti prametara w.

Neparametarska reprezentacija modela ne pretpostavlja inicijalnu formu modela,

ve¢ se forma modela odre�uje na osnovu datih podataka. Ovi modeli, uprkos svom

nazivu, imaju parametre. Ti parametri su ipak u tesnoj vezi sa koli£inom podataka

odnosno brojem instanci i samim instancama u skupu za obu£avanje, stoga model

ne moºe biti predstavljen kona£nim skupom parametara. Otuda i naziv ove vrste

modela ma²inskog u£enja.

Prednost neparametarskih modela u odnosu na parametarske predstavlja £inje-

nica da inicijalno nije potrebno pretpostaviti odre�enu formu modela. Ve¢a koli£ina

pretpostavki umanjuje �eksibilnost samog modela, ²to u krajnjem slu£aju moºe re-

zultirati lo²ijim kvalitetom modela (ukoliko se pretpostavi forma modela koja nije

odgovaraju¢a). U daljem tekstu bi¢e razmatrani modeli sa parametarskom repre-

6

GLAVA 2. OSNOVNI POJMOVI MA�INSKOG U�ENJA

zentacijom.

Izborom vrednosti odgovaraju¢ih parametara dobijaju se modeli razli£itog kva-

liteta. Ocena kvaliteta modela vr²i se funkcijom gre²ke. Funkcija gre²ke (eng. loss

function) jeste funkcija koja meri odstupanja predvi�enih i stvarnih vrednosti ciljne

promenljive. Ozna£imo je sa L, a sa L(yi, fw(xi)) ozna£avamo gre²ku parametar-

skog modela fw na jednoj instanci skupa za obu£avanje. Otuda ukupnu gre²ku

modela, gre²ku na celom skupu podatataka koji su nam na raspolaganju, ra£unamo

kao∑N

i=1 L(yi, fw(xi)). Tada izbor parametara w, koji nazivamo i fazom treninga

modela, predstavlja proces minimizacije ukupne gre²ke:

minw

N∑i=1

L(yi, fw(xi))

Pored funkcije gre²ke, postoje i drugi na£ini kojima se evaluira kvalitet modela. U

slu£aju problema klasi�kacije jedna od vaºnijih mera kvaliteta modela jeste njegova

preciznost (eng. classi�cation accuracy). Preciznost klasi�katora de�ni²e se kao

koli£nik broja ta£no klasi�kovanih instanci i ukupnog broja instanci na kojima je

klasi�kator dao predvi�anje.

Proces izbora parametara w, odnosno prethodni proces minimizacije, moºemo

shvatiti kao prilago�avanje modela podacima. Prevelika �eksibilnost modela, za-

jedno sa prethodnim procesom minimizacije, moºe voditi ka tome da se model pre-

vi²e prilagodi podacima u smislu da je ukupna gre²ka modela na skupu podataka

koji nam je dostupan za obu£avanje mala, dok je gre²ka predvi�anja modela na

novim podacima velika. Ova pojava naziva se preprilago�avanje modela podacima.

Smanjivanje �eksibilnosti modela ne predstavlja dobar na£in za prevazilaºenje

prethodno navedenog problema. Naime, modeli koji nisu dovoljno �eksibilni, ne

samo da se ne mogu preprilagoditi podacima, oni im se £esto ne mogu £ak ni u

dovoljnoj meri prilagoditi, usled £ega imaju visoku vrednost gre²ke ne samo na skupu

za testiranje, ve¢ i na skupu za obu£avanje. Otuda se prethodni problem prevazilazi

tehnikama regularizacije. Regularizacija predstavlja modi�kaciju minimizacionog

problema, koji postaje [28]:

minw

N∑i=1

L(yi, fw(xi)) + λR(w)

gde R(w) predstavlja regularizacioni izraz (funkcija ciljanih parametara w, £esto l2norma ili kvadrat iste), a λ regularizacioni metaparametar koji oteºavaju prilago-

�avanje modela podacima. Regularizacija vodi modelima koji dobro generalizuju.

7

GLAVA 2. OSNOVNI POJMOVI MA�INSKOG U�ENJA

2.3 Algoritam k najbliºih suseda

Algoritam k najbliºih suseda predstavlja kako jedan od najjednostavnijih metoda

ma²inskog u£enja, tako i jedan od naj£e²¢e kori²¢enih. Izuzetno se lako implemen-

tira, a neretko daje dobre rezultate. Moºe se koristiti kako za klasi�kaciju, tako i

za regresiju. Ovaj algoritam, u kontekstu gorenavedenih podela predstavlja nepa-

rametarski model ma²inskog u£enja, probabilisti£ki diskriminativni. Jedini zahtev

za primenu ovog modela jeste pretpostavka postojanja metrike odnosno funkcije

rastojanja nad prostorom atrbuta skupa podataka.

Intuicija koja se krije iza ovog algoritma prili£no je jednostavna. Razmotrimo

jedan prili£no naivan klasi�kacioni model ma²inskog u£enja. Model se sastoji u

tome da memori²e sve instance skupa za trening, a zatim instance skupa za testi-

ranje klasi�kuje samo ukoliko do�e do ta£nog poklapanja sa skupom atributa neke,

prethodno memorisane instance. O£igledna mana ovakvog algoritma jeste £injenica

da je test instanca klasi�kovana isklju£ivo ukoliko ako se desilo ta£no poklapanje sa

odre�enom trening instancom. Dakle, metodu nedostaje mo¢ generalizacije. Pobolj-

²anje bi se moglo zasnivati na tome, da novoj instanci pridruºujemo klasu instance

memorisanog trening skupa koja joj je najbliºa u smislu neke, prethodno de�ni-

sane metrike. Time model predvi�a vrednosti ciljne promenljive i za instance koje

prethodno nije video. Ovo predstavlja konkretizaciju pojma najbliºeg suseda [38].

Model f dobijen metodom najbliºih suseda, biramo tako da vaºi [28]:

f(x) = arg maxyp(y|x)

gde se verovatno¢a aproksimira udelima u skupu suseda. Lai£ki re£eno, algoritam

k najbliºih suseda klasi�kuje novu instancu tako ²to u memorisanom skupu za tre-

ning pronalazi njoj k najbliºih instanci, u smislu prede�nisane metrike, i pridruºuje

joj klasu koja je naj£e²¢a me�u prona�enim instancama. U slu£aju regresije kao

predvi�anje moºe se uzeti bilo prosek, bilo teºinski prosek na�enih instanci. Za

teºine se £esto uzimaju recipro£ne vrednosti kvadrata rastojanja ciljne instance do

pomenutih.

Ovaj algoritam nema eksplicitnu formu modela, nema uobi£ajenu funkciju gre²ke

u odnosu na koju bi model bio obu£avan, nedostaje i sama faza obu£avanja, osim

izbora vrednosti metaparametra k.

Slika 2.1 ilustruje algoritam najbliºih suseda, kada se za broj suseda k �ksiraju

redom vrednosti 1, 2 i 3. Metrika koja se koristi je euklidska1, a ciljna instanca jeste1l2 metrika

8

GLAVA 2. OSNOVNI POJMOVI MA�INSKOG U�ENJA

Slika 2.1: Pona²anje algoritma za razli£ite izbore vrednosti metaparametra k

ona u centru kruºnice. Ako se koristi jedan najbliºi sused, instanca se progla²ava

za negativnu. Ako je vrednost metaparametra k postavljena na tri, tada ciljana

instanca u svojoj okolini ima dva pozitivna i jednog negativnog suseda, stoga se

ona progla²ava pozitivnom. U slu£ajevima kada se me�u najbliºim susedima nalaze

podjednako instance svih klasa, kao ²to to prikazuje prethodna slika kada je broj

suseda jednak dva, za predvi�anje ciljne instance moºe se slu£ajno birati neka od

vrednosti, ili naprednije koristiti neka heuristika izbora. Ako je posmatrani broj

suseda k relativno mali, dolazi do preprilago�avanja modela podacima, dok za velike

vrednosti parametra k dolazi do potprilago�avanja, s obzirom da glasaju i susedi

koji nisu prostorno blizu ciljnoj instanci. Ovo je ilustrovano na slici 2.2 [38].

Slika 2.2: Metod najbliºih suseda za klasi�kaciju u slu£aju velikog broja k

Prednosti metoda k najbliºih suseda jesu jednostavna implementacija kao i £inje-

9

GLAVA 2. OSNOVNI POJMOVI MA�INSKOG U�ENJA

nica da nije neophodno pretpostavljati formu modela, dok su neke od mana potreba

za £uvanjem svih instanci skupa za obu£avanje kao i osetljivost u odnosu na izbor

metaparametra k.

Vaºno je napomenuti da s obzirom na fundamentalnost ovog algoritma postoji

veliki broj njegovih implementacija u raznim programskim jezicima i bibliotekama.

2.4 Algoritam klasterovanja K-sredina

U mnogim domenima i konkretnim problemima postoji potreba za grupisanjem

podataka u odnosu na odre�ene metrike. Oblasti poput biologije, veba (eng. Worl-

dWideWeb), analize klimatskih promena, medicine i biznis aplikacija, po svojoj

prirodi zahtevaju ovakve metode i alate [38].

Klasterovanje predstavlja identi�kaciju grupa u dostupnim podacima, i kao takvo

jeste metod nenadgledanog ma²inskog u£enja. Dakle odgovaraju¢i skup podataka

nije labelovan, a u njemu je potrebno prona¢i odre�enu vrstu strukture, i u odnosu

na istu podatke podeliti u grupe, koje se nazivaju klasterima. Prethodno uvedena

neformalna de�nicija pojma klasterovanja nosi u sebi veliku dozu neodre�enosti.

Naime, prilikom klasterovanja date podatke grupi²emo u klastere, pri £emu se po-

stavlja pitanje ²ta to grupu instanci vezuje u smislu predstavljanja istog klastera,

kao i ²ta ih to razlikuje od drugih instanci koje ne pripadaju tom klasteru. Do-

datno, postavlja se i pitanje granularnosti odnosno grubosti klasterovanja - u koliko

klastera podeliti podatke. Ovo je ilustrovano slikom 2.3.

Slika 2.3: Klasterovanje datih ta£aka (gore levo) u dva (gore desno), £etiri (dolelevo) odnosno ²est (dole desno) klastera

10

GLAVA 2. OSNOVNI POJMOVI MA�INSKOG U�ENJA

Algoritam klasterovanja K-sredina predstavlja najpoznatiji algoritam klastero-

vanja. U podacima pronalazi strukturu grupi²u¢i instance u k klastera, pri £emu

su klasteri reprezentovani pomo¢u teºi²ta, koje predstavljaju prosek elemenata kla-

stera. Odavde direktno sledi da je algoritam K-sredina primenljiv isklju£ivo na

podatke nad kojima je de�nisano uprose£avanje. Pod odre�enim, ne²to slabijim

uslovima postoje uop²tenja ovog algoritma, ali ona ne¢e biti razmatrana. Bitno je

naglasiti da se, u osnovnoj varijanti ovom algoritmu mora �ksirati broj klastera k.

Kada se �ksira vrednost k, prvi korak algoritma predstavlja �ksiranje k teºi-

²ta (obi£no se vr²i nasumi£ni izbor, mada se mogu koristiti i odre�ene heuristike

ili njihovo postavljanje od strane korisnika). Nakon toga, algoritam podrazumeva

iteriranje slede¢ih koraka [28]:

• Preraspodeliti svaku instancu tako da pripada najbliºem teºi²tu, u odnosu na

prede�nisanu metriku

• Nova teºi²ta ra£unati po njihovoj de�niciji (prosek instanci klastera)

Ovi koraci ponavljaju se bilo odre�eni, unapred de�nisani broj iteracija, bilo dok

postoje promene teºi²ta odre�ene veli£ine, u odgovaraju¢em prostoru. Ilustracija

izvr²avanja data je na slici 2.4.

Slika 2.4: Promena teºi²ta prilikom iteriranja algoritma

Razmotrimo malo detaljnije korake prethodnog algoritma. Da bismo dodelili

instanci najbliºe teºi²te, potrebna nam je prede�nisana metrika u odnosu na koju

de�ni²emo pojam rastojanja, odnosno pojam blizine. Ako je prostor atributa Rn,

obi£no se koristi l2 metrika, dok se recimo kosinusna sli£nost moºe koristiti ako

instance pripadaju skupu dokumenata. Svakako postoji vi²e mogu¢ih izbora me-

trike koje mogu odgovarati istom prostoru atributa. Recimo Menhetn rastojanje

11

GLAVA 2. OSNOVNI POJMOVI MA�INSKOG U�ENJA

(l1 metrika) moºe biti kori²¢eno u prostoru Rn, dok �akardova mera moºe biti po-

godna za prostor dokumenata. Obi£no, metrika koju algoritam koristi da de�ni²e

rastojanje predstavlja jednostavnu funkciju £ije ra£unanje ne tro²i previ²e resursa.

Naime, algoritam u svakom koraku ra£una rastojanje od svake instance do svakog

teºi²ta, u cilju pridruºivanja najbliºe. Napredne varijante ovog algoritma uklju£uju

pobolj²anja koja smanjuju broj potrebnih ra£unanja.

Ukoliko algoritam koristi euklidsko rastojanje, jednostavnim ra£unanjem parci-

jalnih izvoda moºe se pokazati da on minimizuje funkciju [38]:

k∑i=1

∑x∈Ci

l2(ci, x)2

gde Ci predstavlja i-ti klaster, a ci i-to teºi²te. Na osnovu toga, jasno se vide

pojedine speci�£nosti ovog algoritma. Naime, koriste¢i Euklidsko rastojanje, klasteri

dobijaju oblik sfere. Dodatno, kako je rastojanje kvadrirano, odudaraju¢i podaci

(eng. outlier) imaju ne²to ve¢i uticaj na pozicije teºi²ta, s obzirom na £injenicu

da rastojanje raste sa kvadratom. U slu£aju homogene gustine ta£aka algoritam

preferira klastere sa pribliºnim brojem ta£aka u njima.

Osnovni nedostatak ovog algoritma predstavlja £injenica da je istom neophodno

�ksirati broj klastera k. Ovo se prevazilazi, kao ²to je ve¢ re£eno, odre�enim pro²i-

renjima samog algoritma ili pojedinim heuristikama.

2.5 Neuronske mreºe

Neuronske mreºe (eng. Neural networks) predstavljaju trenutno najaktuelniju

oblast ma²inskog u£enja. Primenjuju se u mnogim oblastima. Mnogi problemi, koji

do sada nisu bili savladani, bivaju re²eni. U novije vreme kako nau£na zajednica

tako i industrijski sektor sve su vi²e uklju£eni u razvoj oblasti, kako kroz publikacije,

tako i kroz prakti£ne aplikacije. Vaºno je napomenuti da se u lai£kim krugovima

ma²insko u£enje £esto poistove¢uje sa neuronskim mreºama, ²to svakako predstavlja

veliku gre²ku.

Osnovni pojmovi i podele

Neuronske mreºe naj£e²¢e se sre¢u u nekoliko osnovnih varijacija. To su potpuno

povezane neurnoske mreºe (eng. fully connected neural network) koje predstavljaju

osnovnu varijantu ovog metoda, konvolutivne neuronske mreºe (eng. convolutional

12

GLAVA 2. OSNOVNI POJMOVI MA�INSKOG U�ENJA

neural network) koje se koriste u obradi slike, zvuka kao i drugih podataka u sirovom

(izvornom) obliku, rekurentne neuronske mreºe (eng. recurrent neural network)

koje se koriste u obradi podataka nalik nizovima promenljive duºine, kod kojih se

prirodno name¢e rekurzivna struktura. Pored njih, postoje i druge arhitekture, o

kojima na ovom mestu ne¢e biti re£i. Na ovom mestu posebna paºnja bi¢e posve¢ena

konvolutivnim neuronskim mreºama, s obzirom na £injenicu da se u konkretnoj

implementaciji vr²i pobolj²anje klasi�katora predstavljenog upravo konvolutivnom

neuronskom mreºom. Pre toga bi¢e dat kratak osvrt na potpuno povezane neuronske

mreºe, obzirom da one predstavljaju sastavni deo konvolutivnih neuronskih mreºa.

Potpuno povezana neuronska mreºa

Potpuno povezana neuronska mreºa predstavlja osnovnu arhitekturu ovog mo-

dela ma²inskog u£enja. Mreºa se sastoji od neurona, odnosno osnovnih ra£unskih

jedinica u kojima se vr²e jednostavne matemati£ke operacije. Neuroni su me�usobno

grupisani tako da formiraju slojeve, pri £emu neuroni svakog sloja kao svoje ulaze

uzimaju izlaze neurona prethodnog sloja (i samo njih), dok svoje izlaze na raspo-

laganje stavljaju neuronima narednog sloja. Svaki od neurona ra£una jednostavnu

nelinearnu transformaciju linearne kombinacije svojh ulaza, odnosno linearne kom-

binacije izlaza neurona prethodnog sloja. Ove nelinearne transformacije nazivaju se

aktivacione funkcije. Prvi sloj naziva se ulaznim, ostali slojevi skrivenim. Neuronska

mreºa naziva se dubokom ako ima vi²e od jednog skrivenog sloja. Ulazi prvog sloja

nazivaju se ulazima mreºe, dok se izlazima mreºe nazivaju izlazi poslednjeg od njih.

Naziv potpuno povezana neuronska mreºa dolazi od toga ²to neuroni jednog sloja

svoje izlaze ²alju svim neuronima narednog sloja, bez izuzetka. Shema potpuno

povezane neuronske mreºe data je na slici 2.5.

Slika 2.5: Shema mreºe sa propagacijom unapred

13

GLAVA 2. OSNOVNI POJMOVI MA�INSKOG U�ENJA

Formalna postavka modela

Model potpuno povezane neuronske mreºe formalno se uvodi slede¢im de�nici-

jama [28]:

h0 = x

hi = g(Wihi−1 + wi0), i = 1, 2, ..., L

gde x predstavlja vektor ulaznih promenljivih, Wi matricu £ija j-ta vrsta predstavlja

vektor vrednosti parametara j-te jedinice u i-tom sloju, wi0 vektor slobodnih £lanova

i-tog sloja, g nelinearnu aktivacionu funkciju, a L broj slojeva mreºe. Kompletan

model dat je jedna£inom fw(x) = hL.

Jako vaºan teorijski rezultat koji predstavlja potporu modela neuronskih mreºa

jeste teorema o univerzalnoj aproksimaciji. Ova teorema kaºe da je skup neuron-

skih mreºa sa samo jednim skrivenim slojem svuda gust na skupu svih neprekidnih

funkcija segmenta [0, 1]n. Teorema tvrdi postojanje takve mreºe, me�utim ne daje

nikakvo uputstvo kako do takve mreºe u konkretnom problemu do¢i [28]. Ovo pred-

stavlja jedan prili£no ozbiljan problem, usled £ega se treniranju neuronske mreºe

kao i procesu izbora arhitekture neuronske mreºe posve¢uje posebna paºnja.

Aktivacione funkcije

Aktivacione funkcije predstavljaju funkcije £iji izlazi predstavljaju izlaze samih

neurona odgovaraju¢e mreºe. Perceptron, prvi sistem po uzoru na koji su nastale

moderne neuronske mreºe, sastojao se od jednog neurona koji je za aktivacionu

funkciju koristio indikatorsku funkciju: g(x) = I(x ≥ 0). Postoji nekoliko o£iglednih

mana ovakve aktivacione funkcije. Jedna o£igledna jeste ta ²to je izvod pomenute

funkcije gde postoji, jednak nuli. Postojanje izvoda koji nije konstantan ispostavlja

se kao jako vaºno svojstvo prilikom kori²¢enja algoritama optimizacije neuronske

mreºe predstavljenje funkcijom fw(x).

Aktivacione funkcije idealno imaju svojstva nelinearnosti, diferencijabilnosti i

monotonosti. Naj£e²¢e kori²¢ene aktivacione funkcije su sigmoidna, tangens hiper-

boli£ki, ispravljena linearna jedinica (eng. ReLU ) kao i nako²ena ispravljena linearna

jedinica (eng. Leaky ReLU ). Gra�ci nekih od njih dati su na slici 2.6.

14

GLAVA 2. OSNOVNI POJMOVI MA�INSKOG U�ENJA

Slika 2.6: Gra�ci aktivacinih funkcija, redom tangens hiperboli£ki, ReLu, sigmoidna

Obu£avanje neuronskih mreºa

S obzirom da je neuronska mreºa predstavljena funkcijom fw(x) koja je kon�-

gurabilna u odnosu na parametre w, njih je potrebno izabrati tako da neuronska

mreºa predstavlja dobar regresor odnosno klasi�kator. Potrebno je dakle izvr²iti

minimizaciju funkcije gre²ke u odnosu na paramete.

Posmatraju¢i �ksirane ulaze x i njima odgovaraju¢e vrednosti labela y, ako funk-

ciju gre²ke ozna£imo sa L, potrebno je minimizovati razliku izme�u stvarne i o£eki-

vane vrednosti u smislu L(fw(x), y). Prethodni proces se naziva procesom optimi-

zacije neuronske mreºe. Isti je jako zahtevan, usled nekonveksnosti i velikog broja

lokalnih minimuma koji su posledica kompleksnosti same mreºe. Koriste¢i algoritam

propagacije unazad u kombinaciji sa tehnikama optimizacije (u novije vreme naj£e-

²£e Adam) vr²i se minimizacija funkcije gre²ke L u odnosu na vrednosti parametra

w.

Algoritam propagacije unazad (eng. backpropagation) slobodno se moºe nazvati

jednim od najvaºnijih algoritama ma²inskog u£enja uop²te [16]. Zasniva se na pra-

vilu ra£unanja parcijalnih izvoda kompozicije funkcija. Za dve funkcije f : Rn → R

i g : Rm → Rn i njihovu kompoziciju, vaºi:

∂i(f ◦ g) =∑n

j=1(∂jf ◦ g)∂igj

Algoritam se kre¢e po slojevima mreºe po£ev od poslednjeg ka prvom, i u svakom

koraku pro²iruje do tog momenta izra£unati parcijalni izvod.

Adam (eng. Adaptive moment estimation) predstavlja trenutno najkori²¢eniji

algoritam za obu£avanje neuronskih mreºa. Dat je formulama [22]:

m0 = 0

v0 = 0

mk+1 = β1mk + (1− β1)∇f(xk)

vk+1 = β2vk + (1− β2)∇f(xk)�∇f(xk)

15

GLAVA 2. OSNOVNI POJMOVI MA�INSKOG U�ENJA

gde mk+1 predstavlja na²u ocenu o£ekivanja gradijenta koju nazivamo prvi moment

gradijenta (ocena predstavlja teºinski prosek) dok vk+1 predstavlja na²u ocenu kva-

drata norme gradijenta koju nazivamo drugi (necentrirani) moment2 gradijenta. Al-

goritam iterativno vr²i aºuriranje (sa eksponencijalnim uticajem parametara konver-

gencije β1 i β2) prvog i drugog momenta gradijenta. Prvi moment gradijenta (mk+1)

predstavlja akumulirani pravac kretanja, dok drugi moment gradijenta predstavlja

brzinu kretanja tim pravcem [4].

Ove dve ocene su pristrasne ka po£etnoj vrednosti koja je u ovom sli£aju nula (jer

su po£etne vrednosti ovih ocena jednake nuli). Stoga se u algoritam uvodi slede¢e

pobolj²anje, koje prethodne ocene £ini nepristrasnim:

mk+1 = mk+1

1−βk+11

vk+1 = vk+1

1−βk+22

Iterativni korak, kojim se vr²e aºuriranja odgovaraju¢h parametara, dat je sa:

wk+1 = wk − α mk+1√vk+1+ε

Parametar α predstavlja veli£inu koraka u£enja, dok parametri β1 i β2, kao ²to

je re£eno, predstavljaju parametre konvergencije algoritma. Operacije deljenja i

korenovanja u prethodnoj formuli vr²e se pokoordinatno.

I pored zna£ajnog razvoja gradijentnih tehnika optimizacije kojima se obu£a-

vaju neuronske mreºe, ovo i dalje predstavlja jako teºak posao. U cilju ²to boljeg

i e�kasnijeg obu£avanja neuronskih mreºa razvijene su i mnoge pomo¢ne tehnike.

Tehnika ranog zaustavljanja (eng. early stopping) zaustavlja obu£avanje neuron-

ske mreºe u slu£aju da se gre²ka koja se minimizuje nije smanjila neki, unapred

de�nisani broj epoha. Njome se pove¢ava e�kasnost obu£avanja neuronske mreºe.

Tehnika smanjenja koraka u£enja (eng. reduce learning rate on plateu) omogu¢ava

bolje obu£avanje neuronskih mreºa tako ²to smanjuje korak u£enja u slu£aju da se

gre²ka koja se minimizuje nije smanjila neki, unapred de�nisani broj epoha. Ovo

omogu¢ava optimizatorima da si�u u uske minimume.

Prednosti i mane

Kvalitet neuronskih mreºa pre svega ogleda se u ²irokom spektru kompleksnih

problema koje su u stanju uspe²no re²avati. Neuronske mreºe £esto su u stanju2naziv moment gradijenta poti£e iz £lanka o iterativnim metodima optimizacije, objavljenog

1964. godine [33].

16

GLAVA 2. OSNOVNI POJMOVI MA�INSKOG U�ENJA

da u£e¢i nelinearne, jako komplikovane atribute kreiraju nove, pogodnije reprezen-

tacije ulaznih podataka, nad kojima su onda u stanju da u£e. Njihove mane, pre

svega predstavljaju velika koli£ina podataka potrebna za njihovo obu£avanje, kao i

sloºenost procesa optimizacije, s obzirom na nekonveksnost funkcije gre²ke. Nein-

terpretabilnost je tako�e jedna od ve¢ih mana ovog metoda.

Konvolutivne neuronske mreºe

Konvolutivne neuronske mreºe predstavljaju neuronske mreºe specijalizovane za

rad nad sirovim podacima. Naj£e²¢e se radi o slikama, zvuku kao i drugim signalima.

Zasnivaju se na operaciji konvolucije kao i na sposobnosti ovih modela da sami

kreiraju atribute iz datih podataka.

Neka su f i g dve funkcije. Konvolucija funkcija f i g u oznaci f ∗ g de�nisana

je na slede¢i na£in [16]:

(f ∗ g)(v) =

∫ +∞

−∞f(x)g(v − x)dx

Prethodnim izrazom de�nisana je operacija konvolucije u jednodimenzionom nepre-

kidnom slu£aju. De�niciju je mogu¢e pro²iriti kako na diskretan domen, tako i na

funkcije vi²e dimenzija. Jednodimenziona diskretna konvolucija, na uzorku dimen-

zije n data je sa [29]:

(f ∗ g)i =n−1∑j=0

fjgn−j, i = 0, 1, ..., n− 1

pri £emu se podrazumeva da je gk = gn+k ukoliko je k < 0. Konvolucija se u vi²im

dimenzijama uvodi na slede¢i na£in:

(f ∗ g)(u, v) =

∫ +∞

−∞

∫ +∞

−∞f(x, y)g(v − x, u− y)dxdy

(f ∗ g)ij =m−1∑k=0

n−1∑l=0

fklgi−k,j−l, i = 0, 1, ...,m− 1, j = 0, 1, ..., n− 1.

Sloºenost izra£unavanja diskretne konvolucije dva signala prema prethodnoj formuli

ima vremensku sloºenost Θ(n2). Me�utim, koriste¢i brzu Furijeovu transformaciju

ova operacija se moºe izra£unati u sloºenosti Θ(n log(n)).

U konvolutivnim neuronskim mreºama ulaz predstavlja sirovi signal. Konvolu-

tivne mreºe su, gotovo bez izuzetka, duboke neuronske mreºe s obzirom na £inje-

nicu da je potrebno od jednostavnih detalja detektovanih u niºim slojevima mreºe

17

GLAVA 2. OSNOVNI POJMOVI MA�INSKOG U�ENJA

konstruistati sloºene oblike na njenom izlazu. Uobi£ajena struktura konvolutivne

neuronske mreºe data je na slici 2.7.

Slika 2.7: Shema tipi£ne konvolutivne neuronske mreºe

Kao ²to prethodna shema pokazuje, konvolutivne mreºe grade se kombinacijom

dve vrste slojeva, konvolutivnih slojeva (eng. convolutional layer) i slojeva agrega-

cije (eng. pooling layer).

Konvolutivni slojevi implementiraju operaciju diskretne konvolucije date gor-

njim formulama. Funkcija f pomenute formule moºe ozna£avati vrednost signala

na odre�enoj lokaciji (jednodimenzionoj u slu£aju zvuka, dvodimenzionoj u slu£aju

slike), dok funkcija g ozna£ava �lter, koji je uglavnom manjih dimenzija u odnosu

na dimenzije odgovaraju¢eg signala. Vrednosti �ltera g predstavljaju parametre

neuronske mreºe, pa trening mreºe predstavlja ni²ta drugo do u£enje odgovaraju-

¢ih �ltera. Izlazi iz konvolutivnih slojeva transformi²u se nelinearnim aktivacionim

funkcijama, koje su diskutovane u prethodnim poglavljima. Konvolutivni slojevi

imaju ulogu konstrukcije novih atributa. U praksi se implementiraju vi²ekanalne

operacije konvolucije koje omogu¢avaju �lterima da deluju na vi²e, a ne samo na

jedan kanal prethodnog sloja.

Kao ²to njihovo ime govori, slojevi agregacije koriste se u svrhu agregiranja

informacija odnosno njihovog ukrupnjavanja. Obi£no se radi o nekoj jednostavnoj

funkciji koja se primenjuje na susedne jedinice prethodnog sloja poput uprose£avanja

ili pronalaºenja maksimuma. U mreºama koje obra�uju slike, ukoliko se agregiraju

18

GLAVA 2. OSNOVNI POJMOVI MA�INSKOG U�ENJA

polja veli£ine k×k, dimenzije rezultata su k2 puta manje od dimenzija ulaza. Uloga

agregacije pre svega je u tome da se smanji broj potrebnih ra£unskih operacija u

vi²im slojevima mreºe, kao i smanjenje broja parametara modela. Agregacijom

se smanjuje zahtevnost procesa optimizacije neuronske mreºe, ali se istovremeno

smanjuje i njena �eksi�lnost. Potrebno je na¢i kompromis izme�u prethodna dva.

Kao ²to je pokazano u relevantnim radovima, iz arhitekture konvolutivne neuronske

mreºe mogu¢e je izbacivanje slojeva agregacije, pri £emu njihovu ulogu preuzimaju

slojevi konvolucije (sa odgovaraju¢om veli£inom koraka (eng. stride)) [36]. Ovo je

u novije vreme sve £e²¢a praksa.

Na izlaze poslednjeg od ovih slojeva obi£no se nadovezuje potpuno povezana

neuronska mreºa. Njena uloga jeste u£enje nad atributima koje su ekstrahovali

prethodni slojevi mreºe. Ove mreºe se mogu koristiti kako za regresiju, tako i

za klasi�kaciju. U slu£aju regresije, neuroni poslednjeg sloja ove mreºe ne koriste

aktivacionu funkciju, dok se u slu£aju klasi�kacije na linearne kombinacije ulaza

pretposlednjeg nivoa primenjuje takozvana funkcija mekog maksimuma (softmax )

[16]:

softmax(x) = ( ex1∑Ci=1 e

xi, ..., exC∑C

i=1 exi

)

koja vektor x preslikava u vektor iste dimenzije a koji se moºe tuma£iti kao predvi-

�anje verovatno¢a ciljanih klasa.

Na samom kraju ovog poglavlja valjalo bi ista¢i osnovne prednosti konvolutivnih

mreºa u odnosu na druge tipove modela ma²inskog u£enja. Na prvom mestu isti£e

se deljenje parametara koje se odnosi na to da svi neuroni jednog kanala dele para-

metre, £ime se umanjuje njihov ukupan broj, ²to opet vodi jednostavnijim modelima

koje je lak²e optimizovati. Svaki neuron povezan je sa malim brojem neurona pret-

hodnog sloja, otuda dolaze prore�ene interakcije kao vaºno svojstvo ovih modela.

Nadalje, konvolutivne mreºe ispoljavaju neosetljivost na translacije, ²to se isti£e kao

velika prednost u obradi slika. Dodatno posebnu paºnju treba obratiti na delimi£nu

interpretabilnost konvolutivnih mreºa, iako je ona daleko od pune interpretabilnosti

nekih drugih modela ma²inskog u£enja, koji su po pravilu jednostavniji.

Konvolutivne mreºa, iako predstavlja jako mo¢nu tehniku, ipak ima odre�ene

mane i nedostatke. Mreºa je jako osetljiva na odre�ene a�ne transformacije ravni

kao ²to su rotacija i homotetija [16]. Dodatno, kako konvolutivna mreºa na svom

kraju ima manju potpuno povezanu neuronsku mreºu, s obzirom da ta mreºa pri-

hvata �ksan broj ulaza, to ulazi u konvolutivnu mreºu tako�e moraju biti �ksnih

19

GLAVA 2. OSNOVNI POJMOVI MA�INSKOG U�ENJA

dimenzija. U novije vreme postoje tehnike koje ovo prevazilaze. Naravno, nedostaci

diskutovani za potpuno povezane neuronske mreºe prisutni su i ovde. Obu£ava-

nje konvolutivnih mreºa zahteva veliku koli£inu informacija. Pristutni su tako�e i

problemi optimizacije.

2.6 Strati�kacija i ponovno uzorkovanje

Prilikom podele podataka neophodno je voditi ra£una da podaci u svim podsku-

povima imaju pribliºno sli£nu raspodelu kao i polazni skup podataka, s obzirom da

se od pretreniranog modela ma²inskog u£enja ne moºe o£ekivati dobro pona²anje

na podacima koji ne dolaze iz (eventualno jako sli£ne) raspodele kao i skup poda-

taka na kojima je on treniran. U slu£aju velike koli£ine podataka slu£ajna podela

daje dobre rezultate. Kada skup podataka koji se deli nije tako veliki, o prethod-

nom je potrebno voditi ra£una. U tu svrhu koristi se tehnika strati�kacije (eng.

strati�cation).

Strati�kacija predstavlja vid preprocesiranja podataka kojim se prilikom podele

datog skupa podataka u dva ili vi²e podskupova obezbe�uje da svi podskupovi imaju

istu raspodelu atributa i ciljne promenljive kao i polazni skup podataka. U slu£aju

labelovanog skupa podataka, strati�kacija se naj£e²¢e sre¢e u pojednostavljenom

obliku koji se fokusira samo na raspodelu ciljnih promenljivih i ona se naziva stra-

ti�kacija po ciljnoj promenljivoj. Podela na M skupova strati�kovana u odnosu na

ciljnu promenljivu moºe se posti¢i sortiranjem polaznog skupa podataka D u od-

nosu na vrednosti ciljne promenljive, a nakon toga, i-ti skup sa£injavaju instance sa

indeksima (u sortiranom skupu) i+ j ∗M , i ∈ 1, ..,M , j ∈ |D|/M .

Ponovno uzorkovanje predstavlja jednostavnu tehniku evaluacije pri kojoj se iz

datog skupa podataka ve¢i broj puta nezavisno biraju uzorci odre�ene veli£ine (izbor

sa vra¢anjem). Cilj ponovnog uzorkovanja jeste smanjenje varijanse ocene gre²ke.

Kao i tehnika strati�kacije, do izraºaja dolazi u slu£aju skupova podataka relativno

male veli£ine.

20

Glava 3

Matemati£ke osnove

U ovom poglavlju bi¢e izloºena matemati£ka pozadina neophodna za razumeva-

nje u radu predloºenog metoda pobolj²anja. Pretpostavlja se da je £italac upoznat

sa osnovnim pojmovima teorije verovatno¢e kao ²to su pojmovi slu£ajne veli£ine,

gustine raspodele, nezavisnosti doga�aja i sli£no.

3.1 Bernulijeva raspodela

Bernulijeva raspodela predstavlja jednu od fundamentalnih raspodela teorije ve-

rovatno¢e. Sa izrazito intuitivnom motivacijom i prili£no op²tom postavkom, nalazi

svoju primenu u mnogim problemima. �esto je upravo ona prvi izbor prilikom mo-

delovanja procesa sa binarnim ishodima kao ²to su bacanje nov£i¢a (postoje dva

mogu¢a ishoda, pala je glava ili je palo pismo), broj kandidata koji su poloºili test

(mogu¢i ishod za svakog od kandidata je da je pao ili poloºio test) ili broj pacijenata

koji imaju odre�enu bolest (mogu¢i ishod za svakog pacijenta jeste da ima ili nema

bolest).

Za diskretnu slu£ajnu veli£inu X kaºemo da ima Binomnu raspodelu [2] ako je

njen zakon raspodele verovatno¢a dat sa:

fX(x) =

(nx

)px(1− p)n−x, x = 0, 1, 2, ..., n

0, ina£e

gde je n ≥ 1 prirodan broj, 0 ≤ p ≤ 1 parametar binomne raspodele.

U prethodnoj formuli x predstavlja broj uspe²nih a n− x broj neuspe²nih reali-

zacija doga�aja u n poku²aja. Broj(nx

)= n!

x!(n−x)!naziva se binomni koe�cijent. Ako

slu£ajna promenljiva X ima binomnu raspodelu sa parametrima n i p to zapisujemo

21

GLAVA 3. MATEMATI�KE OSNOVE

kao X : B(n, p). Matemati£ko o£ekivanje i varijansa ovakve slu£ajne veli£ine dati su

formulama: EX = np, DX = np(1− p). Do prethodnih formula dolazi se relativno

jednostavno, recimo u slu£aju matemati£kog o£ekivanja:

EX =n∑j=0

j

(n

j

)pj(1− p)n−j

=n∑j=1

n

(n− 1

j − 1

)pj(1− p)n−j

= nn∑j=1

(n− 1

j − 1

)pj(1− p)n−j

= np

n−1∑i=0

(n− 1

i

)pi(1− p)n−i−1

= np[p+ (1− p)]n−1

= np

(3.1)

3.2 Beta funkcija i beta raspodela

Bernuli i Goldbah jo² u osamnaestom veku bave¢i se interpolacijom redova su-

sreli su se sa problemom odre�ivanja faktorijela velikih pozitivnih realnih brojeva.

Obratili su se Ojleru za pomo¢. Ojler pristupa re²avanju problema, i u toku 1729.

godine dolazi do ne£ega ²to danas nosi naziv gama funkcija. Ne²to kasnije biva

de�nisana i beta funkcija.

Funkciju Γ : R+ → R+ de�nisanu sa:

Γ(x) =

∫ +∞

0

tx−1e−tdt

nazivamo gama funkcijom [27]. Nju smo de�nisali samo za pozitivne realne bro-

jeve, s obzirom da samo tada prethodni de�nicioni integral konvergira. Dodatno,

prethodna de�nicija moºe se pro²iriti, a gama funkcija de�nisati za sve kompleksne

brojeve kojima je realni deo pozitivan.

Jednostavnim ra£unom moºe se do¢i do rezultata Γ(1) = 1. �tavi²e, koriste¢i se

osnovnim tehnikama matemati£ke analize moºe se skicirati gra�k prethodno uvedene

gama funkcije. Isti je dat na slici 3.1.

Koriste¢i se tehnikom parcijalne integracije kao i Lopitalovim pravilima, dola-

zimo do rezultata da za sve pozitivne realne brojeve x vaºi: Γ(x+1) = xΓ(x). Dalje,

22

GLAVA 3. MATEMATI�KE OSNOVE

Slika 3.1: Gama funkcija, osnovna varijanta

na osnovu toga dobijamo da, za sve prirodne brojeve n vaºi: Γ(n) = n!. Koriste¢i

prethodne formule, moºemo pro²iriti domen gama funkcije i na negativne prirodne

odnosno realne brojeve [14]. Gra�k pro²irene gama funkcije dat je na slici 3.2.

Slika 3.2: Gama funkcija, pro²irena de�nicija

Beta funkciju de�ni²emo koriste¢i prethodno uvedenu gama funkciju. Funkciju

B : R+ ×R+ → R+ de�nisanu sa:

B(x, y) =Γ(x)Γ(y)

Γ(x+ y)

nazivamo beta funkcijom. Mogu¢e je dokazati da se i beta funkcija moºe predstaviti

u obliku jednostrukog integrala. Naime, vaºi da je funkcija uvedena prethodnom

de�nicijom jednaka:

23

GLAVA 3. MATEMATI�KE OSNOVE

B(x, y) =

∫ 1

0

tx−1(1− t)y−1dt

Beta funkcija ima odre�ena jako povoljna svojstva kao ²to su svojstvo simetri£nosti

B(x, y) = B(y, x) i odre�ene vrste aditivnosti po prvom argumentu B(x + 1, y) =xx+y

B(x, y). Predstavlja jako bitnu funkciju matemati£ke analize, koja ima mnogo-

brojne primene.

Jedna od vaºnijih primena svakako jeste i primena u de�nisanju beta raspodele.

U teoriji verovatno¢e odnosno statistici beta raspodela predstavlja familiju ne-

prekidnih raspodela de�nisanih na segmentu [0, 1]. Raspodela je parametrizovana

sa dva pozitivna parametra α i β. Ovi parametri se nazivaju parametrima oblika, s

obzirom da kontroli²u oblik same raspodele. Beta raspodela jeste specijalni slu£aj

op²tije, vi²edimenzione Dirihleove raspodele o kojoj na ovom mestu ne¢e biti re£i.

Beta raspodela jeste raspodela de�nisana gustinom:

fB(x;α, β) =xα−1(1− x)β−1∫ 1

0tα−1(1− t)β−1dt

=xα−1(1− x)β−1

B(α, β)

(3.2)

gde za argument x vaºi 0 ≤ x ≤ 1, a za parametre oblika α ≥ 0, β ≥ 0. Recipro£na

vrednost beta funkcije jasno predstavlja normalizuju¢u konstantu koja sluºi tome

da funkcija gustine bude normirana u smislu integrala.

U zavisnosti od vrednosti parametara α i β postoji vi²e karakteristi£nih slu£ajeva

koji su ilustrovani na slici 3.3.

Ako je barem jedan od parametara manji od 1, odgovaraju¢i gra�k ima vertikalne

asimptote.

U slu£aju α = β funkcija gustine je simetri£na funkcija kojoj se maksimum menja

zavisno od veli£ine koe�cijenata. Ovo je ilustrovano na slici 3.4.

24

GLAVA 3. MATEMATI�KE OSNOVE

Slika 3.3: Karakteristi£ni izgled funkcije gustine zavisno od vrednosti parametaraoblika

Slika 3.4: Karakteristi£ni izgled funkcije gustine zavisno od vrednosti parametaraoblika; slu£aj jednakih vrednosti parametara

25

GLAVA 3. MATEMATI�KE OSNOVE

Promena izgleda funkcije gustine prilikom promene jednog od parametra data je

na slici 3.5.

Slika 3.5: Promena gustine prilikom menjanja jednog od parametara

Na osnovu prethodno uvedene gustine, funkcija raspodele data je sa:

F (x) = Bx(α,β)B(α,β)

= Ix(α, β)

gde su Bx(α, β) i Ix(α, β) nepotpune beta funkcije su de�nisane sa:

Bx(α, β) =

∫ x

0

tα−1(1− t)β−1dt

Ix(α, β) =Bx(α, β)

B(α, β)

Matemati£ko o£ekivanje µ slu£ajne veli£ine X koja ima beta raspodelu sa para-

metrima α i β moºe se predstaviti bilo kao funkcija tih parametara, bilo kao funkcija

njihovog koli£nika [2]:

µ = E[X] =

∫ 1

0

xf(x;α, β)dx

=

∫ 1

0

xxα−1(1− x)β−1

B(α, β)dx

α + β

=1

1 + βα

(3.3)

26

GLAVA 3. MATEMATI�KE OSNOVE

Ako su vrednosti parametara jednake, tada vaºi µ = 12i funkcija gustine predsta-

vljena je simetri£nom funkcijom, £emu svedo£i i slika 3.4.

Na osnovu prethodnih izraza, dolazimo do pona²anja matemati£kog o£ekivanja

u grani£nim slu£ajevima [12]:

limβα→0µ = 1

limβα→∞

µ = 0

Dakle, ukoliko βα→ ∞ ili α

β→ 0 matemati£ko o£ekivanje ovakve slu£ajne veli£ine

se degeneri²e, i predstavljeno je Dirakovom delta funkcijom koja je koncentrisana

na desnom kraju segmenta [0, 1], odnosno koja ta£ki x = 1 daje verovatno¢u 1, dok

ostale ta£ke segmenta imaju verovatno¢u 0.

Analogno, ukoliko βα→ 0 ili α

β→ ∞ matemati£ko o£ekivanje ovakve slu£ajne

veli£ine se degeneri²e, i predstavljeno je Dirakovom delta funkcijom koja je koncen-

trisana na levom kraju segmenta [0, 1], odnosno koja ta£ki x = 0 daje verovatno¢u

1, dok ostale ta£ke segmenta imaju verovatno¢u 0.

Varijansa slu£ajne veli£ine X koja ima beta raspodelu sa parametrima α i β

predstavlja funkciju tih parametara [2]:

var(X) = E[(X − µ)2] = αβ(α+β)2(α+β+1)

Ukoliko su vrednosti parametara α i β jednake, prethodna jednakost postaje:

var(X) = 14(2β+1)

odakle se jasno zaklju£uje da varijansa monotono opada kako vrednosti parametara

α = β rastu. U grani£nom slu£aju, kada vaºi α = β = 0, vaºi var(X) = 14. Dodatno,

pona²anje varijanse u grani£nim slu£ajevima dato je sa:

limβ→0

var(X) = limα→0

var(X) = limβ→∞

var(X) = limα→∞

var(X) = 0

Neka od svojstava beta raspodele, koja se isti£u kao posebno zanimljiva data su

sa [12]:

• Beta raspodela sa parametrima α = β = 1 predstavlja uniformnu raspodelu

na segmentu [0, 1], odnosno B(1, 1) = U([0, 1])

• Beta raspodela sa parametrima α = β = 2 predstavlja paraboli£ku raspodelu

27

GLAVA 3. MATEMATI�KE OSNOVE

• Parametri oblika α i β mogu biti izraºeni u terminima matemati£kog o£e-

kivanja µ i standardne devijacije, za koju na ovom mestu uvodimo oznaku

σ =√var(X):

α = (1−µσ2 − 1

µ)µ2

β = α( 1µ− 1)

• Beta raspodela kao takva, nailazi na primene u Bajesovskoj statistici, meteo-

rologiji, hidrologiji, komunikacijama i sl [12].

Beta raspodelu mogu¢e je de�nisati i kao funkciju vi²e od dva parametra o £emu

ne¢e biti diskutovano na ovom mestu, £italac za vi²e informacija moºe pogledati

odgovaraju¢u literaturu [12].

3.3 Bajesovska statistika, konjugovane raspodele,

apriorne i aposteriorne verovatno¢e

Bajesovska statistika (eng. Bayesian statistic) predstavlja jedan vid tuma£enja

pojma verovatno¢e, razli£it od klasi£nog, frekventisti£kog pristupa verovatno¢i. U

klasi£nom pristupu koncept verovatno¢e uklju¢uje niz ponavljanja iste situacije pri

kojem se verovatno¢a tuma£i kao frekvencija doga�aja. Bajesovski pristup verovat-

no¢u tuma£i kao stepen uverenja u odre�ene doga�aje.

Bajesova formula:

P (A|B) = P (B|A)P (A)P (B)

predstavlja jednu od najvaºnijih formula klasi£ne teorije verovatno¢e. Ona pred-

stavlja fundamentalnu teoremu i u okviru bajesovskog pristupa. Koristi se u svrhu

aºuriranja ocene verovatno¢e koja pak predstavlja stepen verovanja u konkretne

ishode odre�enog doga�aja.

Bajesovska statistika ovu teoremu interpetira na intuitivan na£in. A obi£no

predstavlja hipotezu o familiji raspodela kojoj pripada slu£ajna promenljiva koja

se razmatra. Raspodela ove familije naziva se apriornom raspodelom, dok se ve-

rovatno¢a P (A) naziva apriornom verovatno¢om hipoteze A. Ova raspodela uklju-

£uje prethodna znanja o fenomenu koji se razmatra. P (A|B) predstavlja verovat-

no¢u hipoteze A nakon ²to se u obzir uzmu rezultati eksperimenata ozna£eni sa

28

GLAVA 3. MATEMATI�KE OSNOVE

B. Tako aºurirana ocena verovatno¢e naziva se aposteriornom verovatno¢om hipo-

teze A. Aposteriornu verovatno¢u dobijamo kombinuju¢i ve¢ diskutovanu apriornu

verovatno¢u sa P (B|A) i P (B). P (B|A) predstavlja verovatno¢u podataka B pri

hipotezi A. P (B) predstavlja zbirnu verovatno¢u podataka B dobijenu teºinskim

sumiranjem (ili integracijom) po svim hipotezama A u skladu sa njihovim apriornim

verovatno¢ama.

Ako apriornu raspodelu predstavimo kao raspodelu slu£ajne promenljive θ, njenu

funkciju gustine obeleºavamo sa f(θ). Naravno, pri tome parametar θ moºe biti bilo

vektor bilo skalar. Funkciju gustine aposteriorne raspodele ozna£avamo sa f(θ|D),

gde su D dati podaci.

U teoriji Bajesovske statistike za dve raspodele kaºemo da su konjugovane ukoliko

aposteriorna raspodela pripada istoj faimiliji raspodela kao i apriorna raspodela,

nakon ²to se novi podaci uzmu u obzir.

3.4 Konjugovanost binomne i beta raspodele

Posmatrajmo eksperiment sa dva mogu¢a ishoda (ozna£ena sa 0 i 1) u kome vaºi

da je verovatno¢a jednog θ a drugog 1− θ. Ovakav eksperiment se o£igledno moºe

modelovati Bernulijevom raspodelom. �injenicu da je P (1) = θ i P (0) = 1 − θ,

pri £emu nam nije poznata ta£na vrednost parametra θ zapisujemo kao P (k|θ) =

θk(1− θ)1−k, gde k ∈ {0, 1}, θ ∈ [0, 1].

Ukoliko imamo situaciju izvr²avanja N nezavisnih eksperimenata koji imaju istu,

Bernulijevu raspodelu, verovatno¢a z uspeha data je sa: P (z|θ) = θz(1− θ)N−z.Aposteriorna ocenu parametra θ dobija se na osnovu apriorne ocene ovog para-

metra, kori²¢enjem Bajesove formule:

P (θ|z) =P (z|θ)P (θ)

P (z)=

P (z; θ)∫ 1

0

P (z; θ)dθ

gde je sa P (z; θ) ozna£ena zajedni£ka raspodela.

Koriste¢i se formulama:

P (z|θ) =

(N

z

)θz(1− θ)N−z

PB(θ|α, β) =Γ(α + β)

Γ(α)Γ(β)θα−1(1− θ)β−1

i £injenicom da je:

29

GLAVA 3. MATEMATI�KE OSNOVE(Nz

)= N !

(N−z)!z! = Γ(N+1)Γ(N−z+1)Γ(z+1)

jer je Γ(n+ 1) = n!, dolazimo do niza jednakosti:

P (z; θ) = P (z|θ)P (θ)

=Γ(α + β)Γ(N + 1)

Γ(α)Γ(β)Γ(N − z + 1)Γ(z + 1)θz+α−1(1− θ)N−z+β−1

= γθz+α−1(1− θ)N−z+β−1

=Γ(α + β +N)

Γ(z + α)Γ(N + β − z)θz+α−1(1− θ)N+β−z−1γ

Γ(z + α)Γ(N + β − z)

Γ(α + β +N)

(3.4)

gde je sa γ ozna£en odgovaraju¢i koli£nik proizvoda gama funkcija.

Dalje imamo:

P (z) =

∫ 1

0

P (z; θ)dθ

=

∫ 1

0

Γ(α + β +N)

Γ(α + z)Γ(N + β − z)θz+α−1(1− θ)N+β−z−1γ

Γ(z + α)Γ(N + β − z)

Γ(α + β +N)dθ

= γΓ(z + α)Γ(N + β − z)

Γ(α + β +N)

(3.5)

s obzirom da je∫ 1

0

B(α + z,N + β − z)dθ = 1.

Odavde dobijamo da je aposteriorna ocena parametra θ tako�e pripada familiji

beta raspodela:

P (θ|z) =P (z; θ)

P (z)

=γθz+α−1(1− θ)N−z+β−1

γ Γ(α+β)Γ(N+β−z)Γ(α+β+N)

=Γ(α + β +N)

Γ(α + z)Γ(N + β − z)θz+α−1(1− θ)N−z+β−1

= B(α + z,N + β − z)

(3.6)

30

Glava 4

Metod prilago�avanja

Pionirski poku²aj automatskog prepoznavanja rukom pisanog teksta datira jo² iz

pedesetih godina pro²log veka [25]. Za to vreme, ono je predstavljalo jedan izuzetno

zahtevan zadatak. Nakon ovog po£etnog poku²aja, nekoliko istraºiva£a radilo je na

ovom problemu poku²av²i razli£ite pristupe. Tokom poslednje decenije istraºiva-

nje ovog problema doseºe svoj vrhunac, a ubedljivo najbolji rezultati postignuti su

kori²¢enjem neuronskih mreºa.

Neformalna de�nicija automatskog prepoznavanja rukom pisanog teksta mogla

bi se formulisati na slede¢i na£in: ono predstavlja sposobnost ra£unara da prepozna

i tuma£i rukom pisani tekst iz izvora kao ²to su papirni dokumenti, fotogra�je,

ekrani osetljivi na dodir i drugi. Pisani tekst ra£unaru moºe biti predstavljen na dva

na£ina. O�ajn pisani tekst podrazumeva da su ra£unaru na raspolaganju pikseli slike

dobijeni na neki na£in ekstrahovanjem iz prethodno pomenutih izvora. O�ajn pisani

tekst fokusiran je na stati£ki prikaz rukopisa. Onlajn pisani tekst, sa druge strane,

rukopis tuma£i kao dinami£ki objekat, nose¢i ve¢u koli£inu informacija. Pamti se,

i ra£unaru stavlja na raspolaganje kompletna informacija o kretanju ruke odnosno

olovke tokom pisanja dokumenta.

U ovom odeljku bi¢e opisan predloºeni model pobolj²anja neuralnog klasi�katora

o�ajn rukom pisanog teksta. Pobolj²anje se zasniva na ideji da se klasi�kator prila-

godi svakom pojedina£nom korisniku, odnosno njegovom na£inu pisanja pra¢enjem

gre²aka baznog klasi�katora. U te svrhe koriste se tehnike klasterovanja k-sredina

i metoda k najbliºih suseda. Vi²e detalja dato je u nastavku, u odgovaraju¢im

poglavljima.

31

GLAVA 4. METOD PRILAGOÐAVANJA

4.1 Pregled predloºenog metoda pove¢anja

preciznosti klasi�katora u£enjem speci�£nosti

pojedina£nih korisnika

Osnovna ideja jeste da se za svaki karakter izdvoje referentni na£ini njegovog

pisanja. Ovo je motivisano intuicijom da se svaki karakter moºe napisati na kona£no

mnogo zna£ajno razli£itih na£ina. Izdvajanje razli£itih stilova pisanja svakog od

karaktera postignuto je klasterovanjem. Time je, za svaki od karaktera, dobijeno po

nekoliko klastera koji predstavljaju agregirane razli£ite stilove pisanja tog karaktera.

Ovim se teºi ra²£lanjavanju razli£itih stilova pisanja svakog pojedina£nog karaktera.

Prilikom upotrebe, na skupu za primenu, za svakog korisnika skup karaktera £iji

je on autor strati�kovano se deli na dva skupa: skup za prilago�avanje i skup za

testiranje. Na skupu za prilago�avanje detektuje se korisnikov stil pisanja tako ²to

se zapamte njegovi na£ini pisanja pojedina£nih karaktera. Na skupu za testiranje

predloºeni metod daje predvi�anja uzimaju¢i u obzir poznavanje korisnikovog stila

pisanja.

Skica modela prilago�avanja, koji ¢e biti detaljnije obja²njen u naredim odelj-

cima, data je sa:

• Slike iz trening i validacionog skupa za bazni klasi�kator grupi²u se po labe-

lama (karakterima) i u okviru svake grupe vr²i se klasterovanje. Ti klasteri

predstavljaju glavne stilove pisanja za svaki od karaktera.

• Za svakog autora skupa za primenu:

� Skup njegovih slika strati�kovano se deli na skup za prilago�avanje i skup

za testiranje.

� Na skupu za prilago�avanje, za svaki karakter identi�kuju se najsli£niji

od ve¢ de�nisanih stilova pisanja, ²to £ini autorovu istoriju pisanja.

� Na skupu za prilago�avanje kreiraju se alternativni klasi�katori (k naj-

bliºih suseda) i vektori poverenja za sve klasi�katore.

� Prilikom upotrebe, za svaku sliku test skupa:

∗ Pored predvi�anja bazne mreºe izra£unavaju se i predvi�anja alter-

nativnih klasi�katora.

32

GLAVA 4. METOD PRILAGOÐAVANJA

∗ Na osnovu vektora poverenja svih klasi�katora, bira se predvi�anje

najpouzdanijeg od njih.

∗ Za svaki klasi�kator, kori²¢enjem ispravne i njegove predvi�ene la-

bele, aºurira se njegov vektor poverenja.

Detaljniji opis svakog od koraka, kao i obja²njenje pojmova kao ²to su istorija pisanja

i vektor poverenja klasi�katora detaljnije su dati u narednim poglavljima.

Klasterovanje stilova pisanja pojedina£nih karaktera

Prvi korak predloºenog metoda jeste klasterovanje slika u okviru skupova sa istim

labelama. Klasteruju se slike trening i validacionog skupa za bazni klasi�kator.

Osnovna ideja koja je motivisala ovaj korak metoda pobolj²anja jeste pretpo-

stavka da iako postoje varijacije u na£inima pisanja odre�enog karaktera od strane

pojedina£nih autora, ipak je taj skup varijacija kona£an. Iako je skup svih slika

rukom pisanih karaktera skup velike kardinalnosti, ipak, £ak i vizuelno, deluje da

moºemo identi�kovati manji broj varijacija rukopisa svakog pojedina£nog karaktera.

Jo² jedan motiv za kori²¢enje klasterovanja po instancama jeste £injenica da poje-

dina£ni autor, prilikom raznih pisanja odre�enog karaktera nikada ne¢e napisati dva

potpuno identi£na. Svaki autor ima svoj stil pisanja, me�utim svaki novonapisani

karakter bi¢e mala modi�kacija njegovog na£ina pisanja tog karaktera. Uprose£ava-

njem ovakvih karaktera o£ekujemo da se varijacije u pisanju poni²te, a to opet vodi

kristalisanju stila odnosno na£ina na koji autor pi²e taj karakter.

Dalje se postavlja pitanje dobre reprezentacije karaktera, koja ¢e u sebi nositi in-

formaciju o stilu njegovog pisanja, odnosno rukopisu autora. Naivni pristup bi sliku

posmatrao kao niz sirovih podataka odgovaraju¢ih dimenzija. Napredniji pristup kao

skup atributa kojima se karakteri²e slika rukom pisanog karaktera koristi pretposled-

nji sloj neuronske mreºe odnosno baznog klasi�katora [13]. Naime, pretposlednji sloj

neuronske mreºe daje reprezentacije ulaznih slika u nekom novom prostoru atributa

u kome o£ekujemo da su razli£iti karakteri dobro razdvojeni, dok poslednji sloj ne-

uronske mreºe ima ulogu labelovanja nad tim reprezentacijama. Stoga se poslednji

sloj mreºe odseca, i za skup atributa koji opisuju sliku sa ulaza uzimaju se vredno-

sti neurona pretposlednjeg sloja potpuno povezane neuronske mreºe. Reprezentacije

koje daje pretposlednji sloj mreºe ve¢ su kori²¢ene u literaturi [15][20].

Pomenuta ideja uprose£avanja, zajedno sa kompletnom postavkom problema

vodi jednostavnom izboru metode klasterovanja. Podaci se klasteruju metodom K

33

GLAVA 4. METOD PRILAGOÐAVANJA

sredina. Teºi²ta klastera predstavlja¢e stilove pisanja karaktera koji se klasteruju

na osnovu pretposlednjeg sloja bazne mreºe. Broj klastera za svaku labelu, dat je

formulom:

k = min(30, 1 + max(n/1000, 4)) (4.1)

gde n predstavlja broj slika koje se klasteruju odnosno odgovaraju konkretnoj la-

beli. Prethodna heuristika odre�ena je eksperimentalno, u odnosu na posmatrane

skupove podataka. Pri tome, prilikom evaluacije kvaliteta klasterovanja nisu ko-

ri²¢ene uobi£ajene tehnike procene kvaliteta klasterovanja. Kori²¢ena je metoda

najbliºih suseda koja je trenirana na dobijenim teºi²tima. I za klasterovanje kao i

za evaluaciju metodom najbliºih suseda kori²¢ena je euklidska metrika. Broj suseda

prilikom ove evaluacije pripadao je skupu {1, 2, 3, 4, 5, 7, 8, 9, 10, 15}. Kvalitet kla-

sterovanja ocenjivan je na osnovu najve¢e od preciznosti metode najbliºih suseda za

razne vrednosti k. Motivacija za ovakav pristup jeste £injenica da ¢e prezentovani

metod pobolj²anja, u nastavku koristiti metod najbliºih suseda sa ciljem pronalaska

karaktera najsli£nijeg teku¢em u okviru istorije pisanja.

Kreiranje istorije pisanja

Nakon klasterovanja, za svaki karakter izabran je odre�en broj njegovih karak-

teristi£nih stilova pisanja (teºi²ta klastera), koji su predstavljeni pomo¢u vektora

odgovaraju¢ih dimenzija (dimenzija vektora jednaka je broju neurona pretposled-

njeg sloja baznog neuronskog klasi�katora). Drugi deo metoda pobolj²anja odnosi

se na fazu upotrebe modela.

Slike rukom pisanih karaktera svakog pojedina£nog korisnika skupa za primenu

strati�kovano su podeljene na dva skupa: skup za prilago�avanje i test skup. Na

skupu za prilago�avanje metod pobolj²anja kreira istoriju pisanja svakog pojedina£-

nog korisnika. Na osnovu istorije pisanja ¢e se, u fazi upotrebe, vr²iti pobolj²anje

baznog klasi�katora. Na osnovu nje potrebno je zaklju£iti kada bazni klasi�kator za

trenutnog korisnika i njegov stil pisanja gre²i, i kako te gre²ke ispraviti.

Proces kreiranja istorije pisanja korisnika sastoji se od slede¢eg. Za ulaznu sliku

posmatramo ispravnu labelu kao i labelu koju predvi�a bazni klasi�kator. Na osnovu

izlaza neurona pretposlednjeg sloja baznog klasi�katora pronalazimo najbliºi klaster

me�u klasterima koji odgovaraju ispravnoj labeli, odnosno me�u raznim stilovima

pisanja karaktera koji se nalazi na ulaznoj slici. Pretraga se vr²i u odnosu na vred-

nost Euklidske norme. Ovom pretragom poku²ava se identi�kovanje stila pisanja

34

GLAVA 4. METOD PRILAGOÐAVANJA

konkretnog karaktera od strane konkretnog korisnika sa nekim od prede�nisanih

stilova dobijenih klasterovanjem.

Istorija pisanja za svaki ure�eni par (predvi�ena labela, ispravna labela) pamti

prosek teºi²ta klastera najbliºih vektoru izlaza pretposlednjeg sloja klasi�katora.

Interpretacija ovoga je slede¢a: kada bazni klasi�kator predvidi predvi�enu labelu

za sliku na kojoj je predstavljena ispravna labela, na osnovu pretposlednjeg sloja

bazne mreºe ovom ure�enom paru se dodeli odgovaraju¢i klaster odnosno na£in

pisanja ispravnog karaktera. Klasteri koji se dodeljuju za isti ure�eni par ne moraju

biti uvek identi£ni. Njihov prosek smatramo stilom pisanja konkretnog karaktera

konkretnog korisnika.

Upotreba istorije pisanja

Nakon kreiranja istorije pisanja potrebno je, na osnovu nje, donositi odluke u

kojim slu£ajevima verovati baznom klasi�katoru, a kada modi�kovati njegova pred-

vi�anja i preina£iti ih na osnovu metode k najbliºih suseda trenirane na pomenutoj

istoriji pisanja. Predstavljeni metod pobolj²anja, na istoriji pisanja ne kreira jedan

model najbliºih suseda za korekciju, ve¢ niz modela k najbliºih suseda, pri £emu k

uzima vrednosti 2, 4, 6, 8 i 10.

Na osnovu istorije pisanja korisnika, kreira se vektor poverenja baznog klasi�ka-

tora i vektor poverenja metode k najbliºih suseda, za svaku od prethodnih vrednosti

parametra k. Pod vektorom poverenja klasi�katora podrazumeva se niz o£ekivanja

beta raspodela, kojima se procenjuje pouzdanost klasi�katora prilikom predvi�anja

svake od labela. Za svaku labelu l kreira se po jedna beta raspodela. Stepen povere-

nja klasi�katora za labelu l predstavljen je matemati£kim o£ekivanjem kreirane beta

raspodele. Ovo o£ekivanje predstavlja funkciju parametara α i β. Za svaku sliku

skupa za prilago�avanje, za koju pomenuti klasi�kator predvidi labelu l, aºuriraju se

parametri α i β beta raspodele u zavisnosti od toga da li je predvi�anje ispravno ili

ne. Ispravna predvi�anja uve¢avaju vrednost parametra β (time pove¢avaju mate-

mati£ko o£ekivanje beta raspodele, odnosno stepen poverenja u klasi�kator kada on

predvi�a labelu l) dok negativna uve¢avaju vrednost parametra α (time smanjuju¢i

matemati£ko o£ekivanje beta raspodele). Uticaji parametara oblika beta raspodele

na vrednost njenog matemati£kog o£ekivanja obja²njeni su u glavi 3.2.

Vektor poverenja svakog od klasi�katora aºurira se na osnovu originalnih labela i

njegovih predvi�anja za slike istorije pisanja. Pri tome, skup za treniranje metoda k

najbliºih suseda predstavlja podskup korisnikove istorije pisanja, i £ine ga vektori i

35

GLAVA 4. METOD PRILAGOÐAVANJA

njihove originalne labele svih ure�enih parova istorije pisanja kod kojih je predvi�ena

labela jednaka trenutnom predvi�anju baznog klasi�katora.

Time smo na skupu za prilago�avanje kreirali odgovaraju¢e vektore poverenja

kojima ocenjujemo pouzdanost kako baznog klasi�katora tako i metoda k najbliºih

suseda, za razne vrednosti k. Na osnovu toga, odre�ujemo kome od njih da veru-

jemo tokom upotrebe (verujemo onom klasi�katoru koji za datu sliku ima najve¢u

pouzdanost na karakteru kog predvi�a).

Prilikom upotrebe, na skupu za testiranje umesto samo jednog predvi�anja koje

je u stanju da nam da bazni klasi�kator, simultano dobijamo vi²e njih. Za kon-

kretnu sliku, na osnovu predvi�anja baznog klasi�katora i autorove istorije pisanja,

dobijamo predvi�anja metoda najbliºih suseda za razne vrednosti k. Ako bazni kla-

si�kator predvi�a labelu l, u okviru istorije pisanja posmatramo vektore stila svih

ure�enih parova (predvi�ena labela, ispravna labela) kod kojih je predvi�ena labela

upravo l. Nad tim vektorima, za svako posebno k, vr²imo odlu£ivanje metodom k

najbliºih suseda u odnosu na ispravne labele. Dalje, na osnovu vektora poverenja

baznog klasi�katora koji se odnosi na predvi�enu labelu l, kao i na osnovu vek-

tora metoda k najbliºih suseda za razne vrednosti k, koji se pak odnose na njihove

predvi�ene labele, odlu£ujemo koji karakter predvi�amo.

Nakon evaluacije na pojedina£noj slici aºuriramo parametre odgovaraju¢ih sta-

tistika za svaki od klasi�katora. U zavisnosti od toga da li je klasi�kator predvideo

ispravnu labelu ili ne, aºuriramo parametre beta raspodele kojom se ocenjuje pou-

zdanost tog klasi�katora na predvi�enom karakteru. Ovo odgovara realnoj primeni,

u kojoj bi korisnik, u slu£aju da aplikacija za prepoznavanje rukopisa nije uspe²no

klasi�kovala njegov upravo napisani karakter isti ispravio, te bi aplikacija imala in-

formaciju o ispravnoj labeli. U slu£aju izostanka ispravke, model je siguran da je

uspe²no klasi�kovao upravo obra�eni karakter. Ovakvim na£inom izvr²avanja pre-

zentovani metod postiºe sve bolje rezultate kako se duºe izvr²ava, jer je stepen nje-

gove pouzdanosti direktno proporcionalan veli£ini istorije pisanja. Pomenuto tako�e

predstavlja veliku prednost prilikom upotrebe prezentovanog modela pobolj²anja u

praksi.

4.2 Tehni£ki detalji implementacije

Implementacija re²enja napisana je u programskom jeziku Python [34], verziji

3.7. U pomenutom jeziku, kori²¢ene su slede¢e biblioteke:

36

GLAVA 4. METOD PRILAGOÐAVANJA

• numpy [30] - za numeri£ka izra£unavanja i vektorsku aritmetiku

• scipy [21], skimage i cv2 [3] - za osnovne operacije nad slikama u fazi pripreme

skupa podataka

• matplotlib [18] - za iscrtavanje gra�ka

• keras [5] - za implementacije metoda i tehnika ma²inskog u£enja, konkretno

neuronskih mreºa

• sklearn [32] - za tehnike klasterovanja i algoritma najbliºih suseda

• scipy.beta i random - za generisanje statisti£kih modela

Kompletan izvorni kod projekta javno je dostupan1, i strukturiran je na slede¢i

na£in:

• Sveska NIST_Data_Util.ipynb sadrºi kod kojim se iz originalne NIST baze

podataka parsiraju potrebne informacije o slikama, njihovim autorima i labe-

lama.

• Sveska NIST_Data_Util_Advanced.ipynb sadrºi kod kojim se vr²i preproce-

siranje i kreiranje odgovaraju¢eg skupa podataka.

• Sveska NIST_Baseline_Training.ipynb sadrºi kod kojim se kreira bazna ar-

hitektura klasi�katora.

• Sveska NIST_Clustering_Knn_Evaluation.ipynb - sadrºi implementaciju po-

bolj²anja baznog klasi�katora i evaluaciju pobolj²anja.

U okviru sveske NIST_Data_Util_Advanced.ipynb nalaze se slede¢e funkcije:

• Funkcija add_gaussian_noise(img) na sliku prosle�enu joj kao argument

primenjuje Gausov �lter kod koga je standardna devijacija Gausovog kernela

postavljena na 1

• Funkcija crop_image(path_to_image, pad=1) kao prvi argument dobija pu-

tanju do slike na disku, a kao rezultat vra¢a ise£en karakter sa debljinom

okvira od pad piksela1Na adresi github.com/MilanCugur/NNClassi�erImprove

37

GLAVA 4. METOD PRILAGOÐAVANJA

• Funkcija square_image(img, pad=2) vr²i centriranje prosle�enog karaktera

img u kvadratnu sliku

• Funkcija resize_image(img, box_size) vr²i skaliranje date kvadratne slike

u dimenzije box_size × box_size kori²¢enjem bikubne interpolacije

• U okviru pasusa Create Folder ImgDiscAdvanced kreira se skup podataka

koji ¢e biti kori²¢en u okviru ovog projekta.

U okviiru sveske NIST_Baseline_Training.ipynb:

• U okviru pasusa Set up ImageDisk and Info Disk izvr²ena su u£itavanja

slika i prate¢ih informacija (autor, labela) u odgovaraju¢e strukture

• De�nisana je klasa OneHot koja implementira binarno kodiranje (end. dummy

coding). Interfejs klase predstavljaju funkcije za enkodiranje i dekodiranje

• U okviru pasusa Model kreiran je i natreniran bazni klasi�kator predstavljen

konvolutivnom neuronskom mreºom.

• U okviru pasusa Data izvr²ena je podela podataka na skupove za trening,

validaciju i test. Pri tome, podela je vr²ena tako da se autori sa najvi²e

napisanih karaktera nalaze u skupu za testiranje, s obzirom da metod preferira

²to ve¢i broj karaktera pojedina£nog korisnika.

• U okviru pasusa Training izvr²eno je obu£avanje mreºe.

U okviru sveske NIST_Data_Util_Advanced.ipynb:

• Pasusi Set up ImageDisk and Info Disk, OneHot i Data vr²e funkciju kao

i u prethodnoj svesci

• U okviru pasusa Clustering by instances implementirano je klasterovanje

dimenzionih vektora koji predstavljaju izlaze pretposlednjeg sloja bazne ne-

uronske mreºe slika trening i validacionog skupa. Kori²¢en je algoritam K

sredina, sa 10 po£etnih inicijalizacija, maksimalnim brojem iteracija 300, i

vrednosti parametra tolerancije od 1e−4.

• U okviru pasusa Density class implementirana je klasa DensityClass. De-

taljniji opis klase dat je narednim poglavljem.

38

GLAVA 4. METOD PRILAGOÐAVANJA

• U okviru pasusa With Stratify, multiple k idea izvr²ena je evaluacija

modela pobolj²anja bez ponovnog uzorkovanja.

� Funkcija find_minimal(i, vector) kao argumente prima odgovaraju¢u

labelu i i vektor, i kao svoj rezultat vra¢a klaster na najmanjem rasto-

janju u odnosu na euklidsku metriku od prosle�enog vektora vector od

svih klastera (stilova pisanja) koji odgovaraju labeli i.

� Funkcija get_min_label(history, predicted_vector) kao argumente

prima istoriju pisanja korisnika i izlaz pretposlednjeg sloja baznog klasi-

�katora kada se na ulazu na�e trenutna slika, i vra¢a predvi�anja algori-

tama k najbliºih suseda za svako k od 2, 4, 6, 8, 10

� Funkcija who_to_believe(predicted_label, writer_network_spectar,

min_labels, writer_knn_spectars) kao argumente prima: labelu koju

predvi�a bazni klasi�kator predicted_label, vektor poverenja baznog kla-

si�katora writer_network_spectar, niz labela koje predvi�aju algoritmi

najbliºih suseda za razne vrednosti k min_labels, kao i niz vektora po-

verenja klasi�katora metodom k najbliºih suseda za razne vrednosti k

writer_knn_spectars. Kao rezultat, funkcija vra¢a optimalno k ili None

²to po konvencji predstavlja indikator verovanja baznom klasi�katoru

� Funkcija flip_an_unfair_coin(p) kao argument dobija verovatno¢u p i

vra¢a ishod bacanja pristrasnog nov£i¢a koji daje glavu sa verovatno¢om

p, a pismo sa verovano¢om 1− p, p ∈ [0, 1]

� Funcija stratify_me(images, labels) vr²i podelu datog labelovanog

skupa slika strati�kovanu u odnosu na prosle�ene labele

• U okviru pasusa With Stratify, multiple k idea, RESAMPLE izvr²ena je

evaluacija modela pobolj²anja kori²¢enjem ponovnog uzorkovanja.

Direktorijum NIST_weights sadrºi odgovaraju¢e koe�cijente pretreniranog ba-

znog klasi�katora.

Opis implementacije klase CharStatistic

U ovom delu bi¢e opisana implementacija osnovne klase koja se koristi za aprok-

simaciju gustine raspodele slu£ajne veli£ine koja predvi�a stepen poverenja jednom

od dva klasi�katora, na svakom pojedina£nom karakteru. Drugim re£ima za svakog

39

GLAVA 4. METOD PRILAGOÐAVANJA

pojedina£nog korisnika i za svaki pojedina£ni karakter nezavisno se posmatra preci-

znost osnovnog klasi�katora u odnosu na novi, u radu prezentovan klasi�kator, koji

se zasniva na korisnikovoj istoriji pisanja.

Klasa CharStatistic implementirana je kao klasa u programskom jeziku Python.

Zasnovana je na slede¢im paketima pomenutog jezika:

• Modul numpy [30] koristi se za vektorska numeri£ka izra£unavanja

• Paket stats modula scipy [21] koristi se za simulaciju beta raspodele

• Paket pyplot modulamatplotlib [18] koristi se za vizuelizaciju gustine raspodele

koja se aproksimira

Klasa od atributa sadrºi polja label koje predstavlja labelu odnosno identi�kaciju

karaktera za koji se ocenjuje funkcija raspodele. Polja α i β predstavljaju parametre

oblika beta raspodele koja se ocenjuje.

Pored odgovaraj¢ih funkcija kojima se mogu postaviti i pro£itati trenutne vred-

nosti ovih parametara, klasa implementira i funkcije koje, u zavisnosti od trenutne

vrednosti parametara oblika, vra¢aju o£ekivanje i standardnu devijaciju funkcije

raspodele (prema formulama de�nisanim u prethodnom poglavlju). Za svakog po-

jedina£nog korisnika, na svakom pojedina£nom karakteru instancira se po jedna

instanca ove klase za osnovni klasi�kator i za novi pristup. Kako pristuºu novi

karakteri, u zavinosti da li je klasi�kator koji se ocenjuje (osnovna mreºa ili novi

pristup) bio u pravu ili ne, aºuriraju se vrednosti parametara oblika. Ovo se postiºe

putem interfejsa kog implementiraju funkcije update_one i update_all. U slu£aju

ispravnog predvi�anja parametar α se uve¢ava, ina£e uve¢avanje se odnosi na para-

metar β. Promenom ovih parametara, menja se i o£ekivanje same beta raspodele,

koje predstavlja aproksimaciju poverenja klasi�katoru [1].

Funkcija print_current_density_function ilustruje trenutnu gustinu procenju-

ju¢e raspodele. Instanca se podrazumevano kreira sa parametrima α = β = 1,

odnosno na po£etku se za apriornu raspodelu podrazumeva uniformna raspodela na

segmentu [0, 1]. Klasa dodatno prede�ni²e pona²anje operatora >.

U okviru Jupyter sveske NIST_Clustering_Knn_Evaluation.ipynb u odeljku

DensityClass implementirana je pomenuta klasa.

40

Glava 5

Evaluacija re²enja

Na ovom mestu bi¢e diskutovani rezultati predloºenog metoda. U radu je kori-

²¢en skup podataka NIST Special Database 19 Ameri£kog nacionalnog instituta za

standarde i tehnologiju kao i skup rukom pisanih kraktera kreiran od strane istraºi-

va£a ETH Univerziteta u Cirihu. Na prvom od njih u ovom radu predloºeni metod

pobolj²anja pove¢ava preciznost baznog klasi�katora za oko 2.3 − 2.5%, dok je na

drugom pove¢anje preciznosti baznog klasi�katora ve¢e od 2.7%. Ovo predstavlja

zna£ajno pobolj²anje. Pored pove¢anja preciznosti predvi�anja u obzir treba uzeti i

druge kvalitete predloºenog metoda. Metod umesto jednog klasi�katora simultano

koristi predvi�anja niza metoda k najbliºih suseda, za razne vrednosti k. Ovi me-

todi izvr²avaju se u vreme predvi�anja baznog klasi�katora koriste¢i izuzetno male

resurse. Metod ne zahteva dodatno treniranje neuronske mreºe, ²to ga kvali�kuje

kao pogodnog za izvr²avanje na manjim ure�ajima, bez gra�£kih karti. Ovo predsta-

vlja izuzetno vaºnu prednost prezentovanog modela, koja do izraºaja dolazi prilikom

prakti£ne primene. Dodatno, metod ne samo da ispoljava svojstvo skalabilnosti, ve¢

sa pove¢anjem koli£ine napisanih karaktera korisnika pove¢ava svoju preciznost, s

obzirom da ocena parametara odgovaraju¢e beta raspodele postaje sve pouzdanija

sa pove¢anjem koli£ine podataka.

Hardverska arhitektura na kojoj su vr²ena izra£unavanja jeste javno dostupna

aplikacija kompanije Google pod nazivom Google Colaboratory koja predstavlja

platformu dostupnu svim istraºiva£ima i entuzijastima. Resursi na kojima je model

treniran su dvojezgarni procesor Intel(R) Xeon(R) CPU @ 2.30GHz sa 13GB radne

memorije i gra�£ka karta sa 11GB memorije.

41

GLAVA 5. EVALUACIJA RE�ENJA

5.1 Skupovi o�ajn rukom pisanih karaktera

Postoji ve¢i broj skupova podataka ove oblasti. Izdvoji¢emo najpopularnije od

njih:

• MNIST dataset [24]

• NIST dataset [17]

• IAM Handwritting Database [26]

• CVL Database, TU Wien [23]

• Bangala Hadwritten Characters [11]

Trenutno je aktuelno i nekoliko takmi£enja sa istom tematikom.

Kao ²to je konstatovano u uvodnim poglavljima, tema ovog rada je pobolj²anje

klasi�katora o�ajn rukom pisanog teksta, na nivou pojedina£nih karaktera. Dosa-

da²nji rezultati ove oblasti izrazito variraju od problema do problema, i zavise od

raznih faktora. Broj karaktera, kvalitet i rezolucija slika, debljina i o²trina traga

olovke i sli£no. Klasi�katori na pojedinim skupovima podataka dostigli su visoku

preciznost, dok na drugima i dalje ne postoji re²enje zadovoljavaju¢e preciznosti.

5.2 Kori²¢eni skupovi o�ajn rukom pisanih

karaktera

Prilikom re²avanja problema ma²inskog u£enja u kojima se koriste zahtevne ar-

hitekture (kojima su stoga potrebne velike koli£ine podataka) jako je vaºno imati

na raspolaganju skupove podataka odgovaraju¢ih osobina i obima. U njihovom ne-

dostatku prosto nije mogu¢e izvr²iti optimizaciju na pravi na£in. Prethodno pred-

stavlja ogromnu barijeru.

Ideja ovog rada zasniva se na prilago�avanju baznog klasi�katora pojedina£nom

korisniku, te je stoga potreban skup podataka sa velikom koli£inom podataka o

pojedina£nom korisniku, da bi model na tim podacima nau£io speci�£nosti koje

karakteri²u svakog od njih.

Kao ²to je re£eno u prethodnom odeljku, u radu su kori²¢eni skup podataka

NIST Special Database 19 Ameri£kog nacionalnog instituta za standarde i tehnolo-

42

GLAVA 5. EVALUACIJA RE�ENJA

giju i skup rukom pisanih karaktera grupe istraºiva£a ETH Univerziteta u Cirihu.

Detaljniji prikazi ovih skupova podataka dati su u nastavku.

MNIST

Skup podataka MNIST predstavlja zasigurno najpopularniji skup podataka koji

se koristi u oblasti ma²inskog u£enja. Isti je objavljen 1998. godine. Njegovi autori

su Yann LeCun, Corinna Cortes i Christopher J.C. Burges.

Trening skup se sastoji od 60000 slika, dok je broj slika u test skupu 10000, nasta-

lih iz baze NIST Special Database 19 Ameri£kog nacionalnog instituta za standarde.

Slike su normalizovane, monohromatske, rezolucije 28× 28 piksela.

Javno objavljeni rezultati pojedinih klasi�katora na ovom skupu podataka do-

stiºu skoro stoprocentnu preciznost.

Preprocesiranja u ovom radu motivisana su MNIST skupom podataka (kao i

odgovaraju£im pro²irenjem, EMNIST-om[9]).

NIST Special Database 19

Kompletan korpus za trening i prepoznavanje rukopisa Ameri£kog nacionalnog

instituta za standarde i tehnologiju nalazi se u bazi NIST Special Database 19. Ovaj

skup podataka sadrºi pribliºno rukopise 3600 autora u vidu pribliºno 810000 slika

proparsiranih iz odgovaraju¢ih formi, zajedno sa odgovaraju¢im labelama. Dodatno,

baza sadrºi referentne obrasce za eventualno dalje prikupljanje podatka i softverske

alate za rad sa istim.

Prva verzija ove baza podataka objavljena je (kao CD-ROM) jo² 1995. godine.

U radu je kori²¢ena verzija dva ove baze, objavljena u avgustu 2016. godine. Ori-

ginalni CD sadrºi binarizovane slike nastale na osnovu 3669 formi i sadrºi 814255

segmentiranih, ru£no klasi�kovanih, rukom pisanih slova i brojeva. Ovi karakteri

predstavljeni su monohromatski u rezoluciji 128 × 128 dok su labelovani jednom

od 62 ASCII klase koje odgovaraju karakterima engleskog alfabeta �A�-�Z�, �a�-�z�

i ciframa od �0� do �9�. Baza podataka strukturirana je na pet razli£itih na£ina,

hijerarhijski organizovanim po raznim kriterijumima. U ovom radu, kori²¢eni su

podaci strukturirani po odgovaraju¢im autorima odnosno klasama.

Primer jedne od formi na osnovu kojih su prikupljani karakteri dat je na slici

5.1.

43

GLAVA 5. EVALUACIJA RE�ENJA

Slika 5.1: Forma za prikupljanje podataka, baza NIST

Odgovaraju¢e hijerarhije koje odgovaraju strukturiranju na osnovu labela i au-

tora date su na slikama 5.2 i 5.3. Na osnovu njih bilo je mogu¢e proparsirati sve

potrebne informacije o slikama.

Broj slika svake od klasa, za pomenute dve hijerarhije dat je na slici 5.4

Skup Deepwriting rukom pisanih karaktera ETH

Univerziteta u Cirihu

Ovaj skup podataka u sebi sadrºi rukom pisani tekst anotiran na nivou re£e-

nice, re£i i pojedina£nih karaktera. Nastao je kao nadogradnja postoje¢e baze IAM

Handwritting Database[26] koja je na ovom mestu labelovana na nivou pojedina£-

44

GLAVA 5. EVALUACIJA RE�ENJA

Slika 5.2: Hijerarhija baze organizovana u odnosu na labele

Slika 5.3: Hijerarhija baze organizovana u odnosu na autore

Slika 5.4: Hijerarhije u brojkama [17]

nih karaktera. Pored podataka ove baze, novi podaci prikupljeni su uz pomo¢ veb

alata kori²¢enjem ure�aja iPod Pro. Ilustracija procesa prikupljanja novih poda-

taka putem veb interfejsa data je na slici 5.5. Novi autori, njih 94, pisali su tekst

Lancaster-Oslo-Bergen (LOB)[37] s obzirom da su taj tekst pisali i autori u IAM

bazi podataka.

45

GLAVA 5. EVALUACIJA RE�ENJA

Slika 5.5: Veb interfejs za prikupljanje novih podataka baze Deepwriting. Korisnikuje prezentovan tekst koji je potrebno da napi²e (A), deo za unos teksta ozna£enje sa (B), duºina teksta koji se unosi ozna£ena je sa (C) dok su mogu¢e komandeozna£ene sa (D)

Ovaj skup podataka objavljen je aprilu 2018. godine i sadrºi rukopise 294 au-

tora, koji su ukupno napisali 85181 re£ odnosno 406956 karaktera. Prose£an broj

napisanih re£i po korisniku iznosi 292, dok je prose£an broj karaktera po korisniku

1349. Detaljnije informacije o podacima date su na slici 5.6.

Slika 5.6: Skup rukom pisanih karaktera Deepwriting skupa podataka

Karakteri u bazi inicijalno su dati kao onlajn rukom pisani karakteri. Uz podatke,

autori su obezbedili softver kojim je mogu¢e dobiti bazu u o�ajn obliku. Na osnovu

obezbe�enog softvera, kreirane su o�ajn slike karaktera. One su u okviru ovog rada

transformisane u monohromatske karaktere rezolucije 28× 28. Broj labela u bazi je

70, i to su mala i velika slova engleskog alfabta, arapski brojevi, i dodatno karakteri:

' . , - ( ) / i razmak.

46

GLAVA 5. EVALUACIJA RE�ENJA

5.3 Preprocesiranje podataka

U ovom odeljku bi¢e diskutovano preprocesiranje podataka kori²¢eno u radu. Na

oba skupa podataka, Nist Special Database 19 i Deepwriting bazi podataka rukom

pisanih karaktera, preprocesiranje je ra�eno na isti na£in a po uzoru na rad koji

opisuje kreiranje EMNIST baze podataka [9].

Ilustracija procesa konverzije, preuzeta iz pomenute publikacije, data je na slici

5.7. U pomenutom radu proces konverzije sastoji se od slede¢ih koraka, redom:

dodavanje Gausovog zamu¢enja, isecanje samog karaktera sa slike, centriranje pret-

hodno ise£enog karaktera kao i promena dimenzija slike u 28× 28.

Slika 5.7: Proces konverzjie slika NIST baze [9]

Za razliku od pomenute publikacije, u implementaciji se prvo vr²i isecanje ori-

ginalne slike predstavljene u rezoluciji 128 × 128, pri £emu se veli£ina margine oko

karaktera postavlja na jedan piksel. Nakon toga, na tako ise£eni karakter primenjuje

se Gausov �lter kod koga je standardna devijacija Gausovog kernela postavljena na

1. U toku preprocesiranja podataka testiran je i redosled transformacija originalne

slike koji promovi²e pomenuti rad (dakle isecanje tek nakon zamu¢enja slike), £ime

se dobijaju jako sli£ni rezultati, te je stoga primenjen prvi pristup.

Nakon kropovanja i dodavanja zamu¢enja vr²i se centriranje karaktera u kva-

dratni okvir. Prilikom centriranja, vaºno je naglasiti da se ne menja rezolucija

karaktera, ve¢ se kra¢a dimenzija slike pro²iruje praznim prostorom. Ova trans-

formacija od slike dimenzje w × h kreira sliku dimenzije max{w, h} ×max{w, h}.Originalni odnos visine i ²irine karaktera predstavlja jednu od speci�£nosti rukopisa,

stoga bi gubitak ovog odnosa predstavljao gubitak informacije.

Nakon toga kvadratna slika dimenzija max{w, h}×max{w, h}, gde su w i h ori-

ginalne dimenzije karaktera, konvertuje se u dimenzije 28×28. Pomenuta konverzija

vr²i se kori²¢enjem bikubne interpolacije. Finalna rezolucija izabrana je po uzoru na

47

GLAVA 5. EVALUACIJA RE�ENJA

skup podataka MNIST , odnosno EMNIST . Teºina problema (uslovljena brojem

klasa odnosno slika) ne dozvoljava ve¢u rezoluciju karaktera. Ovo potvr�uje i skup

podataka DoubledMNIST i rezultati na njemu [10]. Ovaj skup podataka sastoji se

od slika (nastalih tako�e na osnovu NIST Special Database 19) dimenzija 56 × 56

na kojima su bez ve¢eg napora natrenirani klasi�katori preciznosti jako bliske 1.

Skupovi podataka, kreirani na opisan na£in, dostupni su u Zip formatu.

5.4 Podela podataka

Podaci iz baze podeljeni su u trening skup za bazni klasi�kator, validacioni skup

za bazni klasi�kator i skup za primenu. Dalje se skup za primenu deli na dva dela:

skup za prilago�avanje i test skup. Prilikom podele podataka, sve slike jednog autora

pripadaju istom skupu. Obzirom na ideju predloºenog pristupa, koja podrazumeva

u£enje speci�£nosti autorovog stila na svakom pojedina£nom karakteru, potreban

je zna£ajan broj slika za svaki pojedina£ni karakter svakog pojedina£nog korisnika.

Kako je originalni skup podataka nebalansiran, podela je vr²ena tako da su oni

korisnici koji su pisali vi²e preba£eni u skup za primenu, dok su korisnici sa manje

napisanih karaktera ostali u skupovima za trening i validaciju baznog klasi�katora.

Podela podataka baze NIST

Okvirno deset procenata svih slika sa£injava skup za primenu, dok su preostale

slike podeljene u skupove za treniranje i validaciju baznog klasi�katora tako da je

broj autora u njima u odnosu 9 : 1. Podela je:

• trening skup za bazni klasi�kator: 3057 autora

• validacioni skup za bazni klasi�kator: 339 autora

• skup za primenu: 200 autora

U terminima broja slika, podela je slede¢a:

• trening skup za bazni klasi�kator: 659541 slika

• validacioni skup za bazni klasi�kator: 73209 slika

• skup za primenu: 81505 slika

48

GLAVA 5. EVALUACIJA RE�ENJA

Vaºno je ista¢i da je skup podataka NIST izrazito nebalansiran, u smislu da za

svakog pojedina£nog korisnika postoji dosta ve¢i broj slika koje su labelovane nekim

od brojeva nego ostalim karakterima. Uprkos svemu ovome, model pobolj²anja

koji se ovim radom prezentuje pokazao se jako uspe²nim. Na osnovu toga, realno

je o£ekivati jo² bolje pona²anje sistema u slu£aju povoljnijih (u smislu prethodno

istaknutih nedostataka) skupova podataka, i u realnoj primeni.

Podela podataka baze Deepwriting

Princip podele podataka u skupu podataka Deepwriting prati podelu podataka

baze NIST. Podela je data sa, u terminima broja autora:

• trening skup za bazni klasi�kator: 242 autora

• validacioni skup za bazni klasi�kator: 27 autora

• skup za primenu1: 15 autora

U terminima broja slika, podela je slede¢a:

• trening skup za bazni klasi�kator: 298313 slika

• validacioni skup za bazni klasi�kator: 33484 slika

• skup za primenu: 37658 slika

5.5 Treniranje baznog klasi�katora

Bazni klasi�kator £ije se pobolj²anje u ovom radu prikazuje predstavlja konvo-

lutivnu neuronsku mreºu baziranu na arhitekturi Ca�eNetwork [19]. Za kreiranje

arhitekture i trening mreºe kori²¢ena je biblioteka Keras programskog jezika Py-

thon. Bazni klasi�kator treniran je na slikama trening skupa a validiran na slikama

validacionog skupa.

Arhitektura

Pomenuta neuronska mreºa trenirana je na slikama dimenzija 28× 28, dok se na

njenom izlazu nalazi funkcija mekog maksimuma (eng. softmax ) odnosno sloj koji190% slika svakog autora £ini skup za prilago�avanje, dok preostalih 10% slika £ini test skup

49

GLAVA 5. EVALUACIJA RE�ENJA

kao klasu predvi�a, u slu£aju baze podataka NIST jednu od 62 labele, dok u slu£aju

skupa podataka Deepwriting jednu od 70 labela. Labele su kodirane ortonormiranim

sistemom vektora. Bazni neuronski klasi�katori kreirani za dva skupa podataka koja

se u ovom radu razmatraju razlikuju se samo u broju neurona poslednjeg sloja.

Konvolutivni deo neuronske mreºe sastoji se od tri uzastopna bloka, od kojih

se svaki sastoji od dve uzastopne konvolucije (eng. convolutional layer), nakon ko-

jih sledi unutra²nja normalizacija (eng. batch normalization) koja je opet pra¢ena

slojem agregacije (eng. pooling layer). Broj �ltera u konvolutivnim slojevima mo-

notono raste po blokovima. Konvolucije koriste ispravljenu linearnu jedinicu (eng.

ReLU ) kao aktivacionu funkciju. Agregiranje se vr²i kori²¢enjem maksimuma kao

funkcije agregacije, zadrºavaju¢i iste dimenzije slike nakon agregiranja. Na kon-

volutivni deo nadovezuje se potpuno povezana neurnoska mreºa, u kojoj se koristi

regularizacija izostavljanjem (eng. dropout). Kompletnu arhitekturu mogu¢e je

videti na slici 5.8. Kompletna mreºa sadrºi ne²to vi²e od 350 000 parametara.

Treniranje i rezultati

Bazni neuronski klasi�kator treniran je optimizacionim metodom Adam sa pa-

rametrima β1 = 0.9, β2 = 0.999 sa korakom u£enja 0.001.

U slu£aju baze podataka NIST bazni kasi�kator treniran je 35 epoha u tri serije

od po 20, 10 i 5 epoha. Svaka slede¢a serija koristi ve¢i podskup za aproksimaciju

gradijenta (eng. batch size). Ovakav trening inspirisan je aktuelnim radovima ove

oblasti [35]. Rezultati koje klasi�kator postiºe jesu 88.36%, 87.39% i 87.35% redom

na trening, validacionom i skupu za primenu.

Bazni klasi�kator na Deepwriting skupu podataka treniran je 20 epoha nakon

£ega je obu£avanje zaustavljeno tehnikom ranog zaustavljanja. Rezultati ovako na-

treniranog klasi�katora su 87.65%, 83.12% i 82.12% redom na trening, validacionom

i skupu za primenu.

5.6 Strati�kacija i ponovno uzorkovanje

Metod evaluacije uklju£uje korake strati�kacije podataka i ponovnog uzorkova-

nja.

Strati�kovana podela napisanih karaktera prilikom primene modela pobolj²anja

ima veliki zna£aj. Strati�kacija se vr²i u odnosu na odgovaraju¢e labele, i time se

50

GLAVA 5. EVALUACIJA RE�ENJA

Slika 5.8: Arhitektura baznog klasi�katora (NIST skup podataka)

postiºe pribliºno jednaka raspodela labela u skupu za prilago�avanje i u test skupu.

Ovim se izbegava situacija pojavljivanja karaktera pri evaluaciji, koji se pak ne

nalazi u okviru istorije pisanja. Ova situacija se ipak ne moºe sasvim eliminisati,

me�utim moºe se smanjiti njena verovatno¢a. Strati�kovana podela slika test skupa

izvr²ena je tako ²to je u skup za prilago�avanje poslato 90% slika, dok je 10% slika

zavr²ilo u test skupu.

51

GLAVA 5. EVALUACIJA RE�ENJA

U okviru evaluacije ponovno uzorkovanje se koristi tako ²to se za proizvoljnog

korisnika preciznost ne ra£una samo jedanput na test skupu, ve¢ se isti postupak

ponovi nezavisno n puta2, svaki put sa strati�kovanom podelom podataka na deo

predvi�en za istoriju pisanja i deo predvi�en za evaluaciju.

5.7 Rezultati evaluacije bez ponovnog uzorkovanja

Rezultati ostvareni bez ponovnog uzorkovanja dobijeni su prilago�avanjem na

90% skupa za primenu i evaluacijom na preostalih 10% koji £ine test skup. Prilikom

evaluacije se za svakog korisnika test skupa prati preciznost baznog klasi�katora kao

i preciznost metoda pobolj²anja. Prate se broj/procenat slika na kojima je bazni

klasi�kator ispravno predvideo labele, broj/procenat slika autora na kojima je metod

pobolj²anja dao ispravne labele, kao i broj/procenat slika na kome je barem jedan od

njih bio ispravan. Ovo poslednje uklju£eno je sa ciljem ocene kvaliteta pobolj²anja,

²to predstavlja grani£ni slu£aj odnosno scenario kako bi se pona²ao model pobolj-

²anja kada bi u svakom trenutku znao kom klasi�katoru da veruje, da li baznom ili

nekom od metoda k najbliºih suseda koji se simultano izvr²avaju sa prethodnim.

Prethodno predstavlja gornju granicu kvaliteta prezentovanog pobolj²anja.

U slu£aju baze podataka NIST, informacije o skupu podataka na kome je metod

testiran date su sa:

• Model je testiran na 8089 slika pisanih od strane 200 razli£itih autora.

• Preciznost baznog klasi�katora na njima iznosi 87.09%, dok je preciznost

ostvarena pobolj²anjem na istom skupu jednaka 89.62%. Gornja granica pre-

ciznosti koju je mogu¢e dosti¢i metodom jeste 91.24%.

• Broj autora na kojima se bazni klasi�kator pona²a bolje nego prezentovani

metod pobolj²anja jeste 18, na 63 autora modeli imaju iste performanse, dok

na £ak 119 njih novi metod pobolj²anja daje bolje rezultate.

Na osnovu prethodne statistike jasno se vidi da pri pomenutoj evaluaciji metod

pobolj²anja daje pove¢anje preciznosti baznog klasi�katora veli£ine 2.53%. Teorijski

najve¢e mogu¢e pove¢anje preciznosti (pri konkretnoj evaluaciji) jeste pove¢anje od

4.15% (da se za svaku sliku znalo kom klasi�katoru verovati odnosno £ije predvi�anje

uzeti).2gde n predstavlja parametar ponovnog uzorkovanja

52

GLAVA 5. EVALUACIJA RE�ENJA

U slu£aju Deepwriting skupa podataka, vaºi:

• Broj slika na kojima je model testiran iznosi 3769, i one su napisane od strane

25 razli£itih autora.

• Preciznost baznog klasi�katora je 81.16%, dok je preciznost koju ostvaruje

pobolj²ani metod 84.05%. Gornja granica preciznosti koju je mogu¢e dosti¢i

metodom iznosi 85.43%.

• Na slikama 22 autora metod pobolj²anja bolji je od baznog klasi�katora, na

slikama jednog autora ostvaruju istu preciznost, dok je na slikama dva autora

bazni model bio bolji od u radu prezentovanog metoda.

Pri prethodnoj evaluaciji, prezentovani metod pobolj²anja daje pove¢anje preci-

znosti baznog klasi�katora od 2.89%. Teorijski najve¢e mogu¢e pove¢anje preciznosti

jeste 4.27%.

5.8 Rezultati evaluacije sa ponovnim

uzorkovanjem

Pri nezavisnim evaluacijama sistem se pokazuje jako dobro, daju¢i pobolj²anja

na bazi podataka NIST od oko 2.3%, dok na Deepwriting skupu podataka pove¢anje

preciznosti iznosi preko 2.7% sa jako malim odstupanjima. Prilikom evaluacije broj

ponovnih uzorkovanja postavljen je na 10.

Rezultati prilikom evaluiranja modela pobolj²anja prethodnim postupkom na

bazi podataka NIST dati su sa:

• Model je testiran na 81 685 karaktera, koje je pisalo 200 razli£itih autora.

• Preciznost baznog klasi�katora je 87.24%, preciznost metoda pobolj²anja 89.60%,

a gornja granica preciznosti koju je mogu¢e dosti¢i metodom jeste 91.42%.

• Na slikama 24 autora bazni klasi�kator pona²a se bolje od metoda pobolj-

²anja, na 9 autora modeli imaju isto pona²anje, dok na £ak 167 njih metod

pobolj²anja ostvaruje bolje rezultate.

Pri izvedenoj evaluaciji metod pobolj²anja daje pove¢anje preciznosti baznog

klasi�katora od 2.36%. Teorijski najve¢e mogu¢e pove¢anje preciznosti (pri ovoj

evaluaciji) jeste 4.18%.

53

GLAVA 5. EVALUACIJA RE�ENJA

U slu£aju Deepwriting skupa podataka, rezultati su slede¢i:

• Model je testiran na 37672 karaktera (napisanih od strane 25 korisnika).

• Bazni klasi�kator ostvaruje preciznost82.05%, metod pobolj²anja 84.77%, dok

je gornja granica pobolj²anja 86.38%.

• Na slikama 24 autora metod pobolj²anja ostvaruje ve¢u preciznost od bazne

mreºe, dok je na slikama jednog autora bazna mreºa ostvarila ve£u preciznost.

Model pobolj²anja pove¢ava preciznost baznog klasi�katora za 2.72%, dok je

teorijski najve¢e mogu¢e pove¢anje preciznosti jednako 4.33%.

5.9 Pore�enje sa najboljim poznatim rezultatima

Prezentovani metod prevazilazi dosada²nje rezultate objavljene na skupu poda-

taka NIST Special Database 19 pri £emu se koristi transformacija slika u rezoluciju

28 × 28 koju promovi²e MNIST odnosno EMNIST skup podataka. Vaºno je na-

pomenuti da ne postoji zvani£na podela podataka na trening i test skup u okviru

ove baze podataka, kao i to da objavljeni radovi ne objavljuju svoju ta£nu podelu

podataka. Otud ne postoji jednostavan na£in za direktno pore�enje sa prethodnim

radom i stoga se ovde ne tvrdi da je predloºeni model bolji od svih dosada²njih,

ve¢ se pokazuje da su njegovi rezultati u rangu do sada najboljih. Neki rezultati

objavljeni na ovom skupu podataka, dati su u nastavku:

• 2011. godine pomo¢u ansambla konvolutivnih neuronskih mreºa ostvarena

preciznost 88.12% [7].

• 2012. godine kori²¢enjem mreºe sa vi²e stubaca procesiranja (eng. multi-

column deep neural network) postignuta je preciznost 88.37% [8].

• 2017. godine kori²¢enjem konvolutivne neuronske mreºe i metode potpornih

vektora ostvaruje se preciznost 88.32% [31].

• Aprila 2018. godine kori²¢enjem metoda k najbliºih suseda i slu£ajnih ²uma

(eng. random forest) ostvarena je okvirna preciznost od 75% [6].

Performanse prezentovanog metoda pobolj²anja postiºu preciznost od 89.60%

£ime su nadma²eni rezultati pomenutih pristupa. U svakom od navedenih radova

54

GLAVA 5. EVALUACIJA RE�ENJA

prezentovana je druga£ija tehnika, me�utim ni jedan od njih ne bavi se pobolj²anjem

klasi�katora o�ajn rukom pisanog teksta, niti uzima u obzir stil pisanja korisnika.

Dodatno, prema na²im saznanjima na skupu podataka NIST ne postoje objavljeni

radovi koji se bave pobolj²anjem neuronskih klasi�katora o�ajn rukom pisanog tek-

sta.

Na Deepwriting skupu podataka trenutno ne postoje javno objavljeni rezultati

problema klasi�kacije.

Postoje i radovi koji se bave pobolj²anjem o�ajn klasi�katora rukom pisanog

teksta, me�utim oni nisu testirani na skupovima podataka NIST odnosno Deepwri-

ting, te stoga nisu uporedivi sa u radu prezentovanim metodom. Dodatno, ni jedan

od njih se ne fokusira na stil pisanja pojedina£nog korisnika, ²to je osnovna ideja

kojom je na² metod pobolj²anja motivisan.

55

Glava 6

Zaklju£ak i budu¢i rad

U okviru ovog rada razmatran je problem klasi�kacije o�ajn rukom pisanih ka-

raktera. Ovaj problem predstavlja jednu aktuelnu i ºivu oblast, koja svoju primenu

nalazi u svakodnevnom ºivotu. Njena upotrebna vrednost £ini je jako agilnom u smi-

slu same zajednice i konkretnih inovacija. Neki od problema ove oblasti delimi£no

su re²eni, me�utim ve¢i je deo onih u kojima jo² nisu postignuti ºeljeni rezultati.

Osnovna motivacija ovog rada bila je £injenica da svaki pojedinac neguje svoj

stil pisanja, pri £emu se oni me�u sobom mogu zna£ajno razlikovati, ²to se pak

moºe nau£iti, i na osnovu toga moºe se pove¢ati preciznost klasi£nog klasi�katora.

Osnovni doprinos ovog rada predstavlja razvoj jednog novog metoda koji koristi

algoritme i tehnike ma²inskog u£enja kao ²to su tehnike klasterovanja algoritmom

k sredina i klasi�kaciju metodom najbliºih suseda, a koji nadma²uje performanse

vode¢ih klasi�katora rukom pisanog teksta.

Predloºeni model pobolj²anja u vreme izvr²avanja baznog klasi�katora daje pred-

vi�anje kombinuju¢i predvi�anje baznog klasi�katora se predvi�anjima niza pomo¢-

nih klasi�katora k najbliºih suseda koji rade nad novim reprezentacijama slika,

izlazima pretposlednjeg sloja neuronskog klasi�katora. Problem odlu£ivanja kom

klasi�katoru verovati, odnosno £ije predvi�anje uvaºiti prevazilazi se modelovanjem

stepena poverenja svakoga od njih kori²¢enjem beta raspodela. O£ekivanjem beta

raspodele ocenjuje se pouzdanost klasi�katora na predvi�enom karakteru, a njeni

parametri odre�uju se kori²¢enjem slika istorije pisanja pojedina£nog korisnika.

Budu¢a istraºivanja mogu uklju£ivati tehnike transfera u£enja (eng. meta le-

arning) ili tehnike u£enja na malim skupovima podataka (eng. few-shot learning)

u cilju pripreme baznog klasi�katora za brzo prilago�avanje svakom pojedina£nom

korisniku. Dodatno, sistem moºe biti razvijan i u pravcu prilago�avanja trenut-

56

GLAVA 6. ZAKLJU�AK I BUDU�I RAD

nom korisniku koji bi u obzir uzimao smenjivanje raznih autora na istom ure�aju

(npr. tabletu) a koji bi zna£aj davao skorijoj istoriji, odnosno poslednjim napisanim

karakterima.

57

Literatura

[1] Bayesian Inference of a Binomial Proportion - The Analytical Approach. https:

//www.quantstart.com/articles/Bayesian-Inference-of-a-Binomial-

Proportion-The-Analytical-Approach. Accessed: 2019-07-16.

[2] Christopher M. Bishop. Pattern Recognition and Machine Learning. Springer,

2006.

[3] G. Bradski. �The OpenCV Library�. U: Dr. Dobb's Journal of Software Tools

(2000).

[4] Nikhil Buduma i Nicholas Locascio. Fundamentals of Deep Learning: Desig-

ning Next-Generation Machine Intelligence Algorithms. 1st. O'Reilly Media,

Inc., 2017. isbn: 1491925612, 9781491925614.

[5] François Chollet i dr. Keras. https://github.com/fchollet/keras. 2015.

[6] Nicole Cilia i dr. �A ranking-based feature selection approach for handwritten

character recognition�. U: Pattern Recognition Letters (Apr. 2018). doi: 10.

1016/j.patrec.2018.04.007.

[7] D. C. Ciresan i dr. �Convolutional Neural Network Committees for Handwrit-

ten Character Classi�cation�. U: 2011 International Conference on Document

Analysis and Recognition. Sept. 2011, str. 1135�1139. doi: 10.1109/ICDAR.

2011.229.

[8] Dan Cire³an, Ueli Meier i Juergen Schmidhuber. �Multi-column Deep Neural

Networks for Image Classi�cation�. U: (2012). eprint: arXiv:1202.2745.

[9] Gregory Cohen i dr. EMNIST: an extension of MNIST to handwritten letters.

2017. eprint: arXiv:1702.05373.

[10] Milan �ugurovi¢.DoubledMNIST Database. https://github.com/MilanCugur/

DoubledMNIST. 2019.

58

LITERATURA

[11] Nibaran Das i dr. �A Benchmark Image Database of Isolated Bangla Han-

dwritten Compound Characters�. U: Int. J. Doc. Anal. Recognit. 17.4 (Dec.

2014), str. 413�431. issn: 1433-2833. doi: 10.1007/s10032-014-0222-y.

url: http://dx.doi.org/10.1007/s10032-014-0222-y.

[12] D. Ðori¢ i dr. Atlas raspodela. Gra�evinski fakultet, 2007. isbn: 9788675180777.

url: https://books.google.rs/books?id=er9ZGQAACAAJ.

[13] Stefan Fiel i Robert Sablatnig. �Writer Identi�cation and Retrieval Using a

Convolutional Neural Network�. U: Computer Analysis of Images and Pat-

terns. Ur. George Azzopardi i Nicolai Petkov. Cham: Springer International

Publishing, 2015, str. 26�37. isbn: 978-3-319-23117-4.

[14] Brian Fisher i Adem Kilicman. �Some Results on the Gamma Function for

Negative Integers�. U: Appl. Math. Inform. Sci. 6 (Maj 2012), str. 173�176.

[15] Leon A. Gatys, Alexander S. Ecker i Matthias Bethge. A Neural Algorithm of

Artistic Style. 2015. eprint: arXiv:1508.06576.

[16] Ian Goodfellow, Yoshua Bengio i Aaron Courville. Deep Learning. http://

www.deeplearningbook.org. MIT Press, 2016.

[17] Patrick Grother i Kayee Hanaoka. NIST Special Database 19 Handprinted

Forms and Characters 2nd Edition. 2016.

[18] J. D. Hunter. �Matplotlib: A 2D graphics environment�. U: Computing in

Science & Engineering 9.3 (2007), str. 90�95. doi: 10.1109/MCSE.2007.55.

[19] Yangqing Jia i dr. Ca�e: Convolutional Architecture for Fast Feature Embed-

ding. 2014. eprint: arXiv:1408.5093.

[20] Justin Johnson, Alexandre Alahi i Li Fei-Fei. Perceptual Losses for Real-Time

Style Transfer and Super-Resolution. 2016. eprint: arXiv:1603.08155.

[21] Eric Jones, Travis Oliphant, Pearu Peterson i dr. SciPy: Open source scienti�c

tools for Python. Accessed: 2019-07-16. 2001�. url: http://www.scipy.org/.

[22] Diederik P. Kingma i Jimmy Ba. Adam: A Method for Stochastic Optimization.

2014. eprint: arXiv:1412.6980.

[23] F. Kleber i dr. �CVL-DataBase: An O�-Line Database for Writer Retrieval,

Writer Identi�cation and Word Spotting�. U: 2013 12th International Confe-

rence on Document Analysis and Recognition. Avg. 2013, str. 560�564. doi:

10.1109/ICDAR.2013.117.

59

LITERATURA

[24] Yann LeCun i Corinna Cortes. �MNIST handwritten digit database�. U: (2010).

url: http://yann.lecun.com/exdb/mnist/.

[25] C. G. Leedham. �Historical perspectives of handwriting recognition systems�.

U: IEE Colloquium on Handwriting and Pen-Based Input. Mar. 1994, str. 1/1�

1/3.

[26] Urs-Viktor Marti i Horst Bunke. �The IAM-database: an English sentence

database for o�ine handwriting recognition�. U: International Journal on Do-

cument Analysis and Recognition 5 (2002), str. 39�46.

[27] Dino �krobar Mihaela Ribi£i¢ Penava. �Gama i beta funkcije�. U: Osje£ki

matemati£ki list 15 (2015), str. 93�111.

[28] Mladen Nikoli¢ i An�elka Ze£evi¢. Ma²insko u£enje. Matemati£ki fakultet,

Univerzitet u Beogradu, 2019. url: http://ml.matf.bg.ac.rs/readings/

ml.pdf.

[29] Mladen Nikoli¢ i An�elka Ze£evi¢. Nau£no izra£unavanje. Matemati£ki fa-

kultet, Univerzitet u Beogradu, 2019. url: http://ni.matf.bg.ac.rs/

materijali/ni.pdf.

[30] Travis Oliphant. NumPy: A guide to NumPy. USA: Trelgol Publishing. [On-

line; accessed 2019-07-16]. 2006�. url: http://www.numpy.org/.

[31] Darmatasia Palehai i Mohamad Ivan Fanany. �Handwriting Recognition on

Form Document Using Convolutional Neural Network and Support Vector

Machines (CNN-SVM)�. U: Maj 2017. doi: 10.1109/ICoICT.2017.8074699.

[32] F. Pedregosa i dr. �Scikit-learn: Machine Learning in Python�. U: Journal of

Machine Learning Research 12 (2011), str. 2825�2830.

[33] Boris T. Polyak. �Some methods of speeding up the convergence of iteration

methods�. U: USSR Computational Mathematics and Mathematical Physics

(1964), str. 1�17.

[34] Guido Rossum. Python Reference Manual. Tehn. izv. Amsterdam, The Net-

herlands, The Netherlands, 1995.

[35] Samuel L. Smith i dr. Don't Decay the Learning Rate, Increase the Batch Size.

2017. eprint: arXiv:1711.00489.

[36] Jost Tobias Springenberg i dr. Striving for Simplicity: The All Convolutional

Net. 2014. eprint: arXiv:1412.6806.

60

LITERATURA

[37] Garside Rodger Stig Johhanson Atwel Eric i Leech Geo�rey. The tagged LOB

Corpus: User's manual. 1986.

[38] Pang-Ning Tan, Michael Steinbach i Vipin Kumar. Introduction to Data Mi-

ning. Addison-Wesley, 2005. isbn: 0-321-32136-7.

61

Biogra�ja autora

Milan Miloje �ugurovi¢ ro�en je 30.08.1995. godine u Loznici.Osnovnu ²kolu �14 Oktobar� u Dragincu, kao i prirodno-matemati£ki smer gim-

nazije �Vuk Karadºi¢� u Loznici zavr²io je kao nosilac Vukove diplome. Tokomnavedenog perioda ²kolovanja isticao se u oblasti matematike. To potvr�uje i ve¢ibroj nagrada na Drºavnim takmi£enjima.

Smer Ra£unarstvo i informatika upisuje na Matemati£kom fakultetu 2014. go-dine. Na navedenom smeru diplomirao je 2.7.2018. godine, posle tri godine i devetmeseci studiranja, sa prose£nom ocenom 10.

Tokom ²kolovanja dobitnik je velikog broja nagrada i stipendija, od kojih semogu izdvojiti nagrada za najboljeg studenta generacije Matemati£kog fakulteta(2019), nagrada �Nedeljko Parezanovi¢� Katedre za Ra£unarstvo Matemati£kog fa-kulteta (2018), stipendija �Dositeja� Fonda za mlade talente Republike Srbije (2018,2019), stipendija Ministarstva prosvete, nauke i tehnolo²kog razvoja Republike Sr-bije (2016, 2017, 2018), Nagrada Matemati£kog fakulteta za najbolje studente (2017,2018), kao i Nagrada grada Loznice za najbolje studente (2016, 2017, 2018).

U toku akademske 2018/19 angaºovan je kao saradnik u nastavi na Katedriza Ra£unarstvo Matemati£kog fakluteta, Univerziteta u Beogradu. Drzi veºbe izpredmeta Relacione baze podataka, Uvod u relacione baze podataka, Programskeparadigme, Programiranje 1. U toku letnjeg semestra akademske 2017/18 u svoj-stvu demonstratora drºao je veºbe predmeta Programiranje 2, na Matemati£komfaklutetu. Pored toga, tokom tre¢e godie studija jedan mesec proveo je na praksi uindustrijskom sektoru (rad na razvoju serverske strane aplikacije u kompaniji Tele-Trader).

Kao slu²alac posetio je dve doma¢e konferencije, konferenciju US-Serbia andWest Balkan Data Science Workshop, odrºanu u avgustu 2018. godine u Beogradu,kao i Data Science Conference V4.0 koja je odrºana u septembru 2018. godine,tako�e u Beogradu. U okviru iste konferencije, odrºao je uvodni kurs ma²inskogu£enja u okviru predkonferencijskih kurseva.

Trenutne oblasti interesovanja uklju£uju pre svega oblast ma²inskog u£enja, kaoi oblasti istraºivanja podataka odnosno nauke o podacima u uºem smislu. Tako�e,oblast interesovanja uklju£uje i relacione baze podataka.

U maju 2012. godine kao najbolji mladi matemati£ar zatvorio je svojim govorom41. Ða£ki Vukov Sabor u Tr²i¢u, u okviru manifestacije Maj mesec matematike.