TA : Identifikasi Suara Manusia Berdasarkan Jenis Kelamin Menggunakan Ekstraksi Ciri Short Time Fourier Transform.
FAKULTAS TEKNOLOGI DAN INFORMATIKA
INSTITUT BISNIS DAN INFORMATIKA STIKOM SURABAYA 2016
IDENTIFIKASI SUARA MANUSIA BERDASARKAN JENIS KELAMIN MENGGUNAKAN EKSTRAKSI CIRI SHORT TIME
FOURIER TRANSFORM
TUGAS AKHIR
Program Studi S1 Sistem Komputer
Oleh:
JOSEPH MASARANI TANDIALLO 11.41020.0005
(2)
ix
HALAMAN JUDUL ... i
HALAMAN SYARAT ... ii
HALAMAN PERSEMBAHAN ... iii
HALAMAN PENGESAHAN ... iv
HALAMAN PERNYATAAN ... v
ABSTRAK ... vi
KATA PENGANTAR ... vii
DAFTAR ISI ... ix
DAFTAR GAMBAR ... xi
DAFTAR TABEL ...xiv
BAB I PENDAHULUAN ... 1
1.1. Latar Belakang Masalah ... 1
1.2. Rumusan Masalah ... 3
1.3. Batasan Masalah ... 4
1.4. Tujuan ... 4
1.5. Sistematika Penulisan ... 5
BAB II LANDASAN TEORI ... 7
2.1. Suara Manusia ... 7
2.2. Tipe Suara Manusia... 8
2.3. Short Time Fourier Transform (STFT) ... 9
2.4. Jaringan Saraf Tiruan Backpropagation ... 12
(3)
x
2.4.2. Arsitektur Model Backpropagation ... 12
BAB III METODE PENELITIAN... 22
3.1 Model Penelitian ... 22
3.1.1. Suara manusia ... 22
3.1.2. Perekaman Suara ... 23
3.1.3. Hasil Rekaman ... 24
3.1.4. Ekstraksi Ciri ... 27
3.1.5. Pengujian ... 32
BAB IV HASIL DAN PEMBAHASAN ... 39
4.1. Pengujian Perangkat Lunak ... 39
4.2. Proses Edit File Rekaman... 39
4.3. Ekstraksi Ciri Short Time Fourier Transform ... 46
4.4. Pelatihan dan pengujian backpropagation ... 78
BAB V PENUTUP ... 89
5.1. Kesimpulan ... 89
5.2. Saran ... 89
DAFTAR PUSTAKA ... 90
(4)
1
PENDAHULUAN
1.1.LATAR BELAKANG MASALAH
Suara adalah suatu alat komunikasi paling utama yang dimiliki oleh manusia. Dengan suara, manusia dapat berkomunikasi dengan manusia lainnya. Melalui suara, manusia juga dapat melakukan banyak hal, diantaranya bernyanyi, menangis, berteriak, tertawa, atau mengekspresikan emosi lainnya. Suara manusia pun dapat berkembang atau berubah seiring pertumbuhan usia. Karena suara manusia satu dengan manusia lainnya berbeda-beda intonasi dan nadanya, maka melalui suara dapat diketahui usia maupun jenis kelamin seseorang.
Saat ini pengembangan teknologi yang begitu pesat memungkinkan suatu perangkat atau alat untuk dapat mengenali suara manusia. Pengenalan suara dalam istilah bahasa Inggrisnya, Automatic Speech Recognition (ASR) adalah suatu pengembangan teknik dan sistem yang memungkinkan komputer untuk menerima masukan berupa kata yang diucapkan (Kawengian, 2013).
Pada penelitan yang dilakukan oleh Safriadi dkk pada 2013 telah melakukan pengujian mengenai identifikasi suara manusia berdasarkan jenis kelamin dengan menggunakan metode Discrete Fourier Transform (DFT). Sinyal suara yang diperoleh dari hasil perekaman suara diolah dengan algoritma DFT. Setelah itu sinyal suara dari hasil rekaman tersebut akan diekstraksi ciri-cirinya menggunakan metode DFT, dan kemudian hasil dari ekstraksi ciri sinyal tersebut akan dianalisa untuk dicari jenis kelamin dari suara tersebut. Adapun proses
(5)
2
pelatihan yang terjadi pada tahap ini yaitu suara di input terlebih dahulu yang kemudian di transformasikan frekuensi ke dalam sinyal digital menggunakan
Discreate Fourier Transform (DFT) dengan tujuan untuk mendapatkan nilai
energi setiap gender. Sedangkan pada proses pengujian, suara di input terlebih dahulu kemudian ditransformasikan frekuesi ke sinyal digital menggunakan
Discreate Fourier Transform (DFT) kemudian mencocokkan nilai energi yang
sudah tersimpan terlebih dahulu didalam sistem. Tingkat keberhasilan program ini berdasarkan dari 10 sampel (5 laki-laki dan 5 perempuan) yang telah di uji coba mencapai 70% atau 7 sampel yang berhasil diidentifikasi dan 30% atau 3 sampel yang tidak berhasil diidentifikasi.
Pada penelitian lain, Kawengian dkk (2013) telah melakukan pengujian pengenalan suara sistem voice recognition pada Rancang Bangun Alat Pengendali Elektronik Universal yang menggunakan metode Fast Fourier Transform (FFT) dengan keakurasian nilai mencapai 75%. Sistem ini hanya dapat dikendalikan oleh satu orang, sehingga dalam pengujian terhadap orang lain sinyal tidak dapat terdeteksi karena setiap suara manusia memiliki karakteristik suara yang berbeda-beda.
Berdasarkan beberapa permasalahan di atas dan penelitian yang telah dilakukan sebelumnya, maka penyusun mencoba untuk menganalisa perbedaan karakteristik dari suara laki-laki dan perempuan dengan mengekstraksi ciri-ciri dari suara manusia menggunkanan metode Short Time Fourier Transform (STFT) yang merupakan pengembangan dari kedua metode diatas (DFT dan FFT). STFT adalah metode yang digunakan untuk menganalisa frekuensi sinyal dan mensegmentasikan sinyal setiap waktu, dimana algoritma STFT akan mencuplik
(6)
sinyal masukan dalam rentang waktu dan frekuensi dengan menggunakan fungsi window. STFT sendiri sudah pernah digunakan untuk penelitian Estimasi Sinyal Gamelan Menggunakan Kalman Filter untuk transkripsi oleh Tulus Hayadi, dkk (2013) dan juga Karakterisasi Aroma Kopi Menggunakan Short Time Fourier
Transform oleh Roza Susanti, dkk (2012).
Setelah melakukan ekstraksi ciri suara manusia, maka hasil dari ekstraksi ciri tersebut akan digunakan untuk mengidentifikasi jenis kelamin dari suara tersebut menggunakan jaringan saraf tiruan backpropagation. Backpropagation menurut F.Suhandi (2009) merupakan sebuah metode sistematik pada jaringan saraf tiruan dengan menggunakan algoritma pembelajaran yang terawasi dan biasanya digunakan oleh metode jaringan saraf tiruan dengan banyak layar lapisan untuk mengubah bobot-bobot yang ada pada lapisan tersembunyinya. Backpropagation adalah pelatihan jenis terkontrol dimana menggunakan pola penyesuaian bobot untuk mencapai nilai kesalahan yang minimum antara keluaran hasil prediksi dengan keluaran yang nyata.
Harapannya dengan mengekstraksi ciri menggunakan STFT dan kemudian menggunakan hasil ekstraksi ciri tersebut pada backpropagation, maka dapat diidentifikasi perbedaan karakteristik antara suara laki-laki dan perempuan dengan tingkat keberhasilan yang lebih baik dari penelitian sebelumnya. Nantinya hasil dari penelitian ini juga dapat digunakan untuk penelitian-penelitian voice
recognition selanjutnya.
1.2.RUMUSAN MASALAH
(7)
4
1. Bagaimana mengubah data suara menjadi sinyal dan melakukan ekstraksi ciri yang ada pada sinyal suara laki-laki dan perempuan dengan menggunakan metode STFT?
2. Bagaimana mengidentifikasi hasil ekstraksi ciri STFT pada sinyal suara laki-laki dan perempuan menggunakan jaringan saraf tiruan backpropagation? 1.3.BATASAN MASALAH
Untuk menghindari pembahasan yang lebih luas terkait dengan analisa suara berdasarkan jenis kelamin, terdapat beberapa batasan masalah antara lain:
1. Suara yang dianalisa adalah suara normal (tidak serak).
2. Sampel suara yang digunakan adalah suara manusia berusia 17-30 tahun. 3. Suara yang dianalisa adalah saat pengucapan huruf vokal (a, i, u, e, o). 4. Huruf vokal diucapkan dengan nada dasar suara masing-masing. 5. Data yang digunakan adalah file suara berformat (.wav).
6. Perekaman suara dilakukan di ruangan dalam keadaan sepi. 7. Rekaman suara berdurasi maksimal 3 detik.
8. File suara diubah / dipotong secara manual sebelum dianalisa untuk menghilangkan perekaman kosong atau perekaman tanpa suara.
9. Intonasi dan volume suara pada saat perekaman tidak boleh berubah-ubah / harus seragam.
1.4.TUJUAN
Berdasarkan rumusan masalah yang diuraikan diatas, maka tujuan penelitian ini adalah sebagai berikut :
1. Mengubah data suara menjadi sinyal suara dan mengekstraksi ciri yang ada pada sinyal suara laki-laki dan perempuan dengan menggunakan metode STFT.
(8)
2. Mengidentifikasi hasil ekstraksi ciri STFT pada sinyal suara laki-laki dan perempuan menggunakan Jaringan Saraf Tiruan Backpropagation.
1.5.SISTEMATIKA PENULISAN
Penulisan penelitian ini ditulis dengan sistematika penulisan sebagai berikut: BAB I : PENDAHULUAN
Berisi Latar Belakang Masalah, Perumusan Masalah, Batasan Masalah, Tujuan, serta Sistematika Penulisan.
BAB II : LANDASAN TEORI
Pada bab ini dibahas teori yang behubungan dengan teori penunjang, dimana dalam teori penunjang ini meliputi suara manusia, tipe suara manusia, short time fourier transform, dan jaringan saraf tiruan backpropagation.
BAB III : METODE PENELITIAN
Pada bab ini akan dibahas mengenai tahap-tahap yang dilakukan pada penelitian ini, yaitu suara manusia yang akan digunakan, cara mengambil atau merekam sinyal suara manusia, cara mengubah sinyal suara tersebut untuk menghilangkan suara yang tidak ikut terekam, cara melakukan ekstraksi ciri menggunakan metode STFT, dan cara melakukan identifikasi suara manusia berdasarkan jenis kelamin hasil ekstraksi ciri STFT menggunakan metode backpropagation.
BAB IV : HASIL DAN PEMBAHASAN
Bab ini akan memaparkan mengenai hasil dan proses perhitungan dari analisa suara manusia berdasarkan ekstraksi ciri dari short
(9)
6
time fourier transform. Kemudian hasil dan proses pengujian
menggunakan jaringan saraf tiruan untuk mengidentifikasi dan mengklasifikasikan suara sehingga dapat diketahui perbedaan antara suara laki-laki dan perempuan.
BAB V : PENUTUP
Berisi kesimpulan serta saran sehubungan dengan adanya kemungkinan pengembangan sistem pada masa yang akan datang.
(10)
7
LANDASAN TEORI
2.1.Suara Manusia
Menurut Inung Wijayanto (2013), produksi suara manusia memerlukan tiga elemen, yaitu sumber daya, sumber suara dan pemodifikasi suara. Ini adalah dasar dari teori source-filter pada produksi sinyal bicara. Sumber daya pada sinyal suara normal dihasilkan dari gerakan kompresi otot paru-paru. Sumber suara, selama sinyal voiced dan unvoiced, merupakan hasil dari getaran masing-masing pita suara. Pemodifikasi suara adalah artikulator, yang merubah bentuk vocal tract sehingga karakteristik frekuensi rongga akustik melewati apa yang dilalui suara.
Tiga kontrol utama pada produksi suara adalah paru-paru (sumber daya), posisi pita suara (sumber suara), dan bentuk vocal tract (pemodifikasi suara).
Vocal tract terdiri dari pharynx (koneksi antara esophagus dengan mulut) dan
mulut. Nasal tract mulai dari bagian belakang langit-langit dan berakhir pada
(11)
8
Sumber: (Wijayanto, 2013) Gambar 2.1. Diagram Blok Produksi Suara Manusia
Gambar 2.1. memperlihatkan model sistem produksi ucapan manusia yang disederhanakan. Pembentukan ucapan dimulai dengan adanya hembusan udara yang dihasilkan oleh paru-paru. Cara kerjanya serupa seperti piston atau pompa yang ditekan untuk menghasilkan tekanan udara. Pada saat vocal cords berada dalam keadaan tegang, aliran udara akan menyebabkan terjadinya vibrasi pada
vocal cords dan menghasilkan bunyi ucapan yang disebut voiced sound. Pada saat vocal cord berada dalam keadaan lemas, aliran udara akan melalui daerah yang
sempit pada vocal tract dan menyebabkan terjadinya turbulensi, sehingga menghasilkan suara yang dikenal dengan unvoiced sound (Inung Wijayanto dkk, 2013).
2.2.Tipe Suara Manusia
Tipe suara menurut Wijayanto (2013) adalah berbagai jenis suara yang diklasifikasikan menggunakan kriteria tertentu. Klasifikasi suara adalah proses dimana suara manusia dinilai, kemudian akan digolongkan menjadi tipe-tipe suara
(12)
tertentu. Ada banyak perbedaan tipe suara berdasarkan berbagai macam sistem klasifikasi. Tabel 2.1. menjelaskan tentang jangkauan vokal sesuai dengan tipe suara dan representasinya dalam frekuensi berdasarkan scientific pitch notation:
Tabel 2.1. Jangkauan Frekuensi Tiap Tipe Suara.
Gender Tipe Suara Range
Vokal
Frekuensi Range Vokal (Hz)
Frequensi Fundamental
(Hz)
Pria
Tenor C3 –C5 130.813 - 523.251 16.35 Bariton F2 – F4 87.3071 - 349.228 21.80 Bass E2– E4 82.4069 - 329.628 20.60
Wanita
Soprano C4–A5 261.626 - 1046.50 16.35 Mezzo-Soprano A3–A5 220.000 - 880.000 27.50 Alto F3 – F5 174.614 - 698.456 21.80 Sumber: (Wijayanto, 2013). Tabel 2.1. menunjukkan jangkauan frekuensi tiap tipe suara manusia menurut Wijayanto (2013). Suara pria terdiri dari tipe Tenor, Bariton, dan Bass, sedangkan pada wanita terdiri dari Soprano, Mezzo-Soprano, dan Alto. Adapun range vokal antara suara pria dan wanita berbeda satu oktaf, sehingga wanita dapat menjangkau suara yang tinggi.
Frekuensi fundamental yang terdapat pada tabel 2.1. adalah frekuensi dasar manusia, sedangkan frekuensi range vokal adalah frekuensi saat manusia berbicara.
2.3.Short Time Fourier Transform (STFT)
Menurut Tulus Hayadi (2013), STFT (Short Time Fourier Transform) merupakan metode transformasi yang mengembangkan metode Fourier
Transform dengan kelebihan pada kemampuan untuk mentransformasi non-stationary signal. Adapun ide dibalik metode ini adalah membuat non-non-stationary
(13)
10
signal menjadi suatu representasi stationary sinyal dengan memasukkan suatu window function. Dalam hal ini, sinyal yang ada dibagi menjadi beberapa segmen
dimana segmen yang didapatkan, diasumsikan terdiri dari stationary signal. Adapun rumus yang digunakan dapat dilihat pada persamaan:
(2.1)
Keterangan:
x[ = sinyal masukan selama n waktu = waktu (sekon).
w [ ] = fungsi windows
� = kecepatan sudut (2πƒ) = panjang windows
Perlu diperhatikan di sini bahwa x[n] adalah sinyal dengan domain waktu dan STFT{x[n]} adalah sinyal dengan domain frekuensi dan waktu. Karena itu, berbeda dengan Fourier Transform, STFT merupakan metode transformasi menghasilkan Time-Frequency Representation (TFR) dari sinyal. Di sini, w[n] adalah window function yang dapat mengambil bentuk distribusi normal dengan rumus berikut ini:
(2.2)
Dimana a adalah parameter untuk modulasi. Untuk menggambar spectrogram nya digunakan rumus
(14)
(2.3)
Pada rumus 2.3., τ menunjukkan range dalam waktu ω adalah range dalam
frekuensi. Sehingga spektrogram adalah sebuah grafik yang merepresentasikan sinyal ke dalam domain waktu dan frekuensi. Permasalahan yang muncul di sini adalah bahwa STFT menggunakan kernel window pada suatu interval waktu tertentu. Berbeda dengan Fourier Transform yang menggunakan kernel
sepanjang waktu, sehingga tidak ada permasalahan dalam hal resolusi frekuensi. Kalau STFT memilih window dengan lebar infinity, maka metode ini tidak akan ada bedanya dengan Fourier Transform. Dari ulasan yang singkat ini dapat diambil kesimpulan seperti pada gambar 2.2.:
• Window sempit: mempunyai resolusi waktu yang bagus, tetapi resolusi
frekuensi yang tidak bagus
• Window lebar: mempunyai resolusi frekuensi yang bagus, tetapi resolusi
waktu yang tidak bagus
Sumber: (Hayadi, 2013) Gambar 2.2. Window sempit (kiri) dan Window lebar (kanan)
(15)
12
2.4.Jaringan Saraf Tiruan Backpropagation 2.4.1.Pengertian
Perambatan galat mundur (Backpropagation) menurut Kiki (2004) adalah sebuah metode sistematik untuk pelatihan multilayer jaringan saraf tiruan. Metode ini memiliki dasar matematis yang kuat, obyektif dan algoritma ini mendapatkan bentuk persamaan dan nilai koefisien dalam formula dengan meminimalkan jumlah kuadrat galat error melalui model yang dikembangkan (training set).
1. Dimulai dengan lapisan masukan, hitung keluaran dari setiap elemen pemroses melalui lapisan luar.
2. Hitung kesalahan pada lapisan luar yang merupakan selisih antara data aktual dan target.
3. Transformasikan kesalahan tersebut pada kesalahan yang sesuai di sisi masukan elemen pemroses.
4. Propagasi balik kesalahan-kesalahan ini pada keluaran setiap elemen pemroses ke kesalahan yang terdapat pada masukan. Ulangi proses ini sampai masukan tercapai.
5. Ubah seluruh bobot dengan menggunakan kesalahan pada sisi masukan elemen dan luaran elemen pemroses yang terhubung.
2.4.2.Arsitektur Model Backpropagation Fungsi Aktivasi menurut Jong J.S:
Syarat fungsi aktivasi yang dapat dipakai adalah kontinu, terdeferensial dengan mudah dan merupakan fungsi yang tidak turun
(16)
- sigmoid biner yang memiliki range (0,1)
Grafik fungsinya:
f(x) = 1/(1 + e-x) dengan turunan f’(x) = f(x)(1 – f(x)) ....(2.4)
Sumber: (Jong, 2005) Gambar 2.3. Grafik fungsi aktivasi sigmoid biner
- Fungsi sigmoid bipolar dengan range (1, -1) Grafik fungsinya:
f(x) = 2/(1 + e-x)-1 , f’(x) = (1+f(x))(1-f(x))/2 ...(2.5)
Sumber: (Jong, 2005) Gambar 2.4. Grafik fungsi aktivasi sigmoid bipolar
Adapun pelatihan standar backpropagation menurut Jong, J.S. yang terdapat pada gambar 2.5. adalah:
- Meliputi 3 fase, maju, mundur, dan modifikasi bobot
- Fase I Propagasi maju, sinyal masukan(xi) dikalikan dengan bobot garis(w),
kemudian dipropagasikan ke hidden layer menggunakan fungsi aktivasi(f(x)) yang ditentukan. Keluaran dari setiap unit hidden(zj)
(17)
14
menggunakan fungsi aktivasi yang ditentukan, demikian seterusnya hingga menghasilkan keluaran jaringan (yk). Berikutnya, keluaran jaringan
dibandingkan dengan target yang harus dicapai (tk). Selisih (tk - yk) adalah
kesalahan yang terjadi. Jika kesalahan ini lebih kecil dari batas toleransi maka iterasi dihentikan, tetapi bila kesalahan masih lebih besar maka bobot setiap garis(w) dalam jaringan akan dimodifikasi untuk mengurangi kesalahan yang terjadi
- Fase II Propagasi mundur, Berdasarkan kesalahan (tk - yk), dihitung faktor
δk(k=1,2,3,..,m) yang dipakai untuk mendistribusikan kesalahan di unit (yk)
ke semua unit hidden yang terhubung langsung dengan yk. δk juga dipakai
untuk mengubah bobot garis(w) yang berhubungan langsung dengan unit keluaran. Dengan cara yang sama, dihitung faktor δj di setiap unit di hidden layer sebagai dasar perubahan bobot semua garis yang berasal dari unit
tersembunyi di layar di bawahnya. Demikian seterusnya hingga semua faktor δ di unit hidden yang berhubungan langsung dengan unit masukan
dihitung
- Fase III Perubahan bobot, bobot semua garis dimodifikasi bersamaan. Perubahan bobot suatu garis didasarkan atas faktor δ neuron di layar atasnya. Sebagai contoh, perubahan bobot garis yang menuju ke layar keluaran didasarkan atas δk yang ada di unit keluaran. Fase tersebut diulang
hingga penghentian terpenuhi. Umumnya kondisi penghentian yang dipakai adalah jumlah iterasi atau kesalahan.
(18)
Sumber: (Jong, 2005) Gambar 2.5. Algoritma backpropagation menurut Jong, J.S.
Backpropagation menurut Wirda Ayu Utari (2010), memiliki beberapa unit yang
ada dalam satu atau lebih layar tersembunyi. Gambar 2.6. adalah arsitektur
backpropagation dengan n buah masukan (ditambah sebuah bias), sebuah layar
tersembunyi yang terdiri dari p unit (ditambah sebuah bias), serta m buah keluaran.
(19)
16
Sumber: (Utari, 2010) Gambar 2.6. Arsitektur Model Backpropagation menurut W.A. Utari Vji merupakan bobot garis dari unit masukan Xi ke unit layar tersembunyi Zj (Vj0
merupakan bobot garis yang menghubungkan bias di unit masukan ke unit layar tersembunyi zj). Wkj merupakan bobot dari unit layar tersembunyi Zj ke unit
keluaran Vk (wk0 merupakan bobot dari bias di layar tersembunyi ke unit
keluaran Zk).
Algoritma backpropagation menggunakan error keluaran untuk mengubah nilai bobot-bobotnya dalam arah mundur (backward). Untuk mendapatkan error ini, tahap perambatan maju (forward propagation) harus dikerjakan terlebih dahulu. Pada saat perambatan maju, neuron-neuron diaktifkan dengan menggunakan fungsi aktivasi yang dapat dideferensiasikan, seperti sigmoid, tansig atau purelin.
Adapun algoritma backpropagation sesuai gambar 2.6. menurut Wirda Ayu Utari (2010), adalah sebagai berikut:
(20)
a. Inisialisasi bobot (ambil bobot awal dengan nilai random yang cukup kecil). b. Tetapkan maksimum epoch (banyaknya iterasi), target error, dan learning
rate (α).
c. Inisialisasi Epoch = 0; MSE = 1; dimana MSE adalah Mean Square Error (rata-rata kuadrat error yang didapatkan tiap iterasi)
d. Kerjakan langkah-langkah berikut selama epoch < maksimum epoch dan (MSE > target error):
1.Epoch = Epoch + 12
2.Untuk tiap-tiap pasangan elemen yang akan dilakukan pembelajaran, kerjakan:
Feedforward :
a. Tiap-tiap unit masukan (xi, i=1,2,3,...,n) menerima sinyal xi dan
meneruskan sinyal tersebut ke semua unit pada lapisan yang ada di atasnya (lapisan tersembunyi).
b. Tiap-tiap unit pada suatu lapisan tersembunyi (Zj, j=1,2,3,...,p)
menjumlahkan unit masukan (xi) yang dikalikan dengan nilai bobot
garis dari input menuju hidden layer (vij, i=1,2,3,...n; j=1,2,3,...,p)
dengan masukan bias (b1j, j=1,2,3,...n) :
(2.6)
Gunakan fungsi aktivasi untuk menghitung sinyal keluarannya: (2.7)
(21)
18
dan kirimkan sinyal tersebut ke semua unit di lapisan atasnya (unit-unit keluaran).
Tiap-tiap unit keluaran (yk, k=1,2,3,...,m) menjumlahkan unit masukan
dari hidden layer (zi) yang dikalikan dengan nilai bobot garis dari hidden layer menuju output (wjk, j=1,2,3,...n; k=1,2,3,...,p) dengan masukan bias pada hidden layer (b2j, j=1,2,3,...n):
(2.8)
gunakan fungsi aktivasi untuk menghitung sinyal keluarannya: (2.9)
dan kirimkan sinyal tersebut ke semua unit di lapisan atasnya (unit-unit keluaran).
Catatan: Langkah (b) dilakukan sebanyak jumlah lapisan tersembunyi.
c. Tiap-tiap unit keluaran (yk, k=1,2,3,...,m) menerima target pola yang
berhubungan dengan pola masukan pembelajaran, hitung informasi errornya (δ2k,k=1,2,3,...n):
(2.10)
(2.11)
(22)
kemudian hitung koreksi bobot (∆wjk) (yang nantinya akan digunakan
untuk memperbaiki nilai wjk) dengan mengalikan dengan nilai learning rate (α):
(2.13)
hitung juga koreksi bias (∆b2k) (yang nantinya akan digunakan untuk
memperbaiki nilai b2k):
(2.14)
langkah (d) ini juga dilakukan sebanyak jumlah lapisan tersembunyi, yaitu menghitung informasi error dari suatu lapisan tersembunyi ke lapisan tersembunyi sebelumnya.
d. Tiap-tiap unit tersembunyi (zj, j=1,2,3,...,p) menjumlahkan delta
masukannya (dari unit-unit yang berada pada lapisan di atasnya): (2.15)
kalikan nilai ini dengan turunan dari fungsi aktivasinya untuk menghitung informasi error (δ1j, j=1,2,3,....n):
(2.16)
(23)
20
(2.18)
kemudian hitung koreksi bobot (∆vij) (yang nantinya akan digunakan
untuk memperbaiki nilai (vij):
(2.19)
hitung juga koreksi bias (yang nantinya akan digunakan untuk memperbaiki nilai (∆b1j):
(2.20)
e. Tiap-tiap unit keluaran (Yk, k=1,2,3,...,m) memperbaiki bias dan
bobotnya (j=0,1,2,...,p): (2.21)
(2.22)
Tiap-tiap unit tersembunyi (Zj, j=1,2,3,...,p) memperbaiki bias (b1j)
dan bobotnya (vij) (i=0,1,2,...,n) :
(2.23)
(2.24)
(24)
Menghitung nilai rata-rata kuadrat error (E = selisih target nilai dengan keluaran; n = banyak data).
(25)
22
BAB III
METODE PENELITIAN
3.1.Model Penelitian
Penelitian yang dilakukan dapat dijelaskan dengan lebih baik melalui blok diagram seperti yang terliat pada Gambar 3.1.
Gambar 3.1. Blok Diagram Penelitian
Berikut adalah keterangan setiap blok dari sistem blok diagram pada Gambar 3.1. 3.1.1 Suara manusia.
Pada blok ini, suara manusia yang direkam adalah saat pengucapan huruf vokal (a, e, i, o, u) dan individu tersebut berusia 17-30 tahun. Kondisi pita suara manusia harus dalam keadaan sehat dan tidak serak pada saat pengucapan sehingga suara dapat terdengar dengan jelas. Huruf vokal diucapkan dengan nada datar atau tanpa nada, yaitu nada normal pada saat manusia berbicara, ini untuk memudahkan proses analisa suara tersebut. Begitu juga intonasi dan volume pengucapan huruf harus seragam dari awal perekaman sampai akhir, atau tidak boleh berubah-ubah.
Suara Manusia
Hasil rekaman
(.wav) Rekam
suara
Ekstraksi Ciri (STFT)
Pengujian (JST)
(26)
3.1.2 Perekaman Suara
Suara direkam menggunakan tablet smartphone berbasis Android dengan aplikasi Smart Voice Recorder buatan SmartMob yang bisa diunduh secara gratis melalui Google Play Store. Aplikasi ini memiliki fitur Skip Silence,
microphone gain calibration tool, wave/pcm encoding with adjustable sample rate (8-44 kHz), dan beberapa fitur lainnya.
Sumber: Google Play Store Gambar 3.2. Tampilan Aplikasi Smart Voice Recorder
Supaya kualitas suara lebih baik maka smartphone dapat dikoneksikan dengan
earphone, headset, ataupun microphone (semua menggunakan 3.5mm 4-conductor TRRS phone connector).
(27)
24
Gambar 3.3. Contoh 3.5mm 4-conductor TRRS phone connector Situasi perekaman adalah di ruangan sepi dan bebas noise untuk menghindari adanya suara-suara yang tidak diinginkan. Waktu maksimal untuk merekam suara adalah 3 detik.
3.1.3 Hasil Rekaman
Suara yang direkam adalah saat pengucapan 5 huruf vokal (a, e, i, o, u) dimana satu huruf adalah satu file rekaman. File rekaman menggunakan format (.wav) dan sample rate 44100 Hz. Masing masing huruf direkam dengan waktu maksimal 3 detik.
(28)
File tersebut kemudian diubah atau dipotong secara manual menggunakan
perangkat lunak Adobe Audition untuk menghilangkan rekaman kosong.
Gambar 3.5. Tampilan software Adobe Audition 2014
Gambar 3.6. Contoh tampilan sinyal suara pria “a” dalam domain waktu. Gambar 3.6. menunjukkan hasil rekaman suara laki-laki mengucapkan “a” dalam bentuk sinyal dalam domain waktu. Suara direkam dalam waktu 2.414 sekon. Terkadang pada saat rekaman, seseorang baru mulai berbicara pada
(29)
26
waktu tertentu sehingga terdapat waktu jeda. Untuk mendapatkan sinyal yang diinginkan, maka perlu dilakukan cropping atau menghilangkan waktu jeda tersebut atau bagian sinyal yang tidak perlu (dalam hal ini suara hembusan nafas maupun noise lainnya). Seperti terlihat pada gambar 3.7.
Gambar 3.7. Bagian-bagian sinyal yang akan dipotong.
Contohnya pada hasil rekaman ini, sinyal suara manusia baru terbentuk saat 0.653 s dan berakhir pada 1.480 s, sehingga sinyal suara yang diambil adalah sinyal pada rentang 0.653 s dan 1.480 s, seperti ditunjukkan pada gambar 3.8. Dengan demikian waktu keseluruhan sinyal suara adalah 0.827 s seperti terlihat pada gambar.
Bagian yang dihilangkan Bagian yang dihilangkan
(30)
Gambar 3.8. Contoh bentuk sinyal suara setelah cropping
Setelah proses diatas, maka sinyal hasil crop tersebut disimpan menjadi file berformat (.wav) dengan sample type 44100 Hz Mono, 16-bit. Panjang waktu rekaman setelah crop hanya dibatasi sampai 1 detik. Sehingga untuk satu orang memiliki 5 file berformat (.wav).
3.1.4 Ekstraksi Ciri
Pada blok ini, file suara yang sudah diubah akan dianalisa menggunakan perangkat lunak Matlab untuk mendapatkan nilai STFT. Adapun alur proses digambarkan seperti pada flowchart sederhana dibawah.
(31)
28
Gambar 3.9. Diagram alir proses ekstraksi ciri STFT
File suara yang telah di-crop berformat (.wav) akan di masukkan ke dalam
matlab untuk diekstraksi dengan perintah
[x,fs]=audioread(‘file_location’), sehingga dari file tersebut dapat
diperoleh nilai waktu (x), dan sample rate (fs). Dari nilai x tersebut kemudian diketahui panjang dari sinyal rekaman tersebut (xlen = length(x)). Langkah selanjutnya adalah menentukan nilai parameter untuk input fungsi STFT, yaitu window length, hop size, dan fft points.
wlen = 2048; Panjang window
h = wlen/4; Jumlah sampel antara masing-masing window
nfft = 2*wlen; Banyaknya poin FFT.
Adapun nilai wlen adalah bilangan kelipatan 2 berpangkat (power of 2) untuk memudahkan perhitungan. Dalam hal ini, window length ditentukan sebesar 2048. Nilai tersebut dipilih untuk mendapatkan resolusi frekuensi dan
(32)
resolusi waktu yang bagus. Resolusi frekuensi yang bagus adalah resolusi dengan jarak antar window yang lebar, artinya range frekuensi semakin kecil dan memberikan nilai yang semakin akurat. Namun dengan lebarnya window, maka resolusi waktu pun menjadi tidak bagus. Untuk lebih jelasnya dapat dilihat pada pembahasan di bab sebelumnya. Oleh karena itu diperlukan nilai dari window length yang dapat mengoptimalkan range dari kedua resolusi.
Adapun jenis window yang digunakan pada penelitian ini adalah Hann atau Hanning window dimana nilai koefisiennya bisa didapatkan dengan rumus berikut.
(1).
� = ( − cos (� − ))� atau (2).
� = � 2 � � −
Dimana n = jumlah sampel pada sinyal, dan N adalah panjang window.
(33)
30
Hann window atau juga disebut jendela kosinus yang ditinggikan biasanya
dipakai sebagai fungsi window dalam pemrosesan sinyal digital untuk menjalankan transformasi fourier dimana ujung dari kosinus menyentuh nilai nol, sehingga side-lobe berada pada 18 dB per oktaf. Adapun keunggulan dari
hann window adalah sangat rendahnya artifak distorsi atau aliasing dan
lebarnya main-lobe (lobe dimana di terdapat energi maksimal).
Pada aplikasi Matlab, fungsi hann window dapat ditulis dengan sintaks
w = hann(L), dimana L adalah panjang dari window tersebut.
Berikut adalah contoh visualisasi 64-point hann window pada Matlab dengan menggunakan Window Visualisation Tool. Dengan sintaks sebagai berikut: L = 64; wvtool(hann(L))
Gambar 3.11. Visualisasi 64-point hann window pada Matlab
Kemudian setelah menentukan window, maka dapat dilakukan perhitungan STFT, dimana matriks STFT akan merepresentasikan waktu pada kolom (sumbu x), dan frekuensi pada baris (sumbu y) dalam sebuah spektrogram atau
(34)
sebuah grafik yang memberikan informasi tentang perubahan gelombang dalam rentang waktu, frekuensi, dan intensitas amplitudo. Intensitas amplitudo pada suatu frekuensi dan pada suatu waktu (waktu, frekuensi) di dalam spektrogram dinyatakan dengan nilai warna tertentu (grayscale atau RGB). Spektrogram pada Matlab pada umumnya dapat dibuat dengan sintaks
s=spectrogram(x,window,noverlap,nfft).
Gambar 3.12. Contoh grafik spektrogram pada Matlab
(35)
32
Gambar 3.12. dan gambar 3.13. mencontohkan bentuk spektrogram pada umumnya dimana sumbu x merepresentasikan waktu, sumbu y merepresentasikan frekuensi, dan intensitas amplitudo atau energi (umumnya dalam dB) dinyatakan dalam spektrum warna tertentu. Pada spektrogram, panjang window dapat mempengaruhi intensitas warna dan resolusi dari waktu dan frekuensi.
Setelah menghasilkan spektrogram, berikutnya akan diambil nilai STFT, nilai frekuensi dan waktu pada saat energi terbesar, dan nilai rata-rata energi dari sebuah sinyal suara untuk kemudian akan dilatih dan diuji menggunakan jaringan saraf tiruan backpropagation. Keempat nilai tersebut digunakan karena metode STFT menghasilkan suatu nilai waktu dan frekuensi, dan juga amplitude. Nilai STFT adalah suatu bilangan kompleks yang terdiri dari bilangan real dan imaginer yang merepresentasikan suatu nilai dalam domain waktu dan frekuensi. Agar nilai kompleks tersebut dapat dihitung, maka nilai tersebut diabsolutkan dengan rumus = √ � 2+ � �� � 2.
Dan nilai amplitudo/magnitude adalah nilai yang menunjukkan kekuatan sinyal dalam desibel (dB). Nilai awal dari amplitudo adalah berupa tegangan (volt), dan untuk mengubahnya kedalam bentuk desibel digunakan rumus 20*log10(amplitudo).
3.1.5 Pengujian
Pengujian yang dilakukan adalah menggunakan metode jaringan saraf tiruan backpropagation dengan input nilai STFT, nilai frekuensi dan waktu saat amplitude tertinggi, dan nilai rata-rata amplitudo pada sebuah sinyal suara.
(36)
responden adalah sebanyak 30 (laki-laki 15, perempuan 15) seperti terlihat pada gambar 3.14.
Arsitektur backpropagation yang akan dibuat adalah sebagai berikut:
Gambar 3.14. Arsitektur backpropagation pada penelitian ini
Pada gambar 3.14. Nilai X1, X2, X3, X4, adalah nilai untuk fitur suara “a” pada data responden pertama, kemudian X5, X6, X7, X8, adalah nilai fitur
suara “e” pada data responden pertama demikian seterusnya untuk huruf vokal
i, o, dan u. Variabel j adalah banyaknya data pelatihan pada backpropagation dimana pada tabel 3.1. menunjukkan data pelatihan pada backpropagation dan nilai target yang ingin dicapai pada pelatihan ini.
Tabel 3.1. Data pelatihan backpropagation dan nilai target yang ingin dicapai Data
pelatihan (j) Keterangan Nilai target 1 Data pelatihan responden perempuan 1 1 2 Data pelatihan responden perempuan 2 1 3 Data pelatihan responden perempuan 3 1 4 Data pelatihan responden perempuan 4 1 5 Data pelatihan responden perempuan 5 1
(37)
34
6 Data pelatihan responden perempuan 6 1 7 Data pelatihan responden perempuan 7 1 8 Data pelatihan responden perempuan 8 1 9 Data pelatihan responden perempuan 9 1 10 Data pelatihan responden perempuan 10 1 11 Data pelatihan responden perempuan 11 1 12 Data pelatihan responden perempuan 12 1 13 Data pelatihan responden perempuan 13 1 14 Data pelatihan responden perempuan 14 1 15 Data pelatihan responden perempuan 15 1 16 Data pelatihan responden laki-laki 1 0 17 Data pelatihan responden laki-laki 2 0 18 Data pelatihan responden laki-laki 3 0 19 Data pelatihan responden laki-laki 4 0 20 Data pelatihan responden laki-laki 5 0 21 Data pelatihan responden laki-laki 6 0 22 Data pelatihan responden laki-laki 7 0 23 Data pelatihan responden laki-laki 8 0 24 Data pelatihan responden laki-laki 9 0 25 Data pelatihan responden laki-laki 10 0 26 Data pelatihan responden laki-laki 11 0 27 Data pelatihan responden laki-laki 12 0 28 Data pelatihan responden laki-laki 13 0 29 Data pelatihan responden laki-laki 14 0 30 Data pelatihan responden laki-laki 15 0
Pada tabel 3.1., nilai 1 dalam penelitian ini adalah nilai permisalan yang menandakan data perempuan dan nilai 0 adalah data laki-laki.
Masing-masing data responden mempunyai 20 fitur suara yaitu 4 fitur suara pada masing masing huruf vokal, seperti pada tabel 3.2. yang menunjukkan nilai
(38)
Tabel 3.2. Keterangan dari nilai neuron input backpropagation Neuron Input Keterangan
X1 STFT_value "a"
X2 Rata-rata Amplitudo "a" X3 Waktu "a"
X4 Frekuensi "a" X5 STFT_value “e”
X6 Rata-rata Amplitudo "e" X7 Waktu "e"
X8 Frekuensi "e" X9 STFT_value "i"
X10 Rata-rata Amplitudo "i" X11 Waktu "i"
X12 Frekuensi "i" X13 STFT_value "o"
X14 Rata-rata Amplitudo "o" X15 Waktu "o"
X16 Frekuensi "o" X17 STFT_value "u"
X18 Rata-rata Amplitudo "u" X19 Waktu "u"
X20 Frekuensi "u"
Tabel 3.2. menunjukkan neuron input pada backpropagation untuk masing-masing responden. Untuk responden berikutnya atau data pelatihan yang kedua seperti pada tabel 3.1, maka STFT_value, Rata-rata Amplitudo, Waktu, dan Frekuensi pada tabel 3.2. adalah untuk responden kedua. Begitu juga untuk responden ketiga dan seterusnya, nilai X1 – X20 adalah nilai dari responden yang dilatih saat itu.
(39)
36
Nilai awal bobot B1, B2, B3, dan nilai W pada masing masing layer adalah nilai random dari -1 sampai 1. Nilai target adalah nilai 1 sebanyak 15 (untuk input perempuan), dan nilai 0 sebanyak 15 (untuk input laki-laki).
Output dari gambar 3.14. adalah sebuah nilai antara 0 sampai 1. Nilai tersebut
kemudian di threshold untuk membatasi data pelatihan suara perempuan atau data pelatihan suara laki-laki. Nilai yang lebih besar atau sama dengan 0.5 (>=0.5) akan dianggap sebagai perempuan, dan nilai yang lebih kecil dari 0.5 akan dianggap sebagai laki-laki (<0.5).
Pada gambar 3.14., setiap input Xnj dan bias B1 akan dikalikan dengan Wi pada layer input, dan kemudian hasilnya akan menjadi input bagi masing-masing neuron Zi, begitu juga dengan bias; dan diulang sebanyak jumlah data pelatihan (30). Kemudian hasil inputan pada Zi akan diaktivasi dengan fungsi
sigmoid biner untuk menghasilkan nilai antara 0 sampai 1.
Setelah masing-masing neuron diaktivasi, maka output dari Zi akan menjadi input ZZi. Untuk melanjutkan perhitungan ke hidden layer 2, dan
output, maka output dari Zi dan juga bias B2 dikalikan pada W pada hidden layer 1 untuk dimasukkan pada hidden layer 2 (ZZi). Masukkan dari Hidden layer 1 (Zi) nantinya akan diaktivasi dahulu sebelum menjadi input ZZi. Input
pada ZZi nantinya akan digunakan untuk menghitung nilai keluaran pada alur maju dengan cara mengalikan ZZi dan bias B3 dengan bobot Wi pada hidden
layer 2. Hasil dari perkalian ini akan menghasilkan nilai output Y yang
nilainya akan diaktivasi untuk perhitungan alur mundur.
Setelah menghasilkan keluaran Y yang telah diaktivasi, maka akan dicari selisih (error) dari target awal dengan Y, dan kemudian menghitung koreksi
(40)
bobot dan bobot bias dan mengubah bobot garis yang berhubungan langsung dengan unit keluaran. Dengan cara yang sama, dihitung faktor error di setiap unit di hidden layer sebagai dasar perubahan bobot semua garis yang berasal dari unit tersembunyi di layer di bawahnya. Demikian seterusnya hingga semua faktor error di unit hidden yang berhubungan langsung dengan unit masukan dihitung. Umumnya kondisi penghentian yang dipakai adalah jumlah iterasi atau kesalahan. Toleransi kesalahan yang digunakan di penelitian ini adalah 0.01.
Nilai learning rate (α) adalah adalah laju pembelajaran, semakin besar
learning rate akan berpengaruh pada semakin besarnya langkah pembelajaran. Sehingga dalam penelitian ini, learning rate yang digunakan adalah 0.1
Gambar 3.15. Diagram alir proses backpropagation
Gambar 3.15. menjelaskan alur kerja dari backpropagation pada penelitian ini. Yang menjadi input adalah nilai X1 – X20 yang merupakan nilai
(41)
38
ekstraksi ciri, seperti pada tabel 3.2. Langkah yang dijalankan adalah alur maju (feed forward) yaitu untuk mencari nilai error selisih antara nilai target awal dengan nilai keluaran (t–y). Selisih error tersebut akan digunakan untuk alur mundur (backpropagate) untuk mengubah nilai bobot pada neuron hidden dan juga bias. Proses akan berlangsung selama jumlah iterasi belum terpenuhi atau nilai error masih lebih besar dari nilai toleransi error.
(42)
39
HASIL DAN PEMBAHASAN
4.1.Pengujian Perangkat Lunak
Dalam mengetahui perangkat lunak yang dibuat bisa sesuai dengan metode yang dipakai maka dilakukan pengujian terhadap masin-masing komponen perangkat. Alat dan bahan yang digunakan sebelum pengujian:
1. Personal Computer (PC) / Laptop.
2. Smartphone berbasis Android.
3. Software Adobe Audition 2014.
4. Software Matlab 2013.
5. Microsoft Excel 2016.
6. Aplikasi Android Smart Voice Recorder. 4.2.Proses Rekaman dan Edit File Rekaman
Setelah suara direkam menggunakan smartphone, maka file hasil rekaman tersebut diedit atau dipotong secara manual menggunakan perangkat lunak Adobe
Audition untuk menghilangkan rekaman kosong.
Tabel 4.1. – tabel 4.10. menunjukkan waktu file rekaman pada laki-laki dan perempuan pada saat selesai perekaman dan setelah diedit (crop). Contohnya pada perekaman huruf “a” pada responden laki-laki pertama, sinyal suara manusia baru terbentuk saat 0.653 s dan berakhir pada 1.480 s, sehingga sinyal suara yang diambil adalah sinyal pada rentang 0.653 s dan 1.480 s, seperti ditunjukkan pada tabel 4.1. Dengan demikian waktu keseluruhan sinyal suara adalah 0.827 s seperti
(43)
40
terlihat pada tabel 4.1. begitu juga pada responden laki-laki kedua dan huruf vokal lainnya (e, i, o, u):
Tabel 4.1. File rekaman sinyal suara “a” laki-laki
Nama File Waktu keseluruhan rekaman (s) Waktu awal crop (s) Waktu akhir crop (s) Waktu rekaman setelah crop (s)
a_1 2.414 0.653 1.480 0.827
a_2 1.393 0.337 0.900 0.563
a_3 1.300 0.315 1.002 0.686
a_4 1.578 0.460 1.198 0.738
a_5 1.027 0.426 0.880 0.453
a_6 1.114 0.052 0.799 0.747
a_7 2.043 0.457 1.159 0.702
a_8 1.393 0.375 0.969 0.594
a_9 1.857 0.448 1.020 0.571
a_10 1.393 0.100 0.830 0.729
a_11 1.021 0.026 0.830 0.803
a_12 1.486 0.000 0.879 0.879
a_13 1.764 0.374 1.327 0.953
a_14 2.414 1.506 1.919 0.413
a_15 2.136 0.503 1.469 0.966
Tabel 4.2. File rekaman sinyal suara “e” laki-laki
Nama File Waktu keseluruhan rekaman (s) Waktu awal crop (s) Waktu akhir crop (s) Waktu rekaman setelah crop (s)
e_1 2.322 0.633 1.320 0.686
e_2 1.300 0.348 0.999 0.651
e_3 1.300 0.390 1.013 0.621
e_4 1.300 0.219 1.002 0.783
e_5 1.114 0.173 0.800 0.627
e_6 1.671 0.260 1.099 0.839
e_7 1.671 0.339 1.199 0.859
(44)
e_9 1.857 0.371 0.879 0.507
e_10 1.207 0.168 0.880 0.711
e_11 1.114 0.000 0.880 0.880
e_12 2.229 0.066 1.060 0.993
e_13 1.486 0.138 0.839 0.701
e_14 1.114 0.390 0.839 0.448
e_15 2.136 0.368 1.150 0.782
Tabel 4.3. File rekaman sinyal suara “i” laki-laki
Nama File Waktu keseluruhan rekaman (s) Waktu awal crop (s) Waktu akhir crop (s) Waktu rekaman setelah crop (s)
i_1 2.322 0.658 1.499 0.840
i_2 1.393 0.322 0.950 0.625
i_3 1.486 0.547 1.198 0.650
i_4 1.671 0.409 1.103 0.694
i_5 1.207 0.379 0.916 0.536
i_6 1.486 0.302 1.287 0.984
i_7 1.857 0.636 1.539 0.903
i_8 1.578 0.415 1.160 0.745
i_9 1.857 0.538 0.999 0.461
i_10 1.486 0.420 1.160 0.740
i_11 1.950 0.210 1.076 0.865
i_12 1.300 0.000 0.800 0.800
i_13 2.136 0.466 1.331 0.865
i_14 1.207 0.435 0.819 0.384
i_15 1.207 0.229 0.879 0.650
Tabel 4.4. File rekaman sinyal suara “o” laki-laki
Nama File Waktu keseluruhan rekaman (s) Waktu awal crop (s) Waktu akhir crop (s) Waktu rekaman setelah crop (s)
o_1 2.972 0.793 1.699 0.905
o_2 1.486 0.408 1.050 0.642
(45)
42
o_4 1.300 0.373 0.997 0.624
o_5 1.486 0.448 1.104 0.566
o_6 1.764 0.280 1.270 0.990
o_7 1.486 0.392 1.140 0.748
o_8 1.671 0.566 1.229 0.663
o_9 1.486 0.228 0.799 0.570
o_10 1.578 0.515 1.129 0.614
o_11 1.764 0.435 1.420 0.984
o_12 1.950 0.526 1.500 0.974
o_13 1.764 0.090 1.059 0.969
o_14 2.136 0.388 0.850 0.462
o_15 2.229 0.585 1.380 0.795
Tabel 4.5. File rekaman sinyal suara “u” laki-laki
Nama File Waktu keseluruhan rekaman (s) Waktu awal crop (s) Waktu akhir crop (s) Waktu rekaman setelah crop (s)
u_1 1.950 0.603 1.370 0.766
u_2 1.393 0.343 0.950 0.606
u_3 1.671 0.347 1.047 0.687
u_4 2.414 0.526 1.242 0.714
u_5 2.043 0.477 1.025 0.728
u_6 1.578 0.309 1.240 0.930
u_7 2.507 0.550 1.380 0.829
u_8 1.486 0.223 0.863 0.639
u_9 1.857 0.692 1.229 0.537
u_10 1.671 0.476 1.139 0.663
u_11 1.764 0.250 1.216 0.966
u_12 2.136 0.520 1.500 0.979
u_13 1.764 0.335 1.101 0.766
u_14 1.950 0.587 0.999 0.412
(46)
Dapat dilihat pada tabel 4.1. – 4.5. bahwa waktu file rekaman suara laki-laki setelah dipotong tidak boleh melebihi 1 detik. Begitu juga pada file rekaman suara perempuan seperti terdapat pada tabel 4.6. – tabel 4.10.
Berikut adalah tabel waktu rekaman pada perempuan:
Tabel 4.6. File rekaman sinyal suara “a” perempuan
Nama File Waktu keseluruhan rekaman (s) Waktu awal crop (s) Waktu akhir crop (s) Waktu rekaman setelah crop (s)
a_1 1.393 0.425 0.960 0.534
a_2 1.857 0.535 1.402 0.867
a_3 1.300 0.284 0.950 0.665
a_4 1.207 0.000 0.990 0.990
a_5 1.440 0.841 1.400 0.558
a_6 1.520 0.320 1.300 0.980
a_7 1.520 0.341 0.855 0.513
a_8 1.440 0.199 0.900 0.700
a_9 1.840 0.850 1.840 0.982
a_10 2.080 1.200 2.080 0.880
a_11 1.157 0.206 0.620 0.413
a_12 1.400 0.858 1.360 0.502
a_13 1.782 0.145 1.110 0.965
a_14 1.400 0.000 0.880 0.880
a_15 1.353 0.070 0.790 0.720
Tabel 4.7. File rekaman sinyal suara “e” perempuan
Nama File Waktu keseluruhan rekaman (s) Waktu awal crop (s) Waktu akhir crop (s) Waktu rekaman setelah crop (s)
e_1 1.486 0.498 1.000 0.500
e_2 1.857 0.380 1.299 0.918
e_3 1.207 0.344 0.880 0.536
e_4 1.300 0.145 1.139 0.994
(47)
44
e_6 1.600 0.630 1.600 0.959
e_7 1.600 0.472 1.240 0.767
e_8 1.520 0.445 1.270 0.775
e_9 2.240 1.200 2.160 0.960
e_10 2.400 1.400 2.260 0.860
e_11 1.286 0.302 0.720 0.417
e_12 1.020 0.425 0.880 0.455
e_13 1.518 0.370 1.190 0.820
e_14 2.107 0.400 1.250 0.850
e_15 1.132 0.171 0.840 0.668
Tabel 4.8. File rekaman sinyal suara “i” perempuan
Nama File Waktu keseluruhan rekaman (s) Waktu awal crop (s) Waktu akhir crop (s) Waktu rekaman setelah crop (s)
i_1 1.486 0.515 1.050 0.535
i_2 2.322 0.539 1.469 0.930
i_3 2.414 0.483 1.098 0.615
i_4 1.486 0.379 1.249 0.870
i_5 1.440 0.479 1.079 0.600
i_6 1.600 0.630 1.600 0.969
i_7 1.520 0.420 1.000 0.580
i_8 1.200 0.245 0.922 0.677
i_9 2.080 1.200 2.080 0.880
i_10 2.160 1.000 1.940 0.940
i_11 1.400 0.550 0.943 0.393
i_12 1.240 0.292 0.860 0.568
i_13 1.092 0.228 0.900 0.671
i_14 1.200 0.000 0.780 0.780
(48)
Tabel 4.9. File rekaman sinyal suara “o” perempuan Nama File Waktu keseluruhan rekaman (s) Waktu awal crop (s) Waktu akhir crop (s) Waktu rekaman setelah crop (s)
o_1 1.393 0.443 0.950 0.507
o_2 1.578 0.143 1.136 0.993
o_3 1.114 0.315 0.876 0.561
o_4 1.578 0.598 1.578 0.980
o_5 1.200 0.320 0.819 0.499
o_6 1.680 0.582 1.470 0.887
o_7 1.760 0.665 1.400 0.734
o_8 1.440 0.289 1.020 0.730
o_9 1.680 0.800 1.680 0.880
o_10 2.560 1.476 2.380 0.903
o_11 1.289 0.476 0.830 0.353
o_12 1.104 0.230 0.720 0.490
o_13 1.953 0.589 1.370 0.780
o_14 1.836 0.600 1.480 0.880
o_15 1.378 0.315 0.950 0.635
Tabel 4.10. File rekaman sinyal suara “u” perempuan.
Nama File Waktu keseluruhan rekaman (s) Waktu awal crop (s) Waktu akhir crop (s) Waktu rekaman setelah crop (s)
u_1 1.300 0.273 0.850 0.576
u_2 2.043 0.670 1.662 0.992
u_3 1.486 0.306 0.951 0.644
u_4 2.043 0.735 1.720 0.984
u_5 1.520 0.710 1.400 0.690
u_6 1.840 0.620 1.600 0.980
u_7 1.680 0.463 1.100 0.646
u_8 1.520 0.456 1.080 0.623
u_9 2.000 1.200 2.000 0.800
u_10 2.240 1.200 2.050 0.850
(49)
46
u_12 1.398 0.590 1.190 0.600
u_13 1.201 0.145 0.899 0.754
u_14 2.000 0.516 1.510 0.993
u_15 1.471 0.276 0.900 0.623
4.3.Ekstraksi Ciri Short Time Fourier Transform
Setelah dipotong, maka file suara tersebut akan diekstraksi fiturnya menggunakan metode short time fourier transform (STFT). Nilai-nilai yang diekstraksi pada penelitian ini adalah nilai STFT, nilai rata-rata amplitudo pada sebuah sinyal, nilai frekuensi dan nilai waktu saat amplitudo tertinggi. Keempat nilai tersebut digunakan karena metode STFT menghasilkan suatu nilai waktu dan frekuensi, dan juga amplitudo.
Keempat nilai tersebut digunakan karena metode STFT menghasilkan suatu nilai waktu dan frekuensi, dan juga amplitude. Nilai STFT adalah suatu bilangan kompleks yang terdiri dari bilangan real dan imaginer yang merepresentasikan suatu nilai dalam domain waktu dan frekuensi. Agar nilai kompleks tersebut dapat dihitung, maka nilai tersebut diabsolutkan dengan rumus . Dan nilai amplitudo/magnitude adalah nilai yang menunjukkan kekuatan sinyal hasil keluaran dari mikropon yaitu pengukur atau penunjuk tingkat kebisingan suara atau sound pressure level, biasanya dalam satuan desibel (dB).
Kemudian program akan menampilkan grafik dan spektrogram pada setiap file yang diekstraksi. Banyaknya sinyal suara responden yang akan diekstraksi adalah 30 suara. Terdiri dari suara laki-laki saat mengucapkan a, e, i, o, u,
(50)
masing-masing berjumlah 15, dan suara perempuan saat mengucapkan a, e, i, o, u, masing-masing berjumlah 15.
Gambar 4.1. adalah spektrogram sinyal suara yang diambil dari tiga orang responden laki-laki pada saat mengucapkan huruf a, e, i, o, u, dengan menggunakan fungsi windows hann dengan panjang windows 2048.
Gambar 4.1. Spektrogram sinyal suara salah satu responden laki-laki saat pengucapan huruf “a”
Gambar 4.2. Spektrogram sinyal suara salah satu responden perempuan saat pengucapan huruf “a”
(51)
48
Gambar 4.1 menunjukkan representasi sinyal dalam domain waktu pada sumbu x dan domain frekeuensi pada sumbu y. Sedangkan untuk kekuatan sinyal atau magnitude/amplitudo direpresentasikan dalam domain warna dimana warna merah adalah amplitudo tertinggi dan warna biru adalah amplitudo yang rendah. Adapun amplitudo adalah suatu matriks yang berisi nilai – nilai amplitudo dalam domain frekuensi dan waktu. Seperti contoh pada tabel 4.11.
Tabel 4.11. Contoh Matriks amplitudo sinyal suara salah satu responden laki-laki saat pengucapan huruf “a” dalam desibel (dB)
Waktu (s)
0.0232 0.0348 0.0464 .... 0.8011
F
re
kue
nsi
(H
z)
10.7666 -66.7921 -71.8604 -75.7484 .... -72.0541 21.5332 -61.2602 -67.1518 -70.3838 .... -67.6143 32.2998 -63.1970 -73.0488 -74.0664 .... -71.2844 43.0664 -66.4689 -88.0166 -88.1871 .... -75.2654
... .... ... ... ... ...
22050 -95.6715 -122.0789 -89.3424 .... -108.6666
Matriks amplitudo pada tabel 4.11. adalah matriks yang berukuran besar. Dimana pada kolom adalah dalam domain waktu, dan baris adalah dalam domain frekuensi. Pada gambar 4.2., warna yang menunjukkan amplitudo tertinggi pada sinyal suara laki-laki tersebar di beberapa daerah.
(52)
Gambar 4.3. Letak amplitudo tertinggi pada spektrogram sinyal suara laki-laki
Gambar 4.4. Letak amplitudo tertinggi pada spektrogram sinyal suara perempuan Gambar 4.2. menunjukkan lokasi amplitudo tinggi pada spektrogram sinyal suara laki-laki, dan gambar 4.3 menunjukkan lokasi amplitudo tertinggi pada spektrogram sinyal suara perempuan, dimana untuk spektrogram perempuan
range frekuensi untuk amplitudo tertinggi lebih besar. Untuk mengetahui dimana
(53)
50
beberapa warna terlihat sama, sehingga cara untuk mengetahui letaknya adalah dengan menganalisa matriks amplitudo pada tabel 4.11.
Pada aplikasi Matlab, menentukan letak elemen tertinggi pada suatu matriks adalah dengan sintaks sebagai berikut.
dBSA(:);
[SA_value,indexSA_no] = max(dBSA(:));
[SAI_row, SAI_col] = ind2sub(size(dBSA),indexSA_no); sa_Value = max(max(dBSA));
dBSA adalah matriks amplitudo yang berukuran (i x n), dimana dalam Matlab, semua elemen dapat diakses dengan sintaks dBSA(:);. Untuk mencari letak amplitudo tertinggi berada di elemen keberapa, maka digunakan sintaks [SA_value,indexSA_no] = max(dBSA(:));
[SAI_row, SAI_col] = ind2sub(size(dBSA),indexSA_no); sa_Value = max(max(dBSA));
SAI_row dan SAI_col adalah lokasi amplitudo tertinggi, dan sa_value adalah nilai amplitudo tertinggi. Sehingga nilai yang didapatkan adalah -8.4734 dB. Waktu saat amplitudo tertinggi adalah 0.2554 s dan frekuensi saat amplitudo tertinggi adalah 678.2959 Hz, seperti teletak pada gambar 4.5. Sedangkan untuk perempuan, amplitudo tertinggi adalah -11.9230 dB. Waktu saat amplitudo tertinggi adalah 0.0580 s dan frekuensi saat amplitudo tertinggi adalah 979.7607 Hz, seperti terletak pada gambar 4.6.
(54)
Gambar 4.5. Letak amplitudo tertinggi pada sinyal suara laki-laki
Gambar 4.6. Letak amplitudo tertinggi pada sinyal suara perempuan
Gambar 4.5. dan gambar 4.6. adalah perbesaran dari gambar 4.4. dan gambar 4.5. sehingga amplitudo tertinggi untuk suara laki-laki saat pengucapan huruf “a” dapat diketahui terletak saat waktu 0.2554 s dan saat frekuensi 678.2959 Hz seperti teletak pada lingkaran hitam dalam gambar 4.5. dan amplitudo tertinggi untuk suara perempuan saat pengucapan huruf “a” dapat diketahui terletak saat
(55)
52
waktu 0.0580 s dan saat frekuensi 979.7607 Hz seperti teletak pada lingkaran hitam dalam gambar 4.6.
Nilai STFT adalah suatu bilangan kompleks hasil perhitungan transformasi
fourier yang dikalikan dengan fungsi window, yang merepresentasikan suatu nilai
dalam domain waktu dan frekuensi. Pada Matlab, hasil perhitungan dapat dicari dengan sintaks X = fft(xw, nfft);
dimana xw = x(indx+1:indx+wlen).*win;.
xw adalah perhitungan nilai sampel pada sinyal suara sebanyak panjang
window yang digunakan dan kemudian dikalikan dengan fungsi window (win).
dan fungsi window yang digunkan adalah hann window. Panjang window yang digunakan adalah 2048. Nilai tersebut disesuaikan dengan range frekuensi dan waktu yang digunakan pada penelitian ini. Jika menggunkaan ukuran windows yang lebih kecil, maka akan mempengaruhi range dari frekuensi dan waktu. Dan nfft adalah fft points dimana didapatkan dengan rumus 2*panjang windows.
(56)
Gambar 4.7. Spektrogram sinyal suara salah satu responden laki-laki saat pengucapan huruf “a” dengan panjang window 512, 1024, 2048, dan 4096.
(57)
54
Gambar 4.8. Spektrogram sinyal suara salah satu responden perempuan saat pengucapan huruf “a” dengan panjang window 512, 1024, 2048, dan 4096
(58)
Gambar 4.7. dan gambar 4.8. menunjukkan panjang window yang berbeda beda. Perbedaan pada tiap spektrogram tersebut adalah jumlah matriks yang merepresentasikan waktu dan frekuensi dalam kolom dan baris. Seperti tercantum dalam tabel 4.12.
Tabel 4.12. ukuran matriks pada panjang window yang berbeda Panjang window Ukuran Matriks
512 513xn
1024 1025xn
2048 2049xn
4096 4096xn
Karena jangkauan range frekuensi pada penelitian ini sangat besar yaitu dari 0 Hz sampai 22050 Hz, namun jangkauan range waktu yang kecil yaitu antara 0 s – 1 s, maka, digunakanlah panjang window 2048 pada tabel 4.14. untuk mengoptimalkan jangkauan range frekuensi dan waktu. 2049 adalah range untuk frekuensi dan n adalah range untuk waktu. Adapun nilai n bervariasi tergantung dengan panjangnya waktu pada data rekaman.
Nilai STFT adalah suatu nilai berupa bilangan kompleks seperti terlihat pada tabel 4.13.
Tabel 4.13. Contoh sebagian nilai STFT dalam bilangan kompleks
1 2
1
-0.290964047553239 + 0.00000000000000i
-0.331182602560587 + 0.00000000000000i 2
0.0139605327114863 + 0.229274682642203i
0.00840611116570040 + 0.284400369521363i
(59)
56 3 0.105319522940977 - 0.00130603672270202i 0.170789256021959 - 0.0396389979092825i 4 -0.00504222839112162 - 0.0146563485638448i -0.0371037316723838 - 0.0637628810754610i 5 0.0369051830080346 + 0.0569650386229188i -0.0240278872939455 - 0.0260803196869886i
Sebuah bilangan kompleks terdiri dari bilangan riil dan bilangan imajiner. Untuk menghitung bilangan kompleks pada tabel 4.15., maka bilangan tersebut harus diabsolutkan terlebih dahulu dengan menggunakan rumus , sehingga dari hasil tersebut didapatkan bilangan absolut seperti pada tabel 4.14.
Tabel 4.14. Nilai STFT yang sudah diabsolutkan
index 1 2
1 0.2910 0.3312
2 0.2297 0.2845
3 0.1053 0.1753
4 0.0155 0.0738
5 0.0679 0.0355
Pada aplikasi Matlab, menentukan letak elemen tertinggi pada suatu matriks adalah dengan sintaks sebagai berikut. Contoh dalam hal ini adalah menggunakan salah satu data rekaman suara laki-laki saat pengucapan huruf “a”. stft(:);
[stft_value,index_no] = max(stft(:));
[I_row, I_col] = ind2sub(size(stft),index_no); STFT_Value = abs(max(max(stft)));
(60)
stft adalah matriks STFT yang berukuran (2049 x n), dimana pada penelitian ini, dalam Matlab, semua elemen dapat diakses dengan membuat sintaks stft(:);. Untuk mencari letak nilai stft tertinggi berada di elemen keberapa, maka digunakan sintaks [stft_value,index_no] = max(stft(:));
[I_row, I_col] = ind2sub(size(stft),index_no); STFT_Value = abs(max(max(stft)));
I_row dan I_col adalah lokasi nilai STFT tertinggi, dan STFT_Value adalah nilai STFT tertinggi, sehingga nilai yang didapatkan adalah 103.5701. Ukuran matriks STFT sama dengan ukuran matriks amplitudo yaitu 2049x68 karena nilai STFT adalah suatu nilai yang merepresentasikan waktu dan frekuensi, dan amplitudo adalah kekuatan sinyal dalam domain waktu dan frekuensi.
Cara perhitungan di atas juga dipakai untuk sinyal suara huruf vokal lainnya dimana sinyal tersebut ditunjukkan pada gambar 4.9 – gambar 4.18.
(61)
58
Gambar 4.9. Spektrogram sinyal suara ketiga responden laki-laki saat pengucapan huruf “a”
(62)
Gambar 4.10. Spektrogram sinyal suara ketiga responden laki-laki saat pengucapan huruf “e”
(63)
60
Gambar 4.11. Spektrogram sinyal suara ketiga responden laki-laki saat pengucapan huruf “i”
(64)
Gambar 4.12. Spektrogram sinyal suara ketiga responden laki-laki saat pengucapan huruf “o”
(65)
62
Gambar 4.13. Spektrogram sinyal suara ketiga responden laki-laki saat pengucapan huruf “u”
Gambar 4.9. – gambar 4.13. menunjukkan gambar spektrogram yang berbeda-beda yang dihasilkan oleh 3 orang laki-laki saat pengucapan huruf vokal a, e, i, o, u.
(66)
Gambar 4.14 – gambar 4.18. adalah spektrogram sinyal suara yang diambil dari tiga orang responden perempuan pada saat mengucapkan huruf a, e, i, o, u.
Gambar 4.14. Spektrogram sinyal suara ketiga responden perempuan saat pengucapan huruf “a”
(67)
64
Gambar 4.15. Spektrogram sinyal suara ketiga responden perempuan saat pengucapan huruf “e”
(68)
Gambar 4.16. Spektrogram sinyal suara ketiga responden perempuan saat pengucapan huruf “i”
(69)
66
Gambar 4.17. Spektrogram sinyal suara ketiga responden perempuan saat pengucapan huruf “o”
(70)
Gambar 4.18. Spektrogram sinyal suara ketiga responden perempuan saat pengucapan huruf “u”
Gambar 4.9. – gambar 4.18. menunjukkan adanya perbedaan yang terjadi antara suara laki-laki dan perempuan, dimana suara laki-laki memiliki jangkauan
(71)
68
frekuensi yang lebih rendah dari suara wanita. Hal ini dikarenakan Karena pada umumnya suara perempuan lebih tinggi 1-2 oktaf dari suara laki-laki.
Nilai STFT_value, amplitudo tertinggi, waktu saat amplitudo tertinggi, dan frekuensi saat amplitudo tertinggi kemudian dikelompokkan ke dalam tabel.
Tabel 4.15. Hasil ekstraksi fitur sinyal suara “a” pada laki-laki
Nama File Nilai STFT tertinggi Amplitudo tertinggi (dB)
Saat Amplitudo tertinggi
Waktu (s) Frekuensi (Hz)
a1 193.0197 -8.4734 0.2554 678.2959
a2 211.7397 -7.6694 0.1161 882.8613
a3 206.6431 -7.8810 0.0580 925.9277
a4 146.0479 -10.8955 0.1858 893.6279
a5 152.8552 -10.4998 0.2902 678.2959
a6 195.3452 -8.3693 0.1858 732.1289
a7 98.4328 -14.3226 0.1393 829.0283
a8 142.9596 -11.0811 0.1161 785.9619
a9 101.9875 -14.0145 0.1625 818.2617
a10 274.9236 -5.4012 0.0929 807.4951
a11 103.5701 -13.8807 0.1625 1313.5254
a12 203.2935 -8.0229 0.0232 742.8955
a13 159.0506 -10.1547 0.3483 872.0947
a14 146.9037 -10.8447 0.0813 915.1611
a15 162.9476 -9.9444 0.3019 764.4287
Tabel 4.16. Hasil ekstraksi fitur sinyal suara “a” pada perempuan
Nama File Nilai STFT tertinggi Amplitudo tertinggi (dB)
Saat Amplitudo tertinggi
Waktu (s) Frekuensi (Hz)
a1 129.7541 -11.9230 0.0580 979.7607
(72)
a3 247.8205 -6.3027 0.0697 968.9941
a4 117.5819 -12.7786 0.0929 204.5654
a5 116.5292 -12.8567 0.3520 1015.6250
a6 152.8072 -10.5025 0.6720 773.4375
a7 117.5024 -12.7845 0.3019 882.8613
a8 79.9360 -16.1306 0.0580 1475.0244
a9 107.9746 -13.5190 0.6618 775.1953
a10 140.9873 -11.2018 0.6502 850.5615
a11 185.7544 -8.8066 0.0697 1152.0264
a12 225.4146 -7.1258 0.0580 1216.6260
a13 108.2563 -13.4963 0.1161 1108.9600
a14 148.8902 -10.7281 0.0929 1012.0605
a15 156.6096 -10.2890 0.1161 1087.4268
Tabel 4.15. dan tabel 4.16. menunjukkan hasil ekstraksi ciri oleh metode STFT. Terdapat perbedaan pada suara laki-laki dan suara perempuan dimana pada suara perempuan nilai frekuensi lebih tinggi dari suara laki-laki. Jika merujuk pada tabel 2.1. di BAB II, maka dapat dilihat bahwa nilai frekuensi yang didapat dari hasil STFT mendekati dari frekuensi range vokal pada tabel 2.1. Terdapat perbedaan antara nilai frekuensi STFT lebih besar dari frekuensi range vokal tersebut. Hal ini disebabkan karena volume suara yang besar saat perekaman suara sehingga menyebabkan frekuensi yang besar juga.
Adapun nilai-nilai yang diekstraksi pada penelitian ini adalah nilai STFT, nilai rata-rata amplitudo pada sebuah sinyal, nilai frekuensi dan nilai waktu saat amplitudo tertinggi seperti terlihat pada tabel. Nilai STFT merupakan bilangan kompleks perlu di-absolutkan, sementara nilai amplitudo adalah nilai dalam satuan desibel.
(73)
70
Nilai–nilai pada tabel 4.15. dan 4.16. masih merupakan nilai yang tidak seragam. Contohnya adalah jarak antara nilai waktu yang kecil dan nilai frekuensi yang besar. Perbedaan ini membuat nilai tersebut tidak bisa dijadikan input pada
backpropagation. Sehingga nilai–nilai tersebut harus diseragamkan terlebih dahulu atau dinormalisasikan menjadi sebuah bilangan antara 0 dan 1. Adapun contoh membuat rumus normalisasi pada Matlab adalah
normSA = dBSA - min(dBSA(:)); normSA = normSA ./ max(normSA(:));
Nilai normSA adalah suatu matriks yang berisi hasil normalisasi. Dan nilai dBSA adalah suatu matriks yang belum ternormalisasi. Nilai tersebut akan dikurangi dengan nilai yang lebih kecil antara elemen ke i baru, dengan elemen sebelumnya. Sehingga nilai normSA akan terus diperbaharui selama belum mencapai elemen terakhir pada matriks. Nilai setiap elemen pada matriks normSA yang telah diperbaharui kemudian akan dibagi dengan sebuah nilai dari elemen terbesar yang ada matriks tersebut. Sehingga didapatkanlah sebuah matriks baru hasil ternormalisasi.
Contohnya adalah menormalisasi nilai frekuensi. Nilai frekuensi yang dinormalisasi adalah nilai frekuensi pada satu data rekaman sinyal suara. Adapun nilai terbesar dari hasil normalisasi selalu menunjukkan angka 1, dan nilai terkecil adalah nilai 0, hal ini dikarenakan data dinormalisasi menjadi nilai antara 0 sampai 1. Dalam hal ini, penggunaan nilai maksimal atau nilai terbesar tidak berlaku untuk nilai STFT dan nilai amplitudo, karena pada perhitungan sebelumnya nilai yang digunakan adalah nilai terbesar dari matriks STFT, dan nilai terbesar dari nilai amplitudo. Sehingga untuk alternatifnya adalah merata-rata
(74)
nilai yang sudah dinormalisasi untuk mendapatkan nilai yang berbeda setiap rekaman sinyal suara.
Contohnya nilai STFT pada salah satu sinyal suara rekaman responden laki-laki saat pengucapan huruf “a” seperti pada tabel 4.16. Nilai dari matriks STFT untuk satu data rekaman suara pengucapan yang sudah ternormalisasi tersebut akan dirata-rata. Sehingga nilai rata-rata STFT untuk satu data rekaman suara salah satu responden laki-laki saat pengucapan huruf “a” adalah 0.0061
Untuk nilai amplitudo juga mengalami proses normalisasi karena nilai dari matriks amplitudo masih bernilai negatif seperti pada tabel 4.15 dan tabel 4.16. Namun saat dilakukan normalisasi, nilai amplitudo terbesar selalu bernilai 1, sehingga nilai hasil normalisasi amplitudo akan dirata-rata. Adapun nilai yang dirata-rata adalah nilai pada matriks amplitudo pada tiap data rekaman sinyal suara.
Setelah proses normalisasi, maka nilai-nilai yang ada pada matriks tersebut akan dirata-rata. Nilai rata-rata yang didapatkan pada matriks amplitudo yang sudah ternormalisasi dari sinyal suara salah satu responden laki-laki saat pengucapan huruf “a” adalah 0.4819.
Agar semua nilai seragam, maka nilai waktu pun harus dinormalisasi juga. Adapun nilai waktu dan frekuensi yang digunakan adalah tetap pada nilai waktu dan frekuensi saat amplitudo tertinggi, namun nilai waktu dan frekuensi tersebut adalah nilai yang sudah ternormalisasi.
Seluruh nilai-nilai STFT, nilai rata-rata amplitudo, waktu, dan frekuensi yang sudah ternormalisasi dikumpulkan menjadi satu tabel untuk digolongkan berdasarkan jenis kelamin dan huruf vokalnya. Seperti tertera pada tabel 4.17.
(75)
72
sampai tabel 4.21. untuk suara laki-laki, dan tabel 4.22. sampai tabel 4.26. untuk suara perempuan
Tabel 4.17. Hasil ekstraksi ciri sinyal suara “a” pada laki-laki yang sudah dinormalisasi
Nama
File Nilai STFT
Rata-rata amplitudo
Saat Amplitudo Maksimal
waktu frekuensi
a1 0.0061 0.4819 0.2985 0.0308
a2 0.0051 0.4604 0.1818 0.0400
a3 0.0050 0.4879 0.0545 0.0420
a4 0.0067 0.4459 0.2373 0.0405
a5 0.0084 0.4713 0.6571 0.0308
a6 0.0068 0.4907 0.2333 0.0332
a7 0.0125 0.4805 0.1786 0.0376
a8 0.0086 0.5221 0.1702 0.0356
a9 0.0125 0.5276 0.2667 0.0371
a10 0.0054 0.4717 0.1034 0.0366
a11 0.0137 0.5296 0.1846 0.0596
a12 0.0071 0.4707 0.0000 0.0337
a13 0.0077 0.5120 0.3590 0.0396
a14 0.0106 0.5207 0.1613 0.0415
a15 0.0077 0.5194 0.3038 0.0347
Tabel 4.18. Hasil ekstraksi ciri sinyal suara “e” pada laki-laki yang sudah dinormalisasi
Nama
File Nilai STFT
Rata-rata amplitudo
Saat Amplitudo Maksimal
waktu frekuensi
e1 0.0074 0.5181 0.6000 0.0205
e2 0.0056 0.4693 0.6731 0.0176
e3 0.0074 0.5778 0.0612 0.0244
e4 0.0056 0.4717 0.3810 0.0220
e5 0.0042 0.4685 0.5400 0.0181
(76)
e7 0.0057 0.4974 0.2571 0.0210
e8 0.0092 0.4768 0.4000 0.0234
e9 0.0063 0.5023 0.6923 0.0200
e10 0.0062 0.5261 0.2982 0.0225
e11 0.0112 0.5355 0.6056 0.0195
e12 0.0045 0.5047 0.2222 0.0195
e13 0.0043 0.4759 0.2143 0.0215
e14 0.0141 0.5220 0.0588 0.0264
e15 0.0093 0.5087 0.4444 0.0195
.
Tabel 4.19. Hasil ekstraksi ciri sinyal suara “i” pada laki-laki yang sudah dinormalisasi
Nama
File Nilai STFT
Rata-rata amplitudo
Saat Amplitudo Maksimal
waktu frekuensi
i1 0.0068 0.5519 0.6324 0.0127
i2 0.0041 0.4991 0.4694 0.0171
i3 0.0046 0.5121 0.1154 0.0093
i4 0.0049 0.5251 0.1091 0.0156
i5 0.0055 0.4694 0.1667 0.0112
i6 0.0060 0.4897 0.1750 0.0186
i7 0.0045 0.4989 0.3014 0.0156
i8 0.0057 0.5764 0.1833 0.0127
i9 0.0053 0.4751 0.3143 0.0146
i10 0.0037 0.5169 0.1186 0.0151
i11 0.0079 0.5551 0.0000 0.0205
i12 0.0106 0.5109 0.0469 0.0098
i13 0.0045 0.4947 0.9571 0.0146
i14 0.0136 0.5441 0.2759 0.1240
i15 0.0073 0.4904 0.3269 0.0127
(77)
74
Tabel 4.20. Hasil ekstraksi ciri sinyal suara “o” pada laki-laki yang sudah dinormalisasi
Nama
File Nilai STFT
Rata-rata amplitudo
Saat Amplitudo Maksimal
waktu frekuensi
o1 0.0042 0.4419 0.5541 0.0210
o2 0.0046 0.4818 0.0784 0.0234
o3 0.0038 0.4864 0.0545 0.0200
o4 0.0046 0.4297 0.1633 0.0205
o5 0.0068 0.4465 0.1818 0.0181
o6 0.0044 0.4190 0.5432 0.0186
o7 0.0045 0.4469 0.2500 0.0195
o8 0.0063 0.4772 0.2264 0.0415
o9 0.0044 0.5052 0.4667 0.0210
o10 0.0044 0.4408 0.2083 0.0234
o11 0.0070 0.4467 0.0625 0.0244
o12 0.0039 0.4582 0.2278 0.0195
o13 0.0054 0.4649 0.3797 0.0220
o14 0.0054 0.4442 0.1714 0.0396
o15 0.0056 0.4447 0.3125 0.0190
.
Tabel 4.21. Hasil ekstraksi ciri sinyal suara “u” pada laki-laki yang sudah dinormalisasi
Nama
File Nilai STFT
Rata-rata amplitudo
Saat Amplitudo Maksimal
waktu frekuensi
u1 0.0035 0.4521 0.6290 0.0146
u2 0.0028 0.5142 0.2292 0.0171
u3 0.0028 0.4490 0.1091 0.0117
u4 0.0045 0.4339 0.8246 0.0151
u5 0.0057 0.4625 0.5690 0.0161
u6 0.0037 0.4207 0.3816 0.0195
u7 0.0027 0.4242 0.0896 0.0171
u8 0.0049 0.4517 0.6863 0.0186
(78)
u10 0.0042 0.5202 0.8302 0.0156
u11 0.0046 0.4999 0.3165 0.0142
u12 0.0043 0.4585 0.0500 0.0205
u13 0.0038 0.4814 0.1452 0.0151
u14 0.0035 0.4282 0.0968 0.0205
u15 0.0050 0.4622 0.6769 0.0127
Berdasarkan tabel 4.17. – tabel 4.21. nilai-nilai yang ada sudah menjadi seragam, yaitu berkisar antara 0 sampai 1.
Tabel 4.22. sampai tabel 4.26. adalah hasil ekstraksi ciri sinyal suara pada perempuan:
Tabel 4.22. Hasil ekstraksi ciri sinyal suara “a” pada perempuan yang sudah dinormalisasi
Nama
File Nilai STFT
Rata-rata amplitudo
Saat Amplitudo Maksimal
waktu frekuensi
a1 0.0068 0.5473 0.2857 0.0522
a2 0.0064 0.5506 0.1000 0.0454
a3 0.0046 0.4567 0.2264 0.0601
a4 0.0099 0.5817 0.4074 0.0591
a5 0.0146 0.5784 0.6923 0.1270
a6 0.0129 0.5367 0.7308 0.0967
a7 0.0113 0.4501 0.6000 0.0400
a8 0.0092 0.4921 0.0536 0.0669
a9 0.0111 0.4634 0.6875 0.0352
a10 0.0101 0.5044 0.7606 0.0386
a11 0.0063 0.4258 0.1600 0.0522
a12 0.0064 0.5284 0.7436 0.0576
a13 0.0097 0.6233 0.1509 0.0503
a14 0.0102 0.5412 0.2500 0.0459
(79)
76
Tabel 4.23. Hasil ekstraksi ciri sinyal suara “e” pada perempuan yang sudah dinormalisasi
Nama
File Nilai STFT
Rata-rata amplitudo
Saat Amplitudo Maksimal
waktu frekuensi
e1 0.0075 0.5562 0.4872 0.0313
e2 0.0056 0.5112 0.0400 0.0288
e3 0.0083 0.4709 0.2619 0.0298
e4 0.0065 0.5474 0.3951 0.0327
e5 0.0142 0.5139 0.3000 0.0571
e6 0.0203 0.5803 0.5200 0.0596
e7 0.0085 0.4637 0.5323 0.0190
e8 0.0090 0.5084 0.0323 0.0254
e9 0.0072 0.4943 0.2692 0.0181
e10 0.0087 0.4969 0.3286 0.0176
e11 0.0057 0.4774 0.3226 0.0098
e12 0.0090 0.4711 0.2286 0.0264
e13 0.0098 0.5805 0.4211 0.0283
e14 0.0135 0.4727 0.1667 0.0190
e15 0.0079 0.5184 0.4146 0.0327
.
Tabel 4.24. Hasil ekstraksi ciri sinyal suara “i” pada perempuan yang sudah dinormalisasi
Nama
File Nilai STFT
Rata-rata amplitudo
Saat Amplitudo Maksimal
waktu frekuensi
i1 0.0084 0.5143 0.4286 0.1416
i2 0.0072 0.4995 0.9737 0.0151
i3 0.0112 0.5813 0.7143 0.1475
i4 0.0155 0.5659 0.3143 0.1265
i5 0.0128 0.5486 0.9286 0.0601
i6 0.0268 0.6026 0.5385 0.5474
i7 0.0072 0.4886 0.8222 0.0176
i8 0.0123 0.4706 0.6111 0.0190
(1)
86
Gambar 4.21. Hasil keluaran program pengujian data training.
Dapat dilihat pada grafik presentase dan tabel 4.29., bahwa sistem sudah dapat mengenali data. Terlihat pada gambar 4.21., bahwa sistem mengenali data training 1-15 adalah perempuan, dan 16-30 adalah laki-laki. Pelatihan data ini berlangsung selama 10000 iterasi dengan nilai MSE yaitu PPP adalah 0.0107.
(2)
87
Dengan nilai bobot optimal yang sudah tersimpan tadi, maka akan diuji sebuah data baru dengan harapannya, data tersebut dapat langsung diidentifikasi jenis kelaminnya. Perlu diketahui bahwa pada pengujian, algoritma backpropagation cukup hanya dilakukan proses feed forward, sehingga nilai yang dikeluarkan langsung diidentifikasi.
Tabel 4.30 menunjukkan persentase keberhasilan pengenalan pada data baru Tabel 4.30. Persentase keberhasilan pengenalan pada data baru
Jenis kelamin Banyak data pelatihan (buah). Data yang berhasil dikenali (buah). Kesalahan pengenalan (buah) Persentase Keberhasilan (%)
Laki-laki 7 6 1 86%
Perempuan 7 6 1 86%
Jumlah persentase total 86%
Saat pengujian pada data baru, sistem juga dapat mengidentifikasi suara laki-laki dan perempuan, namun terjadi kesalahan pada masing masing suara seperti terlihat pada tabel 4.30. Hal ini dapat terjadi karena ada kemiripan suara laki-laki pada perempuan saat perekaman suara, sehingga akan menghasilkan fitur-fitur suara hampir sama dengan laki-laki, maupun kemiripan suara perempuan pada suara laki-laki. Hal ini juga dapat dipengaruhi dari kurang banyaknya data pelatihan, sehingga untuk bisa mengenali, sistem perlu banyak mengenali banyak data untuk memahami berbagai macam pola. Dari tabel 4.30. dapat dibuat dalam bentuk grafik seperti pada gambar 4.22.
(3)
88
5.4 5.6 5.8 6 6.2 6.4 6.6 6.8 7
Laki-laki Perempuan
Banyak data pelatihan Banyak data yang berhasil dikenali
Gambar 4.22. Grafik persentase keberhasilan pengenalan pada salah satu data baru.
Gambar 4.22. dan tabel 4.30. menunjukkan bahwa presentase pengujian 14 data baru yang belum pernah dilatih, yaitu sebanyak 7 data laki-laki dan 7 data perempuan. Terjadi kesalahan pengenalan satu data training pada masing-masing data uji laki-laki dan perempuan, sehingga yang berhasil dikenali adalah 6 data laki-laki dan 6 data perempuan dengan tingkat keberhasilan masing-masing adalah 86%.
Gambar 4.23. Hasil keluaran program pengujian salah satu data baru laki-laki. Gambar 4.23. merupakan keluaran program pengujian backpropagation, yaitu berupa status yang menunjukkan bahwa data yang diuji saat itu adalah data laki-laki. Dengan tampilan status tersebut maka program berhasil mengenali data suara laki-laki yang saat itu dijadikan sebagai data uji.
(4)
89
BAB V
PENUTUP
5.1.Kesimpulan
Berdasarkan penelitian yang telah dilakukan pada perangkat lunak untuk pengambilan fitur suara manusia, maka dapat diambil kesimpulan sebagai berikut: 1. Ekstraksi ciri yang dilakukan pada suara manusia menggunakan metode short time fourier transform, bertujuan untuk mengambil fitur suara yang terdapat pada suara manusia. Yaitu STFT value, rata-rata amplitudo, besaran waktu (sekon) dan frekuensi (Hz) saat amplitudo tertinggi.
2. Data yang didapatkan dari ekstraksi short time fourier transform (STFT) dinormalisasikan terlebih dahulu, kemudian dilatihkan ke backpropagation hingga mendapatkan bobot yang optimal agar nantinya backpropagation dapat mengidentifikasikan suara manusia berdasarkan jenis kelamin dengan benar.
3.
Dari hasil identifikasi yang sudah dilakukan, persentase keberhasilan pengujian pengenalan data suara baru pada laki-laki adalah sebesar 86%, dan pada perempuan adalah sebesar 86%.5.2.Saran
Beberapa saran yang diberikan untuk penelitian ini adalah sebagai berikut: 1. Dapat dikembangkan dengan menggunakan metode ekstraksi ciri yang lain
selain metode STFT, maupun metode JST yang lainnya.
2. Program ini dapat dikembangkan untuk mengenali pengucapan huruf-huruf konsonan, pengucapan kata maupun kalimat.
(5)
90
DAFTAR PUSTAKA
F.Suhandi Krisna, 2009, Prediksi Harga Saham dengan Pendekatan Artificial Neural Network menggunakan Algoritma Backpropagation.
Gultom, Junelia. 2012. Deteksi Nada Pada Saksofon Menggunakan Algoritma Short Time Fourier Transform (STFT) Dan Jaringan Saraf Tiruan (JST). Fakultas Elektro Dan Komunikasi Institut Teknologi Telkom Bandung. Hayadi, Tulus., Suprapto, Yoyon K., Sumpeno, Surya. 2012. Estimasi Sinyal
Gamelan Menggunakan Kalman Filter untuk transkripsi. Jurusan Teknik Elektro FTI – ITS.
Jong, J.S., 2005. Jaringan Syaraf Tiruan dan Pemrogramannya Menggunakan Matlab. Yogyakarta, Andi
Kawengian, Riane., Wuwung, Janny O., Sugiarso, Brave A., Lumenta, Arie S.M. 2013. Rancang Bangun Alat Pengendali Elektronik Universal Menggunakan Suara Manusia. Jurusan Teknik Elektro-FT, UNSRAT, Manado.
Kiki., Kusumadewi, Sri. 2004. Analisis Jaringan Saraf Tiruan dengan Metode Backpropagation Untuk Mendeteksi Gangguan Psikologi. Universitas Islam Indonesia.
Safriadi., Risawandi. 2014. Identifikasi Gender Melalui Suara Menggunakan Metode Discrete Fourier Transform (DFT). Jurusan Teknik Informatika, Universitas Sumatra Utara. SNITI, ISBN : 979-458-757-5.
Wijayanto, Inung., Dwifebrianti, Reni. 2013. Jenis Tipe Jangkauan Suara Pada Pria Dan Wanita Menggunakan Metoda Mel-Frequency Cepstral Coefficient
(6)
91
Dan Jaringan Syaraf Tiruan Backpropagation. Fakultas Elektro dan Komunikasi, Insitut Teknologi Telkom Bandung.
Utari, Wirda Ayu. 2010. Pengenalan Pola Dengan Menggunakan MetodeBackpropagation Menggunakan Matlab. Universitas Gunadarma.