• Tidak ada hasil yang ditemukan

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI

N/A
N/A
Protected

Academic year: 2022

Membagikan "PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI"

Copied!
190
0
0

Teks penuh

(1)

i

PASSWORD MENGGUNAKAN METODE HIDDEN MARKOV MODELS

SKRIPSI

Diajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer

Program Studi Teknik Informatika

Oleh :

PETRA VALENTIN WAHYUNINGTIAS NIM : 085314025

HALAMAN JUDUL BAHASA INDONESIA

PROGRAM STUDI TEKNIK INFORMATIKA JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA YOGYAKARTA

2013

(2)

ii

USING HIDDEN MARKOV MODELS

A THESIS

Presented as Partial Fulfillment of the Requirements To Obtain the Sarjana Komputer Degree In Departement of Informatics Engineering

By :

PETRA VALENTIN WAHYUNINGTIAS

STUDENT ID : 085314025

HALAMAN JUDUL BAHASA INGGRIS

INFORMATICS ENGINEERING STUDY PROGRAM INFORMATICS ENGINEERING DEPARTMENT

FACULTY OF SCIENCE AND TECHNOLOGY SANATA DHARMA UNIVERSITY

YOGYAKARTA

2013

(3)
(4)
(5)

v

’’ DO WHAT YOU LOVE

AND

LOVE WHAT YOU DO..”

This thesis belongs to…

Jesus Christ, my Saviour, my Life, my Eternal Love and my Power..

Thank You for stay with me and for gave me wonderful world..

My parent, my spring, my joy, my life..

Thank you for give me a chance to feel the world..

My friends and Audrey..

Thank you guys for stay with me..

(6)
(7)
(8)

viii

Suara manusia dapat dijadikan salah satu cara untuk mengidentifikasi apa yang diucapkan manusia dan siapa yang mengucapkannya. Pada tugas akhir ini dikembangkan sebuah sistem yang dapat mengidentifikasi secara otomatis suara manusia dengan menggunakan pendekatan Hidden Markov Models (HMM) dan ekstraksi ciri Mel-frequency Cepstral Coefficients (MFCC). Secara umum HMM digunakan untuk signal processing dan speech processing sedangkan MFCC merupakan salah satu metode ektraksi ciri yang digunakan untuk pengenalan suara manusia.

Penelitian ini menggunakan suara manusia yang terdiri dari 4 (empat) speaker(pembicara) yang terdiri dari 2 laki-laki dan 2 perempuan. Pembagian data untuk proses training dan testing menggunakan metode 5-fold cross validation.

Hasil pengujian yang didapatkan dari proses identifikasi dengan berbagai

kombinasi feature, windows state dan jumlah state diperoleh tingkat akurasi

paling tinggi untuk speech recognition 95% dan untuk speaker recognition 93%.

(9)

ix

Human voice can be one of many ways to identify what human said and who has the voice. This research built a system for identifying automatically human voice using Hidden Markov Models (HMM) and feature extraction with Mel-frequency Cepstral Coefficients (MFCC). Generally HMM is use for signal processing and speech processing and MFCC is use for feature extraction for human voice.

This research employed four human as the object for the study. Data including voices of two man and two woman. Data for testing and training were separeted unsing 5-fold cross validation.

The highest result of identification using any combination of feature,

windows size and number of states are 95% for speech recognition and 93% for

speaker recognition.

(10)

x

Puji dan syukur kepada Tuhan Yesus Kristus yang telah senantiasa memberikan berkat dan rahmat yang tak berkesudahan serta kesempatan yang sangat berharga sehingga penulis dapat menyelesaikan skripsi dengan judul

“Identifikasi Suara Manusia Sebagai Kata Sandi atau Password Menggunakan Metode Hidden Markov Models“.

Dalam kesempatan ini, penulis juga ingin mengucapkan terima kasih sebesar-besarnya terhadap semua pihak yang telah memberi dukungan dan semangat sehingga skripsi ini dapat selesai :

1. Romo Dr. C. Kuntoro Adi, S.J., M.A., M.Sc. selaku dosen pembimbing dan dosen pembimbing akademik Teknik Informatika kelas A angkatan 2008. Terima kasih atas semua bantuan , bimbingan, pengorbanan waktu, kesabaran, ilmu serta semangat yang telah diberikan.

2. Ibu Paulina Heruningsih Prima Rosa, S.si., M.Sc. selaku Dekan Fakultas Sains dan Teknologi. Terima kasih atas semua bantuan dan bimbingan serta kesabarannya dalam menghadapi mahasiswa.

3. Bapak Eko Hari Parmadi , S.si., M.Kom. dan bapak Alb. Agung Hadhiatma, S.T., M.T. selaku dosen penguji. Terima kasih atas saran dan kritik yang telah diberikan.

4. Seluruh Dosen Teknik Informatika yang selama masa kuliah telah membagikan ilmu dan pengetahuannya yang sangat berguna bagi penulis.

5. Laboran Laboratorium Komputer, Tinus dan Fidi. Terima kasih atas

bantuan dan dukungannya.

(11)

Bu Linda. Terima kasih atas bantuan dan kesabarannya menghadapi penulis sehingga berbagai prosedur dapat diselesaikan dengan baik dan lancar.

7. Kedua orang tua saya, Yohanes Sulistiono dan M.M Lusia. Terima kasih untuk semua kasih sayang dan perhatian yang tak terhingga.

8. Kedua adikku, Bernadeta Listiani dan Felicia Ratriana Putri. Terima kasih telah ada di dunia ini.

9. Tim Ceriwis. Pucha dan Itha. Teman suka dan duka. Terima kasih atas segala dukungan dan semangat serta kesabaran yang telah diberikan sehinggan skripsi kita selesai.

10. Untuk Angga, Endra, Surya, Devi, Ocha, Siska, Bebeth, Esy, Agnes dan seluruh teman-teman Teknik Informatika angkatan 2008. Terima kasih atas dukungannya.

11. Untuk Maleo, mbak Vero, mbak Lia dan Mbak Debby. Terima kasih atas bantuannya untuk ‘break’ ke negri sebrang sehingga skripsi ini dapat selesai dengan bahagia.

12. Semua pihak yang telah membantu penulis dalam menyelesaikan skripsi.

Penulis menyadari masih banyak kekurangan yang terdapat dalam laporan tugas akhir ini. Saran dan kritik sangat diharapkan untuk hasil yang lebih baik di masa depan.

Yogyakarta, 22 Mei 2013

Penulis

(12)

xii

HALAMAN JUDUL BAHASA INDONESIA ... I HALAMAN JUDUL BAHASA INGGRIS ... II HALAMAN PERSETUJUAN PEMBIMBING ... III HALAMAN PENGESAHAN ... IV HALAMAN PERSEMBAHAN ... V PERNYATAAN KEASLIAN KARY ... VI PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK

KEPENTINGAN AKADEMIS ... VII ABSTRAK ... VIII ABSTRACT ... IX KATA PENGANTAR ... X DAFTAR ISI ... XII DAFTAR GAMBAR ... XVI DAFTAR TABEL ... XVIII

BAB I PENDAHULUAN ... 1

1.1 L

ATAR

B

ELAKANG

M

ASALAH

... 1

1.2 R

UMUSAN

M

ASALAH

... 3

1.3 T

UJUAN

... 3

1.4 B

ATASAN

M

ASALAH

... 4

(13)

1.6 S

ISTEMATIKA

P

ENULISAN

... 7

BAB II LANDASAN TEORI ... 9

2.1 S

PEECH

P

ROCESSING

... 9

2.2 S

PEECH

R

ECOGNITION

... 11

2.3 S

PEAKER

R

ECOGNITION

... 13

2.3.1 Struktur Dasar dari Sistem Speaker Recognition ... 14

2.4 F

EATURE

E

XTRACTION

... 16

2.5 M

EL

-F

REQUENCY

C

EPSTRAL

C

OEFFICIENTS

(MFCC) ... 18

2.5.1 Frame Blocking ... 20

2.5.2 Windowing ... 21

2.5.3 Fast Fourier Transform (FFT) ... 23

2.5.4 Mel-Frequency Wrapping ... 24

2.5.5 Cepstrum ... 26

2.6 M

ETODE

H

IDDEN

M

ARKOV

M

ODELS

( HMM ) ... 27

2.7 A

LGORITMA

P

EMODELAN

H

IDDEN

M

ARKOV

M

ODELS

... 30

2.7.1 Algoritma Training dengan Baum-Welch ... 31

2.7.2 Algoritma Testing dengan Viterbi ... 34

2.8 M

ETODE

E

VALUASI

5-F

OLD

C

ROSS

V

ALIDATION

... 34

BAB III ANALISA DAN PERANCANGAN SISTEM ... 37

3.1 P

ERANCANGAN

S

ISTEM

S

ECARA

U

MUM

... 37

3.2 G

AMBARAN

S

ISTEM

... 38

3.3 P

ROSES

T

RAINING

... 39

(14)

3.5 P

ERANCANGAN

A

NTAR

M

UKA

S

ISTEM

... 41

3.5.1 Halaman Depan ... 42

3.5.2 Halaman Pengujian ... 43

3.5.3 Halaman Bantuan ... 46

3.6 S

PESIFIKASI

H

ARDWARE DAN

S

OFTWARE

... 48

3.6.1 Hardware ... 48

3.6.2 Software ... 48

BAB IV ... 49

ANALISA HASIL DAN IMPLEMENTASI SISTEM... 49

4.1 A

NALISA

H

ASIL

I

DENTIFIKASI

S

UARA

... 49

4.2 I

MPLEMENTASI

A

NTARMUKA

S

ISTEM

... 60

4.2.1 Halaman Depan ... 60

4.2.2 Halaman Pilihan Menu Pengujian ... 61

4.2.3 Halaman Pengujian Hidden Markov Models untuk Speech Recognition ... 62

4.2.4 Halaman Pengujian Hidden Markov Models untuk Speaker Verification ... 64

4.2.5 Halaman Pengambilan Suara ... 65

4.2.6 Halaman Pengujian Sistem untuk Speech Recognition ... 67

4.2.7 Halaman Pengujian Sistem untuk Speaker Verification ... 68

4.2.8 Halaman Bantuan ... 74

4.2.9 Halaman Tentang Programmer ... 75

BAB V ... 76

KESIMPULAN DAN SARAN... 76

(15)

5.2 S

ARAN

... 78

DAFTAR PUSTAKA ... 79

LAMPIRAN I ... 82

LAMPIRAN II ... 84

SCRIPT DAN FILE PENDUKUNG ... 84

LAMPIRAN III ... 161

HALAMAN BANTUAN... 161

(16)

xvi

Gambar Keterangan Halaman

2.1 Cakupan speech processing (Joseph P. Campbell, 1997) 10

2.2 Skema Speech Recognition (Melissa, 2008) 12

2.3 Struktur dari Speaker Identification (Furui, 1996) 15 2.4 Struktur dari Speaker Verification (Furui, 1996) 15

2.5 Diagram blok proses MFCC 19

2.6 Proses frame blocking 20

2.7 Sinyal dengan proses windowing 22

2.8 Sinyal tanpa proses windowing 22

2.9 Grafik hubungan skala mel dan frekuensi (IPB) 25

2.10 Contoh mel-spaced Filter-bank (IPB) 25

2.11 Contoh tiga tipe rantai HMM 31

2.12 Ilustrasi dari operasi Baum-Welch 33

3.1 Skema sistem pengenalan suara manusia 38

3.2 Gambaran sistem secara umum 38

3.3 Tahap training dan testing 39

3.4 Proses tahap testing 40

3.5 Proses tahap testing 41

3.6 Rancangan halaman depan 42

3.7 Rancangan halaman Pengujian sistem tahap pertama 43 3.8 Rancangan jendela peringatan apabila password salah 44 3.9 Rancangan jendela peringatan apabila password benar 44 3.10 Rancangan halaman pengujian HMM tahap pertama 45 3.11 Rancangan halaman pengujian HMM tahap kedua 46 3.12 Rancangan halaman bantuan untuk cara kerja program 47

3.13 Rancangan halaman bantuan tentang program 47

4.1 Grafik Tingkat Akurasi Identifikasi Suara Manusia dengan Feature MFCC_D untuk Speech Recognition

54 4.2 Grafik Tingkat Akurasi Identifikasi Suara Manusia dengan

Feature MFCC_D untuk Speaker Verification

55

4.3 Halaman Depan 60

4.4 Halaman pilihan pengujian 61

4.5 Halaman Pengujian Hidden Markov Model untuk Speech Recognition

63 4.6 Halaman Pengujian Hidden Markov Model untuk Speaker

Verification

65

4.7 Halaman Pengambilan Suara 66

4.8 Halaman Peringatan 66

4.9 Halaman Pengujian Speech Recognition 68

4.10 Halaman Pengujian Sistem Untuk Speaker Verification 69

4.11 Halaman Pengujian Speech Recognition untuk speaker Angga 70

4.12 Halaman Pengujian Speaker Verification untuk speaker Angga 71

4.13 Halaman Pengujian Speech Recognition untuk speaker Yudhi 71

4.14 Halaman Pengujian Speaker Verification untuk speaker Yudhi 72

(17)

4.17 Halaman Pengujian Speaker Verification untuk speaker yang tidak terdaftar

74

4.18 Halaman Bantuan 75

4.19 Halaman Tentang Programmer 75

(18)

xviii

Tabel Keterangan Halaman

2.1 Tingkat akurasi berbagai metode feature extraction (Universite Pierre&MarrieCurrie, LA Science A Paris, 2004)

17

2.2 Pembagian kelompok data menjadi 5 bagian 35

2.3 Gambaran metode 5-fold cross validation 35

2.4 Contoh confusion matrix 36

4.1 Hasil Akurasi Identifikasi Suara untuk Speech Recognition 50 4.2 Hasil Akurasi Identifikasi Suara untuk Speaker Verification 52 4.3 Hasil identifikasi suara berdasarkan tipe feature pada proses

Speech Recognition

56 4.4 Confusion Matrix MFCC_D untuk Speech Recognition 57 4.5 Hasil identifikasi suara berdasarkan tipe feature pada proses

Speaker Recognition

58

4.6 Confusion Matrix MFCC_D untuk Speaker Recognition 59

(19)

1 BAB I PENDAHULUAN

1.1 Latar Belakang Masalah

Meskipun teknologi sudah berkembang pesat tetapi keamanan pengguna teknologi masih perlu diperhatikan lagi. Gangguan keamanan yang diakibatkan perkembangan teknologi dapat menyebabkan privasi seseorang terganggu. Hal ini dapat dilihat dari berbagai contoh seperti password yang dicuri kemudian disalahgunakan, pembicaraan telepon yang disadap dan lain sebagainnya. Maka dari itu, keamanan menjadi hal yang patut diperhatikan seiring dengan perkembangan teknologi.

Saat ini teknologi juga menawarkan berbagai fasilitas untuk meningkatkan keamanan masyarakat. Salah satunya adalah dengan kata sandi atau password yang diaplikasikan dalam berbagai perangkat. Tentu saja kata sandi yang ditawarkan bukan sandi konvensional seperti memasukkan angka atau huruf melainkan dengan menggunakan suara, deteksi retina, sidik jari serta pengenalan tulisan tangan. Dari sekian banyak contoh tersebut pengenalan suara merupakan salah satu cara yang dapat digunakan sebagai kata sandi yang memiliki variasi yang cukup unik (Hidayanto dan Sumardi, 2006).

Suara adalah salah satu hal yang membedakan antara manusia satu

dengan yang lainnya. Tiap individu memiliki karakter vokal, timbre dan

(20)

aksen yang berbeda bahkan yang kembar identik sekalipun. Keunikan suara inilah yang dapat dijadikan sebagai kata sandi untuk meningkatkan keamanan pengguna dalam menggunakan suatu sistem (Setyabudi, Purwanto dan Warsono, 2007).

Sudah banyak penelitian tentang pengenalan pola suara dengan menggunakan berbagi metode serta implementasi yang berbeda-beda.

Salah satu metode yang cukup baik dan memiliki akurasi yang tinggi dalam menangani variasi data dan keberagaman suara adalah Hidden Markov Models (HMM) dan dengan menggunakan ekstraksi ciri Mel- frequency Cepstral Coefficients (MFCC). Pada penelitian Pengenalan Ucapan Kata Terisolasi dengan Metode Hidden Markov Models (HMM) melalui Ekstraksi Ciri Linear Predictive Coding ( LPC ) (Hidayanto dan Sumardi, 2006) dihasilkan akurasi yang berkisar pada angka 99,82% untuk pengenalan ucapan kata yang berkorelasi tinggi pada pengujian dengan data rekaman. Sedangkan pada pengujian online memberikan akurasi berkisar pada angkan 87,58%. LPC sendiri adalah salah satu metode yang digunakan untuk proses ekstrasi ciri.

Pada penelitian Identifikasi Pembicara Menggunakan Algoritme VF15 dengan MFCC sebagai Pengekstraksi Ciri (Zilvan &

Muttaqien,2011) menghasilkan akurasi identifikasi suara tertinggi

mencapai 97%. VF15 merupakan salah satu algoritma yang digunakan

dalam pengklasifikasian.

(21)

Dari hasil penelitian tersebut, metode Hidden Markov Models dan ekstraksi ciri Mel-frequency Cepstral Coefficients akan digunakan penulis untuk mengidentifikasi suara manusia yang akan digunakan sebagai kata sandi atau password. Judul dari tugas akhir ini adalah “ Identifikasi Suara Manusia Sebagai Kata Sandi atau Password Menggunakan Pendekatan Hidden Markov Model “. Perbedaan tugas akhir ini dengan penelitian sebelumnya adalah selain untuk mengetahui apa yang akan diucapkan sebagai kata sandi, sistem juga akan mengidentifikasi pemilik suara.

1.2 Rumusan Masalah

Dari latar belakang masalah diatas, rumusan masalah yang diambil adalah Seberapa besar akurasi metode Hidden Markov Model mampu mengenali suara manusia dan bagaimana mengimplementasinya ke dalam sistem.

1.3 Tujuan

Merancang, menganalisa, mengimplementasi dan mengetahui

kelebihan serta kekurangan metode Hidden Markov Models dalam

menangani pengenalan suara sebagai kata sandi.

(22)

1.4 Batasan Masalah

1. Pola suara yang diteliti adalah pola suara manusia yang mencakup suara laki-laki dan perempuan dengan mengucapkan kata tertentu.

Kata yang diucapkan adalah kata ‘satu’, ‘dua’, ‘tiga’, ‘empat’, ‘lima’,

‘enam’, ‘tujuh’, ‘delapan’, ‘sembilan’, dan ‘nol’. Setiap kata yang diucapkan akan diulang sebanyak lima kali dengan menggunakan aksen atau cara pengucapan yang berbeda.

2. Ekstraksi ciri atau feature extraction menggunakan Mel-frequency Cepstral Coefficients (MFCC)

3. Suara manusia yang diproses adalah suara berekstensi .wav dan diambil dengan menggunakan microphone yang terhubung ke komputer menggunakan program Sound Recorder yang merupakan program bawaan dari Sistem Operasi Windows . Suara direkam dengan menggunakan frekuensi sampling 44100Hz dengan karakteristik sound yang digunakan adalah stereo sound dengan bit data sebesar 16 bit.

4. Pemodelan suara manusia menggunakan algoritma Baum-Welch.

5. Identifikasi suara manusia menggunakan algoritma Viterbi.

6. Terdapat 200 data yang akan digunakan untuk penelitian ini dengan

rincian 100 data dari suara perempuan dan 100 data dari suara laki-

laki.

(23)

7. Speaker berjumlah 4 (empat) orang terdiri dari 2 (dua) orang perempuan dan 2 (dua) orang laki-laki.

8. Suara akan mengalami proses ekstraksi ciri dan pemodelan dengan menggunakan fungsi yang tersedia di MATLAB R2010a.

9. Kondisi speaker yang diambil data suaranya dalam keadaan sehat.

(24)

1.5 Metologi Penelitian

Metode yang akan digunakan dalam penelitian meliputi :

1. Studi Pustaka

Tahap ini dilakukan dengan mempelajari buku-buku referensi dan sumber-sumber dari internet yang berkaitan dengan Hidden Markov Models, Speech Processing, feature extraction, algoritma Baum- Welch, algoritma Viterbi dan tutorial pemrograman Matlab.

2. Tahap Pengambilan Data

Tahap ini dilakukan dengan cara mengambil data berupa ucapan dari 4 orang yang terdiri dari 2 laki-laki dan 2 perempuan. Tahap ini dilakukan dengan menggunakan microphone yang terhubung ke komputer.

3. Tahap Pembuatan Model

Model sendiri merupakan gambaran statistik dari ucapan yang telah dimasukkan. Dalam tahap ini model akan dibangun dengan menggunakan metode Hidden Markov Model.

4. Tahap Pembuatan Sistem Pengenal Ucapan

Pembuatan sistem akan dilakukan berdasarkan data yang telah

dimasukkan dan dengan mengintegrasikan aplikasi ke dalam GUI

(25)

(Graphical User Interface) dengan menggunakan bahasa pemrograman Matlab.

5. Tahap Pengujian

Tahap pengujian dilakukan dengan uji coba program oleh pengguna.

Pada tahap ini juga akan dilakukan evaluasi terhadap sistem yang dibangun. Apabila data yang dimasukkan adalah data yang belum dimodelkan maka proses pengujian juga akan dibandingkan dengan data yang telah dimodelkan terlebih dahulu tetapi dalam program akan muncul pesan bahwa password atau kata sandi salah.

1.6 Sistematika Penulisan

BAB I PENDAHULUAN

Berisi latar belakang masalah, rumusan masalah, tujuan, batasan masalah, metologi penelitian, dan sistematika penulisan.

BAB II LANDASAN TEORI

Berisi landasan teori mengenai Speech Processing, Speech

Recognition, Speaker Recognition, teori Hidden Markov

Model, Mel-frequency cepstral coefficients (MFCC),

algoritma Baum-Welch dan algoritma Viterbi yang

digunakan dalam pembuatan dan penyusunan tugas akhir.

(26)

BAB III ANALISA DAN PERANCANGAN SISTEM

Bab ini berisi analisa dan gambaran atau rancangan dari sistem yang akan dibangun yaitu sebuah sistem yang dapat mengenali suara manusia sebagai kata sandi atau password serta menjelaskan alur dari proses training dan testing.

BAB IV IMPLEMENTASI SISTEM

Bab ini berisi implementasi sistem dengan menggunakan pendekatan Hidden Markov Model

BAB V ANALISA HASIL DAN PEMBAHASAN

Bab ini berisi tentang hasil dari implementasi sistem yang kemudian dianalisa dan diuji.

BAB VI KESIMPULAN DAN SARAN

Bab ini berisi kesimpulan dan saran yang didapatkan dari

proses pembuatan tugas akhir ini, serta saran agar

pengembangan dari tugas akhir ini dapat lebih bermanfaat.

(27)

9

BAB II

LANDASAN TEORI

Pada bab ini akan dijelaskan mengenai teori-teori yang menjadi landasan untuk mengembangkan penelitian beserta perangkatnya. Teori- teori yang akan dibahas antara lain Speech Processing, Speech Recognition, Speaker Recognition, Metode Hidden Markov Models , Feature Extraction, Mel-frequency Cepstral Coefficients (MFCC), algoritma Baum-Welch dan algoritma Viterbi.

2.1 Speech Processing

Ucapan merupakan sinyal yang sangat kaya akan informasi yang di dalamnya terkandung frekuensi, amplitudo dan waktu. Contohnya adalah gerakan resonansi, harmonisasi, intonasi, dan lain sebagainya. Hal tersebut digunakan untuk menyampaikan informasi tentang kata-kata dari identitas pembicara yang dipengaruhi oleh aksen, ekspresi, serta kondisi kesehatan dari si pembicara.

Sinyal ucapan yang digunakan oleh manusia sehari-hari dapat

dipelajari pada Speech Processing. Speech processing merupakan sebuah

studi yang mempelajari tentang sinyal dari sebuah ucapan dan juga metode

yang digunakan untuk memproses sinyal tersebut.

(28)

Speech Processing terbagi dalam beberapa cabang ilmu sesuai dengan tujuan dari pengolahan suaranya. Hal tersebut dapat dilihat pada Gambar 2.1

Gambar 2.1 Cakupan speech processing (Joseph P. Campbell, 1997)

Apabila dilihat dari Gambar 2.1 terdapat beberapa ilmu yang sudah sering digunakan dalam aplikasi yang berkaitan dengan ucapan. Speech recognition dan speaker recognition merupakan cabang ilmu dari specch processing yang paling sering diaplikasikan untuk pengenalan suara.

Speech recognition sendiri merupakan proses identifikasi suara

yang akan dikonversikan dalam bentuk teks. Sedangkan speaker

recognition merupakan proses indentifikasi suara yang berdasarkan pada

(29)

asal suara atau pembicara. Dilihat dari perbedaan antara speech recognition dan speaker recognition, kedua proses tersebut dapat digunakan untuk melakukan proses identifikasi password berdasarkan pada suara manusia adalah speaker recognition. Oleh karena itu, dalam pembuatan tugas akhir ini penulis akan menggunakan prinsip speech recognition dan speaker recognition dalam proses identifikasi suara.

2.2 Speech Recognition

Speech Recognition adalah suatu pengembangan dalam sebuah sistem yang memungkinkan sebuah komputer untuk mengolah masukan atau perintah yang berupa suara. Speech Recognition memungkinkan sebuah sistem untuk dapat mengenali dan memahami perintah suara.

Terdapat 4 tahap dalam Speech Recognition (Mellisa, 2008) yaitu :

a. Penerimaan data input

b. Ekstraksi, yaitu penyimpanan data masukan sekaligus pembuatan database untuk template

c. Pembandingan / pencocokan, yaitu tahap pencocokan data baru dengan data suara pada template.

d. Validasi identitas pengguna

(30)

Gambar 2.2 Skema Speech Recognition (Melissa, 2008)

Speech Recognition juga dibagi menjadi beberapa jenis berdasarkan kemampuannya dalam mengenali kata yang diucapkan.

a. Kata-kata yang terisolasi

Proses pengidentifikasian kata yang hanya dapat mengenal kata yang diucapkan apabila kata tersebut memiliki jeda waktu dalam pengucapannya.

b. Kata-kata yang berhubungan

Proses pengidentifikasian kata yang mirip dengan kata-kata terisolasi,

tetapi hanya membutuhkan jeda waktu pengucapan yang lebih singkat

(31)

c. Kata-kata yang berkelanjutan

Proses pengidentifikasian ini lebih maju karena dapat mengenali kata- kata yang diucapkan secara berkesinambungan dengan jeda waktu yang sangat sedikit. Proses ini sangat sulit karena membutuhkan metode khusus untuk membedakan kata-kata yang diucapkan dalam jeda waktu yang sangat sebentar.

d. Kata-kata spontan

Proses pengidentifikasian kata yang dapat mengenal kata-kata yang diucapkan secara spontan tanpa jeda waktu antar kata.

e. Verifikasi atau identifikasi suara

Proses pengidentifikasian kata yang tidak hanya mampu mengenali kata tapi juga mampu mengidentifikasi siapa yang berbicara.

2.3 Speaker Recognition

Speaker recognition merupakan salah satu metode yang dapat

digunakan secara otomatis untuk mengenali suara seseorang yang

mengucapkan sesuatu (Joseph P. Campbell, 1997). Speaker recognition

juga merupakan bagian dari Speech Proccesing yang mana terdiri dari

berbagai cabang yang berbeda-beda.

(32)

Apabila dilihat dari gambar 2.1 sebelumnya, Speaker Recognition mencakup Speaker Identification dan Speaker Verification. Speaker Verification merujuk kepada bagaimana sebuah suara dapat menguji seseorang apakah seseorang tersebut merupakan speaker atau bukan.

Sedangkan Speaker Identification hanya menitikberatkan terhadap penentuan 1 (satu) speaker dari sekumpulan speaker yang ada.

Metode dari Speaker Recognition juga dapat dibedakan menjadi text-dependent dan metode text-independent. Metode text-dependent membutuhkan speaker untuk mengucapkan kata untuk pemodelan dan pengujian sedangkan metode text-independent tidak bergantung terhadap kata yang diucapkan speaker untuk pemodelan. Pada pembuatan tugas akhir ini akan menggunakan metode Speaker Recognition yang bertipe text-dependent.

2.3.1 Struktur Dasar dari Sistem Speaker Recognition

Speaker Identification dan Speaker Verification memiliki struktur

yang berbeda. Berikut adalah struktur dari Speaker Verification dan

Speaker Identification menurut Furui (1996).

(33)

Gambar 2.3 Struktur dari Speaker Identification (Furui,1996)

Berdasarkan Gambar 2.3 dapat dilihat bahwa dalam proses Speaker Identification suara yang masuk akan melalui tahap ekstraksi. Kemudian akan dicari kemiripan yang paling dekat dengan suara yang telah dimodelkan sebelumnya untuk mengetahui identitas dari speaker.

Gambar 2.4 Struktur dari Speaker Verification (Furui,1996)

(34)

Pada Speaker Verification suara yang masuk akan di ekstraksi kemudian akan dibandingkan dan dicari kemiripan dengan suara dari speaker yang telah dimodelkan sebelumnya dan dari speaker id.

Perbandingan tersebut akan digunakan untuk menolak atau menerima suara yang masuk.

2.4 Feature Extraction

Feature extraction merupakan metode untuk mengubah sinyal menjadi beberapa parameter. Data yang akan digunakan merupakan data dari suara manusia sehingga berupa data sinyal. Tetapi tidak semua data sinyal tersebut dapat digunakan. Hal ini disebabkan karena berbagai faktor seperti suara-suara yang berada di sekitar speaker pada saat pengambilan data suara. Dengan tahap feature extraction diharapkan menghasilkan feature yang memiliki kemampuan untuk membedakan kemiripan pengucapan setiap model sehingga tidak memerlukan data training yang banyak. Pada umumnya feature extraction memiliki tiga tahap (Reynold, 2002), yaitu:

1. Penggunaan program deteksi suara untuk menghilangkan noise dari sinyal suara yang menjadi obyek.

2. Feature diekstrak untuk memperoleh informasi

3. Penerapan normalisasi.

(35)

Terdapat beberapa metode yang digunakan untuk mengekstrak feature yang berhubungan dengan sinyal. Metode tersebut antara lain LPC (Linear Prediction Coding) , Mel-Frequency Cepstral Coefficients (MFCC), Neural Predictive Coding (NPC), dan sebagainya.

Perbandingan tingkat akurasi berbagai metode feature extraction dapat dilihat pada Tabel 2.1 (Chetouani, 2004)

Tabel 2.1 Tingkat akurasi berbagai metode feature extraction

(Sumber : Universite Pierre&MarrieCurrie, LA Science A Paris, 2004)

Dari Tabel 2.1 di atas dapat dilihat bahwa metode NPC memiliki

tingkat identifikasi yang paling tinggi dan sempurna kemudian diikuti oleh

metode MFCC. NPC merupakan salah satu algoritma ekstraksi ciri yang

merupakan perluasan dari LPC. Dalam kasus ini metode MFCC dirasa

paling tepat karena cara kerja metode MFCC sama dengan telinga manusia

sehingga untuk mengidentifikasi suara manusia lebih baik menggunakan

metode MFCC.

(36)

2.5 Mel-Frequency Cepstral Coefficients (MFCC)

Mel-Frequency Cepstral Coefficients (MFCC) merupakan metode pengolahan suara yang memiliki tujuan untuk mengidentifikasi asal dari sumber suara. MFCC berdasarkan pada variasi bandwidth kritis terhadap frekuensi pada telinga manusia sehingga cara kerja yang diterapkan pada metode ini meniru karakteristik telinga manusia (Zilvan dan Muttaqien, 2011). Pada telinga manusia terdapat filter-filter yang berguna untuk membedakan suara yang memililki frekuensi rendah dan suara yang memiliki frekuensi tinggi. Pada metode MFCC, filter pada telinga manusia digambarkan dalam skala mel-frekuensi yang berfungsi untuk menangkap karakter penting pada suatu ucapan.

Beberapa keunggulan dari metode MFCC adalah ( Manunggal, 2005):

1. Mampu menangkap karakteristik suara yang sangat penting bagi pengenalan suara atau dengan kata lain dapat menangkap informasi- informasi penting yang terkandung dalam signal suara.

2. Menghasilkan data seminimal mungkin tanpa menghilangkan informasi-informasi penting yang terkandung di dalamnya.

3. Mereplikasi organ pendengaran manusia dalam melakukan persepsi terhadap signal suara.

Filter-filter yang terdapat dalam telinga manusia juga memiliki

jarak yang berbeda pada sumbu frekuensi. Berdasarkan cara kerja tersebut,

(37)

MFCC juga memiliki filter yang berbeda, yaitu linearly spaced filters dan logarithmically spaced filters (Hasan, Jamil, Rabbani, & Rahman, 2004).

Pada linearly spaced filters memiliki frekuensi yang berada di bawah 1000Hz sedangkan pada logarithmically spaced filters memiliki frekuensi di atas 1000Hz.

Gelombang suara yang dihasilkan oleh speaker dapat memiliki berbagai variasi tergantung dari kondisi fisik speaker tersebut. MFCC memiliki struktur berupa blok diagram yang dapat dilihat pada Gambar 2.4

Frame Blocking Continuous

Speech Windowing FFT

Mel-Frequency Wrapping Cepstrum

Mel Cepstrum

Gambar 2.5 Diagram blok proses MFCC (Do, 1994)

Apabila dilihat dari Gambar 2.5, terdapat beberapa proses feature

extraction dengan MFCC.

(38)

2.5.1 Frame Blocking

Sinyal suara terus mengalami perubahan karena adanya pergeseran artikulasi dari organ produksi vokal. Oleh karena itu, sinyal harus diproses secara short segments ( short frame). Panjang frame yang biasanya digunakan untuk pemrosesan sinyal adalah antara 10-30 ms. Panjang frame yang digunakan sangat mempengaruhi keberhasilan dalam analisa spektral. Di satu sisi, ukuran dari frame harus sepanjang mungkin untuk dapat menunjukkan resolusi frekuensi yang baik. Tetapi, di sisi lain frame juga harus cukur pendek untuk dapat menunjukkan waktu yang baik.

Proses frame blocking ditunjukkan pada Gambar 2.6.

Gambar 2.6 Proses frame blocking

Dengan Sn merupakan nilai sampel yang dihasilkan dan n merupakan urutan sampel yang akan diproses

Sinyal ucapan yang terdiri dari S sampel (X(S)) dibagi menjadi beberapa frame yang berisi N sampel, yang masing-masing sampel dipisahkan oleh M (M<N). Frame pertama berisi sampel N pertama.

Frame kedua dimulai dari M sampel setelah frame pertama berjalan

(39)

sehingga frame kedua ini overlap terhdap frame pertama sebanyak N-M sampel. Selanjutnya, frame ketiga dimulai M sampel setelah frame kedua ( juga overlap sebanyak N-M terhadap frame kedua ). Hasil dari proses ini adalah matriks dengan N baris dan beberapa kolom sinyal X[N].

Proses frame ini dilakukan terus sampai seluruh sinyal dapat diproses. Selain itu, proses ini umumnya dilakukan secara overlap yang umum digunakan adalah kurang lebih 30% sampai 50% dari panjang frame. Overlapping dilakukan untuk menghindari hilangnya ciri atau karakteristik suara pada perbatasan perpotongan setiap frame.

2.5.2 Windowing

Proses framing dapat menyebabkan kebocoran spektral atau aliasing. Aliasing merupakan sinyal baru yang memiliki frekuensi yang berbeda dengan sinyal aslinya. Hal ini dapat terjadi karena rendahnya jumlah sampling rate atau proses frame blocking yang menyebabkan sinyal menjadi discontinue. Maka dari itu, tahap windowing diperlukan agar menghidari kebocoran spektral.

Pada tahap windowing, sinyal suara yang telah mengalami frame blocking telah dibagi menjadi beberapa frame. Setiap frame yang diperoleh akan dijadikan window untuk memperkecil kemungkinan gangguan sinyal yang terputus pada awal dan akhir setiap frame. Window dapat didefinisikan sebagai berikut :

w(n) ; dimana 0 ≤ n ≤ ( N-1 ) (2-1)

(40)

N merupakan jumlah sample pada setiap frame. Hasil yang didapatkan dari proses windowing adalah sinyal (y(n)) yang dapat didefinisikan sebagai berikut :

y(n) = x(n) w(n) ,dimana 0 ≤ n ≤ ( N-1 ) (2-2)

Terdapat banyak fungsi window, namun yang paling sering digunakan untuk proses speaker recognition adalah hamming window.

Fungsi window ini menghasilkan sidelobe level yang tidak terlalu tinggi (kurang lebih -43dB) selain itu noise yang dihasilkan juga tidak terlalu besar. Fungsi hamming window adalah sebagai berikut :

w(n) = 0.54 – 0.46 cos [2 π n / (N – 1)], dimana 0 ≤ n ≤ ( N-1 ) (2-3) Gambar berikut menunjukkan perbedaan antara sinyal yang melalui proses windowing dan sinyal yang tanpa melalui proses windowing.

Gambar 2.7 Sinyal dengan proses windowing

Gambar 2.8 Sinyal tanpa proses windowing

(41)

2.5.3 Fast Fourier Transform (FFT)

FFT adalah suatu algoritma untuk mengimplemetasikan algoritma Discrete Fourier Transform (DFT) dengan lebih cepat. Komputasi dari algoritma DFT memiliki waktu yang sangat lama dikarenakan membutuhkan N

2

perkalian bilangan kompleks sehingga dibutuhkan cara lain untuk menghitung DFT dengan cepat dengan menggunakan algoritma FFT dimana FFT menghilangkan proses perhitungan yang kembar dari DFT.

Jumlah sinyal yang akan dimasukkan dalam algoritma ini harus merupakan kelipatan dua (2

M

). Algoritma FFT dimulai dengan membagi sinyal menjadi dua bagian. Bagian pertama merupakan sinyal yang memiliki nilai suara pada indeks waktu genap sedangkan bagian kedua merupakan sinyal yang memiliki nilai suara pada indeks waktu ganjil.

Fast Fourier Transform adalah himpunan dari N sample [X

n

] yang didefinisikan sebagai berikut :

𝑋

𝑛

= 𝑋

𝑘𝑒

−2𝜋𝑘𝑛 𝑁

𝑁−1𝑘=0

, dimana n = 0,1,2,3,…..N-1 (2-4)

FFT seringkali digunakan untuk mendapatkan besarnya reaksi

frekuensi dari setiap frame. Ketika FFT dijalankan pada sebuah frame,

dapat diasumsikan bahwa sinyal dalam sebuah frame adalah periodik dan

akan berkesinambungan ketika proses wrapping.

(42)

Apabila dilihat dari rumusan diatas, dapat dilihat bahwa X

n

merupakan angka yang kompleks. Hasil dari X

n

dapat dijabarkan sebagai berikut:

1. Ketika n = 0 merupakan keadaaan frekuensi saat kosong.

2. Ketika 1 ≤ n ≤ (N/2 – 1) merupakan keadaan saat frekuensi bernilai positif (0 < f < F

s

/2).

3. Ketika N/2+1 ≤ n ≤ N-1 merupakan keadaaan saat frekuensi bernilai negatif (F

s

/2 < f < 0).

F

s

sendiri merupakan frekuensi sample. Hasil yang diperoleh berupa spektrum sinyal atau periodogram.

2.5.4 Mel-Frequency Wrapping

Sinyal suara terdiri dari nada-nada yang memiliki frekuensi yang berbeda. Setiap nada dengan frekuensi yang sebenarnya, f, diukur dalam Hz. Nada yang subyektif diukur dengan menggunakan skala Mel. Sebagai acuan, nada dengan frekuensi 1kHz, 40dB diatas dari threshold pendengaran, didefinisikan sebagai 1000 mels. Rumus yang digunakan untuk menghitung mels dengan frekuensi dalam Hz adalah sebagai berikut:

mel(f)= 2595*log10(1 + f/700) (2-5)

(43)

Salah satu pendekatan untuk menggambarkan spektrum yang subyektif adalah dengan menggunakan filter. Setiap filter ditujukan untuk komponen mel-frequency yang diinginkan. Filter yang dibentuk memiliki jarak pusat filter adalah konstan pada ruang frekuensi mel. Skala mel dibentuk untuk mengikuti persepsi sistem pendengaran manusia yang bersifat linear untuk frekuensi rendah dan bersifat logaritmik untuk frekuensi tinggi, dengan batas pada nilai frekuensi akustik sebesar 1000Hz. Hubungan skala mel dan frekuensi dapat digambarkan pada Gambar 2.8.

Gambar 2.9 Grafik hubungan skala mel dengan frekuensi (IPB)

Gambar 2.10 Contoh mel-spaced Filter bank (IPB)

(44)

Dari M filter yang telah terbentuk, maka dilakukan wrapping terhadap sinyal domain frekuensi dan menghasilkan satu komponen untuk setiap filter dengan menggunakan rumus ( Buono, 2009) :

𝑋

𝑖

= log

10

𝑁−1𝑘=0

𝑋 𝑘 𝐻

𝑖

𝑘 (2-6)

Dengan i= 1,2,3….M dan H

i

(k) adalah nilai filter segitiga ke-i untuk frekuensi akustik sebesar k. Hasil dalam spektrum mel ini kemudian akan dipilih cepstrum coefficients, nilai koefisien diperoleh dengan menggunakan transformasi cosinus. Rumus yang digunakan adalah :

𝐶 𝑗 = 𝑋

𝑖

cos 𝑗 𝑖 − 1 /2

𝜋

𝑀

𝑀𝑖=1

(2-7)

Dengan j = 1,2,3…K yang merupakan jumlah cepstrum coefficients dan M merupakan jumlah filter.

2.5.5 Cepstrum

Pada langkah terakhir, logaritma dari spektrum mel harus dikonversikan kembali ke domain waktu. Hasil yang didapatkan bernama mel-frequency cepstrum coefficients (MFCCs) (Hasan, Jamil, Rabbani dan Rahman, 2004). Karena koefisien dari mel merupakan bilangan nyata, dapat juga dikonversikan ke dalam domain berbasis waktu menggunakan Discrete Cosine Transform (DCT).

MFCC sendiri dapat dihitung dengan rumus sebagai berikut :

(45)

𝐶

𝑛

= 𝑙𝑜𝑔𝑆

𝑘

𝑛 𝑘 −

1

2 𝜋 𝐾

𝐾𝑘−1

(2-8)

dimana n = 1,2,…. K

Komponen pertama, C

0

, tidak termasuk DCT karena merepresentasikan nilai rata-rata sinyal yang membawa sedikit informasi speaker yang spesifik. Dengan menerapkan prosedur yang telah dijelaskan, untuk setiap frame sekitar 30 ms dengan overlap, koefisien- koefisien dari mel cepstrum dapat dihitung.

2.6 Metode Hidden Markov Models ( HMM )

Hidden Markov Models merupakan sebuah pemodelan statistik dari sebuah sistem yang diasumsikan sebagai ‘Rantai Markov‘ dengan parameter yang tidak diketahui, dan tantangannya adalah menemukan parameter yang tersembunyi (hidden) dari parameter yang diketahui (observer) (Przytycka, 2000). Parameter yang telah digunakan kemudian dapat digunakan untuk analisa yang lebih jauh, misalnya untuk Speaker Recognition. HMM disebut statistik karena mencari means, varians, dan probabilitas dari model yang digunakan.

Dalam jurnal yang berjudul “ Hidden Markov Models For Speech

Recognition “ yang ditulis oleh B. H. Juang dan L. R. Rabiner disebutkan

bahwa metode HMM sangat populer dikarenakan memiliki kerangka

statistik yang tidak dapat dipisahkan atau dapat dikatakan tepat secara

(46)

matematika. Hal ini karena kemudahan dan ketersediaan dari algoritma training yang dimiliki HMM untuk memperkirakan parameter dari sebuah model dengan data yang terbatas.

Dari Hidden Markov Models, suara dianggap sebagai sinyal yang kemudian dimodelkan. Kemudian suara yang datang akan dibandingkan dengan seluruh model yang ada dan akan melihat tingkat kecocokan yang paling mendekati.

Hidden Markov Models didefinisikan sebagai kumpulan 5 parameter yaitu N, M, A, B, π. Dengan menganggap λ = { A, B, π } maka Hidden Markov Models mempunyai parameter tertentu yaitu N dam M.

Maka dari itu, ciri-ciri dari HMM adalah :

1. Observasi diketahui tetapi urutan keadaan ( state ) tidak diketahui sehingga disebut hidden.

2. Observasi adalah fungsi probabilitas keadaan

3. Perpindahan keadaan adalah bentuk probabilitas

Hidden Markov sendiri memiliki parameter distribusi sebagai berikut:

1. Probabilitas Transisi

A = { a

ij

} , a

ij

= P (q

t+1

= S

j

| q

t

= S

i

) , 1 ≤ i , j ≤ N

Dengan syarat a

ij

≥ 0 dan

𝑖𝑗 = 1

𝑁𝐽

dan a

ij

= 1

(47)

2. Probabilitas Observasi

B = { b

j

(k) } , b

j

(k) = P ( V

k

pada t | q

t

= S

j

) 1 ≤ j ≤ N , 1 ≤ k ≤ M

Distribusi keadaan awal

π = { π

i

} , π

i

= P (q

i

= S

j

)

Sedangkan terdapat dua parameter tertentu pada Hidden Markov Models yaitu N dan M.

1. N merupakan jumlah keadaan model. Dinotasikan sebagai himpunan terbatas untuk keadaan yang mungkin adalah S = { S

1

, S

2

……S

N

}

2. M adalah jumlah dari simbol observasi atau keadaan. Simbol observasi berhubungan dengan keluaran fisik dari sistem yang dimodelkan.

Dinotasikan sebagai himpunan terbatas untuk observasi yang mungkin adalah V = { V

1

, V

2

……V

M

}

Apabila diberi nilai yang tepat untuk variabel-variabel diatas maka Hidden Markov Models dapat digunakan untuk memberikan sekuens observasi.

O = O

1

O

2

O

3

O

4

O

5………

O

t

(2.9)

(48)

Dimana untuk setiap observasi O

t

adalah satu dari simbol yang ada pada V, dan T adalah banyaknya observasi yang ada pada sekuens tersebut.

Metode Hidden Markov Models memiliki beberapa algoritma pemodelan yang akan dijelaskan dalam subbab selanjutnya.

2.7 Algoritma Pemodelan Hidden Markov Models

Algoritma dalam Hidden Markov Models digunakan untuk pembuatan model yang mencakup proses training dan testing. Pemodelan dapat berbentuk kontinu untuk data yang berlanjut sesuai dengan waktu seperti data suara yang akan diterapkan pada penelitian ini dan pemodelan diskret yang digunakan pada data citra.

Bentuk dari model Hidden Markov Models adalah berupa state-

state yang saling berhubungan, yang mana setiap state terhubung dari state

manapun.

(49)

Gambar 2.11 Contoh tiga tipe rantai HMM

(a) Model 4-state (b) Model 4-state-kiri-kanan (c) Model parallel 6-state

2.7.1 Algoritma Training dengan Baum-Welch

Algortima Baum-Welch atau algoritma forward-backward merupakan salah satu algoritma yang dapat memberikan model terbaik berupa means dan varians karena dapat mengoptimalkan probabilitas observasi sekuens O parameter-parameter model λ = { A, B, π }.

Perhitungan pada algoritma ini digunakan untuk mencari nilai maximum

likehood atau angka kemiripan maksimum yang merupakan sebuah model

yang mewakili sekelompok sampel data.

(50)

Variabel forward didefinisikan sebagai observasi parsial dari probabilitas state sekuen yang dilambangkan dengan O1, O2, …. Ot ( hingga waktu t ) dan state Si pada waktu t , dengan model λ, dan α sebagai t(i) . Untuk variabel backward didefinisikan sebagai observasi parsial dari probabilitas state sekuen dari t+1 ke state sebelumnya yang mana terdapat state Si pada waktu t, dengan model λ dan α sebagai t(i). Observasi dari probabilitas state sekuen ini dihitung dengan rumus:

𝑃 𝑂 𝜆 =

𝑛𝑖=1

𝛼

𝑡

𝑖 𝛽

𝑡

𝑖 =

𝑁𝑖=1

𝛼

𝑡

(𝑖) (2.10)

Probabilitas pada saat berada pada state Si pada waktu t , dan diberikan sekuens observasi O , dan model λ adalah :

𝛾

𝑡

=

𝑡 𝑖 𝛽𝑡(𝑖)

𝑃(𝑂|𝜆)

(2.11)

(a) variabel forward

(51)

(b) variabel backward

Gambar 2.12 Ilustrasi dari operasi Baum-Welch

Pada saat menghitung model yang akan akan digunakan maka akan membutuhkan banyak sampel data yang akan dimodelkan. Karakteristik dari setiap contoh akan diekstrak dan disimpan dalam sebuah parameter vektor sekuens xt. Parameter ini yang akan dipetakan sebagai ekuivalensi dari Ot.

Metode Baum-Welch memiliki cara kerja sebagai berikut :

1. Estimasikan sebuah model HMM sebagai λ = { A, B, π }

2. Dengan nilai λ dari sekuens observasi O, hitung sebuah model baru 𝜆 = 𝐴 , 𝐵 , 𝜋

Seperti

𝑃 𝑂 𝜆 > 𝑃(𝑂|𝜆)

(52)

3. Jika

𝑃 𝑂 𝜆 −𝑃 𝑂 𝜆

𝑃 𝑂 𝜆

> threshold, maka hentikan langkah ini. Jika tidak, maka letakkan nilai 𝜆 untuk menggantikan λ dan ulangi langkah 1.

2.7.2 Algoritma Testing dengan Viterbi

Algoritma Viterbi digunakan untuk menghitung sekuens state Q yang paling dekat dengan kemungkinan atau probabilitasnya dari sekuens Observasi O. Algoritma Viterbi dapat didefinisikan sebagai:

δ

t

(i) = max

q1,q2…q3

P[q

1

,q

2

,…q

t

= i, O

1

O

2….

O

t

| λ ] (2.12)

δ

t

(i) merupakan nilai probabilitas terbaik pada waktu t, yang dihitung pada observasi t pertama yang diakhiri pada state S

i.

2.8 Metode Evaluasi 5-Fold Cross Validation

Metode 5-Fold Cross-Validation digunakan pada saat evaluasi untuk mengukur tingkat akurasi sebuah sistem. Metode 5-Fold Cross Validation membagi tiap kelompok data suara menjadi data yang kemudian akan menjadi data untuk proses training dan testing

Dalam penelitian ini, terdapat 4 (lima) kelompok data yang mana

masing-masing kelompok mewakili setiap orang yang akan diambil

suaranya. Setiap kelompok memiliki data sebanyak 50 yang kemudian

dibagi menjadi 5 (lima) kelompok. Pada metode 5-Fold Cross Validation ,

(53)

4 (empat) kelompok data akan digunakan sebagai data training dan satu kelompok data akan digunakan sebagai data testing.

Pembagian data untuk setiap kelompok data dapat dilihat di Tabel 2.2 Tabel 2.2 Pembagian kelompok data menjadi 5 bagian

Suara 1 Suara 2 Suara 3 Suara 4 Suara 5

1

2

3

4

5

1

2

3

4

5

1

2

3

4

5

1

2

3

4

5

1

2

3

4

5

Pada metode evaluasi 5-fold cross validation, iterasi yang dilakukan akan melibatkan data yang berbeda setiap proses training maupun testing.

Tabel 2.3 Gambaran metode 5-fold cross validation

Testing

Pengujian ke 1 Pengujian ke 2 Pengujian ke 3 Pengujian ke 4 Pengujian ke 5

5 4 3 2 1

4 5 5 5 5

3 3 4 4 4

2 2 2 3 3

1 1 1 1 2 Training

(54)

Pengukuran tingkat akurasi dilakukan dengan menggunakan confusion matrix seperti pada tabel berikut.

Tabel 2.4 Contoh confusion matrix

Suara 1 Suara 2 Suara 3 Suara 4

Suara 1 Suara 2 Suara 3 Suara 4

Suara 5

Suara 5

Evaluasi dari ketepatan confusion matrix dilakukan dengan cara membandingkan output hasil dari identifikasi oleh sistem dengan label uji yang tersedia untuk data tersebut. Perhitungan untuk mengukur tingkat akurasinya adalah dengan rumus berikut:

Akurasi = S/T x 100% (2.13)

Keterangan :

S = jumlah sample yang dikenal secara benar oleh sistem ( jumlah diagonal dari confusion matrix )

T = jumlah total dari sample untuk pengujian.

(55)

37 BAB III

ANALISA DAN PERANCANGAN SISTEM

Bab ini akan menjelaskan tentang rancangan dan cara kerja sistem yang akan dibangun. Sistem ini berfungsi untuk menganalisa tingkat akurasi metode Hidden Markov Models dalam mengenali suara manusia.

3.1 Perancangan Sistem Secara Umum

Sistem ini digunakan untuk mengenali suara manusia yang

ditampilkan dalam bentuk password untuk disimulasikan sebagai kata

kunci untuk masuk ke dalam suatu sistem dengan menggunakan metode

Hidden Markov Models. Data suara terdiri dari 4 orang yang mana

merupakan 2 laki-laki dan 2 perempuan. Suara akan diambil dengan

menggunakan microphone dan akan diekstraksi terlebih dahulu sebelum

dimasukkan ke dalam sistem. Sistem akan melakukan proses training dan

testing dan akhirnya sistem akan menampilkan hasil apakah suara yang

masuk diterima sebagai password atau tidak.

(56)

Data suara berektensi

.wav

Feature Extraction

Training

Testing

Estimasi mode Model

Proses perhitungan probabilitas

Nilai

maksimum Evaluasi hasil

Gambar 3.1 Skema sistem pengenalan suara manusia

Gambar 3.1 menjelaskan tahapan dari proses pengenalan suara.

Dimulai dari data masuk yang berupa file berekstensi .wav kemudian akan memasuki proses feature extraction yang menggunakan MFCC. Hasil dari feature extraction sendiri merupakan file berekstensi .mfc. Data suara yang telah diproses kemudian menjadi input untuk proses training dan testing dengan menggunakan pendekatan HMM. Setelah itu akan dihasilkan suara yang dikenali sebagai hasil klasifikasi.

3.2 Gambaran Sistem

user Sistem Pengenalan

Pola Suara Sebagai Password User memasukkan data

suara dengan microphone

Sistem menampilkan hasil apakah masukan diterima atau tidak

Gambar 3.2 Gambaran Sistem secara umum

(57)

Sistem Pengenalan Pola Suara Sebagai

Password

training

testing

Gambar 3.3 Tahap training dan testing

3.3 Proses Training

Proses training akan menghasilkan model dari data yang telah diambil sebelumnya. Proses training ini akan menggunakan algoritma Baum-Welch yang telah dibahas dalam bab sebelumnya. Gambar 3.3 menunjukkan proses training data dan pembuatan model. Dalam proses training terdapat proses feature extraction yang akan menggunakan metode Mel-Frequency Cepstral Coefficients (MFCC). Untuk estimasi model akan menggunakan pendekatan Hidden Markov Models (HMM).

Sesuai dengan metode 5 Fold Cross-Validation yang telah dibahas pada

bab sebelumnya maka pada proses training dalam membentuk sebuah

model membutuhkan sebanyak 80% dari jumlah data keseluruhan.

(58)

Input suara

Feature extraction

Estimasi model

M1 M2 Mn

....

....

Gambar 3.4 Proses tahap training

3.4 Proses Testing

Pada tahap testing akan menggunakan algoritma Viterbi. Proses ini

menggunakan data yang baru. Untuk mengenali data baru yang masuk,

sistem akan menghitung probabilitas dari data baru dengan model yang

ada dilihat dari kemiripan atau kedekatannya. Data yang memiliki

probabilitas tertinggi akan menunjukkan bahwa data suara baru yang

masuk dapat diidentifikasi dan diterima oleh sistem. Gambar 3.4

menunjukkan proses dari testing.

(59)

Data suara manusia Feature extraction

M1 M2 .. Mn

Memilih kedekatan

yang paling maksimum Data dikenali Menghitung kemiripan

terhadap model

Gambar 3.5 Proses tahap testing

Untuk implementasi HMM dan identifikasi suara manusia maka pada pembuatan tugas akhir ini penulis menggunakan HMM Toolkit (HTK).

HTK menyediakan tools termasuk algoritma Baum-Welch yang digunakan pada proses training dan algoritma Viterbi untuk proses testing.

3.5 Perancangan Antar Muka Sistem

Pada perancangan antar muka untuk sistem pengenalan suara manusia ini terdiri dari beberapa halaman yang mewakili proses perhitungan dari Hidden Markov Models serta cara kerja dari sistem, yaitu:

1. Halaman depan

2. Halaman pengujian sistem

3. Halaman pengujian HMM dan cara kerja sistem

4. Halaman bantuan

(60)

3.5.1 Halaman Depan

Halaman ini merupakan halaman pembuka yang berisi dua menu utama yaitu MENU dan BANTUAN serta penjelasan mengenai tentang nama sistem, logo Universitas Sanata Dharma, identitas pembuat program dan nama Dosen pembimbing. Rancangan dari halaman depan sistem ini dapat dilihat pada Gambar 3.6

Gambar 3.6 Rancangan Halaman depan

(61)

3.5.2 Halaman Pengujian

Halaman pengujian terdiri dari dua bagian yaitu pengujian sistem dan pengujian dari Hidden Markov Models. Pada halaman pengujian sistem, akan terdapat perintah yang meminta user untuk memasukkan nama dan password. Password akan dimasukkan dengan menggunakan suara. Sedangkan pada halaman pengujian HMM akan berisi tentang cara kerja dari HMM dan cara kerja sistem. Rancangan halaman pengujian dapat dilihat pada beberapa gambar berikut ini.

Gambar 3.7 Rancangan Halaman Pengujian sistem tahap pertama

Apabila dalam memasukkan password salah maka akan muncul

peringatan seperti pada Gambar 3.8.

(62)

Gambar 3.8 Rancangan Jendela peringatan apabila password salah

Apabila password benar maka akan muncul peringatan seperti pada Gambar 3.9

Gambar 3.9 Rancangan Jendela peringatan apabila password benar.

Selanjutnya, untuk rancangan halaman pengujian HMM terdapat menu untuk mengambil contoh data suara dari direktori yang ada untuk diuji dengan HMM. Untuk mendengarkan suara yang diambil dapat menekan tombol DENGAR. Data suara yang telah diambil dapat divisualisasikan menjadi spectogram dan signal. Kemudian untuk memproses suara terdapat tombol PROSES yang akan melakukan proses pengenalan suara yang hasilnya dapat dilihat pada label HASIL.

Rancangan dari pengujian HMM dapat dilihat pada Gambar 3.10.

(63)

Gambar 3.10 Rancangan halaman pengujian HMM tahap pertama

Rancangan halaman berikutnya berisi tentang keterangan data yang

terdapat dalam sistem. Pengguna dapat memilih parameter yang

digunakan, windows size dan jumlah state yang digunakan. Dengan

menekan tombol PROSES maka data akan diproses dengan menggunakan

HMM. Apabila proses telah selesai maka akan muncul confusion matrix

dan hasil berupa tingkat akurasi.

(64)

Gambar 3.11 Rancangan halaman pengujian HMM tahap kedua

3.5.3 Halaman Bantuan

Halaman bantuan berisi tentang bagaimana cara menggunakan

program serta sedikit keterangan mengenai program yang terdiri dari tujuan

serta manfaat dari program. Rancangan dari halaman bantuan dapat dilihat

pada Gambar 3.12 dan Gambar 3.13.

(65)

Gambar 3.12 Rancangan halaman Bantuan untuk cara kerja program

Gambar 3.13 Rancangan halaman bantuan tentang program

(66)

3.6 Spesifikasi Hardware dan Software

Berikut adalah spesifikasi hardware dan software yang digunakan pada pembuatan sistem ini.

3.6.1 Hardware

Processor : AMD E-450 APU with Radeon(tm) HD Graphics 1.65GHz

Memory (RAM) : 2.00 GB

System-type : 32-bit operating system

3.6.2 Software

Windows 7 Ultimate

MATLAB R2010a.

(67)

49 BAB IV

ANALISA HASIL DAN IMPLEMENTASI SISTEM

Pada bab ini akan dijelaskan tentang implementasi antarmuka dari sistem beserta penjelasan tentang penggunaan tombol dan keterangan dari sistem. Hal yang utama dalam pembahasan bab ini adalah analisa hasil dari identifikasi suara manusia dari berbagai pengujian yang telah dilakukan yang meilbatkan jumlah feature, besarnya windows size serta jenis parameter yang dipilih.

4.1 Analisa Hasil Identifikasi Suara

Dalam proses identifikasi suara manusia ini dilakukan dengan menggunakan windows size, tipe feature dan dengan jumlah state yang berbeda dan diharapkan menghasilkan akurasi yang tinggi. Ukuran windows size yang digunakan pada sistem ini adalah 4ms sampai dengan 6ms, sedangkan tipe feature yang digunakan adalah MFCC, MFCC_D, dan MFCC_D_A. Sedangkan jumlah state yang dapat digunakan yaitu 10, 15, 20 dan 25.

Pada setiap pengujian akan dihasilkan confusion matrix serta

akurasi data yang berupa persentase. Pada bagian ini akan ditampilkan

confusion matrix yang memiliki akurasi paling tinggi dari semua proses

Gambar

Gambar 2.1 Cakupan speech processing  (Joseph P. Campbell, 1997)
Gambar 2.3 Struktur dari Speaker Identification (Furui,1996)
Tabel 2.1 Tingkat akurasi berbagai metode feature extraction
Gambar 2.5 Diagram blok proses MFCC (Do, 1994)
+7

Referensi

Garis besar

Dokumen terkait

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI.#. PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI PLAGIAT MERUPAKAN TINDAKAN

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI... 6 PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI PLAGIAT MERUPAKAN TINDAKAN

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI.5. PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI PLAGIAT MERUPAKAN TINDAKAN

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI... PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI PLAGIAT MERUPAKAN TINDAKAN

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI... 2 PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI PLAGIAT MERUPAKAN TINDAKAN

PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI... 6 5 PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI PLAGIAT MERUPAKAN TINDAKAN

Dalam penelitian ini peneliti menggunakan uji coba terpakai, yaitu uji coba yang hasilnya akan sekaligus digunakan sebagai data penelitian yang kemudian akan di analisis (Hadi,

Berdasarkan asumsi-asumsi, disusun model SIR dengan lima kelas populasi, yaitu kelompok manusia yang rentan terinfeksi penyakit ( ), kelompok manusia yang terinfeksi