35

Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

Embed Size (px)

Citation preview

Page 1: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

Univerzitet u Ni²u

Prirodno-matemati£ki fakultet

Departman za ra£unarske nauke

Master rad

Vi²eklasni Pasivni-Agresivni

klasifikator sekvence tokena

Student:

Radica Velinov

Mentor:

Prof. dr Branimir Todorovi¢

Ni², Novembar 2013.

Page 2: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

Ovaj rad je rezultat izu£avanja Inteligentne obrade teksta, oblasti kojoj sedanas posve¢uju dosta nau£nih radova i ima veliku prakti£nu primenu u sa-vremenim sistemima, koji podrºavaju ma²insko razumevanje najkomplikovanijeljudske tvorevine, jezika.

Dugujem neizmernu zahvalnost svom mentoru prof. dr Branimiru Todoro-vi¢u, koji me je uveo u principe ma²inskog u£enja, omogu¢io mi da se bavimre²avanjem aktualnih i interesantnih problema u inteligentnoj obradi teksta ipruºio veliku pomo¢ pri izradi ovog rada sa idejama i predlozima, koje su uvelikoj meri preto£ene u ovom radu.

Specijalnu zahvalnost dugujem Istraºiva£ko razvojnom institutu NIRI i inº.dr Marku Smiljani¢u, koji su mi pruºili mogu¢nost da implementiram ovde opi-sani algoritam u okviru njihovog postoje¢eg Sistema za ekstrakciju informacija izteksta. Zahvaljujem se zaposlenima instituta na vremenu i stru£noj podr²ci kojusu mi pruºali tokom upoznavanja sa sistemom, kao i na prijateljskoj potpori daistrajem u ovom poduhvatu.

Tako�e, zahvaljujem se nastavnom osoblju Prirodno-matemati£kog fakulteta,koji su nesebi£no prenosili svoja znanja iz ra£unarskih nauka i bili uvek spremnida pruºe stru£nu pomo¢, kao i svojoj porodici za svestranu podr²ku, tokom stu-diranja.

Page 3: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

Sadrºaj

1 Uvod 3

2 Inkrementalno u£enje Pasivnog-Agresivnog algoritma 62.1 Inkrementalni algoritmi u£enja . . . . . . . . . . . . . . . . . . . 6

2.1.1 Binarni inkrementalni algoritam u£enja . . . . . . . . . . 72.1.2 Vi²eklasni inkrementalni algoritam u£enja . . . . . . . . . 7

2.2 Binarni Pasivni-Agresivni algoritam . . . . . . . . . . . . . . . . 92.2.1 Izvo�enje re²enja optimizacionog problema binarnog PA

algoritma . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.2.2 Modi�kacije PA algoritma za podatke koji nisu linearno se-

parabilni . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.2.3 Izvo�enje re²enja optimizacionih problema binarnog PA-I

i PA-II algoritma . . . . . . . . . . . . . . . . . . . . . . . . 122.3 Vi²eklasni Pasivni-Agresivni algoritam . . . . . . . . . . . . . . . 14

2.3.1 Izvo�enje analiti£kog izra£unavanja promene parametravektora teºine kod vi²eklasnog PA-I algoritma . . . . . . . 14

2.3.2 Analiza granice gre²ke vi²eklasnog PA i PA-I algoritma . . 18

3 Klasi�katori sekvence tokena 243.0.3 Probabilisti£ki klasi�katori sekvence . . . . . . . . . . . . 243.0.4 Deterministi£ki klasi�katori sekvence . . . . . . . . . . . . 26

4 Rezultati testiranja 28

5 Zaklju£ak 30

Page 4: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

1 Uvod

U dana²njem svetu obilja informacija, pronalaºenje relevantnih informacijapostaje sve teºe, uprkos £injenici da se koli£ina dostupnih tekstova podatakarapidno pove¢ava. Iako moderne tehnologije i internet omogu¢avaju brzo i lakopronalaºenje dokumenata, ne zna£i da su kriterijumi za pronalazak relevantnihinformacija lako zadovoljivi. Dokumenti su vrlo £esto veliki i sadrºe mnogo vi²einformacija od potrebnih, relevantnih podataka.

Ekstrakcija informacija (eng. Information extraction) se di�ni²e kao procesprepoznavanja speci�£nih informacija u nestruktuiranim izvorima podataka, kao²to su tekstovi govornog jezika, njihova kasnija klasi�kacija i strukturiranje usemanti£ke klase, £ime se omogu¢uje e�kasnija obrada tih podataka drugimmetodama.

Postoje dva pristupa ekstrakcije informacija iz teksta. Prvi je pomo¢u tzv.simboli£kih tehnika i alata. Simboli£ke tehnike zahtevaju ru£no, unapred de�-nisane uzorke koje ºelimo na¢i i pravila po kojima ih nalazimo. Da bi de�nisalita pravila potrebno je imati ve¢ apriorno znanje iz podru£ja za koje je teh-nika specijalizovana. Prednost ovakvih tehnika je ²to one ne zahtevaju nikakveprethodno ozna£ene primere tekstualnih dokumenata. Nedostatak je ²to zahte-vaju stru£no znanje iz domene za koje su specijalizovane, a £esto i vrlo dobrolingvisti£ko znanje jezika za koje su namenjene. To moºe predstavljati velikinedostatak, ako ºelimo metod £ija bi primena bila e�kasna na tekstovima navi²e razli£itih jezika.

Drugi pristup ekstrakcije informacija iz teksta koristi tehnike i alate tzv.ma²inskog u£enja, koji se oslanjaju na statisti£ke dokaze koji se mogu prona¢iu ve¢ ozna£enom skupu dokumenata - trening skupu. Iz trening skupa se pro-nalaze i u£e ºeljeni uzorci, £ime se de�ni²u pravila za kasnije prepoznavanjetakvih uzoraka na drugom, nepoznatom skupu dokumenata. Razvoj ovih teh-nika podstaknut je nedostatkom simboli£kih tehnika da se, jednostavno i bezpuno promena, primene na drugim domenama od onih za koje su napravljene.Prednost ovih metoda je ²to ne zahtevaju stru£no lingvisti£ko znanje izradepravila za ekstrakciju informacija, ve¢ se oslanjaju na generalizaciji pravila zaprepoznavanje uzoraka dobijenih u£enjem na ozna£enom skupu za u£enje, takoda se ta pravila mogu e�kasno primeniti na drugim nepoznatim primerima izteksta. Nedostatak je ²to ovakve metode zahtevaju ru£no ozna£ene skupovedokumenata za u£enje. Ipak, ozna£avanje ºeljene informacije u tekstu je jedno-stavnije od izgradnje pravila za ekstrakciju tih informacija, budu¢i da to zahtevapredvi�anje svih mogu¢ih uzoraka koji se mogu pojaviti kod ekstrakcije ºeljeneinformacije. Veli£ina potrebnog skupa za u£enje se moºe smanjiti, upotrebomraznih tehnika za e�kasno u£enje.

Entiteti su obi£no sastavni delovi informacija koje sadrºi jedan tekst, paje njihovo prepoznavanje prvi korak u razumevanju informacija iz teksta. Ra-zvojem naprednih metoda za njihovo povezivanje, postiºe se bolje razumevanjeinformacije u samom tekstu, ali i mogu¢nost dono²enja zaklju£aka na temeljudobijenih informacija, £ime se dobija potpuno nova informacija koja nije di-rektno sadrºana u tekstu. Pored samog prepoznavanja entiteta, postoje metodekoje prepoznaju odnose me�u entitetima. Zbog svega toga metodi ekstrakcijeinformacija u tekstu omogu¢uju dobijanje saºetih informacija koje se nalaze uvelikim tekstovima na jednu kompaktnu reprezentaciju, ili pak dobijanje novihinformacija iz kra¢ih tekstova koje bi sluºile za njihovo pro²irenje.

Prepoznavanje imenovanih entiteta (eng. Name entity recognition (NER))je jedna od oblasti inteligentne obrade teksta, koja se bavi lociranjem i klasi�ka-cijom osnovnih pojmova u tekstu u kategorije kao ²to su imena ljudi, imena or-

3

Page 5: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

1 Uvod 4

ganizacija, nazivi lokacija, monetarnih vrednosti i sli£ne. Prepoznavanje imena,lokacija i organizacija podrazumeva prepoznavanje svih punih imena, ali i skra-¢enica imena i inicijala, koji referenciraju poznati entitet iz skupa osoba, lokacijai organizacija. Pre�ksi imena, kao npr. titule, se ne ozna£avaju kao deo enti-teta. Jedan entitet u tekstu moºe biti referenciran sa vi²e razli£itih leksi£kihoznaka, kao na primer puno ime, nadimak za osobe ili pak inicijali. Prepozna-vanje numeri£kih oznaka de�ni²e se kao ozna£avanje numeri£kih izraza valuta iprocenata. Te numeri£ke oznake se ne moraju nuºno sastojati samo od brojeva,ve¢ mogu sadrºati i abecedne znakove, kao npr. �100 miliona Kanadskih dolara�ili �15 pct� kao oznaka za 15%. Numeri£ki izraz se tako�e moºe sastojati samood abecednih znakova. Prepoznavanje vremenskih izraza se de�ni²e kao ozna-£avanje apsolutnih i relativnih vremenskih izraza. Apsolutni vremenski izrazmoºe biti puna oznaka datuma, ali i samo delimi£na oznaka godine, meseca,dana u nedelji, sati i minuta u danu i bilo koje druge vremenske oznake kaonpr. �drugi kvartal 2008. godine�. Relativni vremenski izrazi moraju sadrºatita£no navedenu vremensku jedinicu u izrazu i moraju referencirati na odredenovreme, a ne na neki nede�nisani vremenski period. Izrazi, kao npr. �u zadnjihpar godina�, se ne smatraju vaºe¢im vremenskim izrazom i ne prepoznaju se kaotakvi. Izrazi koji ozna£avaju imena poznatih praznika se tako�e ozna£avaju kaovremenski izrazi. Osim ekstrakcije imenovanih entiteta razvijene su i neke drugemetode ekstrakcije informacija iz teksta. Ve¢ina njih se oslanja na ekstrakcijuimenovanih entiteta iz teksta, jer te metode koriste upravo prepoznate entitetekao osnovu za svoje procedure.

Referenciranje entiteta je poku²aj utvr�ivanja koji se razli£iti entiteti, pre-poznati u tekstu, referenciraju na isti glavni entitet. Za neki entitet moºe po-stojati vi²e razli£itih leksi£kih oznaka, pogotovo za imena osoba i organizacija.Tako�e mogu postojati i druge reference na entitete koje same nisu u oblikuentiteta. Takve reference su predstavljene lingvisti£kim elementima, na primer,zamenicama, koji se referenciraju na entitet koji se nalazi pre ili posle njih utekstu.

Prepoznavanje semanti£ke uloge ima za zadatak pridruºivanje semanti£kihuloga sintaksnim delovima re£enice. To podrazumeva prepoznavanje akcija ilistanja, njihove aktere i uslove pod kojima se odvijaju.

Prepoznavanje odnosa entiteta u tekstu je korisno kod pretrage entiteta kojisu u nekom odre�enom odnosu sa nekim drugim entitetima. To je posebno vaºnou medicini gde se pretraºuju odnosi i zavisnosti izmedu pojedinih medicinskihentiteta, na primer, povezanosti proteina. Ovaj na£in prepoznavanja informacijase oslanja na prethodno prepoznavanje i referenciranje entiteta.

Prepoznavanje vremenskih doga�aja podrazumeva de�nisanje vremenskihproseka i vremenskih odnosa raznih doga�aja. Zasniva se na sloºenim pro-cedurama zaklju£ivanja, koje se temelje na entitetima vremenskih oznaka. Zavremensko razdvajanje su, pored toga, potrebni i odnosi izme�u entiteta vre-menskih oznaka.

Statisti£ka klasi�kacija, jedna od oblasti ma²inskog u£enja, je upotrebljenakao tehnika nadgledanog u£enja za re²avanje problema prepoznavanja imeno-vanih entiteta u ovom radu. Klasi�kacija se de�ni²e kao problem identi�kacijeklase kojoj pripada novi primer, zaklju£ivanjem na osnovu znanja ste£enog utoku u£enja. Model ma²inskog u£enja, koji implementira klasi�kaciju naziva seklasi�kator.

Page 6: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

1 Uvod 5

U radu (drugo poglavlje) su predstavljene originalne ideje Pasivnog-Agresivnog

algoritma (eng. Passive-Aggressive algorithm[1]) treniranja binarnog i vi²ekla-snog linearnog klasi�katora, kao i op²ti principi algoritama inkrementalnog u£e-nja, £ijoj klasi pripada i sam Pasivni-Agresivni algoritam. Algoritmi se svodena re²avanje specijanog problema kvadratne optimizacije pod zadatim linear-nim ograni£enjima. Izvr²ena je modi�kacija binarnog Pasivnog-Agresivnog al-goritma za slu£aj vi²eklasne klasi�kacije. Zbog teºine re²avanja vi²eklasne kla-si�kacije, izvr²ena je aproksimacija optimizacionog problema kojim se vi²ekla-sni algoritam de�ni²e, kako bi dobili analiti£ko re²enje promena vektora teºinaklasi�katora koji se tim algoritmom trenira. Na kraju ovog poglavlja data jeanaliza granica gre²ke klasi�kacije na specijalnom slu£aju idealno separabilnihproblema, kao i maksimalni broj gre²aka klasi�kacije problema koji nisu idealnoseparabilni.

Tre¢i deo rada sadrºi opis problema klasi�kacije sekvence tokena (eng. Se-quence labeling), koji se £esto istraºuje i re²ava pri inteligentnoj obradi teksta,odnosno pri klasi�kaciji, sintaksnoj i semanti£koj analizi teksta, ako i ekstrakcijiinformacija iz teksta. Dati su kratki opisi naj£e²¢e kori²¢enih probabilisti£kihklasi�katora, kao i opis deterministi£kog klasi�katora, koji je treniran imple-mentacijom vi²eklasnog Pasivnog-Agresivnog algoritma u£enja.

U poslednjem, £etvrtom delu rada prikazani su rezultati jednog od testiranjadatog algoritma na problemu prepoznavanja imenovanih entiteta iz teksta, pri£emu je treniranje i testiranje vr²eno nad korpusom za Holandski, Francuski iEngleski jezik. Prikazano je vi²e rezultata testova sa razli£itim parametrimaalgoritma.

Algoritam inkrementalnog treniranja vi²eklasnog klasi�katora iz ovog radaimplementiran je u programskom jeziku C++ i deo je postoje¢eg �Sistema zaekstrakciju informacija iz teksta� Istraºiva£ko razvojnog instituta NIRI. Procesitreniranja i testiranja vr²eni su nad realnim korpusima ozna£enih dokumenatai primenjuje se u razli£itim aplikacijama za procesiranje teksta (pri klasi�kacijire£i u re£enici, klasi�kaciji paragrafa dokumenata i drugim sli£nim problemimama²inske obrade vi²ejezi£nih dokumenata).

Page 7: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

2 Inkrementalno u£enje Pasivnog-Agresivnog

algoritma

2.1 Inkrementalni algoritmi u£enja

Algoritmi inkrementalnog u£enja predstavljaju vaºnu familiju skalabilnih ie�kasnih algoritama ma²inskog u£enja. Prednosti ovih algoritama su njihova br-zina, jednostavna implementacija, adaptivnost i primenjivost na ²irokom spek-tru problema. Ovi algoritmi se nazivaju jo² i sekvencijalni algoritmi u£enja.Osnovna karakteristika imenovanih algoritama je da mogu da koriguju ste£enoznanje modela ma²inskog u£enja na osnovu novodobijenih primera, a sposobnisu da koriguju u£enje modela i samo na osnovu jednog novog primera. Zasvaki novi uzorak, algoritam prvo traºi od modela, u na²em slu£aju klasi�ka-tora, da izvr²i predikciju izlaza, tj. da klasi�kuje uzorak, a zatim ukoliko jedetektovana gre²ka pri klasi�kaciji, modi�kuje parametre klasi�katora. Posled-njih godina predloºene su mnogobrojne varijante ovakvih algoritama, ali i daljepostoje samo nekoliko biblioteka koje ih implementiraju i istraºiva£i mogu da

ih koriste ili upore�uju novodobijene rezultate[5]. U nastavku sledi uop²teniinkrementalni algoritam:

Algorithm 2.1: Inkrementalni algoritam u£enja(∗)

U koraku t algoritam:- dobija ulaz xt- vr²i predikciju izlaza yt- dobija ta£ni izlaz yt- izra£unava gre²ku u predikciji- na osnovu gre²ke vr²i korekciju mehanizma predikcijekoriste¢i dobijene ulaze xt i yt

Inkrementalni algoritmi treniranja promenom parametara modela ma²inskogu£enja zaklju£uju na osnovu jednog ili malog broja novih uzoraka. Alternativuinkrementalnim algoritmima predstavljaju tzv. �batch� algoritmi, koji promenuparametara vr²e tek posle analize celokupnog skupa trening uzoraka. Prednostiinkrementalnih algoritama u odnosu na �batch� algoritme su brºa po£etna kon-vergencija, brºe izra£unavanje promene parametara modela ma²inskog u£enjai zna£ajno manji memorijski resursi, ²to ih £ini mnogo pogodnijim za primenuna realnim problemima (na primer, problemi koji zahtevaju procesiranje velikekoli£ine podataka, kao ²to je to slu£aj pri procesiranju teksta).

Modeli ma²inskog u£enja koji se treniraju inkrementalnim algoritmima opi-sani u ovom radu, de�ni²emo kao linearne modele[D1] f(x;w) , gde je x ∈ RD

vektor karakteristika ulaznih uzoraka predstavljen realnim vrednostima a w jevektor teºina datog linearnog modela. Linearni model, u geometrijskom smislu,predstavlja D− 1 dimenzionalnu hiper-ravan (ravan odlu£ivanja) u D dimenzi-onalnom prostoru ulaznih karakteristika, dok je vektor teºina w ortogonalan nadatu hiper-ravan. Ovakve modele nazivamo binarnim klasi�katorima, ukolikoulazne uzorke razdvajaju u dve klase, ili vi²eklasnim ukoliko skup klasa kojojpripada ulazni uzorak ima vi²e od dve klase. Ulazni prostor karakteristika se nataj na£in deli na poluprostore odlu£ivanja zadaju¢i tzv. granice odlu£ivanja, apodaci koji se mogu podeliti ovakvim modelom nazivaju se linearno separabil-nim.

6

Page 8: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

2 Inkrementalno u£enje Pasivnog-Agresivnog algoritma 7

2.1.1 Binarni inkrementalni algoritam u£enja

Binarnim klasi�katorom ulazni uzorak x se klasi�kuje u klasu y ∈ Y,Y ={−1,+1} na osnovu znaka odziva y = sgn(f(x;w)), baziranog na vektoru teºinaw. Vrednost y(f(x;w)) naziva se margina klasi�katora i predstavlja rastojanjetrening uzorka od hiper-ravni klasi�katora. Ukoliko je margina pozitivna, ondaje y = sign(f(x;w)) i klasi�kator je dao ispravnu predikicju.

Inkrementalnim binarnim algoritmom se u svakom koraku t za ulazni poda-tak xt ∈ X, X ⊆ RD predvi�a izlazna oznaka klase

yt = sgn(f(x;w)) = sgn(wTt xt) ∈ Y

Nakon predikcije, na osnovu odziva klasi�katora, dobija se stvarna oznaka klaseyt ∈ Y i izra£unava gre²ka predikcije ℓ(yt, yt). Gre²ka predikcije se meri naosnovu zadatog kriterijuma koji daje razliku izme�u predvi�ene i stvarne oznakeklase. Na osnovu rezultata merenja gre²ke klasi�kator donosi odluku o promeniklasi�kacionog modela, odnosno promeni parametara vektora teºine w.

Primer najjednostavnijeg inkrementalnog binarnog algoritma je Perceptron[6], koji prebrojava pogre²no klasi�kovane ulazne uzorke i £iji je cilj da prona�eparametre modela klasi�katora kojim se pravi ²to je mogu¢e manji broj gre²aka.

Algorithm 2.2: Perceptron(primer binarnog klasifikatora)

Inicijalizacija: w0 = 0for t = 1, 2, . . . , Ndo

dobija ulazni uzorak: xt ∈ RD

vr²i predikciju oznake klase: yt = sign(wTt xt)

dobija ta£nu oznaku klase: yt ∈ Yizra£unava gre²ku predikcije: ℓt = I(yt = yt)if ℓt > 0vr²i promene modela klasi�katora: wt = wt−1 + ytxt

2.1.2 Vi²eklasni inkrementalni algoritam u£enja

Vi²eklasno inkrementalno u£enje odvija se u koracima, pri £emu u svakomkoraku algoritam u£enja dobija trening primer x koji moºe imati jednu od oznakaklase iz skupa klasa Y = {1, 2, . . . ,K}. Nakon svakog vi�enog primera, algori-tam vr²i predikciju vektora RK , £iji svaki element odgovara rezultatu predikcijeza jednu oznaku klase. Algoritam podrazumeva da postoji klasi�kacioni modelza svaku klasu iz Y, tj. ima K klasi�kacionih modela u obliku D-dimenzionalnihvektora adaptivnih teºina {wy}y∈Y . Takav model vr²i predikciju klase y za ula-zni uzorak x na slede¢i na£in

y = arg maxy∈Y

(wTy x)

Page 9: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

2 Inkrementalno u£enje Pasivnog-Agresivnog algoritma 8

Vrednost (wTy x) naziva se ocena klase y. Nakon predikcije algoritam dobija

prave oznake klasa i na osnovu gre²ke predikcije vr²i promenu vektora teºinaklasi�kacionih modela.

Algorithm 2.3: Inkrementalni vi²eklasni algoritam u£enja(∗)

U koraku t algoritam:- dobija ulaz xt

- vr²i predikciju izlaza yt,k za svaku klasu iz skupa Y = (1, . . . ,K)

- konstrui²e vektor iz RK za svaki yt,k- dobija ta£ne oznake za svaku od klasa iz skupa Y- vr²i korekciju mehanizma predikcije na osnovu gre²ke predikcije

Algorithm 2.4: Perceptron(primer viseklasnog klasifikatora)

Inicijalizacija: w0 = 0for t = 1, 2, . . . , Ndo

dobija ulazni uzorak: xt ∈ RD

vr²i predikciju oznake klase: yt = arg maxy∈Y

(wTt,yxt)

dobija ta£nu oznaku klase: yt ∈ Yizra£unava gre²ku predikcije: ℓt = I(yt = yt)if ℓt > 0

vr²i promene modela klasi�katora: wt,y = wt−1,y + αt,yxt

pri £emu je: αt,y =

1 y = yt−1 y = arg max

y′∈Y(wT

t,y′xt)

0 ina£e

U ovom radu razmatramo jedan od inkrementalnih algoritama u£enja, pred-stavljen u radu Online Passive-Aggresive algorithms [1], primenjen na problemebinarne i vi²eklasne klasi�kacije. Algoritam, koji ¢e biti opisan u narednimsekcijama, speci�£an je po na£inu promena vektora teºina. Zahteva se da pro-mene budu najmanje mogu¢e da bi klasi�kator ispravno klasi�kovao trenutniprimer, zahtevaju¢i pri tom da razlika izme�u prethodnog i trenutnog klasi�ka-cionog modela tako�e bude minimalna. U preostalim sekcijama ovog poglavljade�nisa¢emo binarni Pasivni-Agresivni algoritam u£enja za idealno separabilniskup trening primera i dve varijante ovog algoritma koje se odnose na skupovetrening primera koji nisu idealno separabilni. Bi¢e data re²enja optimizacionihproblema na kojima se de�ni²u sve tri varijante ovog algoritma. Zatim ¢e bitiopisana modi�kacija u vi²eklasni Pasivni-Agresivni algoritam za podatke koji

Page 10: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

2 Inkrementalno u£enje Pasivnog-Agresivnog algoritma 9

nisu linearno separabilni, i analiti£ka re²enja izvo�enja promena vektora teºinaza takav algoritam.

2.2 Binarni Pasivni-Agresivni algoritam

Binarni Pasivni-Agresivni algoritam (oznaka PA) je inkrementalni algoritamu£enja, za koji vaºi opis dat u sekciji (2.2.1). Cilj algoritma je da inkrementalnou£i vektor teºina w, pri £emu pozitivna vrednost margine klasi�katora nije do-voljna, ve¢ se zahteva da najmanja vrednost margine bude 1 ²to je £e²¢e mogu¢e,kako bi osigurali dobru generalizaciju, tj. ispravnu klasi�kaciju novih primera.Ukoliko je vrednost margine manja od 1 uzorak je pogre²no klasi�kovan, odno-sno gre²ka predikcije ovog klasi�katora de�ni²e se sa:

ℓ(w; (x, y)) =

{0 y(wT

x) ≥ 1

1− y(wTx) y(wT

x) < 1

Neka je (xt, yt) trening uzorak koji predstavlja par primera za klasi�kovanjei njegovu klasu u koraku t. Margina klasi�katora za vektor teºina wt u koraku tizra£unava se kao vrednost yt(w

Tt xt). Ukoliko je ova vrednost manja od 1 do²lo

je da gre²ke u predikciji. Vrednost funkcije gre²ke ℓ u koraku t ozna£ava se saℓt i jednaka je:

ℓt = ℓ(wt−1; (xt, yt)) = 1− yt(wTt−1xt)

odnosno, gre²ku re£unamo kao razliku izme�u margine klasi�katora i jedinice.Da bi opisali algoritam neophodno je de�nisati inicijalnu vrednost vektora teºinaw0 i pravilo koje odre�uje promenu tog vektora u svakom koraku.

Vektor w0 inicijalizuje se na vrednost (0, 0, . . . , 0) dok razli£ite varijantealgoritma daju razli£ito pravilo za korekciju vektora teºine. Osnovni PA algo-ritam de�ni²e se za slu£aj kada su podaci iz trening skupa idealno separabilni(odnosno, primenjuje se nad podacima bez ²uma).Vektor teºina wt PA algoritma u koraku t dobija se kao re²enje slede¢eg opti-mizacionog problema:

arg minwt

1

2∥wt −wt−1∥2 (1)

s.t. yt(wTt xt) ≥ 1

Mogu¢a su dva ishoda klasi�kacije:

• klasi�kator je ispravno klasi�kovao trening uzorak xt, odnosno gre²ka pre-dikcije klasi�katora jednaka je nuli: ℓt = ℓ(wt−1; (xt, yt)) = 0. U tomslu£aju ne dolazi do promena vrednosti vektora teºine, tj. wt = wt−1 i zatakav korak PA algoritma kaºe se da je pasivan.

• klasi�kator je pogre²no klasi�kovao trening uzorak xt, tj. gre²ka predikcijeje ve¢a od nule (tj. njena vrednost je ℓt = 1−yt(wT

t−1xt)). S druge strane,zbog ograni£enja u optimizacionom problemu (1) algoritam tera vektor wt

da zadovolji to ograni£enje, ²to je ekvivalentno onome da gre²ka ℓt = 0.Zbog toga algoritam �agresivno� menja teºinu vektora wt i za takav korakalgoritma kaºe se da je agresivan.

Tako je algoritam i dobio ime Pasivni-Agresivni. Ovim se postiºe kompromisizme�u promena vektora teºine u svakom koraku i o£uvanja istog iz prethodnihkoraka. S jedne strane, promene zahtevaju da wt ispravno klasi�kuje trenutni

Page 11: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

2 Inkrementalno u£enje Pasivnog-Agresivnog algoritma 10

primer unose¢i pri tom dovoljno veliku marginu. S druge strane, algoritamzahteva da vektor teºine wt ostane ²to je mogu¢e bliºe vektoru teºine wt−1,(odnosno, da zadrºi informacije nau£ene u prethodnom koraku).Re²enje optimizacionog problema (1) je:

wt = wt−1 + αtytxt, pri £emu je αt =ℓt

∥xt∥2(2)

2.2.1 Izvo�enje re²enja optimizacionog problema binarnog PA algo-

ritma

Izvo�enje re²enja (2) pokazujemo sluºe¢i se standardnim alatima konveksneoptimizacije [3]. Ako je ℓt = 0 onda wt−1 zadovoljava jedna£inu (1), pa jeto optimalno re²enje. Ako je ℓt > 0, problem (1) se posmatra kao problem

nalaºenja optimuma kriterijumske funckije arg minwt

1

2∥wt−wt−1∥2, pod zadatim

ograni£enjima u vidu nejednakosti.De�ni²e se Lagranºova funkcija za optimizacioni prblem (1), uvo�enjem skalaraα ≥ 0 koji se naziva Lagranºov mnoºilac, na slede¢i na£in:

L(wt, α) =1

2∥wt −wt−1∥2 − α(yt(w

Tt xt)− 1) (3)

Lagranºijan PA optimizacionog problema

Optimizacioni problem (1) ima konveksnu funkciju i jedinstveno izvodljivo re-²enje. Potrebni i dovoljni uslovi optimuma ovog optimizacionog problema de�-nisani su Karush-Khun-Tucker-ovim uslovima (KKT) [3]:

1. Uslov gradijenta: ∇wtL(wt, α) = 0

2. Uslov ortogonalnosti (komplementarnosti): α(yt(wTt xt)− 1) = 0

3. Uslov izvodljivosti (originalno ograni£enje): yt(wTt xt)− 1 ≥ 0

4. Uslov nenegativnosti Lagranzovih multiplikatora: α ≥ 0

Uslov gradijenta zahteva da parcijalni izvod Lagranºijana po wt bude jednaknuli, odnosno,

∂L(wt, α)

∂wt= wt −wt−1 − αytxt = 0

pa se dobija jednakost promene vektora teºine wt:

wt = wt−1 + αtytxt (4)

Zamenom vrednosti wt u Lagranºijan PA problema (3), dobija se:

L(α) = 1

2α2∥xt∥2 − α(yt(w

Tt−1xt)− 1)

Traºenjem parcijalnog izvoda od L(α) po α i izjedna£avaju¢i ga sa nulom, dobijase:

0 =∂L(α)∂α

= α∥xt∥2 − (yt(wTt−1xt)− 1) ⇒ α =

1− yt(wTt−1xt)

∥xt∥2

Po²to je predpostavka bila da je ℓt > 0, onda je ℓt = 1 − yt(wTt−1xt). Objedi-

njuju¢i slu£ajeve kada je ℓt = 0 (i wt = wt−1) i ℓt > 0, dobijamo da je

αt =ℓt

∥xt∥2

Page 12: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

2 Inkrementalno u£enje Pasivnog-Agresivnog algoritma 11

2.2.2 Modi�kacije PA algoritma za podatke koji nisu linearno separa-

bilni

Kao ²to je ve¢ re£eno, PA algoritam koristi strategiju agresivnog pomerajavektora teºina modi�kuju¢i ga onoliko koliko je potrebno da se zadovolje ogra-ni£enja za trenutni primer. U realnim slu£ajevima ovakav pristup moºe imatineºeljene posledice, poput primera koji su ozna£eni pogre²nom labelom klase.U tim slu£ajevima, algoritam moºe drasti£no da promeni vektor teºine u sasvimpogre²nom smeru. Zbog toga se uvode dve varijante ovog algoritma koje imajublaºe strategije promene vektora.

U slu£aju da se o£ekuje da linearni klasi�kator ne moºe savr²eno da razdvojiulazne uzorke, re²enje se traºi uvo�enjem dodatne komponente funkciji krite-rijuma, koja uzima u obzir mogu¢nost pogre²ne klasi�kacije nekog uzorka i tupogre²nu klasi�kaciju �kaºnjava� na odre�eni na£in. To se postiºe uvo�enjemparametara u optimizacioni problem (1), na dva na£ina.

1. Kriterijumska funkcija se menja linearno po parametru ξ, odnosno:

arg minwt,ξ

1

2∥wt −wt−1∥2 + Cξ (5)

s.t. yt(wTt xt) ≥ 1− ξ

ξ ≥ 0

Ovde je C pozitivan parametar koji kontroli²e slaba ograni£enja kriteri-jumske funkcije. Pokazuje se da velike vrednosti parametra C smanjujupromene vektora teºina sa agresivnijim koracima, pa se £esto C naziva pa-rametar agresivnosti. Ovakva modi�kacija Pasivnog-Agresivnog algoritmaozna£ava se sa PA-I.

2. Kriterijumska funkcija se menja kvadratno po parametru ξ, odnosno:

arg minwt∈Rn

1

2∥wt −wt−1∥2 + Cξ2 (6)

s.t. yt(wTt xt) ≥ 1− ξ

U ovom slu£aju ograni£enje ξ ≥ 0 iz problema (5) nije neophodno zato²to je ξ2 uvek nenegativno. Ova modi�kacija ozna£ava se sa PA-II. Pa-rametar C je i u ovom slu£aju pozitivan parametar koji odre�uje stepenagresivnosti algoritma.

Promene vektora teºina kod PA-I i PA-II algoritama moºemo predstaviti uzajedni£kom obliku:

wt = wt−1 + αtytxt

pri £emu je:

αt = min

{C,

ℓt∥xt∥2

}(PA-I) i αt =

ℓt

∥xt∥2 + 12C

(PA-II)

Page 13: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

2 Inkrementalno u£enje Pasivnog-Agresivnog algoritma 12

2.2.3 Izvo�enje re²enja optimizacionih problema binarnog PA-I i PA-

II algoritma

Re²avanje optimizacionog problema PA-I(5)

Kao ²to je ve¢ nagla²eno, ukoliko je gre²ka predikcije ℓt = 0 ne vr²e se promenevektora teºine (αt = 0). Ukoliko je gre²ka predikcije ℓt > 0 (i jednaka jeℓt = 1 − yt(w

Tt−1xt)), de�ni²e se Lagranºijan za odgovaraju¢i optimizacioni

problem i zadovoljavanjem KKT uslova dobija promena vektora teºina.Lagranºova funkcija za optimizacioni problem (5), uvo�enjem Lagranºovih mno-ºioca α ≥ 0 i β ≥ 0 za svako od ograni£enja, de�ni²e se na slede¢i na£in:

L(wt, ξ, α, β) =1

2∥wt −wt−1∥2 + Cξ − α(yt(w

Tt xt)− 1 + ξ)− βξ

=1

2∥wt −wt−1∥2 + ξ(C − α− β)− α(yt(w

Tt xt)− 1)

(7)

Lagranºijan PA-I optimizacionog problema

KKT uslovi:

1. Uslovi gradijenta: ∇wtL(wt, ξ, α, β) = 0, ∇ξL(wt, ξ, α, β) = 0

2. Uslovi ortogonalnosti: α(yt(wTt xt)− 1 + ξ) = 0, βξ = 0

3. Uslovi izvodljivosti: yt(wTt xt)− 1 + ξ ≥ 0, ξ ≥ 0

4. Uslovi nenegativnosti Lagranºovih multiplikatora: α ≥ 0, β ≥ 0

Kao i u slu£aju PA Lagranºijana, iz prvog uslova gradijenta (parcijalni izvodLagranºijana po wt jednak je nuli)

∂L(wt, ξ, α, β)

∂wt= wt −wt−1 − αytxt = 0

dobijamo wt = wt−1 + αtytxt.Iz drugog uslova gradijenta (parcijalni izvod Lagranºijana po ξ jednak je nuli)sledi:

∂L(wt, ξ, α, β)

∂ξ= C − α− β = 0 (8)

Zbog uslova nenegativnosti Lagranºovog mnoºioca β ≥ 0 i uslova (8), vaºi da jeα ≤ C (jer je C strogo pozitivan parametar koji zadajemo). Mogu se razmatratidva mogu¢a slu£aja.

1.Ako jeℓt

∥xt∥2≤ C onda se zamenom (8) u (7), problem svodi na Lagranºijan

za PA optimizacioni problem pa je αt =ℓt

∥xt∥2.

2.Ako jeℓt

∥xt∥2> C ovaj uslov se moºe preformulisati na slede¢i na£in:

C∥xt∥2 < 1− yt(wTt−1xt) (9)

Iz uslova izvodljivosti vaºi da je 1 − yt(wTt xt) ≤ ξ, pa kombinuju¢i ovaj uslov

sa uslovom iz (9), dobijamo:

C∥xt∥2 − α∥xt∥2 ≤ ξ

Page 14: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

2 Inkrementalno u£enje Pasivnog-Agresivnog algoritma 13

Koriste¢i raniji zaklju£ak da je α ≤ C dobija se ξ > 0, a zbog KKT uslovaortogonalnosti vaºi da je ξβ = 0, pa zaklju£ujemo da mora biti β = 0. Vra£aju¢i

se na jednakost (8) dobija se da je α = C. Dakle, u slu£aju da jeℓt

∥xt∥2> C,

optimalni izbor je α = C.Objedinjuju¢i oba dobijena slu£aja, αt za PA-I se de�ni²e na slede¢i na£in

αt = min

{C,

ℓt∥xt∥2

}Zaklju£ujemo da je promena vektora teºine za PA-I algoritam ista kao promenavektora teºine za PA algoritam ograni£ena parametrom C.

Re²avanje optimizacionog problema PA-II(6)

Za slu£aj kada je ℓt > 0 u PA-II algoritmu, Lagranºova funkcija za optimi-zacioni problema (6), uvo�enjem Lagranºovog mnoºioca α ≥ 0, glasi:

L(wt, ξ, α) =1

2∥wt −wt−1∥2 + Cξ2 − α(yt(w

Tt xt)− 1 + ξ) (10)

Lagranºijan PA-II optimizacionog problema

KKT uslovi:

1. Uslov gradijenta: ∇wtL(w, ξ, α) = 0, ∇ξL(wt, ξ, α) = 0

2. Uslov ortogonalnosti (komplementarnosti): α(yt(wTt xt)− 1 + ξ) = 0

3. Uslovi izvodljivosti (originalna ograni£enja): yt(wTt xt)− 1 + ξ ≥ 0

4. Uslovi nenegativnosti Lagranºovih multiplikatora: α ≥ 0

Kao i u prethodna dva slu£aja za PA i PA-I Lagranºijane, iz prvog uslovagradijenta (parcijalni izvod Lagranºijana (10) po wt jednak je nuli)

∂L(wt, ξ, α)

∂wt= wt −wt−1 − αytxt = 0

dobijamo wt = wt−1 + αtytxt.Iz drugog uslova gradijenta (parcijalni izvod Lagranºijana po ξ jednak je nuli)sledi:

∂L(wt, ξ, α)

∂ξ= 2Cξ − α = 0 ⇒ ξ =

α

2C

Zamenom ξ i wt−1 u (10), dobija se slede¢i Lagranºijan:

L(α) = α2

2

(∥xt−1∥2 +

1

2C

)− α(1− yt(wt−1xt))

Izjednja£avanjem parcijalnog izvoda prethodnog Lagranºijana sa nulom, do-bijmo vrednost za parametar α:

0 =∂L(α)∂α

= α

(∥xt∥2 +

1

2C

)− (1− yt(w

Tt xt)) ⇒ α =

1− yt(wTt xt)

∥xt∥2 + 12C

Po²to je predpostavka bila da je ℓt > 0, onda je ℓt = 1−yt(wTt xt). Objedinjuju¢i

slu£ajeve kada je ℓt = 0 (kada vaºi da je wt = wt−1) i ℓt > 0, dobijamo α zaPA-II algoritam:

αt =ℓt

∥xt∥2 + 12C

Page 15: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

2 Inkrementalno u£enje Pasivnog-Agresivnog algoritma 14

Algorithm 2.5: Pasivni-Agresivni algoritam(binarni)

INICIJALIZACIJA : w0 = (0, . . . , 0), parametar agresivnosti C > 0for t = 1, 2, . . . , T

- dobija ulazni uzorak xt ∈ R- vr²i predikciju oznake klase: yt = sign(wT

t−1xt)- dobija ispravnu oznaku klase: yt ∈ {−1,+1}- izra£unava gre²ku predikcije: ℓt = max{0, 1− yt(w

Tt−1xt)}

if ℓt > 0

1. postavi:

αt =ℓt

∥xt∥2(PA)

αt = min

{C,

ℓt∥xt∥2

}(PA-I)

αt =ℓt

∥xt∥2 + 12C

(PA-II)

2. koriguj vektor teºine:{wt = wt−1 + αtytxt

2.3 Vi²eklasni Pasivni-Agresivni algoritam

U ovom odeljku bi¢e razmatran inkrementalni (sekvencijalni) vi²eklasni PAalgoritam kojim se trenira klasi�kator, na kona£nom skupu uzoraka za treniranjeT = {(xn, yn)}Nn=1. Klasi�kator se trenira na sekvenci uzoraka S = {(xt, yt)}Tt=1,pri £emu se, u svakom koraku t, trening uzorak (xt, yt) bira slu£ajno iz skupa{(xn, yn)}Nn=1. Slu£ajni izbor implementiramo slu£ajnim permutacijama pri sva-kom prolasku kroz skup T.

2.3.1 Izvo�enje analiti£kog izra£unavanja promene parametra vek-tora teºine kod vi²eklasnog PA-I algoritma

Sekvenca uzoraka S = {(xt, yt)}Tt=1 je skup uzoraka na kojima se vr²i sekven-cijalno treniranje klasi�katora pri £emu je xt ∈ RD ulazni vektor karakteristika,dok je yt ∈ Y = {1, 2, . . . ,K} labela klase uzorka. Treniranje klasi�kacionogmodela inkrementalnim algoritmom u£enja, za uzork (xt, yt) opisuje se slede¢improblemom kvadratnog programiranja pod zadatim ograni£enjima:

arg minwt,y , ξ

1

2

K∑y=1

∥∥wt,y −wt−1,y

∥∥2 + Cξ (11)

s.t. wTt,yt

xt −wTt,yxn ≥ 1− ξ, ∀y = yt, y ∈ {1, 2, . . . ,K}

ξ ≥ 0

Page 16: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

2 Inkrementalno u£enje Pasivnog-Agresivnog algoritma 15

Uvo�enjem funkcije F : RD × R → RK·D, de�ni²u¢i je kao funkciju karakteri-stika:

F (xt, y) =

xtI(1, y)xtI(2, y)

...xtI(K, y)

pri £emu je I(k, y) indikatorska funkcija, de�nisana sa:

I(k, y) ={

1, ako je k = y0, ako je k = y

problem (11) se svodi na slede¢i optimizacioni problem:

arg minwt ,ξ

1

2

∥∥wt −wt−1

∥∥2 + Cξ (12)

s.t. wTF (xt, yt)−w

TF (xt, y) ≥ ∆ty − ξ, ∀y ∈ {1, 2, . . . ,K}

pri £emu je w =

w1

w2

...wt

i ∆ty = ∆(yt, y) =

{1, ako je yt = y0, ako je yt = y

Zadatim ograni£enjima u problemima (11) i (12) de�ni²e se zahtev da odzivklasi�katora za ulazni primer xt i ta£nu klasu yt bude ve¢i od odziva klasi�katoraza bilo koju drugu (pogre²nu) klasu y ∈ Y = {1, 2, . . . ,K}, tj. da vaºi:

wTF (xt, yt)−w

TF (xt, y) > 0

sa dodatom marginom ∆ty. Na ºalost, promena teºina, tj. nova vrednost teºinaklasi�katora wt dobijena inkrementalnim treniranjem (11) i (12) u koraku t naosnovu trening primera (xt, yt) ne moºe se odrediti analiti£ki u jednom koraku,²to ¢e biti pokazano nadalje.

Potrebni i dovoljni uslovi za postojanje minimuma optimizacionog problema(12) de�nisani su KKT uslovima [3], koje kao i do sada zadajemo na osnovuLagranºijana primarnog problema. Zbog toga ¢emo problem (12) prede�nisatiu obliku slede¢eg primarnog problema:

arg minwt ,ξ

1

2

∥∥wt −wt−1

∥∥2 + Cξ (13)

s.t. wTt ∆Ft(y) ≥ ∆ty − ξ, ∀y ∈ {1, 2, . . . ,K}

pri £emu je ∆Ft(y) = F (xt, yt)− F (xt, y)

Nalaºenje optimuma problema (13) uvo�enjem Lagranºovih mnozioca αy svodise na nalaºenje optimuma Lagranºijana:

L(wt, ξ, αy) =1

2

∥∥wt −wt−1

∥∥2 + Cξ −K∑

y=1

αy(wTt ∆Ft(y)−∆ty + ξ) (14)

Karush-Khun-Tucker-ovi uslovi za Lagranºijana (14) se grupi²u na slede¢i na£in:

Page 17: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

2 Inkrementalno u£enje Pasivnog-Agresivnog algoritma 16

1. Uslovi gradijenta

∂L(wt, ξ, αy)

∂wt+1= 0 ⇒ wt −wt−1 −

K∑y=1

αy∆Ft(y) = 0 ⇒

wt = wt−1 +K∑

y=1

αy∆Ft(y)

∂L(wt, ξ, αy)

∂ξ= 0 ⇒ C −

K∑y=1

αy = 0 ⇒

2. Uslovi ortogonalnosti

αy(wTt ∆Ft(y)−∆ty + ξ) = 0, ∀y ∈ {1, 2, . . . ,K}

3. Uslovi izvodljivosti (uslovi originalnih ograni£enja)

wTt ∆Ft(y)−∆ty + ξ ≥ 0, ∀y ∈ {1, 2, . . . ,K}

4. Uslov nenegativnosti Lagranºovog mnoºioca

αy ≥ 0

Iz drugog uslova gradijenta, sledi C =

K∑y=1

αy, pa najmanji broj Lagranºovih

mnoºilaca koji se istovremeno mogu promeniti je dva, tako da bi, na primer,algoritam sekvencijalne minimalne optimizacije SMO [4] bio jedan od na£inanalaºenja optimuma. Kako bi izbegli primenu SMO algoritma i omogu£ili jedno-stavno analiti£ko izra£unavanje nove vrednosti parametra wt na trening uzorku(xt, yt), uvodimo slede¢u aproksimaciju optimizacionog problema (14):

arg minwt ,ξ

1

2

∥∥wt −wt−1

∥∥2 + Cξ (15)

s.t. wTt ∆Ft(y) ≥ ∆ty − ξ, y = y

ξ ≥ 0

pri £emu je y = arg maxy∈{1,...,K}

{w

TF (xt, y) + ∆ty

}Optimum problema (19) nalazi se de�nisanjem slede¢eg Lagranºijana:

L(wt, ξ, α, β) =1

2

∥∥wt −wt−1

∥∥2 + Cξ − α(wTt ∆Ft(y)−∆ty + ξ)− βξ (16)

KKT uslovi za Lagranºijan (16):

1. Uslovi gradijenta

∂L(wt, ξ, α, β)

∂wt= 0 ⇒ wt = wt−1 + α∆Ft(y)

∂L(wt, ξ, α, β)

∂ξ= 0 ⇒ C − α− β = 0

Page 18: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

2 Inkrementalno u£enje Pasivnog-Agresivnog algoritma 17

2. Uslovi ortogonalnosti

α(wTt ∆Ft(y) + ξ −∆ty) = 0

βξ = 0

3. Uslovi izvodljivosti

wTt ∆Ft(y) + ξ −∆ty ≥ 0, ξ ≥ 0

4. Uslovi nenegativnosti Lagranºovih mnoºilaca

α ≥ 0, β ≥ 0

Iz drugog uslova gradijenta i uslova nenegativnosti Lagranºovih mnoºilaca, do-bijamo slede¢a ograni£enja za Lagranºove mnoºioce:

0 ≤ α ≤ C, 0 ≤ β ≤ C

Na osnovu prethodnih KKT uslova i ograni£enja za Lagranºove mnoºioce, do-bijaju se slede¢e tri mogu¢nosti:

1. ako je α = 0, na osnovu drugog uslova gradijena vaºi da je β = C, a izdrugog uslova ortogonalnosti sledi da je ξ = 0.

Primenjuju¢i ove identitete i uz podse¢anje da je ∆ty = 1 za yt = y,

iz prvog uslova gradijenta sledi

wt = wt−1,

a iz prvog uslova ortogonalnosti sledi da je

wTt−1∆Ft(y)− 1 ≥ 0, odnosno, wT

t−1∆Ft(y) ≥ 1

2. ako je 0 < α < C, na osnovu drugog uslova gradijena vaºi 0 < β < C, aiz drugog uslova ortogonalnosti sledi da je ξ = 0.

Ponovo, primenjuju¢i ove identitete i prvog uslova ortogonalnosti, moºemozapisati

wt−1∆Ft(y) = 1 ⇒ wt−1∆Ft(y) + α∆Ft(y)T∆Ft(y) = 1

²to je ekvivalentno slede¢em:

(wt−1 + α∆Ft(y))T∆Ft(y) = 1

Kona£no dobijamo vrednost za α:

α =1−wT

t−1∆Ft(y)

∥∆Ft(y)∥2

Page 19: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

2 Inkrementalno u£enje Pasivnog-Agresivnog algoritma 18

3. ako je α = C, na osnovu drugog uslova gradijenta vaºi β = 0, a iz drugoguslova ortogonalnosti sledi da je ξ > 0.

Ponovo, primenjuju¢i ove identitete i prvi uslov ortogonalnosti, moºemozapisati

wt−1∆Ft(y) = 1− ξ ⇒ wt−1∆Ft(y) + α∆Ft(y)T∆Ft(y) = 1− ξ

²to je ekvivalentno slede¢em:

(wt−1 + α∆Ft(y))T∆Ft(y) = 1− ξ ≤ 1

U ovom slu£aju za α vaºi:

α = C ≤1−wT

t−1∆Ft(y)

∥∆Ft(y)∥2

Kona£no, na osnovu datog uzorka (xt, yt) za

y = arg maxy∈{1,...,K}

{w

TF (xt, y) + ∆ty

}ukoliko je y = yt dobija se analiti£ki izraz za promenu vektora teºina

wt = wt−1 + α∆Ft(y)

pri £emu je:

α = max

{0,min

{1−wT

t−1∆Ft(y)

∥∆Ft(y)∥2, C

}}

2.3.2 Analiza granice gre²ke vi²eklasnog PA i PA-I algoritma

U ovom odeljku analiziramo granicu gre²ke algoritama sekvencijalnog treni-ranja vi²eklasnog klasi�katora. Sekvenca uzoraka S = {(xt, yt)}Tt=1 na kojimase vr²i sekvencijalno treniranje klasi�katora dobijena je slu£ajnim izborom uzo-raka u svakom koraku, iz kona£nog skupa trening uzoraka T = {(xn, yn)}Nn=1.Klasi�kator se opisuje slede¢im problemom kvadratnog programiranja:

arg minwt,ξ

1

2

∥∥wt −wt−1

∥∥2 + Cξ (17)

s.t. wTt ∆Ft(y) + ξ ≥ ∆ty, ∀y = yt, y ∈ 1, 2, . . . ,K

ξ ≥ 0

pri £emu je:∆Ft(y) = F (xt, yt)− F (xt, y)

y = arg maxy∈{1,2,...,K}

{w

Tt F (xt, y)

}U prethodnom poglavlju smo videli da re²avanjem ovog optimizacionog pro-

blema, dobijamo izraz za promene vektora teºina klasi�katora

wt = wt−1 + αt∆Ft(y) (18)

pri £emu je:

αt = min

{C,

ℓt∥∆Ft(y)∥2

}(PA-I) (19)

Page 20: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

2 Inkrementalno u£enje Pasivnog-Agresivnog algoritma 19

gde je ℓt gre²ka predikcije na trening uzorku (xt, yt), za xt ∈ RD, yt = {1, 2, . . . ,K},de�nisana sa:

ℓt = ℓt(wt−1;xt, yt, y) = max

{0, 1−w

Tt−1∆Ft(y)

}(20)

U slu£aju da se radi o idealno separabilnom problemu kada za optimalnuvrednost vektora teºina w∗ vaºi wT

∗ ∆Ft(y) ≥ 0, za ∀y ∈ {1, 2, . . . ,K} problem(17) se redukuje u slede£i oblik:

arg minwt

1

2

∥∥wt −wt−1

∥∥2 (21)

s.t. wTt ∆Ft(y) ≥ ∆ty

pri £emu je ∆ty =

{1, ako je y = yt0, ako je y = yt

Tada se u algoritmu treniranja (21) menja samo izraz za odre�ivanje Lagranºo-vog mnoºilaca

αt =ℓt

∥∆Ft(y)∥2(PA) (22)

dok preostali izrazi (18) i (20) koji de�ni²u iterativni postupak treniranja ostajunepromenjeni (analogno slu£aju za binarni PA i PA-I, promena vektora teºineza PA-I ista je kao promena vektora teºine za PA ograni£ena parametrom C).

Ozna£imo sa ℓ∗t gre²ku proizvoljnog vi²eklasnog klasi�katora £iji je vektorteºina w ∈ RK·D, pri £emu je K ukupan broj klasa, D dimenzija ulaznogprostora karakteristika uzoraka, i de�ni²emo:

ℓ∗t = ℓ∗t (w;xt, yt, y) = max{0, 1−w

T∆Ft(y)}

Slede¢a Lema bi¢e kori²¢ena pri dokazivanju teoreme o gornjoj granici gre²kevi²eklasnog klasi�katora.

Lema 1. Neka je sekvenca uzoraka {(xt, yt)}Tt=1, xt ∈ RD, yt ∈ {1, 2, . . . ,K}kori²¢enih za treniranje vi²eklasnog klasi�katora primenom algoritma (17), ili uslu£aju da se radi o idealno separabilnom problemu primenom algoritma (21).Tada, koriste¢i prethodno de�nisane simbole ℓt i ℓ

∗t , za bilo koji vektor

w ∈ RK·D, vaºi:

T∑k=1

αt(2 · (ℓt − ℓ∗t ))− αt∥∆Ft(y)∥2 ≤ ∥w∥2

Dokaz. De�ni²imo ∆t = ∥wt−1 −w∥2 + ∥wt −w∥2,i sumiranjem po t ∈ {1, 2, . . . , T} dobijamo:

T∑t=1

∆t =

T∑t=1

∥wt−1 −w∥2 + ∥wt −w∥2 = ∥w0 −w∥2 + ∥wT −w∥2

Kako je w0 = 0 i ∥wT −w∥2 zaklju£ujemo da je suma

T∑t=1

∆t ograni£ena odozgo

sa ∥w∥2:T∑

t=1

∆t ≤ ∥w∥2

Page 21: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

2 Inkrementalno u£enje Pasivnog-Agresivnog algoritma 20

Pokaºimo sada da je suma

T∑t=1

∆t tako�e ograni£ena odozdo. Za slu£aj da

ograni£enjew

Tt ∆Ft(y) ≥ 1

nije na�eno, ℓt = 0, pa je αt = 0, odakle sledi ∆t = 0. U svim koracimaalgoritma treniranja, kada je

wTt ∆Ft(y) < 1

vaºi:wt = wt−1 + αt∆Ft(y)

pa je ∆t dato sa:

∆t = ∥wt−1 −w∥2 + ∥wt −w |2 =

∥wt−1 −w∥2 + ∥wt−1 −w∥2 − 2 · αt(wt−1 −w)T∆Ft(y)− α2t ∥Ft(y)∥2 =

−2 · αt(wt−1 −w)T∆Ft(y)− α2t∥∆Ft(y)∥2

Po²to je ℓt > 0, onda jeℓt = 1−w

Tt−1∆Ft(y)

odnosnow

Tt−1∆Ft(y) = 1− ℓt

Tako�e na osnovu de�nicije gre²ke klasi�katora ℓ∗t isklju£ujemo

ℓ∗t = max{1−w

T∆Ft(y), 0}

tj. wT∆Ft(y) ≥ 1− ℓt. Kako je:

∆t = −2 · αtwt−1∆Ft(y) + 2αtwT∆Ft(y)− α2

t∥∆Ft(y)∥2 ≥

−2 · αt(1− ℓt) + 2αt(1− ℓ∗t )− α2t ∥∆Ft(y)∥2 =

αt(2 · (ℓt − ℓ∗t )− α2t ∥∆Ft(y)∥2)

Posle sumiranja po k, dobijamo:

T∑t=1

αt

(2 · (ℓt − ℓ∗t )− αt · ∥∆Ft(y)∥2

)≤

T∑t=1

∆t ≤ ∥w∥2

£ime je lema dokazana.Kori²¢enjem prethodne leme, bi¢e dokazane slede¢e teoreme o gornjoj granici

gre²ke klasi�katora. Prva teorema vaºi za slu£aj kada imamo idealno separabilnepodatke, tj. kada postoji vektor w∗ ∈ RK·D takav da je:

wT∗ F (xt, yt) ≥ w

T∗ F (xt, y) + 1, ∀y = yt, ∀t ∈ {1, 2, . . . ,K},

Teorema 1. Neka je {(xt, yt)}Tt=1 sekvenca primera za treniranje, pri £emu jext ∈ RD ulazni vektor karakteristika u koraku t i yt ∈ {1, 2, . . . ,K}. Neka je

∥∆Ft(y)∥2 ≤ R2, ∀k, ∀y = yt

pri £emu je:∆Ft(y) = F (xt, yt)− F (xt, y), y = yt,

Page 22: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

2 Inkrementalno u£enje Pasivnog-Agresivnog algoritma 21

Predpostavimo da postoji vektor w∗ takav da vaºi:

ℓ∗t = max{0, 1−w

T∗ ∆Ft(y)

}= 0, ∀t, ∀y = yt

Tada je minimalna kvadratna gre²ka klasi�kacije na sekvenci primera {(xt, yt)}Tt=1

ograni£ena odozgo:T∑

t=1

ℓ2t ≤ ∥w∗∥2 ·R2

Dokaz. Po²to je ℓ∗t = 0 za ∀t ∈ {1, 2, . . . , T} na osnovu Leme, vaºi:

T∑t=1

αt

(2 · ℓt − αt · ∥∆w∗(y)∥2

)≤ ∥wt∥2

Po²to je u slu£aju idealno separabilnih podataka:

αt =ℓt

∥∆Ft(y)∥2

onda vaºi:T∑

t=1

ℓ2t∥∆Ft(y)∥2

≤ ∥w∗∥2

Primenjuju¢i polaznu predpostavku ∥∆Ft(y)∥2 ≤ R2, posle mnoºenja nejedna-kosti sa R2 dobijamo:

T∑t=1

ℓ2t ≤ ∥w∗∥2 ·R2

U slu£aju kada skup uzoraka za treniranje nije idealno separabilan, vaºislede¢a teorema o gornjoj granici broja gre²aka, tj. broja uzoraka za koje vaºenejednakosti:

wTt−1∆Ft(y) < 0 i ℓt = 1−w

Tt−1∆Ft(y) > 1

Teorema 2. Neka je {(xt, yt)}Tt=1 sekvenca primera za treniranje, pri £emu jext ∈ RD ulazni vektor karakteristika u koraku t i yt ∈ {1, 2, . . . ,K}. Neka je:

∥∆Ft(y)∥2 ≤ R2,

pri £emu je:∆Ft(y) = F (xt, yt)− F (xt, y), y = yt,

Neka je w∗ ∈ RK·D proizvoljan vektor. Broj gre²aka klasi�kacije u toku treni-ranja, primenom sekvencijalnog algoritma (17)

wt = wt−1 + αt∆Ft(y)

i

αt = min

{C,

ℓt∥∆Ft(y)∥2

}ograni£en je odozgo. Odnosno, ako jeM broj uzoraka za koje vaºi wT

t−1∆Ft(y) <0, tada je

M ≤ max

{R2,

1

C

}·(∥w∥2 + 2C

T∑t=1

ℓ∗t

)

Page 23: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

2 Inkrementalno u£enje Pasivnog-Agresivnog algoritma 22

pri £emu je

ℓ∗t = max

{0, 1−w

T∗ ∆Ft(y)

}Dokaz. Ukoliko klasi�kator napravi gre²ku pri klasi�kaciji uzorka u koraku t,(wT

t−1∆Ft(y) < 0) tada je

ℓt = 1−wTt−1∆Ft(y) > 1

Koriste¢i polaznu predpostavku ∥∆Ft(y)∥2 ≤ R2 i de�niciju Lagranºovog mno-ºioca (20) zaklju£ujemo da vaºi:

αt · ℓt = min

{ℓt

∥∆Ft(y)∥2, C

}· ℓt ≥ min

{1

R2, C

}Po²to je αtℓt uvek nenegativno, vaºi:

M ·min{

1

R2, C

}≤

T∑t=1

αt · ℓt (23)

Kako je, u slu£aju kada treniramo klasi�kator na primerima koji nisu idealnoseparabilni, Lagranºov mnoºilac αt ograni£en odozgo, tj. αt < C, onda vaºi:

αt · ℓ∗t ≤ C · ℓ∗t i αt · ∥∆Ft(y)∥2 ≤ ℓ∗t

αt = min

{ℓt

∥∆Ft(y)∥2, C

}Primenjuju¢i prethodne nejednakosti u Lemi, dobijamo za proizvoljan vektorw ∈ RK·D, slede¢e:

T∑t=1

αtℓt ≤ ∥w∗∥2 + 2C

T∑t=1

ℓ∗t (24)

Na osnovu (23) i (24), zaklju£ujemo:

M ·min{

1

R2, C

}≤ ∥w∗∥2 + 2C

T∑t=1

ℓ∗t

a posle mnoºenja poslednje nejednakosti sa max

{1

R2, C

}, dobijamo tvr�enje

teoreme:

M ≤ max

{R2,

1

C

}·(∥w∗∥2 + 2C

T∑t=1

ℓ∗t

)

Page 24: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

2 Inkrementalno u£enje Pasivnog-Agresivnog algoritma 23

Algorithm 2.6: Pasivni-Agresivni algoritam(viseklasni)

INICIJALIZACIJA : w0 = (0, . . . , 0), parametar agresivnosti C > 0for t = 1, 2, . . . , T

- dobija ulazni uzorak xt ∈ R- vr²i predikciju klase: y = arg max

y∈{1,2,...,K}

{w

Tt F (xt, y)

}- dobija ispravnu oznaku klase: yt ∈ Y = {1, 2, . . . ,K}

- izra£unava gre²ku predikcije: ℓt = ℓt(wt−1;xt, yt, y) = max

{0, 1−w

Tt−1∆Ft(y)

}∆Ft(y) = F (xt, yt)− F (xt, y)

if ℓt > 0

1. postavi:

αt =ℓt

∥∆Ft(y)∥2(PA)

αt = min

{C,

ℓt∥∆Ft(y)∥2

}(PA-I)

αt =ℓt

∥∆Ft(y)∥2 + 12C

(PA-II)

2. koriguj vektor teºine:{wt = wt−1 + αt∆Ft(y)

Page 25: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

3 Klasi�katori sekvence tokena

Klasi�kacija sekvence (eng. Sequence Labeling) je problem koji se £esto istra-ºuje i primenjuje tokom re²avanja zadataka inteligentne obrade teksta. Zadatakklasi�katora sekvence je da ozna£i (mapira) sekvencu (listu) ulaznih podataka usekvencu koja sadrºi izlazne klase. Problemi koji se £esto re²avaju na taj na£iniz oblasti obrade teksta su problemi Prepoznavanja imenovanih entiteta (eng.NER), Sintaksna analiza teksta (eng. POS tagging, Chunking), Semanti£koparsiranje teksta i drugi problemi. Klasi�kacija sekvence zavisi ne samo od po-dataka koje ima ulazna sekvenca nego i od oznaka prethodno obra�ene sekvence.Postoje mnogi metodi koji re²avaju problem klasi�kacije sekvence, kao ²to su:Slu£ajna Uslovna Polja (eng. Conditional random �eld (CRF)[10]), SkriveniMarkovljev model (eng. Hidden Markov Model (HMM)[11]), Metod Maksimizi-ranja Entropije (eng. Maximum Entropy Method (MaxEnt)[12], [13]) i drugi.Sekvencu i klasi�kaciju sekvence de�ni²emo na slede¢i na£in:

De�nicija 1. Sekvenca x predstavlja ure�enu listu elemenata x = (x1, x2, . . . , xt).

De�nicija 2. Klasi�kacija sekvence x ulaznih primera je traganje za se-kvencom izlaznih oznaka klasa y = (y1, y2, . . . , yt), koja se dodeljuje sekvenci x,pri £emu svaki element yi pripada skupu oznaka klasa Y = {1, 2, . . . ,K}.

Postoje dva dominantna pristupa klasi�kaciji sekvence: probabilisti£ki i de-terministi£ki. Oba pristupa imaju zajedni£ki cilj: prona¢i najbolju sekvencuklasa za ulaznu sekvencu primera, pri £emu koriste klasi�katore i algoritme za-klju£ivanja.

3.0.3 Probabilisti£ki klasi�katori sekvence

Probabilisti¢ki klasi�katori su modeli de�nisani na osnovu verovatno¢a ras-podela ulaznih sekvenci i sekvenci oznaka klasa. Algoritam zaklju£ivanja, kojikoristi probabilisti£ki klasi�kator kao rezultat daje sekvencu oznaka klasa y =(y1, y2, . . . , yt), za datu ulaznu sekvencu x = (x1, x2, . . . , xt), za koju je uslovnaverovatno¢a P (y|x) maksimalna

y∗ = arg maxy∈Y (x)

P (y|x)

pri £emu je Y (x) prostor svih mogu¢ih sekvenci labela klasa nad sekvencomulaza x. Probabilisti£ki klasi�katori se dele na generativne i diskriminativne.Naj£e²¢i generativni model klasi�katora koji se koristi je Skriveni MarkovljevModel, dok se od diskriminativnih modela izdvajaju model Maksimiziranja En-tropije i model Uslovnih Slu£ajnih Polja.

Skriveni Markovljev Model, kao generativni model klasi�katora, podra-zumeva da se maksimizira zdruºena verovatno¢a P (x,y), pri £emu je

y∗ = arg maxy∈Y (x)

P (x,y)

zato ²to je

P (y|x) = P (x,y)

P (x)

a P (x) predstavlja konstantu za maksimiziranje po y ∈ Y (x). Zdruºena vero-vatno¢a se dobija na osnovu jednakosti

P (x,y) =

T∏t=1

p(xt|yt)p(yt|yt−1)

24

Page 26: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

3 Klasi�katori sekvence tokena 25

Kako je neophodno poznavanje verovatno¢e de�nisanja ulaznog simbola xt, akoje poznata klasa yt, ovakav model se naziva generativni. Pored verovatno¢ede�nisanja ulaznog simbola, potrebno je i da se procene verovatno¢e frekvencije,prelaza iz klase yt−1 u klasu yt (primeri algoritama treniranja ovog modela[11]).

Za razliku od generativnih, diskriminativni modeli se zasnivaju na direkt-nom maksimiziranju uslovne verovatno¢e, tj. optimalne sekvence labela klasadobijaju se na osnovu:

y∗ = arg maxy∈Y (x)

P (y|x) = arg maxy∈Y (x)

T∏t=1

p (yt|yt−1, c(xt))

gde smo sa c(xt) predstavili prozor kona£ne duºine u okolini trenutnog ulaznogsimbola xt (kontekst re£i xt):

(xt−k, xt−k+1, . . . , xt, xt+1, . . . , xt+k)

dozvoljavaju¢i pri tome i mogu¢nost specijalnih slu£ajeva (kontekst se ne uzimau obzir ili kontekst je cela sekvenca)

c(xt) = xt ili c(xt) = x,x = (x1, x2, . . . , xt).

Model Maksimalne Entropije je diskriminativni model koji radi po tomprincipu. Njegov funkcionalni oblik dobija se iz uslova da za p(yt|yt−1, c(xt))treba odabrati model koji ima maksimalnu entropiju ali je istovremeno konzi-stentan sa primerima koji se koriste za treniranje. Na osnovu takvih ograni£enjadobija se (13):

p (yt|yt−1, c(xt)) =

exp∑i

wifi(yt, yt−1, c(xt))

K∑t=1

exp∑

iwifi(yt, yt−1, c(xt))

pri £emu fi(yt, yt−1, c(xt)) predstavlja i − tu komponentu vektora karakteri-stika tranzicije (yt−1 7→ yt). Primer ovakve funckije moºe biti slede¢a binarnafunkcija:

fi(yt, yt−1, c(xt)) =

{1, yt = NAME, yt−1 = OTHER, xt = �Petar�, xt−1 = �Mc.�

0, u ostalim slu£ajevima

Uslovna Slu£ajna Polja (po prvi put predstavljena u radu [10]), pred-stavljaju model kojim se izra£unava uslovna verovatno¢a p(y|x), pri £emu jeraspodela predstavljena kao neusmereni graf, u kome £vorovi koji predstavljajuslu£ajne promenljive pripadaju razli£itim granama grafa ukoliko su me�usobnonezavisni. Faktorizacija je izvr²ena tako da se uslovno nezavisni £vorovi (slu-£ajne promenjive), ne javljaju u istom faktoru, ²to zna£i da pripadaju razli£itimklikama. Specijalni oblik uslovnih slu£ajnih polja koji ima strukturu linearnoglanca, modelira izlazne promenljive kao sekvencu, pa je uslovna verovatno¢ap(y|x) predstavljena kao:

p(y|x) = 1

Z(x)

T∏t=1

ψt(x,y), pri £emu je Z(x) =∑

y∈Y (x)

T∏t=1

ψt(x,y)

Naj£e²¢i oblik predstavljanja faktora je eksponencijalna funkcija:

ψt(x,y) = exp∑i

wifi(yt, yt−1,x)

Page 27: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

3 Klasi�katori sekvence tokena 26

pa dobijamo kona£no uslovno Markovljevo polje koje predstavlja linearni lanac:

p(y|x) =

T∏t=1

exp∑i

wifi(yt, yt−1,x)

∑y∈Y (x)

T∏t=1

exp∑i

wifi(yt, yt−1,x)

Napomenimo da za razliku od modela Maksimalne entropije, u kojima se nor-malizacija vr²i po svim mogu¢im klasama slu£ajne promenljive yt za tranziciju(yt−1 7→ yt), u modelu Uslovnih slu£ajnih polja normalizacija se vr²i po svimmogu¢im sekvencama labela klasa za datu sekvencu ulaza y ∈ Y (x).

3.0.4 Deterministi£ki klasi�katori sekvence

Za razliku od probabilisti£kog pristupa gde koristimo zdruºene ili uslovne ras-podele verovatno¢a sekvence ulaza x i sekvence klasa y

• za generativne modele: arg maxy∈Y (x)

P (x,y),

HMM: p(xt|yt), p(yt|yt−1), xt ∈ x i yt ∈ y

• za diskriminativne modele: arg maxy∈Y (x)

P (y|x),

MaxEnt: p (yt|yt−1, c(xt)), xt ∈ x i yt ∈ y

CRF: p(y|x)

deterministi£ki pristup, kori²¢en u ovom radu, zasniva se na slede¢oj ideji:

• tranzicije (yt−1 7→ yt) ili £itave sekvence oznake klasa y = (y1, y2, . . . , yt)su podjednako mogu¢i ishodi procesa klasi�kacije

• izvr²imo sortiranje mogu¢ih izlaza po teºinama

• teºine su samo proporcionalne verovatno¢ama (i eventualno preslikane nabrojnoj pravoj)

• izvr²imo obeleºavanje jednog ili vi²e mogu¢ih ishoda sa najve¢im teºinama

Prednost ovakvog pristupa u odnosu na probabilisti£ke je daleko jednostavnijii brºi algoritam treniranja. Pri tome oba pristupa imaju vrlo sli£nu ta£nostklasi�kacije.Polaze¢i od jednakosti:

y∗ = arg maxy∈Y (x)

P (y|x) = arg maxy∈Y (x)

T∏t=1

p (yt|yt−1, c(xt))

i zbog monotonosti funkcije logaritma vaºi:

y∗ = arg maxy∈Y (x)

logT∏

t=1

p (yt|yt−1, c(xt))

Logaritam uslovne raspodele p(y|x) predstavljamo na slede¢i na¢in:

log

T∏t=1

p (yt|yt−1, c(xt)) =

T∑t=1

log p (yt|yt−1, c(xt)) =

Page 28: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

3 Klasi�katori sekvence tokena 27

T∑t=1

∑p,q,o

logP (p|q, o) I[yt = p, yt−1 = q, c(xt) = 0]

pri £emu suma po p, q, o predstavlja sumu po svim mogu¢im trojkama, gde jep mogu¢a vrednost labele klase u koraku t, q mogu¢a vrednost labele klase ukoraku t − 1 a o mogu¢i kontekst u koraku t. Preme²tanjem suma i £lanovadobijamo: ∑

p,q,o

logP (p|q, o)T∑

t=1

I[yt = p, yt−1 = q, c(xt) = 0]

Po²to nas ne interesuje procena uslovne verovatno¢e sekvence (ili njenog lo-garitma), ve¢ teºina proporcionalna logaritmu verovatno¢e, umesto logaritmalogP (p|q, o) uvodimo parametar w(p,q,o), pri £emu je (p, q, o) indeks ovog pa-rametra u vektoru sli£nih parametara. Umesto I[yt = p, yt−1 = q, c(xt) = 0]uvodimo binarnu funkciju

f(p,q,o)(yt, yt−1, c(xt)) =

{1, ako je yt = p, yt−1 = q, c(xt) = o0, u ostalim slu£ajevima

dok sa F(p,q,o)(yt, yt−1, c(xt)) ozna£avamo slede¢u sumu:

F(p,q,o)(yt, yt−1, c(xt)) =T∑

t=1

f(p,q,o)(yt, yt−1, c(xt))

koja predstavlja broj doga�aja da se tranzicija iz klase q u klasu p odigrava ukontekstu o za par sekvenci (x,y). Sada vaºi:

log P (y|x) ∝∑p,q,o

w(p,q,o)F(p,q,o)(x,y) = wTF (x,y)

a optimalnu sekvencu dobijamo sa:

y∗ = arg maxy∈Y (x)

wTF (x,y) = arg max

y∈Y (x)

T∑t=1

wT f(p,q,o)(yt, yt−1, c(xt))

Algoritam dinami£kog programiranja pomo¢u koga dobijamo optimalnu sekvenculabela klasa y∗, sli£an je algoritmu Viterbijevog dekodiranja [11], i ima sloºe-nost K2 · T , gde je K broj mogu¢ih klasa a T duºina sekvence. Da bi smanjilisloºenost uvodimo slede¢u aproksimaciju:

y∗ = arg

T∑t=1

maxyt

wT f(yt, yt−1, c(xt))

pri £emu je yt−1 labela optimalne klase u koraku t − 1, a skalarni proizvodw

T f(yt, yt−1, c(xt)) predstavlja odziv vi²eklasnog klasi�katora.

Page 29: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

4 Rezultati testiranja

Vi²eklasni Pasivni-Agresivni kasi�kator sekvence opisan u ovom radu prime-njen je na problemu prepoznavanja imenovanih entiteta u teksu. Treniran jei testiran na 3 skupa trening primera, koji predstavljaju dokumente pisane naengleskom, francuskom i holandskom jeziku (engleski korpus ima 1337, francu-ski 2765, holandski 3674 dokumenata). Skup klasa sastoji se od 80 imenovanihentiteta koji mogu biti prepoznati u tekstu. Tabele prikazuju samo 4 entiteta(ime, grad, organizacija i datum) od ukupno 80 imenovanih entiteta koji u£e-stvuju u procesu klasi�kacije. Osim F mere[D2] za svaki od prikazanih entiteta,data je i ukupna prose£na F mera svih entiteta iz korpusa.

Klasi�kator je treniran sa razli£itim vrednostima parametra agresivnosti C.

Pokazuje se[1] da male vrednosti parametra C vode ka sporijem u£enju, odnosnogeneralizaciji, zato ²to se vektori teºina menjaju za male pomeraje. S drugestrane, kada C ima velike vrednosti, u£enje novih primera je znatno brºe ali poceni kasnijeg opadanja e�kasnosti.

Prose£ni broj gre²aka PA-I algoritma

Smanjivanje vrednosti parametra C na primeru Holandskog korpusa (prvatabela) odrazilo se na pobolj²anje performansi klasi�katora i ukupna F mera seod 77% pove¢ala na 83%. Takav uticaj se nije odrazio i na preostala dva tre-ning korpusa (nije do²lo do znatnijih odstupanja performansi), ²to se obja²njava£injenicom da ovi korpusi imaju znatno manji broj dokumenata, pa e�kasnostklasi�katora sa ve¢om vredno²¢u parametra C nije jo² uvek opala.

28

Page 30: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

4 Rezultati testiranja 29

Page 31: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

5 Zaklju£ak

U ovom radu predstavljen je Pasivni-Agresivni algoritam ma²inskog u£enja,£ija je osnovna karakteristika korigovanje ste£enog znanja modela ma²inskogu£enja na osnovu novodobijenih primera (ili samo na osnovu jednog novog pri-mera). Kao takav, spada u grupu inkrementalnih (sekvencijalnih) algoritamau£enja, £ije su prednosti (u odnosu na �batch� algoritme) brºa po£etna kon-vergencija, brºe izra£unavanje promene parametara modela ma²inskog u£enjai zna£ajno manji memorijski resursi, ²to ih £ini mnogo pogodnijim za primenuna realnim problemima. Pogodni su za re²avanje problema koji zahtevaju pro-cesiranje velike koli£ine podataka, kao ²to je to slu£aj pri procesiranju teksta.Algoritam je dobio ime Pasivni-Agresivni, jer svojim mehanizmom u£enja po-stiºe kompromis izme�u £este promene parametara modela ma²inskog u£enjaprilikom dobijanja novih primera (agresivnost) i zadrºavanja prethodno nau-£ene informacije (pasivnost). U realnim slu£ajevima, kada podaci nad kojimase vr²i u£enje imaju dosta ²uma, algoritam moºe drasti£no da promeni vektormodela ma²inskog u£enja u sasvim pogre²nom smeru, pa se uvode varijante ovogalgoritma, koje imaju blaºe strategije promene.

Algoritam je primenjen na problemu klasi�kacije sekvence tokena, pri £emuje kori²¢en deterministi£ki pristup izgradnje modela klasi�katora. Pored deter-ministi£kog, postoji i probabilisti£ki pristup klasi�kovanja sekvence. Oba pri-stupa imaju zajedni£ki cilj: prona¢i najbolju sekvencu klasa za ulaznu sekvencuprimera, pri £emu koriste klasi�katore i algoritme zaklju£ivanja. Prednost de-terministi£kog pristupa u odnosu na probabilisti£ke je daleko jednostavniji i brºialgoritam treniranja. Pri tome oba pristupa imaju vrlo sli£nu ta£nost klasi�ka-cije.

Algoritmi i modeli ma²inskog u£enja danas imaju ²iroku primenu u inteli-gentnoj obradi teskta. Problemi kao ²to su ekstrakcija informacija iz teksta,prepoznavanje imenovanih entiteta, klasi�kacija dokumenta, semanti£ko i sin-taksno parsiranje i mnogi drugi, zahtevaju poznavanje principa nadgledanogu£enja koji se u svojoj osnovi baziraju na matematici, pre svega statistici i ve-rovatno¢i. Pored toga, £esto puta je neophodno i lingvisti£ko znanje da bi ovakvisistemi imali ²to bolju e�kasnost.

30

Page 32: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

D1

Geometrijska interpretacija linearnih modela

Linearni model klasi�katora koji koristimo de�nisan je linearnom funkcijomy(x) = w

Tx+w0, pri £emu se vektor wT naziva vektor teºina, dok se w0 naziva

pomeraj. Uzorak x se klasi�kuje u klasu C1 ako je y(x) ≥ 0, a u klasu C2 ako jey(x) < 0. U tom slu£aju je granica odlu£ivanja de�nisana sa y(x) = 0. Ukolikodva uzorka x1 i x2 leºe u istoj ravni odlu£ivanja, za njih vaºi y(x1) = y(x2) = 0,pa je wT (x1−x2) = 0. Vektor w je ortogonalan na svaki vektor koji leºi u ravniodlu£ivanja, pa kaºemo da on de�ni²e orijentaciju ravni odlu£ivanja. Sli£no,ukoliko vektor x leºi u ravni odlu£ivanja, onda je y(x) = 0, pa je rastojanje

od koordinatnog po£etka dato sawTx

∥w∥=

−w0

∥w∥. Iz ovog sledi da pomeraj w0

odre�uje lokaciju ravni odlu£ivanja. Vrednost y(x) daje rastojanje r primera x

od ravni odlu£ivanja, odnosno r =y(x)

∥w∥. Slede¢a slika daje ilustraciju linearnog

modela u dve dimenzije.

Ravan odlu£ivanja - crvena linija, normalana je na vektor w, a njegovo ra-stojanje kontroli²e vektor pomeraja w0. Normalno rastojanje ta£ke x od ravni

odlu£ivanja dato je say(x)

∥w∥.

Sada ¢emo razmotriti vi²eklasne linearne modele. Ukoliko de�ni²emo modelkoji ulazni uzorak x razdvaja u jednu od mogu¢ih K klasa, prva ideja je dakonstrui²emo gore opisani model koji ¢e za svaki uzorak odlu£ivati da li pripadadatoj klasi ili ne. Za problem razdvajanja uzorka u jednu od K klasa potrebnojeK−1 ovakvih klasi�katora. Primer koji ilustruje nedostatak ovakvog pristupaje slede¢a slika levo (slu£aj kada je broj klasa K = 3).

31

Page 33: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

Poluprostor za koji klasi�kator ne moºe da odlu£i kojoj klasi pripada ozna£enje zelenom bojom.

Slede¢a ideja je upotrebiti K(K − 1)/2 binarnih funkcija, jednu za svakimogu¢i par klasa. Slika desno pokazuje da i pri ovakvom pristupu postojepoluprostori za koje klasi�kator ne moºe da odlu£i kojoj klasi pripadaju uzorci.

Ovakav nedostatak korigujemo koriste¢i jedinstven K-to klasni model, kojise sastoji od K linearnih �nkcija u obliku: yk(x) = w

Tk x + wk0, koji ta£ku x

klasi�kuje u klasu Ck ako je yk(x) > yj(x) za svaki j = k. Granica odlu£ivanjaizme�u klasa Ck i Cj data je sa yk(x) = yj(x) i odgovara D− 1 dimenzionalnojhiper-ravni de�nisanoj sa: (wk − wj)

Tx + (wk0 − wj0) = 0. Ova hiper-ravan

odgovara hiper-ravni koju smo opisali za binarni slu£aj, pa sva geometrijskasvojstva vaºe analogno. U ovom slu£aju granice odlu£ivanja su uvek povezane(spajaju se) u jednu ta£ku i oblasti odlu£ivanja su konveksne.

Ukoliko ta£ke xA i xB leºe u istoj oblasti odlu£ivanja Rk, svaka ta£ka xna duºi koja povezuje xA i xB jednaka je x = αxA + (1 − α)xB , pri £emu je0 ≤ α ≤ 1. Kako vaºi: xA, xB ∈ Rk, sledi yk(xA) > yj(xA) i yk(xB) > yj(xB),∀j = k, pa je yk(x) > yj(x) i vaºi da je x ∈ Rk. Prema tome Rk je konveksna isve oblasti se spajaju u jednoj ta£ki.

32

Page 34: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

D2

F mera

U klasi�kaciji, �Precision� (P) se de�ni²e kao koli£nik korektno klasi�kovanihprimera iste klase TP(true positive) i ukupnog broja primera koji su klasi�kovaniistom klasom (suma TP + FP, pri £emu je FP(false positive) broj primera kojisu pogre²no klasi�kovani):

P =TP

TP + FP

U istom kontekstu, �Recall� (R) se de�ni²e kao koli£nik korektno klasi�kovanihprimera (TP) i ukupnog broja primera koji stvarno pripadaju nazna£enoj klasi(suma TP + FN, pri £emu su FN(false negative) primeri koji nisu klasi�kovania pripadaju nazna£enoj klasi):

R =TP

TP + FN

F mera se ra£una kao prose£na vrednost (harmonijska sredina) Precision-Recallmera:

F = 2 · P ·RP +R

33

Page 35: Vi²eklasni Pasivni-Agresivni klasifikator sekvence tokenaunarske... · Master rad Vi²eklasni Pasivni ... sni algoritam de ni²e, ... Na kraju ovog poglavlja data je analiza granica

Literatura

[1] K.Crammer, O.Dekel, J.Keshet, S.Shalev-Shwartz and Y.Singer. Onlinepassive-aggressive algorithms. Journal of Machine Learning Research 7:551-585, 2006

[2] S.Matsushima, N.Shimizu, K.Yoshida, T.Ninomiya, H.Nakagawa. Exactpassive-aggressive algorithm for multiclass classi�cation using supportclass. SDM 303-314, 2010

[3] S.Boyd and L.Vandenberghe. Convex Optimization. Cambridge UniversityPress, 2004.

[4] J.Platt. Sequential Minimal Optimization: A fast algorithm for trainig sup-port vector machines. Microsoft Research, 1998.

[5] S.Hoi. LIBOL: A Library for Online Learning Algorithms.http://LIBOL.stevenhoi.org/, Septembar, 2013.

[6] Y.Freund and R.Schapire. Large margin classi�cation uning the Perceptronalgorithm. Machine Learning, 37(3):277-296, 1999.

[7] H.Cheng, R.Zhang, Y.Peng, J.Mao, Pang-Ning Tai. Maximum margin ac-tive learning for sequence labeling with di�erent length, 2007.

[8] C. J. C. Burges. A tutorial on support vector machines for pattern recog-nition. In Knowledge Discovery and Data Mining, 1998.

[9] M. Collins. Log-Linear Models. http://www.cs.columbia.edu/ mcol-lins/loglinear.pdf

[10] J.La�erty. A. McCallum. F.Pereira. Conditional random �elds: probabili-stic models for segmenting and labeling sequence data, Proc. 18th Interna-tional Conf. on Machine Learning. Morgan Kaufmann. pp. 282-289, 2001.

[11] L.R. Rabiner. A tutorial on hidden Markov models and selected ap-plications in speech recognition, 1989. http://www.cs.ubc.ca/ murp-hyk/Bayes/rabiner.pdf

[12] N.V.Cuong. N.T.T.Linh. H.Q.Thuy. P.X.Hieu. A maximum entropy modelfor text classi�cation. 2006.

[13] A.Berger, V.Della Pietra, S. Della Pietra. A maximum entropy approachto natural language processing, Journal computational linguistics, 1996.

[14] Christopher M. Bishop. Pattern recognition and machine learning.

34