Oleh:
Firdaniza,NurulGusrianidanAkmal
DosenJurusanMatematikaFMIPAUniversitasPadjadjaran
Jl.RayaBandungSumedangKm21,Jatinangor,JawaBarat
Telp./Fax:0227794696
Abstrak
Hidden Markov Model (HMM) adalah peluasan dari rantai Markov di mana statenya
tidak dapat diamati secara langsung (tersembunyi), tetapi hanya dapat diobservasi melalui
suatu himpunan pengamatan lain. Pada HMM terdapat tiga permasalahan mendasar yang
harusdiselesaikanyaknievaluationproblem,decodingproblem,danlearningproblem.
Dalampaperini,akandijelaskantentangHiddenMarkovModel(HMM)dansolusidari
ketiga masalah mendasar dalam HMM tersebut, yakni evaluation problem dengan algoritma
forward,decodingproblemdenganalgoritmaviterbi,danlearningproblemdenganalgoritma
BaumWelch.
Katakunci:HiddenMarkovModel,evaluationproblem,decodingproblem,learningproblem
1. Pendahuluan
Proses stokastik adalah keluarga peubah acak { X t , t T } , T disebut
himpunan parameter. Himpunan nilai nilai yang mungkin dari X t disebut
RuangState.
Prosesstokastikdenganruangstate(keadaan)diskrit,sertamempunyaisifatdi
manastatesaatinihanyatergantungpadastatesebelumnyadanbebasdari
historiyanglaludisebutdenganrantaimarkov.
Pada rantai Markov setiap state dapat diamati secara langsung. Seperti
kasuscuaca,keadaancuacaesokharidapatkitaprediksimelaluikeadaancuaca
hariini.Andaikancuacadikelompokkanmenjaditiga(cerah,hujan,berawan),
maka dengan diberikan peluang perubahan cuaca, kita dapat menentukan
peluang cuaca esok hari dan beberapa hari berikutnya. Akan tetapi bila
seseorangberadadalamruangtertutupdandiatidakmengetahuicuacadiluar,
kemudian dia disuruh menebak keadaan cuaca esok hari. Dalam hal ini state
cuaca tidak dapat diamati secara langsung, namun pengamatan dapat
Dipresentasikan dalam Seminar Nasional Matematika dan Pendidikan Matematika 2006 dengan tema
Trend Penelitian dan Pembelajaran Matematika di Era ICT yang diselenggarakan pada tanggal
24 Nopember 2006
Decodingproblem,
Learningproblem.
HMM ini bermanfaat dalam menyelesaikan kasuskasus dimana
pengamatantidak
dapat dilakukan terhadap suatu state, tetapi kita dapat menentukan
peluang proses berada dalam stste tertentu. Pembahasan pada paper ini
dibatasihanyapadapengamatandiskritsaja.
2.MetodePenelitian
Pertamatamadilakukankajianulangtentangrantaimarkovdiskrit,agar
dapat memberi gambaran tentang HMM, kemudian dipelajari tentang Teori
Hidden Markov Model (HMM). Untuk lebih jelasnya diberikan suatu contoh.
Kemudian dibahas tiga masalah mendasar dalam HMM, yakni evaluation
problem, decoding problem, dan learning problem. Untuk evaluation problem
diselesaikan dengan Algoritma Forward , untuk memecahkan decoding problem
digunakanAlgoritmaViterbi,sertauntuklearningproblemdigunakanalgorithm
BaumWelch.Sebagaigambaran,diberikanstudikasustentangmasalahcuaca.
3.Pembahasan
3.1RantaiMarkovDiskrit
202
(1)
maka proses disebut rantai markov waktu diskrit dan a ij disebut peluang
transisi dari state si ke state sj. Apabila a ij tidak tergantung pada n maka a ij
disebut peluang transisi stasioner. Matriks A = aij , dengan
a
j =0
= 1 disebut
ij
matrikspeluangtransisi.
Denganmengetahuidistribusiinisialdanpeluangtransisi,suaturantaimarkov
dapatdikenalisecaralengkap,sepertiterlihatpadapersamaanberikut
P (Q0 = s i0 , Q1 = s i1 ,..., Qt = s it )
(2)
P(Q0 = i0 ) disebut peluang inisial . (0) = ( 0 (0),1 (0),....)dimana j (0) = P(Q0 = sj )
disebutdistribusiinisial.Sebagaigambaran,perhatikancontohberikut:
Contoh1
Misalkan cuaca dalam satu hari dapat dikelompokkan menjadi cerah,
hujan, dan berawan. Perubahan cuaca dalam hari yang berurutan dinyatakan
dalampeluangpadatabelberikut:
Matematika
203
Cuacahariini
Cuacabesok
cerah
hujan
berawan
cerah
0.8
0.05
0.15
hujan
0.2
0.6
0.2
berawan
0.2
0.3
0.5
Tabel1.Peluangperubahancuacapadahariyangberurutan
Jikacuacapadaharipertama(t=1)adalahcerah,berapapeluangcuacapada5
hariberikutnyacerahhujanberawanhujanhujan.
Jawab:MisalkanState1( s1 ):cerah,state2( s2 ):hujan,state3( s 3 ):berawan.
Denganmenggunakanpersamaan(2)diperoleh:
P(Q0 = s1,Q1 = s1,Q2 = s2,Q3 = s3,Q4 = s2,Q5 = s2)
= P(Q0 = s1)P(Q1 = s1 | Q0 = s1)P(Q2 = s2 | Q1 = s1)P(Q3 = s3 | Q2 = s2)P(Q4 = s2 | Q3 = s3)P(Q5 = s2 | Q4 = s2)
= 1 (0).a11 .a12 .a 23 .a 32 a 22
=(1)(0.8)(0.05)(0,2)(0,3)(0,6)=0,00144
3.2HiddenMarkovModel
Dari contoh 1 di atas terlihat bahwa state (cuaca) dapat diamati secara
langsung. Akan tetapi, jika seseorang dikunci dalam satu ruangan tertutup
sehingga dia tidak dapat mengetahui keadaan cuaca diluar, kemudian orang
tersebut disuruh menerka keadaan cuaca, maka pengamatan yang dapat
dilakukan hanyalah dengan melihat apakah orang yang masuk ke ruangan
terkunci tersebut membawa payung atau tidak. Masalah seperti ini dapat
dimodelkandalambentukHiddenMarkovModel(HMM).
ElemenelemendariHMMadalah:
1. N, yaitu jumlah state, dengan ruang state S = {s1 , s2 ,..., sN } dan state pada
waktutdinyatakandengan Qt .Untukkasusdiatasadalahkeadaancuaca.
204
2. M,yaitujumlahpengamatan(observasi)tiapstate,denganruangobservasi
V = {v1 , v2 ,..., vM } , untuk kasus di atas, orang datang membawa payung atau
tidakmembawapayung.
3. A = aij ,yaitumatrikspeluangtransisi.
4. B = b j m , yaitu matriks peluang bersyarat observasi vm jika proses berada
padastatej,dimana:
b j m = b j ( Ot ) = P ( Ot = vm Qt = s j ) , 1 j N dan 1 m M .
(3)
5. i yaitudistribusistateawal.
SehinggaHiddenMarkovModeldapatdituliskandalamnotasi = ( A, B, ) .Jika
diberikan N, M, A, B, dan , HMM dapat digunakan sebagai pembangkit
barisanobservasi: O = O1 , O2 , O3 , ... , OT
Jika seseorang dikurung dalam ruangan tertutup dan ia tidak mengetahui
keadaancuacadiluar.Peluangcuacapadahariket ( Qt ) ,dengankemungkinan
) (
t =2
3.3TigaMasalahDasarHMM
masalahmendasardalamHMMyangharusdiselesaikan,yakni:
Matematika
205
a.Evaluationproblem
yakniakandicari P ( O ) ataupeluangdaribarisanobservasi
t (i ) = P ( O1 = vm ,..., Ot = vm , Qt = si )
(5)
yaitu peluang barisan observasi O1 , O2 ,..., Ot dan state si pada waktu t jika
diberikan .
Secarainduktif P ( O ) dapatdihitungsebagaiberikut:
(i)Inisialisasi
1 ( i ) = i bi ( O1 )
1 i N
,1 t T 1 1 j N
(6)
(ii)Induksi
t +1 ( j ) = t ( i ) aij b j ( Ot +1 )
i =1
(7)
N
(iii)Akhir; P ( O ) = T ( i )
i =1
(8)
b.Decodingproblem
Akan dicari barisan state yang optimal Q* = {Q*1 , Q*2 ,..., Q*T } jika diberikan
barisanobservasi O = {O1 , O2 ,..., OT } danmodel = ( A, B, ) .Barisanstateterbaikyang
akan ditentukan yaitu berupa lintasan tunggal yang terhubung dari t = 1, 2,..., T .
206
Seperti yang terlihat pada gambar 1, begitu banyak lintasan tunggal yang
mungkin.Kemudianakandipilihsatulintasantunggalyangmemilikipeluang
tertinggidiantarasemualintasanyangmungkin.
state
s1
s2
s3
K
M
sN
t = 2
t =1
t =3
t =T
waktu
Gambar1.Barisanstate(lintasan)yangmungkin
untuk 1 i N dan 1 t T
UntukmenyelesaikandecodingprobleminidigunakanalgoritmaViterbi.
DalamalgoritmaViterbidigunakanduavariabelbantu,yaitu:
1. t ( i ) = max P ( Q1 = si ,..., Qt = si , O1 = vm ,..., Ot = vm )
Q1 ,Q2 ,...,Qt 1
Denganinduksidiperoleh:
t +1 ( j ) = max t ( i ) aij b j ( Ot +1 )
1 i N
1 ( i ) = i bi ( O1 ) ,
1 i N
(9)
Matematika
207
1 ( i ) = 0
(10)
2. Rekursi
t ( j ) = max t 1 ( i ) aij b j ( Ot ) ,
1i N
2 t T ,
1 j N
(11)
1 i N
2 t T ,
1 j N
(12)
3. StateterbaikpadawaktuT ( QT )
P* = max T ( i )
1 i N
(13)
Q*T = arg max T ( i )
1i N
(14)
4. Barisanstateterbaikpada t = T 1, T 2,...,1
c.Learningproblem
UntukmenyelesaikanmasalahinidigunakanAlgoritmaBaumWelch.
(5),sertatahapaninduksidiberikanolehpersamaan(6)(8).
208
Variabelkedua,yaknivariabelbackwarddidefinisikansebagai,
t (i ) = P(Ot +1 , Ot + 2 ,..., OT | Qt = si , )
(16)
yaitu, peluang dari barisan observasi parsial Ot +1 , Ot + 2 ,..., OT , diberikan state si
pada waktu t dan model . Selanjutnya, t (i ) dapat diselesaikan secara
induksisebagaiberikut:
1.Inisialisasi
T (i) = 1,
1 i N
(17)
2.Induksi
N
(18)
t (i, j ) = P(Qt = si , Qt +1 = s j | O, )
(19)
yaitu,peluangprosespadasaattberadapadastatesidanpadasaatt+1berada
padastatesj,jikadiberikanbarisan O danmodel .
Persamaan(19)dapatditulis
t (i, j ) =
P (Qt = si , Qt +1 = s j , O | )
P (O | )
(20)
ataudapatdiekspresikandenganvariabelforwardbackwardsebagai
t (i, j ) =
(i).a .b (O
i =1 j =1
ij
t +1
).t +1 ( j )
(21)
Variabelkeempat,yaknivariabel t (i ) didefinisikansebagai:
Matematika
209
t (i ) = P(Qt = si | O, )
(22)
yaitu,peluangprosesberadapadastate si saatwaktut,jikadiberikanbarisan
observasi O , dan model . Persamaan (22) dapat diekspresikan dengan
variabelforwardbackwardsebagaiberikut,
t (i ) =
t (i ). t (i)
N
(i). (i)
i =1
(23)
Peluangprosesberadapadastatesisaatt,jikadiberikanbarisanpengamatanO,
N
t (i ) = t (i, j )
j =1
(24)
Sehingga,
T 1
(25)
Sama halnya, jika t (i, j ) dijumlahkan atas indeks waktu t (dari t = 1 ke
t = T 1 ) dapat diartikan sebagai perkiraan banyaknya transisi dari state si ke
state s j .Jadi,
T 1
(26)
Denganmenggunakanpersamaan(25)dan(26)diatas,makadiperoleh
rumusreestimasisebagaiberikut:
i = Ekspektasifrekuensidalamstate si ketika t = 1
= 1 (i ),
1 i N
(27)
210
a ij =
T 1
(i, j )
t =1
T 1
1 i N, 1 j N
(i)
(28)
t =1
b j (k ) =
( j)
=
t
t =1
s.t Ot = vk
T
( j)
1 j N, 1 k M
t =1
(29)
Persamaan (27) sampai (29) dikenal dengan rumus reestimasi, yang dapat
memperbaharui (mengatur kembali) parameter model = ( A, B, ) . Aspek
yang sangat penting dari prosedur reestimasi adalah batasan stokastik
parameterHMMyangselaludipenuhipadasetiapiterasi,yakni:
N
= 1
(30)
= 1 , 1 i N
(31)
(32)
i =1
N
a
j =1
ij
b (k ) = 1
k =1
, 1 j N
Matematika
211
Bagaimanabarisancuacayangpalingmungkinuntuktigaharipertama?
DenganmenggunakanalgoritmaViterbi(matlab),diperoleh
Q(1)=3
Q(2)=2
Q(3)=2
sepertidigambarkanolehgambar2.
212
state
cerah
3 (1) = 0, 0019
hujan
3 ( 2 ) = 0, 0269
berawan
3 ( 3) = 0, 0052
t =1
t=2
t =3
waktu
Gambar2Barisanstateterbaikuntukkasus1
Artinya,barisancuacayangpalingmungkinuntuktigahariberturutturut
adalah
berawan,hujan,hujan.
4.Kesimpulandansaran
Daripembahasandiatas,dapatdisimpulkan:
Matematika
213
4.UntukmenyelesaikanlearningproblempadaHMMyaknimengaturparameter
model = ( A, B, ) sehingga P(O | ) maksimum, dapat menggunakan
algoritmaBaumWelch.
5. Konsep HMM dapat digunakan dalam berbagai masalah nyata, dalam hal
ingin mengetahui peluang suatu proses berada dalam keadaan tertentu,
sementara statenya tidak dapat diamati secara langsung, seperti, kasus
cuaca dengan orang terkurung, pengenalan pola, pengenalan suara,
pengenalanDNA,danlainlain.
6.DapatdilakukanstudilanjutHMMuntukwaktukontinu.
5.DaftarPustaka
[1]Abdulla,W.H.andKasabov,N.K.,1999.TheConceptsofHiddenMarkov
ModelinSpeechRecognition,TechnicalReportTR99/09,NewZealand.
[2]BarbaraResch.HiddenMarkovModels,AtutorialforCourse
ComputationalIntelligence.http://www.igi.tugraz.at/lehre/CI.diakses20
Januari2006.
[3]Jedlik.phy.bme.hu/~gerjanos/HMM/node4.html
[4]Osaki,Sunji.,1992.AppliedStochasticSystemModeling.Springer
Verlag,Newyork.
[5]Rabiner,L.R.,1989.AtutorialonHiddenMarkovModelsandSelected
AplicationsinSpeechRecognition,ProceedingsofTheIEEE,Vol.77,no.2.
pp.257286.
[6]Ross,S.M.,1996.StochasticProcesses,secondedition,JohnWileyand
Sons,NewYork.
[7]Young,S.etc.,2002.HMMToolkit(HTK)Book(forversion3.2.1).
CambridgeUniversityEngineeringDepartement.
214