You are on page 1of 16

SKRIVENI MARKOVLJEVI MODELI

Iako su uvedeni ranih šesdesetih godina prošlog veka, statistički metod Skriveni
Markovljevi Lanci ili modeli, je počeo da se intenzivno koristi poslednje decenije. Dva su ključana
razloga za to. Jedan leži u tome da su ovako definisani modeli vrlo bogate strukture, te tako
definisani predstavljaju sjajnu osnovu za opis velikog broja različitih problema. Drugi razlog leži u
tome da je njihova kompjuterska struktura vrlo složena, te je neophodno imati jaku računarsku
podršku u implementaciji ovih modela.

Uvod
Uopšteno govoreći realni svet proizvodi merljive izlaze koje mi nazivamo signalima.
Signali po svojoj prirodi mogu biti diskretni (karakteri koji su generisani iz konačnog skupa
alfabeta, kvantizacioni vektori iz kodne knjige i tome slično) ili kontinualni po svojoj prirodi (kao
što su odbirci govornog signala, merenje temperature, muzike, i tako dalje). Izvor ovog signala
može biti stacionaran na način da se njegove statistike tokom vremena ne menjaju, ili nestacionaran.
Signali mogu biti čisti (direktno mereni sa izvora signala) ili zašumljeni uticajem drugih izvora
signala (šumova).
Problem od neverovatnog značaja jeste okarakterisati takav realni svet signala pomoću
odgovarajućeg modela signala. Mnogo je razloga zbog kojih je ovakav model signala od značaja.
Najvažniji od njih je da model signala omogućava odgovarajući teorijski opis signala pomoću koga
se može predložiti odgovarajuća obrada signala i na taj način dobiti željeni izlaz. Na primer, ako je
u pitanju obrada govornog signala koji je zagađen šumom ili smetnjama prilikom prenosa signala,
mi možemo iskoristiti model signala kako bismo optimalno otklonili šum i potisnuli poremećaj koji
se pojavio prilikom prenosa. Drugi značajan razlog zbog koga je važno razvijati modele procesa
jeste da nam ti modeli često govore nešto o izvoru signala čak i onda kada nam ti izvori nisu na
raspolaganju. U takvim slučajevima mi možemo, ako su nam na raspolaganju dobri modeli signala,
generisati, odnosno simulirati realne signale. Na kraju, možda i najvažniji razlog razvoja modela
signala jeste razvoj efikasnih uređaja sistema za predikciju, prepoznavanje, identifikaciju i t.d.
Postoji nekoliko različitih tipova modela signala. Oni se, na grubi način, mogu podeliti u
klasu determinističkih i u klasu statističkih modela. Deterministički modeli se baziraju na
konkretnom znanju specifičnih osobina signala. Kod ovih modela se uglavnom, na osnovu ovog
znanja, usvajaju karakteristični oblici a zatim se uglavnom estimiraju parametri kao što su
amplituda, učestanost, fazni stav i tome slično. Druga široka klasa modela signala su statistički
modeli u kojima je cilj da se izvrši karakterizacija statističkih osobina procesa. Primeri takvih
statističkih modela uključuju Gausovske procese, Poasonove procese, Markovljeve procese, pa i
skrivene Markovljeve procese. Zajednička nit ovih modela jeste da se signali mogu okarakterisati
kao slučajni procesi pri čemu je važno odrediti stohastičke parametre ovih procesa.
Sa stanovišta obrade govornog signala oba od ovih pristupa u modeliranju mogu biti od
značaja i od koristi, međutim, sada ćemo se baviti statističkim pristupom koji se u literaturi naziva
Hidden Markov Models ili se označavaju skraćenicom HMM. Prvo ćemo na jednostavnim
primerima dati osnovne karakteristike Markovljevih modela, zatim ćemo izvršiti ekstenziju prema
skrivenim Markovljevim modelima, a zatim ćemo definisati osnovna tri problema koja se vezuju za
skrivene Markovljeve modele: sračunavanje verovatnoće (ili verodostojnosti) observacione
sekvence za zadati HMM, određivanje najbolje sekvence stanja modela i podešavanje parametara
modela shodno dobijenoj sekvenci observacija. Biće pokazano i to kako se rešavanjem ova tri
problema, HMM može primeniti za rešavanje problema prepoznavanja govora.
Niti je teorija o skrivenim Markovljevim modelima nova, niti je njena primena u
prepoznavanju govora nova. Osnovni teorijski rezultati su publikovani kasnih šesdesetih i ranih
sedamdesetih (Baum i dr.) dok su prve implementacije ovih rezultati u oblasti prepoznavanja govora
izvršena sedamdesetih (Baker na CMU i Jelinek na IBM). Međutim, šira primena i razumevanja
ovakve metodologije je naišla tek nekoliko godina kasnije.

Diskretni Markovljevi procesi


Posmatrajmo sistem koji se može opisati na taj način da u svakom vremenskom trenutku on

može da se nalazi u jednom od N mogućih stanja S1 , S2 ,..., S N , kako je to ilustrovano slikom 1 (na
kojoj je zbog jednostavnosti usvojeno N = 5 ).

Slika 1: Markovljev lanac sa 5 stanja i izabranom tranzicijom stanja


U regularnim, ekvidistantnim vremenskim intervalima, sistem se podvrgava mogućim promenama

stanja a shodno unapred definisanim verovatnoćama. Uvedimo notaciju qt koja označava stanje u
kome se sistem nalazi u trenutku t. Potpuni opis ovakvog sistema podrazumeva poznavanje
verovatnoće da će sistem iz jednog preći u drugo stanje. Za Markovljeve modele je karakteristična
sledeća relacija:

koja zapravo znači da predistorija ne utiče na to u koje će stanje preći sistem u sledećem trenutku,
već je od značaja isključivo njegovo trenutno stanje. Pri tome se još podrazumeva da se ove

verovatnoće ne menjaju tokom vremena, te se može usvojiti fiksni skup parametara aij sa sledećim
značenjem:

Koeficijenti aij se nazivaju koeficijentima tranzicije i oni moraju zadovoljiti sledeće uslove:

Ovako definisan stohastički proces bi se mogao nazvati merljivim Markovljevim modelom


sobzirom da se pretpostavlja da se u svakom trenutku zna u kome je stanju sistem, jer se
pretpostavlja da svakom stanju odgovara neki specifičan skup fizičkih uslova. U cilju ilustracije
ovakvog modela pretpostavimo Markovljev model vremena sa tri stanja. Pretpostavlja se da se
jednom dnevno beleže vremenske prilike i da se shodno tome može detektovati jedno od sledeća tri
stanja:
Stanje 1: padavine (kiša ili sneg)
Stanja 2: oblačno
Stanje 3: sunčano.
Takođe se pretpostavlja da se vremenske prilike dana t mogu predstaviti isključivo jednim od ova tri
stanja, i da je matrica tranzicija A data sledećim verovatnoćama:

Ako je poznato da je vreme prvog dana (t=1) sunčano (stanje broj 3), možemo postaviti sledeće
pitanje: Kolika je verovatnoća, na osnovu modela, da će sledećih sedam dana vreme biti ovakvo:
sunce-sunce-kiša-kiša-sunce-oblačno-sunce? Na osnovu ovog pitanja možemo formirati sledeću

sekvencu observacija: O = { S3 , S3 , S3 , S1 , S1 , S3 , S 2 , S3 } koja odgovara vremenskim trenucima


t=1,2,...,8. Želeli bismo da odredimo verovatnoću ovakve sekvence usvajajući gore definisani
model:

pri čemu je iskorišćena notacija

koja označava verovatnoću inicijalnog stanja.


Sledeće zanimljivo pitanje je: ako znamo da je sistem u nekom određenom stanju, kolika je
verovatnoća da će ono ostati u tom stanju tačno d dana? Opet se na ovo pitanje može odgovoriti
izračunavanjem verovatnoće sledeće sekvence

koja za usvojeni model glasi

Vrednost pi ( d ) predstavlja verovatnoću boravka d koraka u stanju i. Na osnovu ove vrednosti,


jednostavno se može sračunati očekivana dužina boravka u nekom stanju, pod uslovom polaska iz
tog stanja:

Shodno poslednjem rezultatu možemo zaključiti na osnovu datog modela da je očekivani broj
uzastopnih sunčanih dana jednak 1/ 0.2 = 5 , oblačnih dana 1/ 0.4 = 2.5 i kišnih dana 1/ 0.66 = 1.67
.

Proširenje na skrivene Markovljeve modele


Do sada smo razmatrali Markovljeve modele u kojima svakom stanju odgovara neki vidljivi
(merljivi) događaj. Ovakav model je prilično restriktivan da bi bio primenjiv na čitave klase
problema koji su od interesa. Ekstenzija ovakvog koncepta vodi ka skrivenim Markovljevim
modelima koji podrazumevaju da su observacije generisane iz nekog stanja opisane funkcijama
verovatnoće. Tako se uvodi koncept dvostrukog stohastičkog procesa. Prvi proces omogućava
tranziciju kroz skup stanja a drugi proces za zadato stanje generiše niz observacija. Na taj način,
imajući observacije na raspolaganju nema se jasna predstava o tome u kome je stanju sistem
trenutno. Vrlo lep, jednostavan a ilustrativan primer ove ekstenzije jeste model novčića.
Model novčića: Zamislimo sledeći scenario. Vi ste u sobi koja je podeljena na dva dela
nekim neprovidnim zastorom. Vi se nalazite u jednom delu sobe a iza zastora je druga osoba koja
izvodi eksperiment sa novčićem. Ona Vam neće reći šta trenutno radi sa novčićem, jedino će da
Vam saopštava rezultat eksperimenta (pismo ili grb). Tako će Vama na raspolaganju biti jedino
sekvenca observacija:

gde znak stoji umesto oznake za pismo ili glavu. Na osnovu gornjeg scenaria pitanje je kako da
formiramo skriveni Markovljevi model koji bi opisao sekvencu observacija koja nam je na
raspolaganju. Prvo pitanje je šta treba da budu stanja ovog modela i koliko treba da ih bude. Jedan i
najjednostavniji način jeste da pretpostavimo da postoji samo jedan nefer novčić koji bacamo. U
tom slučaju postoje dva stanja koja rezultuju pismom ili glavom. Takav model je prikazan na slici
2a.

Slika 2.a
U ovakvom slučaju Markovljev model nije skriven (observabilan je) i jedini problem koji može da
se postavi jeste koliko je novčić nefer (odnosno koliki je njegov bajes-pomeraj).
Druga mogućnost je da formiramo skriveni Markovljevi model. U ovom slučaju
pretpostavljamo da postoje dva različita stanja i da svako stanje odgovara različitim nefer
novčićima, što znači da za svako stanje ponaosob postoje različite verovatnoće pojave pisma ili
glave. Šematski prikaz ovog modela je dat na slici 2.b.
U ovakvom modelu pojavljuje se problem određivanja verovatnoća tranzicije iz stanja u stanje, kao
i verovatnoća pojave pojedinih observacija za svako stanje ponaosob.
Treća mogućnost da se formira skriveni Markovljevi model je šematski prikazana na slici
2c.

Slika 2.c
Ovakav model podrazumeva postojanje tri različita nefer novčića, pri čemu svakome od njih
odgovara po jedno stanje. Postavlja se logično pitanje, koji od ovih modela najviše odgovara realnoj
situaciji, odnosno dobijenim observacija. Pri tome je očigledno da prvi model u sebi sadrži samo
jedan nepoznati parametara, drugi model 4 parametra a treći model 9 nepoznatih parametara.
Shodno tome postaje jasno da model sa većim stepenom slobode (većim brojem nepoznatih
parametara) sigurno može bolje da opiše sekvencu merenja. Iako je ovo tvrđenje tačno, videćemo
kasnije da prilikom rešavanja nekih praktičnih problema moraju da se uzmu u obzir striktna
ograničenja vezana za dimenziju modela.
U nameri da ilustrujemo moguće složenosti skrivenih Markovljevih modela posmatrajmo
primer Urni i kuglica (slika 3).
Slika 3.
Pretpostavimo da u prostoriji postoji N urni i da se u svakoj od njih nalazi veliki broj obojenih
kuglica. Pretpostavimo dalje da postoji M različitih boja. Fizički proces generisanja observacija je
sledeći: Neka osoba je u sobi i na osnovu nekog stohastičkog procesa ona slučajno bira početnu
urnu i iz nje, sasvim slučajno izvlači kuglicu i saopštava njenu boju. Loptica se vraća u urnu iz koje
je izvađena. Sada se nova urna bira na slučajan način i ceo se proces ponavlja. Tako ovaj
eksperiment rezultuje nizom observacija koje sadrže samo boje izvučenih kuglica. Najjednostavniji
HMM za ovakav eksperiment jeste da se formira model koji ima onoliko stanja koliko ima urni, a
da se pri tome svakoj urni, odnosno svakom stanju, pridruže odgovarajuće verovatnoće sa kojima se
iz njih može generisati odgovarajuća boja.

Elementi skrivenih Markovljevih modela


Gore navedeni primeri nam daju jasnu ideju o tome šta je skriveni Markovljev model i kako
se mogu interpretirati eksperimenti vezani za njega. Sada je neophodno formalno definisati
elemente HMM-a i objasniti kako se generiše sekvenca observacija. Skriveni Markovljev model se
karakteriše kroz sledeće parametre:
1. N je broj stanja u modelu. Iako su stanja skrivena, za veliki broj praktičnih problema
postoji jasna fizička interpretacija stanja i njihovih fizičkih značenja. U slučaju novčića
stanje odgovara konkretnom novčiću, dok u primeru urni stanje se vezuje za konkretnu
urnu. U opštem slučaju stanja se definišu tako da se u svako stanje može stići iz bilo kog
drugog stanja (to je takozvani ergodični model), međutim, videćemo kasnije, da je
moguće definisati i drugačiju interkonekciju između stanja. Obično se sa

S = { S1 , S2 ,..., S N } označava skup svih mogućih stanja, a sa qt stanje modela u trenutku

t.
2. M je broj različitih observacija koja se mogu realizovati iz stanja i ovaj parametar obično
predstavlja dimenziju (kardinalni broj) diskretnog alfabeta. Observacioni simboli
odgovaraju fizičkom merenju modela. Za primer novčića to su pismo ili glava, za primer
urni to su odgovarajuće boje. Skup ovih simbola se obično označava na sledeći način

V = { v1 , v2 ,..., vM } .

3. Raspodela verovatnoća tranzicija A = { aij }

U opštem slučaju u kome se svako stanje može dostići iz bilo kog drugog stanja

pretpostavlja se da je aij > 0 za svako i i j. Za neke druge tipove HMM može se apriori

usvojiti da je aij = 0 za neke specifične parove i i j.

4. Verovatnoće pojave pojedinih simbola iz pojedinih stanja, B = { b j ( k ) } gde je:

5. Inicijalna raspodela stanja p = { pi } gde je

Na osnovu zadatih vrednosti za N, M, A, B i p , HMM može da generiše odgovarajuću sekvencu


observacija

pri čemu svaka od observacija Ot označava neki od simbola skupa V, dok T označava ukupan broj
observacija u sekvenci. Postupak generisanja sekvenci observacije se realizuje kroz sledeći niz
koraka:
1. Izabere se inicijalno stanje q1 = S j shodno inicijalnoj raspodeli verovatnoća p .
2. Postavi se vreme t=1.
3. Izabere se Ot = vk shodno verovatnoćama pojave simbola za stanje S j , b j ( k ) .

4. Izvrši se tranzicija u novo stanje qt +1 = Si na osnovu raspodela verovatnoća za tranziciju

stanja, odnosno aij .


5. Postavi se vreme t = t +1 , i vrati se na korak 3, ukoliko je t < T , inače se završava
procedura.
Gornja procedura se može koristiti kao generator observacija a istovremeno kao model koji
opisuje sekvencu observacija za zadati HMM.
Na osnovu gornje diskusije postaje jasno da je skriveni Markovljev model opisan tripletom
A, B i p , osnosno u skraćenoj notaciji:
Tri osnovna problema vezana za skrivene Markovljeve modele
U želji da se formira HMM koji će efikasno opisivati fizički proces koji nas zanima ili u
smislu primene već postojećeg HMM-a, tri ključna problema mogu da se pojave:
Problem 1: Pretpostavimo da nam je data sekvenca observacija O = O1O2 ...OT i model l = ( A, B, p)

, kako da efikasno sračunamo verovatnoću P ( O / l ) da je takav model generisao takvu sekvencu


observacija.
Problem 2: Ako nam je data sekvence observacija O = O1O2 ...OT i model l = ( A, B, p) , kako da

odredimo odgovarajuću sekvencu stanja Q = q1q2 ...qT koja ima najviše smisla ili koja za zadati
model najviše odgovara dobijenoj sekvenci observacija.
Problem 3: Kako da odredimo parametre HMM-a l = ( A, B, p) ako nam je na raspolaganju

sekvenca observacija, odnosno kako da maksimiziramo P ( O / l ) .


Problem 1 je takozvani evaluacioni problem i on predstavlja postupak kojim se računa
verovatnoća generisanja neke observacije iz poznatog modela. Ovaj se problem može tretirati i kao
problem ocene u kojoj meri neka sekvenca odgovara usvojenom modelu. Ovakav pogled na
problem 1 će biti od velike koristi za rešavanje problema prepoznavanja oblika.
Problem 2 postavlja problem rešavanja skrivenosti u skrivenim Markovljevim modelima, i
on pokušava da nam da odgovor koja logična sekvenca stanja odgovara dobijenoj sekvenci
observacija.
Problem 3 se obično javlja na samom početku prilikom formiranja HMM.a. Polazi se od
skupa merenja koja su predstavljena u formi sekvence observacija, a cilj je da se 'obuči' HMM tako
što će se odrediti njegovi parametri tako da on najbolje optimizuje (fituje) prikupljenim merenjima.
Ukoliko posmatramo problem generisanja sistema za prepoznavanje izolovanih reči,
navedeni problemi se svode na sledeće. Za svaku od W reči iz rečnika mi želimo da formiramo
poseban HMM sa N stanja. Predstavimo govorni signal zadate reči kao vremensku sekvencu
kodiranih spektralnih vektora. Pretpostavimo dalje da je kodiranje izvršeno tako da kodna knjiga
sadrži M različitih vektora. Formirana je obučavajuća baza u kojoj je svaka reč predstavljena sa
odgovarajućim brojem uzoraka odnosno sekvenci kodiranih spektralnih vektora (generisanih od
strane jednog ili više govornika). Prvi zadatak je da se formiraju pojedini modeli za svaku reč
ponaosob. Ovaj problem je definisan problemom broj 3. Da bismo razumeli fizički postupak
generisanja dobijene observacione sekvence moramo rešiti problem broj da bi se izvršila
segmentacija sekvence u pojedina stanja. Konačno, kada se formira W različitih modela za svaku
reč ponaosob, može se vršiti prepoznavanje izgovorenih reči tako što se za snimljenu reč izvrši
rešavanje problema 1 za svaki od generisanih modela. Model koji dobije najveće poverenje
(najveću odgovarajuću verovatnoću) biće prepoznat kao izgovorena reč.
U sledećem odeljku biće data matematička rešenja za sva tri navedena fundamentalna
problema skrivenih Markovljevih modela.

Rešenje problema 1
Cilj nam je da odredimo verovatnoću pojave sekvence observacija O = O1O2 ...OT pod

pretpostavkom da nam je HMM dat tripletom l = ( A, B, p) . Najjednostavniji način jeste da se se


uzmu u obzir sve moguće sekvence stanja. Zamislimo jednu fiksnu sekvencu stanja

gde je sa q1 označeno inicijalno stanje. Tada je verovatnoća sekvence observacija pod


pretpostavkom poznate sekvence stanja i modela jednaka:

pri čemu je pretpostavljena statistička nezavisnost observacija. Otuda se dobija:

Sa druge strane verovatnoća sekvence stanja se može napisati u formi:

Združena verovatnoća sekvence stanja i observacija je proizvod pojedinih marginalnih verovatnoća:

i konačno se verovatnoća sekvence observacija dobija sumiranjem odgovarajućih združenih


verovatnoća pomnoženih sa odgovarajućim marginalnim verovatnoćama sekvenci stanja:

Iako poslednji izraz deluje prilično jednostavno, numerička složenost njegovog izračunavanja je

vrlo velika. On zahteva ( 2T - 1) N množenja i N T - 1 sabiranja. Za slučaj modela sa N=5 stanja i


T

dužine sekvence T=100, broj operacija je reda veličine 1072 što postaje teško izvodljivo u realnom
vremenu. Otuda je dosta veliki napor uložen da se dođe do procedure koja će biti numerički
značajno jednostavnija. Takva procedura postoji i naziva se Forward-Backward procedura.
Definišimo forward promenljivu at ( i ) na sledeći način:
koja predstavlja verovatnoću dela observacije O1 , O2 ,..., Ot (do trenutka t) sa događajem da je u

trenutku t aktivno stanje Si . Tada se ove forward varijable mogu dobiti induktivno:

Korak 1. inicijalizuje forward verovatnoću kao združenu verovatnoću za stanje Si i observaciju O1 .


Idnukcioni korak, koji predstavlja srce ovog algoritma, je ilustrovan slikom 4.a. Ova slika pokazuje

kako u stanje S j može da se dostigne u trenutku t+1 iz N različitih stanja u trenutku t. Relacija (20)

se izračunava za svako stanje j , 1 � j �N i za sve vremenske trenutke t = 1, 2,..., T - 1 . Konačno,

korak 3 daje konačno sračunatu verovatnoću P ( O / l ) kao sumu forward promenljivih aT ( j ) jer je

Slika 4a
Ovakav pristup rešenju problema 1 zahteva N 2T sračunavanja (što za slučaj N=5 i T=100 rezultuje
sa 3000 izračunavanja umesto prethodno sračunatih 1072 ).
Sračunavanje takozvanih forward verovatnoća je zasnovano na letis (lattice or trellis)
strukturi kakva je prikazana na slici 4.b.
Ključni korak u ovoj strukturi je da svakom od N stanja u modelu odgovara po jedan čvor u letis
strukturi, i na taj način se svih mogućih N podsekvenci skuplja u N čvorova, bez obzira na to koliko
je sekvenca observacije duga.
Na sličan način se mogu sračunati i takozvane backward verovanoće bt ( i ) definisane na
sledeći način:
bt ( i ) = P ( Ot +1Ot +2 ...OT qt = S i , l ) (24)

Ovaj izraz predstavlja verovatnoću dela observacije od trenutka t+1 pa do kraja, ukoliko se zna

stanje Si u trenutku t i ukoliko je poznat model l . Ponovo se ove verovatnoće mogu sračunavati
induktivno, kroz sledeće korake:

Inicijalni korak 1) potpuno neodređeno inicijalizuje vrednosti verovatnoća na 1 za svako i. Dok

korak 2, koji je ilustrovan na slici 5, pokazuje da ukoliko želimo da budemo u stanju Si u trenutku t,
moramo da uzmemo u obzir sva moguća stanja u kojima se možemo naći u trenutku t+1, sa
odgovarajućim verovatnoćama.
Kasnije ćemo videti da nam ovi backward koeficijenti mogu biti od velike koristi za rešavanje
problema 2 i 3.

Rešenje problema 2
Za razliku od problema 1 za koji postoji egzaktno rešenje, u slučaju problema 2 postoji veći
broj rešenja u cilju nalaženja ''optimalne'' sekvence stanja koja se pridružuje izmerenoj sekvenci
observacija. Teškoća leži u tome kako definisati optimalni niz stanja, jer je moguće navesti veći broj

različitih kriterijuma optimalnosti. Na primer, jedan od kriterijuma može usvojiti stanje qt koje je
samo po sebi najverovatnije (najverodostojnije). Ovaj kriterijum maksimizira očekivani broj
korektno izabranih individualnih stanja. U cilju implementacije ovakvog kriterijuma u rešavanje
drugog problema, uvedimo sledeću varijablu:

koja predstavlja vervoatnoću da je sistem u trenutku t bio u stanju Si , ako nam je data sekvenca
observacija O uz poznavanje modela l . Relacija (26) se može jednostavno predstaviti u duhu
forward-backward varijabli:

Pri tome je jasno da postoji ograničenje u sledećoj jednakosti:

Shodno tome, izbor optimalnog stanja u trenutku t se može izvršiti shodno sledećoj relaciji:

Iako relacija (29) maksimizira očekivani broj korektnih stanja ( birajući najverovatnije u svakom
trenutku t) mogu se pojaviti neki problemi u tako generisanoj sekvenci. Na primer, ako HMM ima

nultu verovatnoću za neku tranziciju stanja (ako je recimo aij = 0 za neko i i neko j) lako se može
dogoditi da se u optimalnoj trajektoriji pojavi ovakva tranzicija, mada je ona nemoguća. Ovakav
događaj je moguć jer relacija (29) bira pojedinačna najverovatnija stanja ne vodeći računa o
njihovoj tranziciji.
Jedno od mogućih rešenja jeste da se gorenavedeni kriterijum unekoliko modifikuje. Jedan

od načina je da se biraju parovi optimalnih stanja ( qt , qt +1 ) ili tripleti ( qt , qt +1 , qt +2 ) . Iako ovakvi


kriterijumi za neke od aplikacija mogu biti svrsishodni, najčešće korišćeni kriterijum jeste da se

direktno određuje jedna najverovatnija sekvenca stanja P ( Q / O, l ) , što je ekvivalentno


maksimizaciji kriterijuma P ( Q, O / l ) . Formalna tehnika za određivanje najbolje sekvence je
zasnovana na metodi dinamičkog programiranja i naziva se Viterbijevim algoritmom. Viterbijev

algoritam traži najbolju sekvencu stanja Q = { q1q2 ...qT } na osnovu sekvenci observacija

O = { O1O2 ...OT } , i u tom cilju zahteva izračunavanje sledeće vrednosti:

koja predstavlja najveću verovatnoću duž jedne putanje, u trenutku t , koja uzima u obzir prvih t

observacija a završava u stanju Si . Indukcijom se dobija

Da bi se generisala željena sekvenca observacija, neophodno je pratiti trag najboljih argumenata, te


je na taj način predložena sledeća iterativna procedura:

Rešenje problema 3
Primetimo da je rešenje problema 3 najkomplikovanije i ono zahteva da se na osnovu niza

sekvenci observacije odrede parametri modela ( A, B, p) . Nema načina da se analitički reši problem
određivanja parametara modela za zadatu sekvencu. Ideja je da se izabere takav model

l = ( A, B, p) koji će maksimizirati P ( O / l ) , a procedura je iterativna i naziva se Baum-Welchov


metod. U tom cilju definišimo prvo parametar xt ( i, j ) koji predstavlja verovatnoću da je model bio

u stanju Si u trenutku t a u stanju S j u trenutku t+1, pod uslovom izmerenih observacija:

Sekvenca ovakvih događaja je ilustrovana slikom 6.

Uzimajući u obzir prethodno definisane forward i backward koeficijente, dalje možemo pisati:

Već je definisan parametar gt ( i ) , pa se ovaj parametar lako dobija sumiranjem parametara x :

Ukoliko sumiramo koeficijente gt ( i ) po indeksima vremena t, dobićemo vrednost koja se može

interpretirati kao očekivani broj pojave stanja Si u sekvenci. Slično, sumiranjem koeficijenata

xt ( i, j ) po promenljivoj t = 1,..., T - 1 dobija se koeficijent koji se može interpretirati kao očekivani

broj prelazaka iz stanja Si u stanje S j . Otuda možemo pisati:

Shodno gore navedenim relacijama, predlaže se sledeća estimaciona procedura:


Treba naglasiti da navedena procedura rezultuje lokalnim maksimumom, odnosno ne garantuje se
dosezanje globalnog maksimuma usvojene kriterijumske funkcije. Takođe treba dati još dva
značajna komentara. Prvi je da navedena reestimaciona procedura u svakom koraku zadovoljava
sledeća ogrančenja:

Konačno, ukoliko bismo u postupak estimacije parametara modela krenuli metodom parcijalnih

izvoda po verovatnoći P ( O / l ) uz uključivanje pomenutih ograničenja, dobili bismo sledeće


jednakosti:

Zanimljivo je da svaka od ovih relacija ima svoj iterativni reprezent u relacijama (40).

You might also like