IDENTIFIKASI INDIVIDU BURUNG SECARA OTOMATIS DENGAN MENGGUNAKAN PENDEKATAN HIDDEN MARKOV MODELS
IDENTIFIKASI INDIVIDU BURUNG SECARA OTOMATIS DENGAN MENGGUNAKAN PENDEKATAN HIDDEN MARKOV MODELS SKRIPSI
Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik
Jurusan Teknik Informatika
Oleh : Florensius Phangestu
NIM : 065314063
PROGRAM STUDI TEKNIK INFORMATIKA
JURUSAN TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGIUNIVERSITAS SANATA DHARMA
YOGYAKARTA 2010HIDDEN MARKOV MODELS BASED AUTOMATIC
INDIVIDUAL BIRD IDENTIFICATION A THESIS Presented as Partial Fulfillment of the Requirements To Obtain the Sarjana Teknik Degree
In Department of Informatics Engineering By : Florensius Phangestu
Student ID : 065314063
INFORMATICS ENGINEERING STUDY PROGRAM
HALAMAN PERSEMBAHAN
Skripsi ini kupersembahkan untuk :
untuk Tuhan Yang Maha Pengasih, yang selalu menuntun, membimbing dan
menguatkanku dalam setiap langkah yang kutempuh.untuk Bunda Maria yang selalu menyertai, melindungi dan mendoakanku sehingga
saya mampu menghadapi setiap percobaan. untuk keluargaku yang bergitu pengertian dan pemberi semangat dan kehangatanuntuk romo Kuntoro yang menjadi pembimbingku, yang selalu bersedia meluangkan
waktu, tenaga, pikiran serta kesabaran dalam mendidikku untuk Evi Michella Veronika, my spring of joy untuk almamaterku, untuk Indonesia, dan, untuk setiap orang yang mempelajari Speaker Identification
v
ABSTRAK
Perbedaan suara kicauan ( acoustic features) pada setiap individu burungdapat dimanfaatkan untuk mengidentifikasi identitas burung. Pada tugas akhir ini
dibangun suatu metode untuk mengidentifikasi secara otomatis individu burung
berdasarkan suara kicauan ( acoustic features) dengan menggunakan pendekatan
Hidden Markov Models. Pendekatan ini secara umum digunakan pada signal
prosessing dan untuk speaker identification pada manusia.Penelitian ini menggunakan burung ortolan bunting sebagai objek
penelitian dengan jumlah sebanyak 8 ekor (100 data sample untuk masing-masing
burung). Pembagian data untuk proses testing dan training menggunakan metode
5 fold cross-validation.Berdasarkan hasil pengujian yang dilakukan dengan berbagai kombinasi
feature dan jumlah state diperoleh tingkat akurasi yang bervariasi mulai dari
terendah yaitu 78,857% sampai dengan tertinggi yaitu 81,875% .
ABSTRACT
The difference of bird sound (acoustics features) for each of bird can beused to identify the individual bird. This research built a method for identifying
automatically each individual bird based on their sound (acoustics features) using
Hidden Markov Models. Generally this approach is used for signal processing and
for human speaker identification.This research employed eight Emberiza hortulana birds as the object for
the study (100 data sample for every birds). Data for testing and training were
separated using 5 fold cross-validation method.The results using any combination of features and number of states show variation of accuracy started from 78,857% to 81,875%.
KATA PENGANTAR
Puji syukur kepada Tuhan Yang Maha Esa yang telah memberikan segala
karunia-Nya sehingga penulis dapat menyelesaikan skripsi dengan judul
“Identifikasi Individu Burung Secara Otomatis dengan Menggunakan
Pendekatan Hidden Markov Models” .Dalam kesempatan ini, penulis ingin mengucapkan terima kasih yang
sebesar-besarnya kepada semua pihak yang turut memberikan dukungan,
semangat dan bantuan hingga selesainya skripsi ini :1. Romo Dr. Cyprianus Kuntoro Adi, S.J.,M.A.,M.Sc atas semua bantuan, bimbangan, kesabaran, waktu, dan semangat yang telah romo berikan, membuat skripsi ini dapat terselesaikan. Apa jadinya semua ini tanpa bantuan romo?
2. Yosef Agung Cahyanta, S.T., M.T., selaku Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma.
3. Bapak Puspaningtyas Sanjoyo Adi, S.T., M.T., sebagai Ketua Jurusan Teknik Informatika Universitas Sanata Dharma.
4. Bapak Bambang Soelistijanto, S.T., M.Sc., sebagai dosen penguji, atas saran dan kritik yang diberikan.
5. Bapak Eko Hari Parmadi, S.Si., M.Kom., sebagai dosen penguji, atas saran dan kritik yang diberikan.
6. Ridowati Gunawan, S.Kom., M.T., yang telah memberikan dukungan dan semangat.
7. Seluruh Dosen TI yang selama empat tahun ini telah membagikan ilmunya yang sangat berguna kepada penulis.
8. Laboran Laboratorium Komputer yang telah membantu mempersiapkan jalannya pendadaran.
9. Seluruh Staff Universitas Sanata Dharma, yang atas kerja kerasnya, membuat perkuliahan menjadi terasa nyaman.
10. Kedua orang tua saya, Mikael Phang Min Khong dan Lim Djan Fa, serta kakak saya Valeria Pangesti, S.E., atas doa, semangat, dukungan baik moril maupun finansial serta cinta yang begitu besar, selalu ada dan tak akan pernah berhenti.
11. Evi Michella Veronika,Heribertus Henta Nooristyanto, Julianto, Charles, Tulus Wardoyo, Maya yang sangat banyak membantu dalam proses pembuatan skripsi ini, atas dukungan, semangat, dan bantuan.
12. Serta semua pihak yang telah membantu kelancaran dalam penulisan tugas akhir ini. Penulis mengucapkan banyak terima kasih.
Penulis menyadari bahwa masih banyak kekurangan yang terdapat pada laporan tugas akhir ini. Saran dan kritik sangat penulis harapkan untuk perbaikan-perbaikan dimasa yang akan datang. Akhir kata, penulis berharap tulisan ini bermanfaat bagi kemajuan dan perkembangan ilmu pengetahuan serta berbagai pengguna pada umumnya.
Yogyakarta ,29 Maret 2010
DAFTAR ISI
HALAMAN JUDUL BAHASA INDONESIA .......................................... i
HALAMAN JUDUL BAHASA INGGRIS ................................................ ii
HALAMAN PERSETUJUAN PEMBIMBING ......................................... iii
HALAMAN PENGESAHAN ..................................................................... iv
HALAMAN PERSEMBAHAN ................................................................. v
PERNYATAAN KEASLIAN KARYA ..................................................... vi
HALAMAN PERSETUJUAN PUBLIKASI .............................................. vii
ABSTRAK .................................................................................................. viii
ABSTRACT ................................................................................................ ix
KATA PENGANTAR ................................................................................ x
DAFTAR ISI ............................................................................................... xii
BAB I. PENDAHULUAN ..........................................................................1
1.1. Latar Belakang ..............................................................................
1
1.2. Rumusan Masalah .........................................................................
2
1.3. Tujuan ...........................................................................................
3
1.4. Batasan Masalah ...........................................................................
3
1.5. Metodologi Penelitian ...................................................................
4
1.6. Sistematika Penulisan ...................................................................
5
BAB II. LANDASAN TEORI ....................................................................
24
2.8. Pengoptimalisasi State Sequence ..................................................
42
3.5. Perancangan Sistem ......................................................................
3.4. Metode 5 Folds Cross-Validation .................................................
41
40
3.3. Proses Testing ...............................................................................
3.2. Proses Training .............................................................................
38
38
3.1. Data Burung Ortolan Bunting .......................................................
34 BAB III. METODOLOGI PENELITIAN ..................................................
2.9. Algoritma Baum-Welch.................................................................
24
22
2.7. Hidden Markov Models untuk Speaker Recognition ....................
7
2.1. Speaker Recognition .....................................................................
21
2.6. Trellis Diagram .............................................................................
17
2.5. Terminologi HMM ........................................................................
14
2.4. Hidden Markov Models .................................................................
10
2.3. Teori Dasar Markov Model...........................................................
Greenwood Function Cepstral Coefficients ........................
10 2.2.2.
10 2.2.1. Feature Extraction ..............................................................
8
2.2. Feature ..........................................................................................
2.1.2. Prinsip Speaker Recognition ...............................................
7
7 2.1.1. Pengenalan Speaker Recognition ........................................
44
3.6. Spesifikasi Hardware dan Software ..............................................
50 3.6.1. Hardware ............................................................................
50 3.6.2. Software ..............................................................................
50 BAB IV. IMPLEMENTASI DAN ANALISA SISTEM ............................
51
4.1. Implementasi Antar Muka yang Digunakan pada Sistem .............
51 4.1.1. Halaman Depan ...................................................................
51
4.1.2. Halaman Pengujian
52 Hidden Markov Models ......................
4.1.3. Halaman Pengidentifikasian ...............................................
53 4.1.4. Halaman Bantuan Program .................................................
55 4.1.5. Halaman Tentang Program .................................................
56
4.2. Analisis Akurasi Identifikasi Burung ............................................
57 BAB V. KESIMPULAN DAN SARAN .....................................................
63
5.1. Kesimpulan ...................................................................................
63
5.2. Saran..............................................................................................
65 DAFTAR PUSTAKA .................................................................................
66 LAMPIRAN I .............................................................................................
69 LAMPIRAN II ............................................................................................
71
DAFTAR TABEL Tabel Keterangan Halaman Probabilitas p( ) cuaca yang akan terjadi
|
2.1 15 besok berdasarkan cuaca hari ini
Probabilitas membawa payung |
2.2 19 berdasarkan cuaca pada hari i
3.1 Contoh confusion matrix 43 Hasil akurasi identifikasi individu burung dengan
4.1 57 kombinasi feature dan jumlah state
Identifikasi individu burung dengan variasi tipe
4.2
60 feature
4.3 Confusion matrix untuk hasil akurasi paling tinggi
61
DAFTAR GAMBAR Gambar Keterangan Halaman
3.7 Halaman Depan ( Home) 45
3.2 Time series dan spectrogram dari tipe nyanyian ab
39
3.3 Menggunakan HMM untuk training model
40
3.4 Menggunakan HMM untuk identifikasi data suara baru
41
3.5 Pembagian tiap kelompok data menjadi 5 bagian
42
3.6 Iterasi pengujian untuk salah satu kelompok data
43
3.8 Halaman pengujian Hidden Markov Models 46
3.1 Syllable burung ortolan bunting (Osiejuk, 2003)
3.9 Halaman pengidentifikasian
47
3.10 Halaman bantuan program
48
3.11 Halaman tentang program
48
3.12 Halaman peringatan (jika tidak data suara input untuk diproses)
49
3.13 Halaman peringatan (jika tidak data suara input untuk didengarkan)
49
3.14 Halaman konfirmasi (jika ingin mengakhiri penggunaan sistem)
39
35
2.1 Struktur dasar sistem speaker identification (Furui, 1996)
2.7 Trellis diagram
8
2.2 Struktur dasar sistem speaker varification (Reynolds, 2002)
9
2.3 Langkah-langkah untuk proses menghitung koefisien dari GFCC
12
2.4 Greenword filterbanks
13
2.5 Markov model untuk cuaca dengan probabilitas transisi state berdasarkan table 2.1
15
2.6 HMM untuk suara burung pertama ab02_88_1
18
22
2.14 Probability function dengan state S pada saat t dan beralih ke state S pada saat t+1
2.8 Trellis diagram untuk contoh no.2 pada HMM
23
2.9 Algoritma viterbi untuk part untuk state “sunny” pada n = 2
28
2.10 Algoritma viterbi untuk part untuk state “rainy” pada n = 2
29
2.11 Algoritma viterbi untuk part untuk state “foggy” pada n = 2
30
2.12 Algoritma viterbi untuk part akhir pada n = 3
32
2.13 Algoritma viterbi 33
50
Gambar Keterangan Halaman
55 Halaman bantuan program
62
62 Spectrogram suara kicauan
60 4.10 burung5
( feature GFCC) dengan kombinasi window si jumlah state yang berbeda
4.9 Tingkat akurasi identifikasi individu burung ze dan
56
4.8 Halaman tentang program
4.7
4.2 Halaman pengujian ov Models Hidden Mark
54 Peringatan jika belum ada sua menekan tombol “proses”)
4.5 Peringatan jika belum ada suara inputan (jika menekan tombol “mainkan”) 54 4.6 ra inputan (jika
54
4.4 Jendela file selector
53
4.3 Halaman pengidentifikasian
52
4.11 Spectrogram suara kicauan burung3
BAB I PENDAHULUAN
1.1 Latar Belakang
Burung mempunyai suara kicauan yang berbeda untuk mengenali sesama
anggota spesies atau mengenali rekan, orang tua, maupun dengan burung dari
spesies lain (Holschuch, 2004). Keunikan dari masing-masing suara kicauan
burung ini dapat dimanfaatkan untuk proses pengidenfikasian individu burung.Pengidentifikasian individu burung yang ada pada saat ini dapat dilakukan
secara manual maupun secara otomatis. Secara manual, cara yang dilakukan
adalah capture dan handling burung secara langsung. Namun cara ini tentu sangattidak efektif jika burung-burung yang dilibatkan bersifat sensitif terhadap
gangguan ( disturbance) dan burung yang sulit diobservasi secara langsung. Secaraotomatis adalah dengan menggunakan suara kicauan burung yang selanjutnya
akan di identifikasi dengan program bantu pada komputer.Teknik-teknik yang digunakan untuk mengidentifikasi individu binatang
secara otomatis berdasarkan suara dibagi menjadi dua kategori yaitu kualitatif dan kuantitatif (Mc.Gregor et al., 2000). Pendekatan kualitatif meliputi perbandingan
spectrogram yang dilakukan oleh para peniliti. Pendekatan ini mempunyai konsep
yang sederhana dan mudah dioperasikan. Namun, variable yang dilibatkan dalam perhitungan dengan spectrogram tidak cukup untuk menggambarkan karakteristik dari isi spectrum dan pola sinyal sehingga tingkat akurasinya tergolong rendah (Wakita, 1976). Jadi diperlukan metode kuantitatif yang lebih teliti dalam pengukuran secara detail frekuensi dan temporal parameters dari suara tersebut.
Salah satu metode pendekatan kuantitatif adalah metode Hidden Markov Models. Metode ini tidak membutuhkan banyak usaha, tidak mengkonsumsi waktu yang lama dalam pengolahan, dan hasil yang diperoleh lebih akurat.
Dalam penulisan tugas akhir ini, akan diterapkan metode Hidden Markov Models sebagai metode untuk mengidentifikasi individu burung secara otomatis ( speaker recognition).
1.2 Rumusan Masalah
Dari latar belakang masalah diatas dapat dirumuskan menjadi beberapa masalah sebagai berikut :
1. Bagaimana mengimplementasi indentifikasi individu burung berdasarkan suara kicauan dengan pendekatan metode Hidden Markov Models dalam suatu perangkat lunak?
2. Bagaimana tingkat akurasi identifikasi individu burung dengan pendekatan metode
Hidden Markov Models ?
1.3 Tujuan
1. Membangun suatu metode untuk mengidentifikasi secara otomatis individu burung menggunakan pendekatan Hidden Markov Models.
2. Menemukan parameter yang berpengaruh dalam pengenalan (identifikasi).
3. Menghitung akurasi identifikasi individu burung.
1.4 Batasan Masalah
Adapun masalah yang akan diselesaikan dibatasi oleh hal-hal berikut :
1. Hanya satu spesies burung yang diteliti dengan satu tipe nyanyian ( ab).2. Suara kicauan yang dapat diproses adalah suara wav (*.WAV).
3. Feature extraction dilakukan dengan menggunakan metode GFCC ( Greenwood Functions Ceptral Coefficients).
4. Pemodelan suara burung menggunakan algoritma Baum-Welch.
5. Pengidentifikasian suara burung menggunakan algoritma Viterbi.
6. Perangkat lunak (sistem) dibuat menggunakan Matlab (versi 7).
1.5 Metodologi Penelitian
Metode yang digunakan dalam penelitian meliputi : 1.
Studi Pustaka Dengan mempelajari buku-buku referensi yang berkaitan dengan speaker recognition, metode Hidden Markov Models, feature extraction, algoritma Baum-Welch, algoritma Viterbi dan pemrograman matlab.
2. Analisa Kebutuhan Pada tahap ini mengumpulkan sampel suara (*.WAV) untuk setiap
burung ortolan bunting dalam satu jenis tipe nyanyian yaitu ‘ab’ .
3. Perancangan Tahap ini digunakan untuk mengubah model matematika menjadi sebuah representasi perangkat lunak.
4. Implementasi Hasil dari tahap perancangan dengan diterjemahkan dalam suatu sistem.
5. Pengujian dan Evaluasi Tahap ini dilakukan pengujian terhadap sistem yang sudah dibuat untuk mengetahui tingkat akurasi identifikasi individu burung ortolan bunting.
6. Kesimpulan Hasil dari tahap pengujian dan evaluasi kemudian dibuat kesimpulan.
1.6 Sistematika Penulisan
BAB I : PENDAHULUAN Bab ini berisi latar belakang, rumusan masalah, tujuan, batasan masalah, metodologi penelitian dan sistematika penulisan. BAB II : LANDASAN TEORI Bab ini berisi tentang penjelasan mengenai speaker recognition, feature extraction, Greenwood function cepstral coefficients (GFCC), dasar metode
Hidden Markov Models, algoritma Baum- Welch dan algoritma Viterbi.
BAB III : METODOLOGI Bab ini berisi tentang data burung ortolan bunting, alur proses training dan proses testing serta penjelasan rancangan sistem yang akan di implementasi.
BAB IV : IMPLEMENTASI DAN ANALISA HASIL Bab ini berisi implementasi antarmuka sistem dan analisa hasil pengujian sistem.
BAB V : PENUTUP Bab ini berisi kesimpulan dan saran-saran yang dapat
dipertimbangkan agar sistem dapat digunakan dan dikembangkan secara maksimal.
BAB II LANDASAN TEORI Pada landasan teori ini akan dijelaskan secara singkat hal-hal yang berkaitan
dengan identifikasi individu burung, teori dasar Markov model beserta contoh
dasar untuk memudahkan pemahaman, trellis diagram serta algoritma-algoritma lain yang akan digunakan pada proses pengidentifikasian.2.1 Speaker Recognition
2.1.1 Pengenalan Speaker Recognition
Speaker recognition dengan komputer merupakan tugas untuk
mengidentifikasi ( recognizing) secara otomatis identitas speaker berdasarkan isi
informasi yang diperoleh dari sinyal suara (O’Saughnessy,2000).Speaker recognition mencakup dua tugas utama yaitu speaker
identification dan speaker verification. Speaker identification mengacu pada
penentuan 1 (satu) identitas speaker dari sekumpulan speaker terdefinisi secaraterbatas. Sedangkan speaker verification atau dikenal dengan speaker
authentication mengacu pada tugas mengklasifikasikan untuk menerima atau
menolak secara otomatis terhadap identitas yang mengklaim sebagai speaker.Selama proses pengidentifikasian, model referensi untuk masing-masing
speaker yang sudah dibentuk akan digunakan untuk menghitung nilai
perbandingan dengan input sinyal suara. Pada proses speaker verification, nilai
perbandingan akan dihitung untuk model yang diasosiasikan dengan identitas
yang mengklaim dan alternatif model lain atau disebut dengan imposter speakers.
Perbedaan antara speaker identification dan speaker verification terletak pada jumlah alternatif pengambilan keputasan. Pada speaker identification jumlah
pengambilan keputusan adalah sama dengan ukuran jumlah populasi. Pada
speaker verification jumlah pengambilan keputusan hanya terdiri dari dua
kemungkinan yaitu menerima atau menolak tanpa memperhatikan ukuran
populasi.2.1.2 Prinsip Speaker Recognition Gambar 2.1 dan 2.2 akan menunjukan struktur sistem speaker recognition.
Gambar 2.1. Struktur dasar sistemspeaker identification (Furui, 1996) Dalam speaker identification, speech signal yang sebelumnya tidak
diketahui identitas speaker akan dianalisis. Sistem akan melakukan pencocokan
kesamaan dengan model-model yang ada untuk mengetahui identitas dari speaker.Gambar 2.2. Struktur dasar sistem speaker varification (Reynolds, 2002)Sebuah sistem speaker verification akan mengimplementasikan test perbandingan untuk menganalisis diantara dua hipotesis yaitu test speech berasal
dari speaker model atau impostor model. Feature ektraksi dari input sinyal akan
dibandingkan dengan daftar speaker model dan dibandingkan dengan beberapamodel yang merepresentasikan imposter speaker. Nilai dari pebandingan ini
digunakan untuk mengambil keputusan untuk menerima atau menolak speaker
tersebut.2.2 Feature
2.2.1 Feature Extraction
Pengidentifikasian individu burung yang menggunakan data yang
memiliki label disebut sebagai “supervised”. Data suara yang diambil merupakan
data audio ( signal). Namun tidak semua data audio tersebut dipergunakan,
sehingga diperlukan proses feature extraction untuk menentukan hanya feature
penting yang diperlukan. Feature yang di ekstrak diharapkan mempunyai
kemampuan untuk membedakan kemiripan vokalisasi serta mempunyai
kemampuan untuk membuat model tanpa membutuhkan sebuah data training
yang berlebihan.Tujuan dari proses feature extraction adalah untuk parameterisasi suara
(audio) kedalam rangkaian vector feature yang ringkas dan relevan, sehingga
dapat mewakili informasi dari suara tersebut.2.2.2 Greenwood Function Cepstral Coefficients (GFCC) Pada Subbab ini akan menjelaskan secara singkat (review) mengenai
Greenwood function cepstral coefficients (GFCC) yang telah didiskusikan lebih
detail di dalam (Clemins et al., 2006).Greenwood function cepstral coefficients (GFCC) merupakan salah satu pendekatan yang digunakan untuk mengekstrak feature berdasarkan pada
perceptual model dari spesies. Dalam kasus ini adalah suara dari spesies burung
ortolan bunting.Greenwood (Greenword,1961,1990) menunjukan bahwa beberapa dari
spesies mamalia baik mamalia darat maupun perairan menerima frekuensi pada
sebuah skala algoritmik yang dimodelkan dengan persamaan : f = A( (2-1)10 -b) Keterangan : f adalah frekuensi (Hz)
A, a dan b merupakan konstanta (spesifik untuk masing-masing spesies) x menunjukan posisi dari selaput pendengaran Untuk frekuensi
f, maka frequency warping didefinisikan sebagai :
(2-2)Dengan pendekatan range pendengaran ( ) dari spesies tersebut, dan
menggunakan pendekatan b = 0.88 (LePage, 2003), konstanta A dan a dapat diturunkan sebagai berikut :A = (2-3) (2-4)
Gambar 2.3 berikut akan ditunjukan diagram blok dalam proses Greenwood function cepstral coefficients.Suara Windowed Greenwood Discrete cosine Cepstral burung FFT filterbank transform coefficient
Gambar 2.3. Langkah-langkah untuk proses menghitung koefisien dari GFCCSinyal suara akan dilakukan segmentasi menjadi frame-frame dan masing- masing dari frame di window. Window dari data suara ditransformasi dengan menggunakan fast fourier transform.
(2-5) ∑ exp 2 / Dimana x(n) adalah signal dalam diskrit waktu dengan panjang N , k=0,1,..N-1, dan k berkorespondensi dengan frekuensi f(k) = , adalah
/ sampling frekuensi (Hz) dan w(n) adalah time-window (sering menggunakan Hamming window dengan w(n) = 0.54 – 0.46 cos ( n / N)).
Suara burung ortolan bunting mempunyai range frekuensi dengan ukuran window 3ms-6ms. Koefisien magnitude |X(k)| dikorelasikan dengan masing- masing triangular filter dalam greenwood filterbank H(k,m). Ini berarti masing- masing koefisien magnitude dari fast fourier transform dikalikan dengan filter- gain dan hasilnya di akumulasikan sebagai berikut:
(2-6)
ln ∑ | ,
|
Untuk m = 1,2,…,M, dimana M adalah jumlah dari filter banks dan M<<N.
Greenwood filterbank merupakan sebuah kumpulan dari triangular filters yang
didefinisikan oleh center frequencies.Filterbank center frequencies dihitung dengan skala Greenwood dari
persamaan (2-2). Tringular filters tersebar di seluruh frequency range dari 0
sampai Nyquist frequency. Band-limiting menggunakan frekuensi bawah (lower)
dan atas ( upper) untuk me-reject frekuensi yang tidak diinginkan. Untuk suara
burung ortolan bunting,Greenwood filterbank (gambar 2.4) biasa mempunyai dan dari spesies nyanyian range 400 sampai 7400 Hz yang merupakan burung (Edward, 1945).
Gambar 2.4.
Greenword filterbanks
Discrete cosine transform digunakan untuk menghitung cepstral coefficients dari
log filterbank amplitudes X’(m) sebagai berikut :0.5 Untuk i = 1,2,….M, dimana c(i) adalah GFCC.
(2-7)
∑ cos
2.3 Teori Dasar Markov Model
Markov model menggambarkan sistem dengan serangkaian state dan
transisi state (setiap transisi dari state mempunyai sebuah probabilitas) dimana
rangkaian dari state-state tersebut disebut dengan Markov chain.Dalam Markov model atau first-order-markov mengasumsikan bahwa
probabilitas observasi pada waktu yang
n hanya tergantung pada observasi dilakukan pada waktu n-1. Untuk serangkaian { } maka, ,.., (2-8)
P( , ,…, ) (asumsi Markov) | ) = P( |
, Untuk memperoleh penggabungan probabilitas ( joint probability) dari baik
observasi-observasi sebelumnya maupun observasi sekarang dapat diturunkan
menjadi:P( ,…, ) = (2-9) ∏
|
,Contoh soal : Misalkan terdapat 3 tipe cuaca : “sunny” , “rainy” dan “foggy”, berikut
dengan tabel probabilitas P( ) cuaca yang akan terjadi besok ( )
| berdasarkan cuaca hari ini ( ).Tabel 2.1. Probabilitasp( ) cuaca yang akan terjadi besok berdasarkan | cuaca hari ini
Cuaca besok
Cuaca hari ini sunny rainy foggy
0.8 0.050.15 sunny
0.2 0.6 0.2 rainy
foggy 0.2 0.3 0.5
State yang ada S = { sunny, rainy, foggy} dan setiap hari mempunyai
kemungkinan transisi p( ) state berdasarkan tabel probabilitas 2.1.
| Berikut gambar untuk state-state tersebut :
0.8
0.5
0.15 Sunny Foggy
0.2
0.3
0.2
0.05
0.2 Rainy
0.6 Gambar 2.5. Markov model untuk cuaca dengan probabilitas transisi state berdasarkan table 2.1
1. “sunny” berapakah probabilitas besok bercuaca
Jika hari ini cuacanya adalah “sunny” dan hari berikutnya ( ) adalah “rainy” ?
Dengan menggunakan teori asumsi Markov pada pembahasan diatas dan dengan
tabel probabilitas 2.1 maka permasalahan ini dapat di terjemahkan menjadi: P(, | = .
P( P(
| , |
= P( ) . ( (markov
| | asumsi)= 0.05 . 0.8 = 0.04 2. adalah
Jika cuaca kemarin “rainy” dan cuaca hari ini adalah “foggy”,
berapakah probabilitas besok dengan cuaca “sunny” ? P( = P(
| , |
= 0.22.4 Hidden Markov Models
Salah satu metode pen genalan pola pada speaker recognition yang memili ki akurasi baik adalah metode Hidden Markov Models. Metode ini merupakan perluasan dari Markov model yang populer dipakai untuk pengenalan pola akustik. Hidden Markov Models adalah sebuah model statistik dengan Markov model yang state-state (transisi state) tidak dapat diamati secara langsung atau dengan kata lain parameter-parameter tersebut tersembunyi ( hidden).
Untuk menentukan probabilitas setiap state hanya diperoleh berd asarkan observ asi , sehingga kondisi probabilitas | dapat dirumuskan dengan:
| (2-10) | =
D engan memperhatikan probabilitas yang tidak berubah untuk setiap state maka masing-masing potensi state y ang akan diuji atau diperiksa mempunyai probabilitas yang sama sehingga persamaan (2-10) dapat rumuskan dengan persamaan (2-11) berikut ini :
(2-11) | = | A tau untuk jumlah n maka : L( ) =
,….., ,……,
(2-12) ∏ ∏ | | | Dalam kasus pengidentifikasi individu burung ortolan bunting, HMM akan
memod elkan karakteristik sinyal atau suara yang secara temporal dan spectrum
yang memiliki variasi yang beragam. Dalam state terdapat suatu runtun waktu
sinyal yang dihasilkan oleh suara burung ortolan bunting tersebut.State yang dimiliki oleh salah satu suara burung ortolan bunting terlihat pada g ambar di bawah ini: start end
Gambar 2.6. HMM untuk suara burung pertama ab02_88_1Contoh soal : Pada co ntoh Markov model, keadaan cuaca dapat diobservasi secara langsun
g. Namun pada HMM, cuaca-cuaca dalam keadaan ”
hidden”. Hal ini dapat
kita umpamakan seandainya kita dikunci di sebuah kamar untuk beberapa hari
(tidak dapat melihat kondisi cuaca luar). Untuk melakukan prediksi cuaca yang
akan terjadi, maka hanya terdapat tanda yaitu pada orang yang setiap hari datang
ke kamar untuk membawakan makanan, apakah orang tersebut membawa payung
atau tidak.Tabel 2.2 berikut akan ditampilkan probabilitas membawa payung berdasa rkan keadaan cuaca. Jika orang tersebut membawa payung maka 0.1 cuacapada hari itu
“sunny”, 0.5 bercuaca “rainy” dan 0.3 adalah “foggy”.
T abel 2.2. Probabilitas membawa payung berdasarkan cuaca pada
| hari i
Cuaca Probabilitas membawa payung
0.1 Sunny
0.8 Rainy Foggy
0.3
1. Seandainya hari pada saat Anda terkunci bercuaca “sunny”. Hari berikutnya
orang yang mengantarkan makanan membawa payung. Berapakah probabilitas
masing-masing cuaca pada hari itu?9 Kemungkinan hari kedua adalah “sunny”:
=
L(
| ,
P( ) . P( 0.1 . 0.8
| |
= 0.08
9 Kemungkinan hari kedua adalah “rainy”: L(
=
| ,
P( ) . P( 0.8 . 0.05
| |
= 0 .04
9 Kemungkinan hari kedua adalah “foggy”:
L ( =
| , 0.3 .
P( ) . P(
| | 015 = 0.045
2. eandainya Anda tidak mengetahui cuaca pada hari Anda dikunci dalam S k amar, tiga hari berturut-turut orang yang mengantarkan makanan tidak membawa payung. Berapakah likelihood cuaca tersebut adalah {
,
}?
,,
L(
, , | , ,
= P( ) .
| ) .
P(
|
P( ) .
|
P( . P( ) . P( )
| | = 0 .9 . 0.7 . 0.9 . 1/3 . 0.15 . 0.2 = 0.0057
2.5 Terminologi HMM
Sebuah model HMM terdiri dengan: - ¾ Sekumpulan dari state (set of states) S = { , ,. . . , } dan sekumpulan par ameter ( set of parameters)
Θ = { , A, B}: ¾ Prior probabilities = P( ) merupakan probabilitas dari yang menjadi state pertama dalam rangkaian state ( untuk N state, prior probabilities adalah = 1 /
). ¾ Transition probabilities adalah probabilitas dari state i ke state j : = = s |
P( ). Transition probabilities dihimpun
, dalam matrik A.
¾ Emission probabilities merupakan likelihood dari observasi x jika modelnya adalah . Berikut jenis observasi x :
Observasi diskrit, { = = |
P( , . . . , } : )
, probabilitas obse rvasi jika state sekarang adalah . Untuk
, , dihimpun dalam sebuah matrik B.
= p( | Observasi continue : kumpulan (set) fungsi ) mendeskripsikan probability density function (pdf) pada observation space untuk sebuah sistem dalam state , dihimpun dalam fungsi vector B(x).
Sifat dari operasi HMM adalah: - ¾ Rangkaian state (hidden state sequence) Q = { , ,. . . , }, S.
¾ Rangkaian ob servasi ( observation sequence) X = { , ,. . . , }.
2.6 Trellis Diagram
Trellis diagram dapat digunakan untuk menvisualisasikan perhitungan kemungkina n ( lik elihood) dalam HMM. Gambar 2.7 menunjukan sebuah trellis diagram dari HMM dengan 3 state.
, , , , , Sta te
1 , , , , ,
State
2
,
, ,, , S tate
3 Se quence
n = 1 n = 2 n = i n = N waktu
Gambar 2.7. Trellis diagramMasing-masing kolom dalam trellis menunjukkan kemungkinan state pada
saa t n. Masing-masing state dalam satu kolom dihubungkan dengan masing-
masing state dalam kolom yang berdampingan dengan sebuah p robabilitas transisi
yaitu pada elemen dalam matrik transisi A.,
0.9
0.9 Sunny
0.15
0.2 Rainy
0.7 Foggy tidak membawa
= Sequence
n = 1 n = 2 n = i waktu
Gambar 2 .8. Tre llis diagram un tuk co ntoh n o.2 pada HMM
Gambar 2.8 menunjukkan trellis diagram untu k contoh soal no.2 pada pem ahasan mengenai teori HMM. bLikelihood rangkaian state dari rangkaian
( sequence) obs ervasi dapat diperoleh dangan path dalam trellis diagram ters ebut.
P = . . .
, , . . , , ,
= 1/3 . 0.9 . 0.15 . 0.7 . 0.2 . 0.9 = 0.005
2.7 Hidden Markov Mode ls untuk Speaker Recognition Dalam speaker recognition secara otomatis terdapat tugas utama yang harus dilakukan yaitu mencari individu atau speaker berdasarkan rangkaian kata ( sequence word) dalam input akustik.
= arg max P(W|X)
W (2-13) Dimana, X = { , , . . . , } merupakan rangkaian dari “feature vector”yang sudah dilakukan proses feature extra ction, akan dicari sebagai rangkaian
kat a dari yang merupakan maksimumW (semua kemungkinan dari rangkaian W )
dar i P(W | X). Untuk memperjelas p em bahasan diatas maka akan dibandingkan
dengan contoh sebelu mnya yaitu contoh tipe cuaca yang sudah dibahas
sebelumnya.Feature vector merupakan object yang diobservasi, berkaitan dengan
observasi terhadap ada tidaknya membawa payung (contoh tipe cuaca), rangkaian
kata terkait dengan cuaca yang terjadi.2.8 Pengoptimalisasi State Sequence Didalam speaker atau speech recognition sangat penting untuk
mengasosiasikan sebuah rangkaian “optimal” state dengan rangkaian dari
observasi. Sebagai contoh dalam kasus speaker / speech recognition mengetahui
feature frame mana yang termasuk untu k masing-masing state sangat penting
supaya setiap sta e tersebut dapat diasosiasikan dengan t word secara tepat.Algoritma viterbi digunakan sebagai kriteria pengoptimalisasi yang
dilakukan dengan menemukan rangkaian state ( part) yang mempunyai likelihood
maksimum sehingga pada saat n hanya terdapat part yang paling mungkin dipilih untuk setiap state . Algoritma ini menggunakan dua variable yaitu: 1. merupakan likelihood tertinggi (highest) dari single part diantara semua path yang berakhir dalam state pada saat n:, = , , , . . . , | = max p( , , . . . , Θ)
, ,
2. Variable
(i) merupakan track untuk “best part” berakhir dalam state pada saat n:
, = , , , . . . , |
(i) = arg max p( , , . . . , Θ )
, ,
Berikut meru pakan algoritma dari viterbi : Untuk HMM dengan state
1. Inisialisasi ( Initialization)
= . , i = 1,…,
, (i) = 0 Dimana merupakan prio probability untuk state pada waktu n = 1.
2. Rekursif ( R urs x ( . ) .
,
2 ≤ n ≤ N (i) = arg max ( . ) 2
≤ n ≤ N
1 3.
Termination (X | Θ ) = max arg
“best likelihood” ketika tercapai sequence dari pengobservasian terakhir t = T.
4. Backtracking = { , . . . , } maka = ( ), n = N-1, N-2, . . . , 1