BAB 2 LANDASAN TEORI 2.1 Suara 2.1.1...
Transcript of BAB 2 LANDASAN TEORI 2.1 Suara 2.1.1...
7
BAB 2
LANDASAN TEORI
2.1 Suara
2.1.1 Sinyal
Menurut Proakis dan Manolakis (1992, p2), sinyal didefinisikan sebagai
jumlah fisik (physical quantity) yang bervariasi terhadap waktu, ruang, atau
variabel independen lainnya. Sebuah sinyal x(t) adalah sebuah nilai real atau
nilai skalar, fungsi dari waktu (t) (Kamen, 1997, p7). Definisi lain menurut Mitra
(1998, p1) adalah sebuah fungsi dari variabel independen seperti waktu, jarak,
posisi, suhu, dan tekanan. Sebagai contoh, sinyal suara dan musik
merepresentasikan tekanan udara sebagai fungsi terhadap waktu pada satu titik
dalam ruang koordinat dan gambar hitam putih yang merepresentasikan tingkat
intensitas cahaya sebagai fungsi terhadap dua titik dalam ruang koordinat.
Sebuah sinyal membawa informasi dan tujuan dari pemprosesan sinyal
adalah untuk mendapatkan atau mengekstrak informasi yang dibawa oleh sinyal.
Metode esktraksi informasi ini bergantung pada jenis sinyal dan sifat alami dari
informasi yang dibawa oleh sinyal tersebut. Oleh sebab itu, pemprosesan sinyal
terkait dengan representasi matematis dari sinyal tersebut dan operasi algoritmik
untuk mendapatkan informasi yang dilakukan terhadap sinyal tersebut.
Menurut Mitra (1998, pp2-4), sebuah sinyal dapat dihasilkan oleh satu
sumber atau banyak sumber. Sinyal satu dimensi (1-D) adalah fungsi dari satu
variabel independen. Sinyal dua dimensi (2-D) adalah fungsi dari dua variabel
8
independen. Sinyal multidimensi (M-D) adalah fungsi dari dua atau lebih
variabel independen. Sinyal suara adalah sinyal satu dimensi di mana variabel
independennya adalah waktu.
Nilai dari sinyal pada nilai variabel independen tertentu disebut dengan
amplitudo. Variasi dari amplitudo sebagai fungsi dari variabel independen
disebut sebagai waveform.
Pada umumnya variabel independen untuk sinyal satu dimensi adalah
waktu. Jika variabel independennya kontinu, maka sinyal tersebut disebut
sebagai sinyal waktu kontinu (continuous-time signal). Jika variabel
independennya diskrit, maka sinyal tersebut disebut sebagai sinyal waktu diskrit
(discrete-time signal). Sinyal waktu kontinu didefinisikan setiap waktu t dalam
sebuah interval yang biasanya tidak terbatas, sedangkan sinyal waktu diskrit
didefinisikan pada waktu diskrit, dan biasanya berupa urutan angka.
Gambar 2.1 (a) Sinyal Waktu Kontinu dan (b) Sinyal Waktu Diskrit
Sinyal waktu kontinu dengan amplitudo kontinu biasanya disebut sebagai
sinyal analog. Contoh sinyal analog adalah sinyal suara. Sinyal waktu diskrit
dengan amplitudo bernilai diskrit yang direpresentasikan oleh digit angka yang
terbatas (finite), biasanya disebut sebagai sinyal digital.
9
Berdasarkan jenis frekuensinya, sinyal terbagi menjadi sinyal stationary
dan sinyal non-stationary. Frekuensi dalam sinyal stationary tidak berubah dan
selalu berulang dalam waktu, sedangkan frekuensi dalam sinyal non-stationary
berubah-ubah dalam waktu.
Gambar 2.2 (a) Sinyal Stationary dan (b) Non-stationary.
2.1.2 Sinyal Suara
Menurut Rabiner dan Juang (1993, p17), sinyal suara adalah sebuah
sinyal yang bervariasi terhadap waktu yang jika diperiksa dalam periode waktu
yang singkat (antara 5 sampai 100 milidetik), karakteristiknya tergolong
stationary. Frekuensi dapat yang didengar oleh indra pendengaran manusia
adalah antara 20 - 20000 Hz (Dede, 1998, p1).
Suara adalah sinyal yang bergantung pada waktu (time-dependent). Oleh
sebab itu, pengucapan kata yang sama dapat memiliki durasi yang berbeda.
10
Pengucapan kata yang sama dengan durasi yang sama juga dapat memiliki
perbedaan di bagian tengah, dikarenakan adanya perbedaan bagian dari kata yang
diucapkan dengan kecepatan yang berbeda.
(a)
(b)
Gambar 2.3 (a) Sistem Vokal Manusia
(b) Diagram Blok Untuk Sistem Vokal Manusia
Sinyal suara dibentuk dengan cara menstimulasi rongga suara. Sinyal
suara terdiri dari dua buah tipe bunyi : bersuara (voiced) dan tidak bersuara
(unvoiced) (Mitra, 1998, p19). Bunyi voiced, termasuk di dalamnya bunyi vokal
11
dan beberapa konsonsan seperti B, D, L, M, N, dan R, distimulasi oleh aliran
udara pulsatile yang berasal dari getaran vocal folds. Bunyi unvoiced dihasilkan
downstream di bagian depan dari mulut, dengan pita suara dalam kondisi
istirahat, termasuk di dalamnya bunyi seperti F, S, dan SH. Menurut Rabiner dan
Juang (1993, p18), terdapat tiga kondisi representasi suara yang dihasilkan yaitu
silence (tidak ada suara yang dihasilkan), unvoiced (pita suara tidak bergetar dan
waveform suara hasil aperiodik atau random), dan voiced (pita suara menegang
dan bergetar secara periodik dan hasil waveform suara quasi-periodik).
Bentuk gelombang bunyi voiced berupa quasi-periodik dan dapat dibuat
modelnya berdasarkan total jumlah dari nilai pasti sinusoid. Frekuensi terendah
dari fluktuasi dalam representasi ini disebut sebagai frekuensi fundamental atau
pitch frequency. Bentuk gelombang bunyi unvoiced tidak mempunyai struktur
umum yang baik dan lebih menyerupai noise.
Ketika suara yang berupa sinyal analog hendak direkam dengan
mikrofon, sinyal tersebut harus diubah menjadi sinyal digital terlebih dahulu
karena komputer hanya mengenali sinyal dalam bentuk digital. Alat yang
digunakan untuk mengubah sinyal analog menjadi digital disebut analog-to-
digital converter (ADC). Kebalikan dari ADC adalah digital-to-analog converter
(DAC) yang berfungsi untuk mereproduksi suara dari komputer dengan
mengubah sinyal digital menjadi analog yang dikeluarkan melalui speaker
komputer. ADC dan DAC pada komputer terletak pada sound card. Dalam
komputer yang memiliki sound card yang terpasang secara on-board pada
motherboard, ADC dan DAC terletak pada chip yang terpisah yang disebut
codec (coder/decoder) (Mitra ,1998, p283).
12
2.1.3 Bit Rate
Bit rate menyatakan jumlah bit yang digunakan setiap unit waktu dalam
file suara. Sebuah suara digital terdiri dari word yang berisi 0 atau 1. Pada word 2
bit, terdapat 4 kemungkinan nilai, yaitu 00, 01, 10, dan 11. Pada word 3 bit,
terdapat 8 kemungkinan nilai, yaitu 000, 111, 001, 010, 011, 100, 101, dan 110.
Pada word n bit, terdapat 2n kemungkinan nilai. Jika word 8 bit digunakan untuk
menyatakan volume, maka terdapat 256 kemungkinan nilai volume, berkisar dari
0 sampai dengan 255. Semakin tinggi bit rate, semakin akurat resolusi dari
volume file suara tersebut.
2.1.4 Sampling Rate
Sampling rate (biasa disebut juga sampling frequency) menyatakan
jumlah sample per detik yang diambil dari sinyal kontinu untuk membuat sinyal
diskrit. Untuk sinyal time-domain, sampling rate dapat diukur dalam hertz (Hz).
Kebalikan dari sampling rate adalah sampling period yang menyatakan selang
waktu di antara setiap sample (Schiel dan Draxler, 2004).
Gambar 2.4 Gelombang Suara yang Di-sampling
13
Jika waktu pada gambar 2.4 adalah satu detik, berarti terdapat enam buah
sample dari suara tersebut dalam setiap detiknya atau dengan kata lain memiliki
sampling rate sebesar enam (sample terakhir tidak diikutsertakan karena
merupakan sample pertama untuk detik berikutnya). Semakin tinggi sampling
rate, semakin akurat resolusi file suara tersebut. Sebagai contoh, suara 16 bit dan
44,1 Khz bermakna suara tersebut di-sampling 44.100 kali per detik dan diukur
dengan akurasi 16 bit.
Sinyal suara yang hanya berisi suara manusia (speech signal) dapat di-
sampling pada nilai yang jauh lebih rendah. Menurut Allen (1994, pp567-577),
dalam kebanyakan kasus, hampir semua energi dalam suara tersimpan dalam
rentang 0-4000 Hz sehingga sampling cukup dilakukan pada 8000 Hz. Hal ini
didasarkan pada teori Nyquist-Shannon yang menyebutkan bahwa untuk
mencegah hilangnya informasi dalam sebuah konversi sinyal kontinu ke diskrit,
sampling minimal harus dua kali lebih besar dari sinyal asli (Shannon, 1949).
Tabel 2.1 Tabel Rentang Sampling Rate dan Penggunaannya
Sampling rate (dalam Hz) Penggunaan
8000 Telepon, speech signal 11025 dan 22050 Audio PCM dan MPEG kualitas rendah 32000 Perekam miniDV digital video 44056 Adaptor PCM yang menggunakan video tape NTSC 44100 CD audio, VCD, SVCD, MP3
47250 Perekam suara PCM komersial pertama di dunia oleh Denon
48000 Suara digital pada miniDV, TV digital, DVD
50000 Perekam digital audio komersial pertama oleh 3M dan Soundstream
50400 Perekam digital audio pada Mitsubishi X-80 96000 dan 192000 DVD Audio, audio pada Blu-ray dan HD-DVD
14
2.1.5 Format File
2.1.5.1 Resource Interchange File Format
Menurut Murray dan vanRyper (1996), Resource Interchange File
Format (RIFF) adalah format file generik untuk menyimpan data dalam chunk
yang berlabel (tagged chuncks). RIFF diciptakan pada tahun 1991 oleh Microsoft
dan IBM. RIFF kemudian dijadikan format standar untuk file multimedia pada
sistem operasi Windows 3.1. RIFF dibuat berdasarkan Interchange File Format
(IFF) milik Electronic Arts. Perbedaan antara keduanya adalah :
• Tipe data integer pada RIFF menggunakan little-endian di mana byte terkecil
(least significant byte) disimpan pada alamat memori terkecil, sedangkan tipe
data integer pada IFF menggunakan big-endian di mana byte terbesar (most
significant byte) disimpan pada alamat memori terkecil.
• RIFF digunakan pada prosesor seri 80x86 untuk PC IBM, sedangkan IFF
digunakan pada prosesor seri 68k untuk Amiga dan Apple Macintosh.
• Contoh format file yang menggunakan RIFF : AVI, ANI, dan WAV. Contoh
format file yang menggunakan IFF : AIFF, PICS, dan ACBM.
Sebuah file RIFF terdiri dari kumpulan chunk. Chunk adalah unit logikal
dari data multimedia. Setiap chunk memiliki field sebagai berikut :
• 4 karakter yang menjadi pengenal chunk
• Nilai doubleword yang menyatakan besarnya data dalam chunk
• Field data
15
Gambar 2.5 Sebuah Chunk RIFF yang Memiliki Dua Subchunk
Sebuah chunk yang terdapat dalam chunk lainnya disebut subchunk.
Chunk pertama dalam sebuah file RIFF haruslah memiliki pengenal “RIFF”.
Chunk lainnya merupakan subchunk dari chunk “RIFF”. Chunk “RIFF” dapat
mengandung field lain dalam field data, biasanya menyatakan format data yang
disimpan dalam file.
2.1.5.2 Waveform Audio Format
Waveform Audio Format (WAV atau WAVE) adalah format file standar
dari Microsoft dan IBM untuk menyimpan audio dalam sebuah computer. WAV
merupakan bagian dari RIFF sebagai media penyimpan file multimedia.
Sebuah file WAV dapat menyimpan audio dengan kompresi, namun pada
umumnya format WAV berisi audio tanpa kompresi dalam format PCM (pulse-
code modulation).
16
Gambar 2.6 Format File WAV Standar (Kanonikal)
Menurut Wilson (2003), sebuah file WAV yang standar, disebut juga
dengan bentuk kanonikal, merupakan file RIFF tunggal dengan chunk ”WAV”
yang terdiri dari dua buah subchunk :
• Subchunk “fmt” yang menjelaskan format data
• Subchunk ”data” yang berisi data sample yang sebenarnya
Tabel 2.2 Tabel Deskripsi Bagian Format File WAV Menurut Gambar 2.6
Offset Ukuran (dalam byte)
Nama Deskripsi
chunk “WAVE” 0 4 ChunkID Berisi huruf “RIFF” 4 4 ChunkSize Berisi ukuran total file dalam byte setelah
dikurangi 8 byte untuk menyimpan field ChunkID dan ChunkSize. Rumusnya adalah 4 + (8 + SubChunk1Size) + (8 + SubChunk2Size)
17
8 4 Format Berisi huruf “WAVE” subchunk “fmt”
12 4 Subchunk1ID Berisi huruf “fmt” 16 4 Subchunk1Size Berisi ukuran dari total subchunk “fmt”
setelah dikurangi 8 byte untuk menyimpan field Subchunk1ID dan Subchunk1Size
20 2 AudioFormat Berisi 1 apabila merupakan file audio tanpa kompresi (PCM). Angka lain menandakan adanya kompresi.
22 2 NumChannels Berisi jumlah channel, 1 untuk mono, 2 untuk stereo.
24 4 SampleRate Berisi jumlah frame sample per detik di mana file suara akan diputar.
28 4 ByteRate Berisi jumlah rata-rata byte per detik. Rumusnya adalah SampleRate * BlockAlign
32 2 BlockAlign Berisi jumlah byte untuk satu sample untuk semua channel. Rumusnya adalah NumChannels * BitsPerSample/8
34 2 BitsPerSample Berisi jumlah bit per sample subchunk ”data”
36 4 Subchunk2ID Berisi huruf ”data” 40 4 Subchunk2Size Berisi jumlah byte dalam data.
44 * Data Berisi data suara yang sebenarnya Gambar 2.7 memberikan contoh isi dan penjelasan nilai-nilai dalam
sebuah file WAV.
(a)
18
(b)
Gambar 2.7 (a) 72 Byte Pertama dari Sebuah File WAV Dalam Format
Heksadesimal dan (b) Penjelasannya
2.1.6 Silence-Frame
Silence-frame merupakan sample pada suara yang tidak memiliki bunyi,
biasanya merupakan jeda antar kata yang diucapkan ataupun kekosongan pada
awal dan akhir dari sebuah pengucapan (Olsson, 2002, p27). Dalam sebuah file
suara dengan bit rate sebesar n bit, nilai sample yang dihasilkan berkisar dari 0
sampai dengan 2n-1 dengan nilai tengah terletak pada ½ * 2n. Nilai tengah inilah
yang disebut silence-frame.
2.1.7 Penguatan Suara
Menurut Mitra (1998, p4), penguatan suara atau amplifikasi suara adalah
proses pengolahan suara meningkatkan nilai amplitudo dengan faktor pengali
tertentu sehingga amplitudo yang dihasilkan menjadi sejumlah kali lipat nilai
semula. Penguatan suara dilakukan dengan persamaan :
19
2
22
2 nn
xx CON +×⎟⎟⎠
⎞⎜⎜⎝
⎛−= .................................................................(2.1)
Di mana :
• Nx adalah nilai sample pada file suara output.
• Ox adalah nilai sample pada file suara asli.
• n adalah nilai bit rate dari file suara.
• C adalah koefisien faktor pengali.
2.1.8 Normalisasi Audio
Normalisasi audio adalah proses pengolahan suara menaikkan atau
menurunkan amplitudo atau volume dari sebuah file suara agar semua nilai
sample di dalamnya berada pada rentang tertentu. Normalisasi audio dilakukan
dengan persamaan :
( ) minminminmax
minmax NOOOONN
N xx +−×−−
= ..............................................(2.2)
Di mana :
• Nx adalah nilai sample pada file suara output.
• Ox adalah nilai sample pada file suara asli.
• Omin adalah nilai sample terendah pada file suara asli.
• Omax adalah nilai sample tertinggi pada file suara asli.
2.1.9 Konvolusi
Konvolusi adalah sebuah operasi matematika sederhana yang umum
digunakan pada pemprosesan sinyal suara. Konvolusi menyediakan sebuah cara
20
untuk mengalikan dua buah array angka (biasanya berdimensi sama tapi dengan
ukuran berbeda) untuk menghasilkan array ketiga dengan dimensi yang serupa.
Teknik ini dapat digunakan dalam pemprosesan sinyal suara untuk
mengimplementasikan operator-operator di mana nilai sample output-nya adalah
kombinasi linear sederhana dari sample input.
Dalam konteks pemprosesan sinyal suara, array input biasanya adalah
nilai sample dari file suara asli, sedangkan array kedua yang biasanya berukuran
lebih kecil dan harus berdimensi sama (satu dimensi) disebut sebagai kernel
(mask).
Konvolusi dilakukan dengan menggeser kernel di atas file suara
(masking) hingga kernel tersebut melewati segala posisi sedemikian sehingga
kernel muat semuanya di dalam batasan file. Setiap posisi kernel
berkorespondensi dengan sebuah nilai sample keluaran yang didapat dari
akumulasi perkalian antara nilai kernel dengan nilai sample yang dilewatinya.
Secara matematis, operasi konvolusi dari file audio y(k) dan kernel x(i) dapat
dituliskan dalam persamaan :
∑ −=
=
iikyix
kyxkz)()(
))(*()( ........................................................................(2.3)
Di mana z(k) adalah sample output hasil proses konvolusi (Gonzales, 1993,
p100).
21
Gambar 2.8 Contoh Konvolusi di mana z(i) = x(i)*y(i)
2.2 Pengenalan Pola
Gambar 2.9 Diagram Proses dari Sebuah Sistem Pengenalan Pola
Pengenalan pola (pattern recognition) dapat diartikan sebagai proses
pengumpulan data atau pola dan pengambilan tindakan atau keputusan
berdasarkan kategori dari data atau pola tersebut (Theodoridis dan Koutroumbas,
2006). Tujuan dari pengenalan pola adalah mengklasifikasikan pola berdasarkan
22
knowledge yang sudah dianggap benar atau informasi statistik yang didapat dari
pola-pola tersebut.
Sebuah sistem pengenalan pola terdiri dari sensor yang mengumpulkan
pola yang akan diproses dan mengukur variabel dari setiap pola, pre-processing
yang menghilangkan noise dalam data, mekanisme ekstraksi fitur untuk
mendapatkan informasi numerik atau simbolik dari pola-pola tersebut, model
pembelajaran yang mempelajari pemetaan antara fitur dan kelompok pola,
metode klasifikasi yang memisah-misahkan pola-pola tersebut ke dalam kategori
berdasarkan fitur dan model pembelajaran, dan post-processing yang
mengevaluasi benar tidaknya hasil yang didapat.
Metode klasifikasi yang digunakan pada sistem pengenalan pola memiliki
dua jenis pendekatan : statistik dan struktural (atau sintaktik). Pengenalan pola
statistik berdasar pada karakteristik statistikal dari pola-pola yang ada dengan
asumsi bahwa pola-pola tersebut dihasilkan oleh sebuah sistem probabilistik.
Pengenalan pola struktural berdasar pada hubungan struktural dari fitur dari
setiap pola.
Tabel 2.3 Tabel Contoh Aplikasi Sistem Pengenalan Pola
Domain masalah Aplikasi Pola input Kelas pola Analisa citra dokumen
Pengenalan karakter optikal
Citra dokumen Karakter, kata
Klasifikasi dokumen Pencarian internet Dokumen teks Kategori semantik
Klasifikasi dokumen Spam filter pada surat elektronik
Surat elektronik Spam/bukan spam
Pembuatan sistem basis data multimedia
Pencarian internet Klip video Jenis/genre video
Speech recognition Telephone directory assistance
Gelombang suara Kata yang diucapkan
23
Pemprosesan bahasa natural
Ekstraksi informasi
Kalimat Bagian dari kata
Pengenalan biometrik
Identitas personal Wajah, retina, sidik jari
Pengguna yang berwenang
Medis Diagnosa Citra mikroskop Sel kanker/bukan kanker
Militer Pengenalan target otomatis
Gambar infra merah
Jenis target
Otomatisasi industri Pemilahan buah Citra yang diambil pada conveyor belt
Tingkat kualitas
Seperti yang disebutkan dalam tabel 2.3, salah satu domain masalah
dalam pengenalan pola adalah biometrik. Biometrik adalah bidang ilmu yang
mempelajari metode untuk mengenali manusia secara unik berdasarkan satu atau
lebih bagian fisik atau perilaku dalam dirinya. Jain et al (2002, p16) membuat
tabel perbandingan teknologi biometrik seperti pada tabel 2.4. Nilai tinggi
menunjukkan hasil yang baik dan sebaliknya.
Tabel 2.4 Tabel Perbandingan Teknologi Biometrik
Biometrik Universality Uniqueness Permanence Collectability Performance Acceptability Circumvention
Wajah Tinggi Rendah Sedang Tinggi Rendah Tinggi Rendah Sidik jari Sedang Tinggi Tinggi Sedang Tinggi Sedang Tinggi Bentuk tangan Sedang Sedang Sedang tinggi Sedang Sedang Sedang Urat nadi Sedang Sedang Sedang Sedang Sedang Sedang Tinggi Iris Tinggi Tinggi Tinggi Sedang Tinggi Rendah Tinggi Pemindai retina Tinggi Tinggi Sedang Rendah Tinggi Rendah Tinggi Tanda tangan Rendah Rendah Rendah Tinggi Rendah Tinggi Rendah Suara Sedang Rendah Rendah Sedang Rendah Tinggi Rendah Suhu tubuh (termogram) Tinggi Tinggi Rendah Tinggi Sedang Tinggi Tinggi
Bau badan Tinggi Tinggi Tinggi Rendah Rendah Sedang Rendah DNA Tinggi Tinggi Tinggi Rendah Tinggi Rendah Rendah Telinga Sedang Sedang Tinggi Sedang Sedang Tinggi Sedang
Penjelasan istilah yang digunakan dalam tabel 2.4 :
• Universality menyatakan seberapa umum biometrik dapat ditemukan dalam
setiap orang.
24
• Uniqueness menyatakan seberapa baik biometrik membedakan seseorang
dari yang lainnya.
• Permanence mengukur seberapa besar ketahanan biometrik terhadap umur.
• Collectability menyatakan seberapa mudah mendapatkan biometrik untuk
pengukuran.
• Performance menyatakan tingkat akurasi dan kecepatan sistem dalam
mendapatkan data biometrik.
• Acceptability menyatakan tingkat penerimaan teknologi oleh masyarakat
dalam kehidupan sehari-hari.
• Circumvention menyatakan seberapa mudah sistem dapat dikelabui.
2.3 Speaker Recognition
Speaker recognition atau yang juga dikenal dengan voice recognition
adalah sistem yang dapat mengenali seseorang dari suaranya (Sigmund, 2003,
pp7-18). Sistem ini mengekstrak fitur dari suara, memodelkannya, dan
menggunakan model tersebut untuk membedakan seseorang berdasarkan
suaranya. Speaker recognition sering disamakan dengan speech recognition,
padahal keduanya memiliki definisi yang berbeda. Speaker recognition
mengenali siapa yang berbicara sementara speech recognition mengenali apa
yang diucapkan.
Speaker recognition terdiri dari dua tahap : pelatihan dan pengenalan
(evaluasi). Pada tahap pelatihan, suara pembicara akan direkam dan fitur di
dalamnya akan diekstrak untuk mendapatkan voice print, template, atau model
25
suara. Pada tahap evaluasi, suara pembicara dicocokkan dengan template atau
model.
Menurut Reynolds dan Heck (2000), terdapat beberapa faktor yang harus
diperhatikan dalam evaluasi sistem speaker recognition :
• Kualitas suara (jumlah channel dan karakteristik mikrofon, tingkat noise,
variasi suara pada tahap pelatihan dan evaluasi)
• Metode input (text-dependent atau text-independent)
• Lama suara (durasi dan jumlah sesi suara pada tahap pelatihan dan evaluasi)
• Jumlah subjek dalam tahap pelatihan
Gambar 2.10 Rentang Performansi Beragam Sistem Speaker Recognition
Riset mengenai speaker recognition telah dilakukan di berbagai
laboratorium di berbagai negara. Secara kronologis, perkembangan speaker
recognition dapat diurutkan seperti tabel 2.5.
26
Tabel 2.5 Tabel Perkembangan Penelitian Speaker Recognition Secara Kronologis
Sumber referensi Org Metode ekstraksi fitur Teknik klasifikasi Teks Pop Tingkat
kesalahan Atal 1974 AT&T Cepstrum Pattern match Dependent 10 i: 2%@0,5s
v: 2%@1s Markel dan Davis 1979
STI LP Long term statistics Independent 17 i: 2%@39s
Furui 1981 AT&T Cepstrum ternormalisasi
Pattern match Dependent 10 v: 0,2%@3s
Schwartz, et al. 1982 BBN LAR Nonparametric pdf Independent 21 i: 2,5%@2s Li dan Wrench 1983 ITT LP, Cepstrum Pattern match Independent 11 i: 21%@3s
i: 4%@10s Doddington 1985 TI Filter-bank DTW Dependent 200 v: 0,8%@6s Soong, et al. 1985 AT&T LP VQ likelihood ratio
distortion 10 digit 100 i: 5%@1,5s
i: 1,5%3,5s Higgins dan Wohlford 1986
ITT Cepstrum DTW likelihood scoring
Independent 11 v: 10%@2,5s v: 4,5%@10s
Attili, et al. 1988 RPI Cepstrum, LP, Autocorr
Projected long term statistics
Dependent 90 v: 1%@3s
Higgins, et al. 1991 ITT LAR, LP-Cepstrum
DTW likelihood scoring
Dependent 186 v: 1,7%@10s
Tishby 1991 AT&T LP HMM (AR mix) 10 digit 100 v: 2,8%@1,5s v: 0,8%@3,5s
Reynolds 1995 MIT-LL
Mel-Cepstrum HMM (GMM) Dependent 138 i: 0,8%@10s v:0,12%@10s
Che dan Lin 1995 Rutgers Cepstrum HMM Dependent 138 i:0,56%@2,5s i: 0,14%@10s v: 0,62@2,5s
Colombi, et al. 1996 AFIT Cepstrum, Eng dCepstrum, ddCepstrum
HMM monofon Dependent 138 i: 0,22%@10s v:0,28%@10s
Reynolds 1996 MIT-LL
Mel-Cepstrum, Mel-dCepstrum
HMM (GMM) Independent 416 v: 11%@3s v: 6%@10s v: 3%@30s
Penjelasan istilah yang digunakan pada tabel 2.5 :
• Org (organisasi) mengacu pada badan, perusahaan, atau universitas yang
mengadakan penelitian.
• Teks mengacu pada metode speaker recognition.
• Pop (populasi) mengacu pada jumlah subjek yang digunakan pada penelitian.
• Tingkat kesalahan mengacu pada nilai persentase kesalahan yang muncul
saat penelitian, di mana i menyatakan speaker identification, v menyatakan
speaker verification, dan @ns menyatakan rentang waktu selama n detik
setiap kali sampel suara diambil.
27
• LP berarti Linear Predictive, LAR berarti Log Area Ratio, DTW berarti
Dynamic Time Warping, VQ berarti Vector Quantization, HMM berarti
Hidden Markov Model, dan GMM berarti Gaussian Mixture Model.
2.3.1 Berdasarkan Fungsi
Menurut Reynolds dan Heck (2000), berdasarkan fungsinya, speaker
recognition terbagi menjadi speaker verification (atau voice authentication) dan
speaker identification. Perbedaan antara keduanya terletak pada ada tidaknya
klaim atas identitas tertentu yang dilakukan oleh pengguna ketika memasukkan
suara untuk dikenali.
Gambar 2.11 Bagan Sistem Speaker Verification
Sebuah sistem speaker verification bertujuan untuk mengesahkan
identitas seseorang berdasarkan suaranya. Ketika pengguna memberikan input
suaranya, ia juga memasukkan identitas yang diklaimnya. Dalam speaker
verification, suara pengguna hanya dicocokkan dengan 1 template yang diklaim
ketika proses pemasukan (1:1). Speaker verification biasa digunakan dalam
aplikasi yang membutuhkan akses keamanan seperti aplikasi sekuritas yang
menggunakan input suara sebagai pengganti password dan PIN (Personal
Identification Number).
28
Dalam speaker verification dikenal dua jenis kesalahan yaitu false
rejection di mana pengguna yang mengklaim sebagai dirinya sendiri ditolak dan
false acceptance di mana peniru yang mengklaim sebagai pengguna lain
diterima.
Gambar 2.12 Bagan Sistem Speaker Identification
Sebuah sistem speaker identification bertujuan untuk mengidentifikasi
siapa yang sedang berbicara dari sekumpulan set suara yang telah dikenali dan
tidak terdapat klaim identitas dari pengguna. Dalam speaker identification, suara
pengguna dicocokkan dengan semua template yang ada (1:N). Ruang lingkup
speaker identification terbagi dua yaitu membedakan setiap speaker dalam
sebuah percakapan dan mengidentifikasi suara seseorang berdasarkan data yang
telah dimasukkan sebelumnya di mana suara orang tersebut termasuk di
dalamnya. Speaker identification dapat digunakan dalam investigasi polisi seperti
pencarian suara seorang tersangka pada database pelaku kriminal untuk
mengenali identitas tersangka.
29
2.3.2 Berdasarkan Metode
Menurut Olsson (2002, pp8-9), berdasarkan metodenya, speaker
recognition dibagi menjadi text-dependent dan text-independent.
Dalam text-dependent, kata yang digunakan dalam pelatihan dan evaluasi
harus sama. Dengan kata lain, sistem mengenali kata yang diucapkan oleh
pengguna ketika evaluasi. Text-dependent terbagi dalam 3 jenis kasus :
• Fixed phrase, di mana sistem yang menentukan frasa apa yang harus
diucapkan. Metode ini dapat menghasilkan tingkat akurasi yang tinggi,
namun tidak user friendly dan rentan terhadap peniru (impostor) karena frasa
yang diucapkan selalu sama.
• Text prompted, di mana pengguna diminta untuk mengucapkan frasa yang
ditampilkan oleh sistem. Dalam prinsipnya, frasa yang ditampilkan dapat
berupa apa saja. Hal ini menimbulkan kesulitan di mana sistem mengetahui
frasa apa yang akan diucapkan, tapi sistem juga harus mengenali bagaimana
bunyi frasa tersebut jika diucapkan oleh pengguna tertentu. Dalam
penerapannya, metode ini menggunakan angka di mana pengguna diminta
mengucapkan urutan angka yang diacak.
• Pass phrase, di mana pengguna bebas menentukan frasa yang hendak
digunakan, tapi frasa yang sama harus digunakan pada tahap pelatihan dan
evaluasi.
Dalam text-independent, kata yang digunakan dalam pelatihan dan
evaluasi tidak harus sama. Hal ini berarti sistem tidak mengenali kata yang
diucapkan oleh pengguna ketika evaluasi.
30
2.4 Ekstraksi Fitur
Tujuan dari ekstraksi fitur adalah untuk mengurangi jumlah data dengan
mempertahankan fitur atau properti tertentu yang membedakan pola input
(Kulkarni, 2001, p54). Keuntungan dari penggunaan tahap ekstraksi fitur adalah
mempermudah pemprosesan tingkat selanjutnya dengan mengkuantisasi energi
atau fitur yang biasanya jumlahnya lebih sedikit dibandingkan data aslinya.
Menurut Campbell (1997), fitur dari sebuah sistem pengenalan pola yang baik
harus bersifat alamiah, dapat diukur dengan mudah, tidak berubah dari waktu ke
waktu atau terpengaruh oleh kondisi kesehatan pengguna, tidak terpengaruh oleh
noise, dan tidak dapat ditiru oleh orang lain.
Beberapa metode yang dapat digunakan untuk ekstraksi fitur antara lain :
Fast Fourier Transform (FFT), Short Term Fourier Transform (STFT), dan
Transformasi Wavelet Diskrit (Discrete Wavelet Transform / DWT).
Tabel 2.6 Tabel Perbandingan FFT, STFT, dan DWT
FFT STFT DWT Jenis sinyal yang dapat
diproses dengan baik
stationary stationary dan non-stationary
stationary dan non-stationary
Transformasi Ke dalam domain frekuensi
Ke dalam domain frekuensi dan
waktu
Ke dalam frekuensi dan waktu dalam tingkat
resolusi yang berbeda
Resolusi yang dihasilkan
Frekuensi digambarkan dengan tepat
dalam domain frekuensi
Sama untuk keseluruhan
sinyal, tergantung fungsi window
yang digunakan
Bervariasi untuk keseluruhan sinyal,
frekuensi tinggi digambarkan lebih baik
dalam domain waktu dan frekuensi rendah
digambarkan lebih baik dalam domain frekuensi
31
Dari tabel 2.6 di atas, DWT memiliki kelebihan dibandingkan FFT dan
STFT. DWT tidak hanya dapat bekerja pada sinyal stationary, tetapi juga pada
sinyal non-stationary yang lebih sering ditemukan dalam sinyal suara. Selain itu
jika dibandingkan dengan STFT yang menghasilkan resolusi yang selalu sama
untuk keseluruhan sinyal, DWT menghasilkan resolusi yang beragam dalam satu
sinyal dengan frekuensi tinggi lebih baik dalam domain waktu dan frekuensi
rendah lebih baik dalam domain frekuensi. Hal ini memungkinkan proses analisa
sinyal yang lebih baik.
2.4.1 Fast Fourier Transform
Fast Fourier Transform (FFT) yang ditemukan tahun 1965 merupakan
pengembangan dari Fourier Transform (FT). Penemu FT adalah J. Fourier pada
tahun 1822. FT membagi sebuah sinyal menjadi frekuensi yang berbeda-beda
dalam fungsi eksponensial yang kompleks.
∫∞
∞−
−•= dtetxfX ftjπ2)()( .....................................................................(2.4)
Di mana t menyatakan waktu, f menyatakan frekuensi, X(t) menyatakan sinyal
dalam domain frekuensi, dan x(t) menyatakan sinyal dalam domain waktu.
Untuk pemprosesan sinyal diskrit, sebuah algoritma baru yang disebut
Discrete Fourier Transform (DFT) diciptakan. DFT memiliki rumus sebagai
berikut :
∑−
=
−=
1
0
2N
n
nkN
i
nk exXπ
...............................................................................(2.5)
32
Di mana N menyatakan jumlah sampel. Persamaan (2.5) memiliki kompleksitas
algoritma O(N2). FFT membagi sampel N menjadi dua buah N1 dan N2 secara
rekursif bersama perkalian dengan nk
Ni
eπ2
−. Hal ini membuat FFT hanya memiliki
kompleksitas O(N log N).
Dalam pemprosesan sinyal suara, FFT akan mengubah sinyal suara dalam
domain waktu menjadi domain frekuensi. FFT tidak dapat menampilkan
informasi waktu kapan frekuensi tersebut terjadi. Hal ini akan menimbulkan
masalah dalam kasus sinyal non-stationary yang memiliki frekuensi berbeda
dalam setiap waktu.
Gambar 2.13 (a) Sinyal Stationary dan (b) Sinyal Non-stationary.
(c) merupakan hasil FFT dari (a). (d) merupakan hasil FFT dari (b). Tampak
bahwa (c) dan (d) memiliki bentuk serupa.
33
2.4.2 Short Term Fourier Transform
Short Term Fourier Transform (STFT) mengasumsikan setiap bagian dari
sinyal non-stationary adalah sinyal stationary. Dengan demikian, STFT
menutupi kelemahan FFT yang tidak dapat bekerja dengan baik pada sinyal non-
stationary. Perbedaan STFT dan FFT adalah STFT membagi sinyal menjadi
bagian-bagian kecil di mana setiap bagian dari sinyal dapat dianggap sebagai
sinyal stationary. Untuk itu, STFT membutuhkan sebuah fungsi window w yang
lebarnya sama dengan bagian dari sinyal yang dapat dianggap sebagai sinyal
stationary.
[ ]∫ −•−•=t
tfjX dtetttxftSTFT πω ω 2*)( )'()(),( ..................................(2.6)
Karena STFT merupakan fungsi waktu dan frekuensi, transformasi yang
dihasilkan memiliki dua dimensi (atau tiga dimensi, jika amplitudo juga
dihitung).
(a)
34
(b)
Gambar 2.14 (a) Sinyal Non-stationary dan (b) Hasil STFT-nya
Meskipun dapat menampilkan informasi waktu dan frekuensi secara
bersamaan, STFT juga memiliki kelemahan. Kelemahan STFT terletak pada
fungsi window yang digunakan dan prinsip ketidakpastian Heisenberg yang
menyatakan bahwa momentum dan posisi dari sebuah partikel bergerak tidak
dapat diketahui secara bersamaan, yang dapat diketahui hanyalah rentang
frekuensi berapa yang muncul dalam interval waktu tertentu. (Heisenberg, 1927,
pp172-198). Semakin lebar window yang digunakan, semakin mirip STFT
dengan FFT yang menghasilkan resolusi frekuensi yang baik tetapi resolusi
waktu yang buruk. Semakin sempit window yang digunakan, hasil yang didapat
adalah resolusi waktu yang baik tetapi resolusi frekuensi yang buruk.
(a)
35
(b)
(c)
Gambar 2.15 (b) merupakan hasil STFT dari fungsi window 0,01 pada (a). (c)
merupakan hasil STFT dari fungsi window 0,00001 pada (a).
Dari gambar 2.15(b) terlihat bahwa untuk fungsi window yang sempit,
puncak-puncak yang terbentuk terpisah dengan jelas dalam domain waktu, tetapi
setiap puncaknya mencakup rentang frekuensi yang cukup besar. Sedangkan
pada gambar 2.15(c) terlihat bahwa untuk fungsi window yang lebar, puncak-
puncak yang terbentuk mencakup rentang waktu yang besar, tetapi setiap
puncaknya memiliki nilai frekuensi yang akurat.
2.4.3 Transformasi Wavelet
2.4.3.1 Transformasi Wavelet Kontinu
Wavelet adalah fungsi matematika yang memilah data menjadi berbagai
komponen frekuensi dan kemudian mempelajari tiap-tiap komponen dengan
resolusi yang sesuai dengan faktor skalanya (Graps, 1995). Dalam analisa
wavelet, fungsi window digeser sepanjang sinyal dan nilai spektrum dihitung
pada setiap posisi tersebut. Proses ini dilakukan berulang kali dengan fungsi
window yang sedikit lebih kecil atau lebih besar setiap siklusnya. Hasil akhirnya
adalah kumpulan representasi waktu-frekuensi dari sinyal, masing-masing
dengan resolusi yang berbeda. Dengan pendekatan skala fungsi window yang
36
berubah-ubah, pada frekuensi tinggi wavelet menghasilkan resolusi waktu yang
baik dan resolusi frekuensi yang buruk, sementara pada frekuensi rendah resolusi
waktu yang buruk dan resolusi frekuensi yang baik. Hal ini cocok untuk
diterapkan pada kebanyakan sinyal seperti pada gambar 2.16.
Gambar 2.16 Sinyal Dengan Frekuensi Tinggi Untuk Waktu Singkat
dan Frekuensi Rendah Untuk Waktu yang Lama.
Analisa wavelet yang dideskripsikan di atas disebut juga dengan
transformasi wavelet kontinu (Continuous Wavelet Transform / CWT) yang
ditulis dengan :
..........................................................(2.7)
sedangkan fungsi kebalikannya (inverse) adalah :
..................................................(2.8)
Tanda * merupakan operasi konvolusi. Persamaan (2.7) di atas menunjukkan
bagaimana fungsi sinyal input )(tf didekomposisikan ke dalam beberapa fungsi
basis yang disebut fungsi wavelet.
37
Fungsi wavelet dihasilkan melalui sebuah fungsi wavelet dasar )(tψ
yang disebut dengan fungsi wavelet induk (mother wavelet) dengan mengubah
faktor skala dan translasinya. Fungsi wavelet induk didefinisikan sebagai :
.....................................................................(2.9)
Pada persamaan (2.9) di atas, τ adalah faktor translasi dan faktor s1
adalah
untuk normalisasi energi pada skala berbeda-beda.
(a)
(b)
(c)
Gambar 2.17 (a) Sinyal Non-Stationary yang Dibentuk oleh Frekuensi 30 Hz,
20 Hz, 10 Hz, dan 5 Hz. (b) dan (c) merupakan hasil transformasi wavelet
kontinu dari sinyal (a) yang dilihat dari sudut yang berbeda.
Gambar 2.17 menunjukkan contoh transformasi wavelet kontinu. Sumbu
translation pada gambar (b) dan (c) dapat dianggap mewakili waktu, sedangkan
38
sumbu scale menyatakan kebalikan dari frekuensi. Scale rendah menandakan
frekuensi tinggi dan sebaliknya. Pada gambar 2.17(b), resolusi waktu (sumbu
translation) menunjukkan perbedaan yang jelas. Frekuensi tertinggi (30 Hz)
tampak pada nilai translation 0-30 dengan puncak yang sejajar, namun makin
rendah frekuensinya, puncak yang terbentuk makin beragam. Pada gambar
2.17(c), resolusi frekuensi (sumbu scale) menunjukkan perbedaan yang jelas.
Rentang frekuensi untuk frekuensi tertinggi (30 Hz) memang kecil dengan nilai
scale 0-25, namun tidak menunjukkan perbedaan dalam resolusi waktu.
Sementara rentang frekuensi untuk frekuensi terendah (5 Hz) memang besar
dengan nilai scale 0-150, namun menunjukkan perbedaan dalam resolusi waktu.
Hal ini sesuai dengan hasil wavelet yang memiliki resolusi waktu yang baik dan
resolusi frekuensi yang buruk untuk frekuensi tinggi dan resolusi waktu yang
buruk dan resolusi frekuensi yang baik untuk frekuensi rendah.
2.4.3.2 Transformasi Wavelet Diskrit
Transformasi wavelet kontinu bekerja dengan menggunakan input sinyal
analog yang tidak memiliki batasan nilai (infinite), sedangkan pengolahan data
oleh komputer harus menggunakan data diskrit yang memiliki batasan nilai
(finite). Agar transformasi wavelet dapat dikomputasi oleh komputer, maka
transformasi wavelet harus dibuat dalam bentuk diskritnya yaitu Transformasi
Wavelet Diskrit (Discrete Wavelet Transform / DWT).
Prisip dasar pada transformasi wavelet diskrit adalah sama dengan
transformasi wavelet kontinu. Komputasi pada transformasi wavelet kontinu
dilakukan dengan mengubah faktor skala window, menggeser window sepanjang
39
waktu, mengalikannya dengan sinyal input, dan mengintegralkannya terhadap
semua waktu. Dalam permasalahan diskrit, filter dari potongan frekuensi yang
berbeda-beda digunakan untuk menganalisis sinyal pada skala yang berbeda.
Sinyal input dilewatkan melalui sekelompok high-pass filter untuk menganalisa
frekuensi tinggi dan dilewatkan melalui sekolompok low-pass filter untuk
menganalisa frekuensi rendah (Polikar, 1996).
Trasformasi wavelet diskrit menganalisis sinyal pada rentang frekuensi
dan resolusi yang berbeda-beda dengan mendekomposisikan sinyal ke informasi
pendekatan secara kasar dan informasi detil. Transformasi wavelet diskrit
menggunakan dua set fungsi, yaitu fungsi skala dan fungsi wavelet, yang
berhubungan dengan low-pass filter dan high-pas filter. Secara matematik, satu
level dekomposisi dapat diekspresikan ke dalam bentuk :
.............................................................(2.10)
Dimana [ ]kyhigh dan [ ]kylow adalah output dari high-pass filter dan low-pass
filter setelah di-subsampling dengan faktor 2.
40
Gambar 2.18 Ilustrasi Algoritma Dekomposisi Wavelet
Pada gambar 2.18 di atas, g[n] adalah high-pass filter dan h[n] adalah low-pass
filter. Pada setiap level, proses filtering dan subsampling akan membagi dua
jumlah data atau sampel dan membagi dua batas rentang frekuensi.
Salah satu fungsi skala (mother wavelet) yang dapat digunakan untuk
menghasilkan koefisien low-pass filter dan high-pass filter adalah fungsi skala
dari Daubechies-2. Persamaan fungsi skala Daubechies-2 dapat ditulis dengan :
2431,
2433,
2433,
2431
4321 ⋅−
=⋅−
=⋅+
=⋅+
= HHHH .................(2.11)
Di mana Hn adalah koefisien low-pass filter, dengan 41 ≤≤ n .
High-pass filter dan low-pass filter tidak saling bebas antara satu dengan
yang lainnya. Kedua filter tersebut dihubungkan dengan :
............................................................(2.12)
Di mana g[n] adalah high-pass filter, h[n] adalah low-pass filter, dan L adalah
panjang filter (dalam jumlah titik).
41
2.4.3.3 Transformasi Wavelet Dalam Speaker Identification
Transformasi wavelet mampu mendekomposisi sinyal menjadi sinyal-
sinyal frekuensi tinggi dan sinyal-sinyal frekuensi rendah. Sinyal frekuensi
rendah identik dengan sinyal bebas noise dan mengandung informasi global yang
terdapat pada sinyal input yang menjadi karakteristik suara tersebut, sedangkan
sinyal frekuensi tinggi identik dengan noise dan informasi detil dari sinyal input.
Sinyal frekuensi rendah ini dapat dimanfaatkan untuk mengenali pola umum
pada sinyal input. Sinyal global hasil dekomposisi wavelet kemudian digunakan
sebagai pola umum yang membedakan satu suara dengan suara lainnya.
(a)
(b)
Gambar 2.19 (a) Transformasi Wavelet pada Sinyal Satu Dimensi dan
(B) pada Sinyal Suara
Dengan menggunakan transformasi wavelet, pola-pola dalam satu
kelas/subjek tidak memiliki hubungan dengan pola-pola dari kelas/subjek lainnya
(independen) sehingga rekompilasi database tidak perlu dilakukan setiap kali ada
42
subjek baru yang ditambahkan. Fitur yang nantinya disimpan di dalam database
adalah koefisien DWT hasil dekomposisi.
2.5 Jaringan Saraf Tiruan
2.5.1 Definisi Jaringan Saraf Tiruan
Jaringan saraf tiruan adalah suatu sistem pemprosesan informasi yang
memetakan vektor data input ke dalam vektor data output (Kulkarni, 2001,
p106). Menurut Forsyth (2003), jaringan saraf tiruan menghubungkan fungsi
vektor f dengan beberapa input x dengan menggunakan serangkaian layer.
Definisi lain dari jaringan saraf tiruan menurut Azcarraga (1999) adalah
sekumpulan data set yang besar dari interkoneksi unit sederhana yang dieksekusi
secara paralel untuk melakukan tugasnya.
2.5.2 Sejarah Jaringan Saraf Tiruan
Jaringan saraf tiruan memiliki sejarah yang cukup unik dalam
perkembangan teknologi. Jaringan saraf tiruan sempat populer selama beberapa
saat, selama dua puluh tahun berikutnya mengalami stagnasi, dan baru pada
akhir-akhir ini menjadi populer kembali.
Secara kronologis, perkembangan jaringan saraf tiruan dapat dijabarkan
sebagai berikut (Fausett, 1994):
• 1943, seorang neurophysiologist Warren McCulloch dan seorang ahli
matematika Walter Pitts menulis makalah mengenai cara kerja sel saraf
(neuron). Untuk menggambarkannya, mereka memodelkan sebuah jaringan
saraf tiruan sederhana yang menggunakan sirkuit elektrik.
43
• 1949, Donald Hebb menulis The Organization of Behavior – sebuah karya
yang menunjukkan kenyataan bahwa otak manusia belajar berdasarkan
pengalaman.
• 1950-an, komputer semakin berkembang sehingga memungkinkan untuk
mensimulasikan jaringan saraf tiruan seperti yang telah dicetuskan
sebelumnya. Usaha pertama untuk mensimulasikan jaringan saraf tiruan ini
dilakukan oleh Nathanial Rochester dari laboratorium penelitian IBM, namun
sayangnya usaha ini gagal.
• 1959, Bernard Widrow dan Marcian Hoff dari Stanford mengembangkan
model yang disebut ADALINE (Adaptive Linear Neuron) dan MADALINE
(Many Adaptive Linear Neurons).
• 1962, Frank Rosenblatt menciptakan perceptron pertama dan
mengkombinasikan penggunaannya dengan ADALINE.
• 1963 ke atas, perkembangan jaringan saraf tiruan mengalami stagnasi,
terutama setelah berkembangnya arsitektur Von Neumann dalam dunia
komputer yang menarik semua perhatian ke mesin baru tersebut, sehingga
penelitian mengenai jaringan saraf tiruan dihentikan.
• 1972, dua peneliti yaitu Kohonen dan Anderson mengembangkan jaringan
independen yang serupa walaupun dasar pengembangannya berbeda. Namun
terdapat kesamaan dari model-model ini yakni keduanya menggunakan
matriks matematika untuk menggambarkan proses kerja sel saraf tiruan.
• 1975, terinspirasi oleh kemampuan otak untuk mengorganisasikan dirinya
sendiri, Kunihiko Fukushima dari Jepang memperkenalkan jaringan
44
cognitron sebagai pengembangan dari konsep perceptron. Cognitron yang
merupakan jaringan multilayer pertama yang mampu mempelajari pola-pola
baru tanpa harus diajari terlebih dahulu. Kelebihan cognitron dari perceptron
adalah kemampuannya untuk menangani masalah sumber dari suatu pola
yang umumnya juga terdapat di pola lain yang sejenis, serta kemampuannya
untuk membedakan pola analog dengan pola biner yang biasa diterima oleh
lapisan pertama dari jaringan saraf tiruan.
• 1982, ketertarikan di bidang jaringan saraf tiruan mulai bangkit kembali
seiring dengan dipresentasikannya tulisan John Hopfield kepada National
Academy of Sciences. Dalam tulisan ini, John Hopfield menggunakan
pendekatan dua arah (bidirectional lines) dalam hubungan antar sel saraf
tiruan untuk menciptakan mesin baru yang lebih efisien daripada mesin
sebelumnya yang hanya menggunakan hubungan satu arah dalam komunikasi
antarsel saraf tiruan.
• 1982, Doug Reilly dan Leon Cooper mengembangkan sebuah jaringan dua
layer di mana setiap layer menggunakan strategi yang berbeda untuk
mencapai hasil yang diinginkan. Layer pertama bertanggung jawab atas
proses generalisasi, sedangkan layer kedua bertanggung jawab atas proses
spesifikasi. Jaringan ini disebut jaringan hybrid dan merupakan jaringan
gabungan pertama yang dibuat.
• 1986, tiga orang peneliti independen Rumelhart, Hinton, dan Wiliams
memiliki ide yang sama untuk menerapkan konsep jaringan saraf tiruan lapis
banyak (multiple layer neural networks) yang saat itu sedang hangat
45
dibicarakan. Idenya adalah mengembangkan jaringan back-propagation
untuk mendistribusikan kesalahan (error) yang didapat dari pengenalan pola
ke seluruh jaringan. Jaringan back-propagation menggunakan banyak layer
dan akibatnya menjadi lambat dalam pembelajaran karena banyaknya iterasi
yang harus dilakukan dalam proses tersebut.
• 1987, berkembang generasi pertama pengenalan keseragaman pola untuk
proses unsupervised learning. Proses pengenalan dilakukan dengan
menerapkan ART (Adaptive Resonance Theory) pada jaringan saraf tiruan.
• 1990, dibuat sebuah jaringan saraf tiruan multivalued logic yang merupakan
jaringan adaptif sederhana yang merepresentasikan susunan otak. Penelitian
mengenai jaringan saraf tiruan multivalued logic masih terus dikembangkan
sampai sekarang.
2.5.3 Komponen Jaringan Saraf Tiruan
Jaringan saraf tiruan disusun oleh node-node atau unit (neuron) yang
terhubung dengan sambungan langsung. Sebuah sambungan dari unit j ke unit i
membantu untuk mempropagasikan aktivasi aj dari j ke i. Setiap sambungan juga
memiliki nilai numerik weight Wj,i yang menentukan kekuatan dan tanda (sign)
dari hubungan tersebut (Russell, 2003, p737).
Mula-mula, setiap unit i dikomputasikan sebagai akumulasi weight dari
inputnya. Proses ini dapat ditulis dengan :
∑=
=n
jjiji aWin
0, .....………………………………………………...(2.13)
46
Kemudian sebuah fungsi aktivasi digunakan pada nilai akumulasi
tersebut untuk menghasilkan output :
⎟⎟⎠
⎞⎜⎜⎝
⎛== ∑
=
n
jjijii aWginga
0, )( ………………………………………(2.14)
Gambar 2.20 Model Neuron
2.5.4 Fungsi Aktivasi
Fungsi aktivasi didisain guna memenuhi dua kondisi data. Sebuah unit
menjadi aktif (mendekati +1) jika input yang benar diberikan, dan tidak aktif
(mendekati 0) jika input yang salah diberikan (Russel, 2003, p737). Beberapa
fungsi aktivasi yang dapat digunakan antara lain :
• Fungsi identitas (identity function)
Fungsi identitas disebut juga sebagai fungsi linear. Fungsi ini membatasi
output yang dihasilkannya pada rentang 0 hingga 1 atau -1 hingga +1.
Fungsi identitas didefinisikan sebagai :
xxxF ∀=)( ..........................................................................(2.15)
Gambar 2.21 Fungsi Identitas
47
• Fungsi tangga (step function)
Pada fungsi ini, output yang dihasilkan adalah biner (hanya dua
kemungkinan) dan nilaiya dapat berupa 0 dan 1, atau -1 dan +1.
F(x) = 1 jika x > 0
F(x) = 0 jika x ≤ 0 .................................................................(2.16)
Gambar 2.22 Fungsi Tangga
• Fungsi sigmoid (sigmoid function)
Fungsi sigmoid atau disebut juga fungsi logistik direpresentasikan dengan :
xexF −+=
11)( .....................................................................(2.17)
Turunan dari fungsi F(x) di atas adalah :
))(1)(()( xFxFxxF
−=∂
∂ ......................................................(2.18)
Fungsi sigmoid sering digunakan karena fungsi ini menghasilkan output yang
halus dan mudah diturunkan. Fungsi ini digunakan jika output yang
diinginkan berada pada rentang 0 dan 1.
Gambar 2.23 Fungsi Sigmoid
48
• Fungsi hypertangent (hypertangent function)
Fungsi hypertangent hampir serupa dengan fungsi sigmoid. Fungsi ini
didefinisikan sebagai :
xx
xx
eeeexF −
−
+−
=)( ...................................................................(2.19)
Turunan dari fungsi F(x) pada persamaan di atas adalah :
))(1))((1()( xFxFxxF
−+=∂
∂ ..............................................(2.20)
Fungsi ini digunakan jika rentang output yang diinginkan berada pada
jangkauan -1 dan +1.
Gambar 2.24 Fungsi Hypertangent
Sebuah fungsi aktivasi yang baik untuk jaringan saraf tiruan harus
memiliki ciri-ciri sebagai berikut : kontinu, dapat dibedakan, dan tidak menurun
secara monoton. Untuk efisiensi perhitungan, turunan dari fungsi ini harus dapat
dikomputasi dengan mudah (Fausett, 1994, p292).
2.5.5 Arsitektur Jaringan Saraf Tiruan
Secara umum, terdapat dua jenis arsitektur jaringan saraf tiruan dilihat
dari banyaknya lapisan dan weight yang digunakan yaitu :
49
• Jaringan saraf tiruan lapis tunggal (single layer neural network)
Jaringan saraf tiruan lapis tunggal hanya memiliki satu lapis weight antar
koneksi sehingga semua input terkoneksi secara langsung dengan output-nya.
Arsitektur jaringan seperti ini disebut juga dengan perceptron network.
w11
X1
Ym
Yj
Y1
Xn
Xi
w1j
wi1
wn1
wnm
wimw1m
wnj
wij
InputLayer
OutputLayer
One Layerof Weights
Gambar 2.25 Jaringan Saraf Tiruan Lapis Tunggal
• Jaringan saraf tiruan lapis banyak (multiple layer neural network)
Jaringan saraf tiruan lapis banyak adalah sebuah jaringan dengan satu atau
lebih lapisan di antara unit masukan (input layer) dan unit keluaran (output
layer). Lapisan yang terdapat di antara unit masukan dan unit keluaran
disebut dengan hidden layer. Keuntungan dari penambahan hidden layer
adalah semakin besarnya lingkup hipotesa yang dapat direpresentasikan oleh
jaringan tersebut (Russell, 2003, p748).
X1
Ym
Yk
Y1
Xn
Xi
InputLayer
OutputLayer
Zp
Zj
Z1v11
wpm
wjm
w1mv1p
wpk
wjk
w1k
wp1
w11
wj1
vnj
vij
v1j
vn1
vi1
vip
vnp
HiddenUnits
Gambar 2.26 Jaringan Saraf Tiruan Lapis Banyak
50
2.5.6 Metode Pembelajaran
Tujuan dari pelatihan jaringan saraf tiruan adalah mencapai titik
seimbang antara kemampuan untuk merespon pola input yang digunakan dalam
pelatihan dengan tepat (kemampuan mengingat) dan kemampuan untuk
merespon pola input yang mirip dengan yang digunakan dalam pelatihan secara
baik (kemampuan menggeneralisasi) (Fausett, 1994, p289).
Di samping arsitektur jaringan, metode untuk menentukan weight juga
merupakan karakteristik yang penting yang membedakan jaringan saraf tiruan.
Jaringan saraf tiruan dapat dikelompokkan ke dalam dua jenis berdasarkan
metode pembelajarannya, yaitu :
• Supervised learning
Pada metode supervised learning, sejumlah data pelatihan tersedia untuk
setiap kelas dan digunakan pada proses pelatihan. Proses pembelajaran
dilakukan dengan penyesuaian nilai weight terhadap vektor input yang
diasosiasikan dengan vektor output. Contoh dari kategori ini antara lain :
perceptron back-propagation, Hamming network, dan Hopfield nets. Dalam
supervised learning, terdapat dua buah metode untuk meng-update weight,
sequential dan batch (Haykin, 1999, p172). Dalam metode sequential (atau
mode on-line atau mode stochastic), update weight dilakukan setiap sebuah
pola dimasukkan, sementara dalam metode batch, update weight dilakukan
setelah semua pola dimasukkan.
51
• Unsupervised learning
Pada metode unsupervised learning, data pelatihan tidak tersedia, sehingga
metode ini berhubungan dengan proses pembelajaran sendiri (self learning).
Pada metode ini terdapat serangkaian vektor input, tetapi tidak ada target
vektor yang diasosiasikan. Jaringan memodifikasi nilai weight sehingga nilai
input yang serupa diasosiasikan dengan unit output yang sama. Contoh dari
kategori ini antara lain : Adaptive Resonance Theory (ART), competitive
learning, dan Kohonen’s Self Organizing Maps (SOM).
2.5.7 Back-Propagation
Back-propagation merupakan suatu teknik untuk meminimalisasi gradien
pada dimensi weight dalam jaringan saraf tiruan lapis banyak (Haykin, 1999,
p202). Kelebihan back-propagation menurut Haykin (1999, pp156-157) adalah
merupakan metode yang paling populer untuk supervised learning, memiliki
perhitungan yang sederhana, dan sudah terbukti dapat memecahkan masalah sulit
dengan pelatihan. Sementara itu, Rumelhart dan McClelland (1989)
menyebutkan kekurangan back-propagation yakni bentuk terdistribusi yang non-
linear dan konektivitasnya yang tinggi yang membuat analisa secara teori sulit
untuk dilakukan, penggunaan hidden layer yang mempersulit visualisasi, dan
membutuhkan pencarian yang besar karena proses pembelajaran harus dapat
menentukan fitur dari input yang direpresentasikan di hidden layer.
Algoritma pembelajaran back-propagation secara umum adalah sebagai
berikut :
52
• Langkah 1 : Inisialisasi nilai weight.
Pada langkah ini, nilai weight pada tiap-tiap layer diinisialisasikan ke dalam
sembarang nilai yang kecil.
• Langkah 2 : Hitung nilai output pada output layer.
Untuk mendapatkan nilai output layer, kalkulasi dilakukan dari layer ke
layer. Tahap ini disebut juga dengan tahap komputasi forward. Input untuk
jaringan pada setiap layer selanjutnya dihitung dengan :
∑=
=n
jjiji wxnet
1 .....................................................................(2.21)
Komponen vektor output dihitung dengan :
)( ii netgo = ..........................................................................(2.22)
Di mana g(neti) merupakan fungsi aktivasi.
• Langkah 3 : Hitung perubahan pada weight.
Untuk menghitung perubahan weight, vektor output pada tiap-tiap layer
dibandingkan dengan nilai output yang diharapkan atau vektor target. Tahap
ini disebut juga dengan tahap komputasi backward. Perhitungan perubahan
weight dilakukan dengan persamaan :
jiij oW . . δα=Δ ...................................................................(2.23)
Di mana pada output layer :
)1( . . )( iiiii oood −−=δ .....................................................(2.24)
Dan pada hidden layer :
∑=
−=m
kikkiiHi Woo
1 . )1( . δδ ..................................................(2.25)
53
• Langkah 4 : Update nilai weight.
Proses update weight dilakukan dengan persamaan :
ijijij wkwkw Δ+=+ )()1( ......................................................(2.26)
Di mana wij(k+1) merepresentasikan nilai dari weight pada iterasi ke-(n+1)
dan wij(k) merepresentasikan nilai dari weight pada iterasi ke-k.
• Langkah 5 : Hitung tingkat error.
i
N
ii do
NE −= ∑
=1
1 ..................................................................(2.27)
Jika E lebih besar dari nilai εmin tertentu, ulangi langkah 2-4. Jika tidak,
proses pelatihan dihentikan.