UNIVERSITAS BINA NUSANTARA Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2006/2007 SPEAKER IDENTIFICATION DENGAN MENGGUNAKAN TRANSFORMASI WAVELET DISKRIT DAN JARINGAN SARAF TIRUAN BACK-PROPAGATION Martono 0700677891 Adi Widyatmoko 0700686082 Abstrak Skripsi ini membahas mengenai sistem speaker identification. Speaker identification merupakan bagian dari speaker recognition, di mana sistem mengenali seorang subjek berdasarkan suaranya dari sekumpulan pola yang sudah disimpan sebelumnya. Sistem ini menggunakan transformasi wavelet diskrit sebagai metode ekstraksi fitur dan jaringan saraf tiruan back-propagation sebagai metode klasifikasi. Input suara akan diproses melalui transformasi wavelet diskrit untuk mendapatkan koefisien sinyal frekuensi rendah hasil dekomposisi yang menyimpan karakteristik suara setiap orang. Koefisien tersebut kemudian akan diklasifikasikan menggunakan jaringan saraf tiruan back-propagation. Pengujian sistem dilakukan mengambil sampel suara yang diambil secara langsung menggunakan mikrofon di ruangan yang tidak kedap suara sebanyak 225 buah terdiri dari 15 orang subjek dan masing-masing memiliki 15 buah sampel suara, di mana 10 sampel digunakan sebagai suara pelatihan dan 5 sisanya digunakan untuk pengujian. Tingkat akurasi pengenalan mencapai 84%. Pengujian juga dilakukan pada subjek yang mengucapkan kata yang sama. Ternyata pemilihan kata yang sama oleh subjek yang berbeda tidak berpengaruh terhadap tingkat akurasi yang dihasilkan oleh sistem. Kata kunci : Speaker identification, transformasi wavelet diskrit, jaringan saraf tiruan, backpropagation. vii
KATA PENGANTAR Puji dan syukur kami ucapkan kepada Tuhan Yang Maha Esa yang telah membimbing kami dalam menyelesaikan skripsi yang berjudul Speaker Identification Dengan Menggunakan Transformasi Wavelet Diskrit Dan Jaringan Saraf Tiruan Back- Propagation. Skripsi ini disusun dengan tujuan untuk memenuhi syarat kelulusan jenjang studi Strata-1 (S1) jurusan Teknik Informatika di Unersitas Bina Nusantara. Tidak lupa pada kesempatan ini kami mengucapkan terima kasih atas segala bantuan dan dorongan yang telah diberikan oleh : Bapak Prof. Dr. Gerardus Polla M. App., Sc. selaku Rektor Unersitas Bina Nusantara yang telah memberikan kesempatan kepada kami untuk menempuh pendidikan di Unersitas Bina Nusantara Bapak Ir. Sablin Yusuf, M.Sc. M.Comp.Sc. selaku Dekan Fakultas Ilmu Komputer, Bapak H. Mohammad Subekti, BE, M.Sc. selaku Ketua Jurusan Teknik Informatika, dan Freddy Purnomo, S.Kom, M.Kom. selaku Sekretaris Jurusan Teknik Informatika Unersitas Bina Nusantara yang telah memberikan kesempatan, kepercayaan, serta saran dalam penyusunan skripsi ini. Ibu Anny Tandyo, S.Kom, M.Sc. selaku dosen pembimbing yang telah menyediakan banyak waktu untuk membantuk, memberikan sumbangan pemikiran, serta membimbing penulis dalam menyelesaikan masalahmasalah yang kami temui selama penyusunan skripsi.
Orang tua serta keluarga kami yang telah memberikan dukungan dan nasihat yang membangun dalam menyelesaikan skripsi ini. Rekan-rekan mahasiswa Unersitas Bina Nusantara, terutama dari Himpunan Mahasiswa Teknik Informatika, yang secara langsung maupun tidak langsung telah memberikan dukungan kepada kami. Dengan segala kerendahan hati, kami sangat mengharapkan saran dan kritik untuk membangun skripsi ini. Akhir kata, kami berharap agar skripsi ini dapat memberikan manfaat bagi semua pembaca dan semua pihak yang berkepentingan. Atas segala perhatiannya, kami ucapkan terima kasih sebanyak-banyaknya. Jakarta, 20 Januari 2007 Tim Penulis
DAFTAR ISI
Halaman Judul Luar... i Halaman Judul Dalam... ii Halaman Persetujuan Softcover... iii Abstrak... Kata Pengantar... Daftar Isi... v vii Daftar Tabel... xii Daftar Gambar... xiii Daftar Lampiran... xvi BAB 1 PENDAHULUAN... 1 1.1 Latar Belakang... 1 1.2 Ruang Lingkup... 2 1.3 Tujuan Dan Manfaat... 3 1.4 Metodologi... 4 1.5 Sistematika Penulisan... 5 BAB 2 LANDASAN TEORI... 7 2.1 Suara... 7 2.1.1 Sinyal... 7 2.1.2 Sinyal Suara... 9 2.1.3 Bit Rate... 12 2.1.4 Sampling Rate... 12 2.1.5 Format File... 14 2.1.5.1 Resource Interchange File Format... 14 2.1.5.2 Waveform Audio Format... 15
2.1.6 Silence-Frame... 18 2.1.7 Penguatan Suara... 18 2.1.8 Normalisasi Audio... 19 2.1.9 Konvolusi... 19 2.2 Pengenalan Pola... 21 2.3 Speaker Recognition... 24 2.3.1 Berdasarkan Fungsi... 27 2.3.2 Berdasarkan Metode... 29 2.4 Ekstraksi Fitur... 30 2.4.1 Fast Fourier Transform... 31 2.4.2 Short Term Fourier Transform... 33 2.4.3 Transformasi Wavelet... 35 2.4.3.1 Transformasi Wavelet Kontinu... 35 2.4.3.2 Transformasi Wavelet Diskrit... 38 2.4.3.3 Transformasi Wavelet Dalam Speaker Identification... 41 2.5 Jaringan Saraf Tiruan... 42 2.5.1 Definisi Jaringan Saraf Tiruan... 42 2.5.2 Sejarah Jaringan Saraf Tiruan... 42 2.5.3 Komponen Jaringan Saraf Tiruan... 45 2.5.4 Fungsi Aktasi... 46 2.5.5 Arsitektur Jaringan Saraf Tiruan... 48 2.5.6 Metode Pembelajaran... 50 2.5.7 Back-Propagation... 51 BAB 3 PERANCANGAN SISTEM... 54
3.1 Gambaran Umum... 54 3.2 Tahap Pengambilan Input Suara... 55 3.3 Tahap Pemprosesan Awal... 57 3.3.1 Pembuangan Silence-Frame... 58 3.3.2 Penguatan Suara... 60 3.3.3 Normalisasi Suara... 61 3.4 Tahap Ekstraksi Fitur Suara... 62 3.4.1 Transformasi Wavelet Diskrit... 62 3.5 Tahap Klasifikasi... 65 3.5.1 Tahap Pelatihan... 67 3.5.1.1 Normalisasi Koefisien Wavelet... 67 3.5.1.2 Representasi Nilai Output... 69 3.5.1.3 Inisialisasi Nilai Weight... 70 3.5.1.4 Inisialisasi Input dan Target Output... 70 3.5.1.5 Proses Perhitungan Forward... 71 3.5.1.6 Proses Perhitungan Backward... 72 3.5.1.7 Proses Update Weight... 73 3.5.1.8 Batas Pelatihan... 73 3.5.2 Tahap Pengenalan... 74 3.5.2.1 Inisialisasi Input... 74 3.5.2.2 Proses Perhitungan Forward... 75 3.6 Perancangan Proses... 75 3.6.1 Modul Pemprosesan Awal... 75 3.6.2 Modul Ekstraksi Fitur... 76
3.6.3 Modul Klasifikasi... 76 3.7 Perancangan Database... 78 3.8 Perancangan Layar... 80 3.8.1 Perancangan Layar Input Pola Masukan... 80 3.8.2 Perancangan Layar Pelatihan Jaringan Saraf Tiruan... 81 3.8.3 Perancangan Layar Identifikasi Suara... 82 3.8.4 Perancangan Layar Konfigurasi Sistem dan Database... 84 3.8.5 Perancangan Layar Keterangan... 86 BAB 4 IMPLEMENTASI DAN EVALUASI... 87 4.1 Spesifikasi Sistem... 87 4.1.1 Spesifikasi Perangkat Keras... 87 4.1.2 Spesifikasi Perangkat Lunak... 87 4.2 Prosedur Operasional... 88 4.3 Prosedur Evaluasi... 94 4.4 Pengujian pada Data Hasil Tangkapan Mikrofon... 95 4.4.1 Evaluasi Pengaruh Penggunaan Frekuensi Sinyal Hasil Dekomposisi Wavelet, Penguatan Suara, Dan Normalisasi... 96 4.4.2 Evaluasi Pengaruh Level Dekomposisi Wavelet... 98 4.4.3 Evaluasi Pengaruh Jumlah Node Pada Hidden Layer... 100 4.4.4 Evaluasi Pengaruh Target Error... 102 4.4.5 Evaluasi Pengaruh Learning Rate... 104 4.4.6 Evaluasi Pengaruh Jumlah Data Pelatihan Per Subjek... 105 4.4.7 Evaluasi Pengaruh Jumlah Subjek... 107 4.4.8 Evaluasi Pengaruh Kata atau Frase yang Diucapkan... 109
4.5 Evaluasi Aplikasi Secara Umum... 110 4.6 Rangkuman Hasil Evaluasi Secara Keseluruhan... 111 BAB 5 SIMPULAN DAN SARAN... 113 5.1 Simpulan... 113 5.2 Saran... 114 DAFTAR PUSTAKA... 115 RIWAYAT HIDUP... 118 LAMPIRAN... L1 A. Suara Pelatihan... L1 B. Suara Pengenalan... L18 C. Listing Program... L27
DAFTAR TABEL Tabel 2.1 Tabel Rentang Sampling Rate dan Penggunaannya... 13 Tabel 2.2 Tabel Deskripsi Bagian Format File WAV... 16 Tabel 2.3 Tabel Contoh Aplikasi Sistem Pengenalan Pola... 22 Tabel 2.4 Tabel Perbandingan Teknologi Biometrik... 23 Tabel 2.5 Tabel Perkembangan Penelitian Speaker Recognition Secara Kronologis... 26 Tabel 2.6 Tabel Perbandingan FFT, STFT, dan DWT... 30 Tabel 3.1 Tabel Database Subjek... 78 Tabel 3.2 Tabel Database Pola Masukan... 79 Tabel 4.1 Tabel Data Hasil Pengujian Pengaruh Penggunaan Sinyal Hasil Dekomposisi Wavelet, Penguatan Suara, dan Normalisasi... 96 Tabel 4.2 Tabel Data Hasil Pengujian Pengaruh Level Dekomposisi Wavelet... 99 Tabel 4.3 Tabel Data Hasil Pengujian Pengaruh Jumlah Node pada Hidden Layer... 101 Tabel 4.4 Tabel Data Hasil Pengujian Pengaruh Target Error... 102 Tabel 4.5 Tabel Data Hasil Pengujian Pengaruh Learning Rate... 104 Tabel 4.6 Tabel Data Hasil Pengujian Pengaruh Jumlah Data Pelatihan Per Subjek... 106 Tabel 4.7 Tabel Data Hasil Pengujian Pengaruh Jumlah Subjek... 107 Tabel 4.8 Tabel Evaluasi Pengaruh Kata atau Frase yang Diucapkan... 110 Tabel 4.9 Tabel Konfigurasi Sistem yang Optimal... 112 Tabel 4.10 Tabel Rangkuman Hasil Pengujian yang Optimal... 112
DAFTAR GAMBAR Gambar 2.1 (a) Sinyal Waktu Kontinu dan (b) Sinyal Waktu Diskrit... 8 Gambar 2.2 (a) Sinyal Stationary dan (b) Non-Stationary... 9 Gambar 2.3 (a) Sistem Vokal Manusia dan (b) Diagram Bloknya... 10 Gambar 2.4 Gelombang Suara yang Di-sampling... 12 Gambar 2.5 Chunk RIFF dengan Dua Subchunk... 15 Gambar 2.6 Format File WAV Standar... 16 Gambar 2.7 (a) Contoh 72 Byte Pertama dari File WAV dan (b) Penjelasannya... 17 Gambar 2.8 Contoh Konvolusi... 21 Gambar 2.9 Diagram Proses dari Sistem Pengenalan Pola... 21 Gambar 2.10 Rentang Performansi Beragam Sistem Speaker Recognition... 25 Gambar 2.11 Bagan Sistem Speaker Verification... 27 Gambar 2.12 Bagan Sistem Speaker Identification... 28 Gambar 2.13 (a) Sinyal Stationary, (b) Sinyal Non-stationary, dan (c, d) hasil FFTnya... 32 Gambar 2.14 (a) Sinyal Non-stationary dan (b) Hasil STFT-nya... 33 Gambar 2.15 (a) Fungsi Window dan (b, c) Hasil STFT-nya... 34 Gambar 2.16 Sinyal Dengan Frekuensi Tinggi Untuk Waktu Singkat dan Frekuensi Rendah Untuk Waktu yang Lama... 36 Gambar 2.17 (a) Sinyal Non-stationary dan (b, c) Hasil Transformasi Wavelet Diskritnya... 37 Gambar 2.18 Ilustrasi Algoritma Dekomposisi Wavelet... 40
Gambar 2.19 (a) Transformasi Wavelet pada Sinyal Satu Dimensi dan (b) pada Sinyal Suara... 41 Gambar 2.20 Model Neuron... 46 Gambar 2.21 Fungsi Identitas... 46 Gambar 2.22 Fungsi Tangga... 47 Gambar 2.23 Fungsi Sigmoid... 47 Gambar 2.24 Fungsi Hpertangent... 48 Gambar 2.25 Jaringan Saraf Tiruan Lapis Tunggal... 49 Gambar 2.26 Jaringan Saraf Tiruan Lapis Banyak... 49 Gambar 3.1 Diagram Sistem Speaker Identification... 54 Gambar 3.2 Tahap Pengambilan Input Suara... 55 Gambar 3.3 Tahap Pemprosesan Awal... 57 Gambar 3.4 Urutan Pemotongan Suara... 59 Gambar 3.5 (a) Gambar Suara Sebelum dan (b) Sesudah Penguatan... 60 Gambar 3.6 Suara Sebelum dan Sesudah Normalisasi... 61 Gambar 3.7 Tahap Ekstraksi Fitur Suara... 62 Gambar 3.8 Gambar Dekomposisi Wavelet... 63 Gambar 3.9 Gambar Sinyal Suara Asli dan Hasil Dekomposisi... 65 Gambar 3.10 Tahap Klasifikasi... 67 Gambar 3.11 Tahap Pelatihan... 67 Gambar 3.12 Ilustrasi Strategi Representasi Nilai Output... 69 Gambar 3.13 Ilustrasi Tahap Inisialisasi Input dan Target Output... 70 Gambar 3.14 Proses Perhitungan Forward... 71 Gambar 3.15 Proses Perhitungan Backward... 72
Gambar 3.16 Tahap Pengenalan... 74 Gambar 3.17 Rancangan Layar Input Pola Masukan... 80 Gambar 3.18 Rancangan Layar Pelatihan Jaringan Saraf Tiruan... 81 Gambar 3.19 Rancangan Layar Identifikasi Suara... 82 Gambar 3.20 Rancangan Layar Konfigurasi Sistem dan Database... 84 Gambar 3.21 Rancangan Layar Keterangan... 86 Gambar 4.1 Layar Penambahan Pola... 88 Gambar 4.2 Layar Pelatihan... 90 Gambar 4.3 Layar Pengenalan... 91 Gambar 4.4 Layar Perubahan Konfigurasi dan Database... 92 Gambar 4.5 Layar Keterangan Program... 93 Gambar 4.6 Grafik Pengaruh Penggunaan Frekuensi Sinyal Hasil Dekomposisi Wavelet, Penguatan Suara, dan Normalisasi... 97 Gambar 4.7 Grafik Pengaruh Level Dekomposisi Wavelet. 99 Gambar 4.8 Grafik Pengaruh Jumlah Node pada Hidden Layer... 101 Gambar 4.9 Grafik Pengaruh Target Error... 103 Gambar 4.10 Grafik Pengaruh Learning Rate... 104 Gambar 4.11 Grafik Pengaruh Jumlah Data Pelatihan Per Subjek. 106 Gambar 4.12 Grafik Pengaruh Jumlah Subjek... 108 Gambar 4.13 Grafik Pengaruh Kata atau Frase yang Diucapkan... 110
DAFTAR LAMPIRAN Suara Pelatihan... Suara Pengujian... Listing Program... L1 L18 L27