BAB III METODOLOGI PENELITIAN
3.4 Perangkat Penelitian
Dalam penelitian ini penulis menggunakan perangkat keras (hardware) dan persngkat lunak (software) sebagai berikut:
1. Perangkat keras (hardware):
Tabel 3.2 Perangkat Keras
No. Peangkat Keras Spesifikasi
1. Device Laptop Lenovo B40-70
2. Processor Core i3 @1.70 GHz
3. Monitor 14 inch
4. VGA R5 2GB
5. Memori (RAM) 2.00 GB
6. Keyboard dan Mouse Standard
No. Peangkat Keras Spesifikasi
7. Speaker Standard
2. Perangkat lunak (Software):
Tabel 3.3 Perangkat Lunak
No. Perangkat Lunak Spesifikasi
1. Sistem Operasi Windows 8.1 Profesional 64-bit
2. Tools Matlab R2014a
3. Bahasa Pemrograman Matlab
51
BAB IV
IMPLEMENTASI EKSPERIMEN
4.1 Problem Formulation
Merujuk penelitian sebelumya, yaitu penelitian yang dilakukan oleh Ifnani Ifka (2013), mahasiswa Universitas Negeri Semarang menyatakan bahwa warga Desa Saradan Kecamatan Baturetno Kabupaten Wonogiri terdapat kesulitan dalam pelafalan beberapa huruf hijaiyah yang di simpulkan dalam data tabel berikut ini.
Tabel 4.1 Jumlah Perubahan Kata dari Kesalahan Pelafalan
No. Jumlah
Sehingga disimpulkan beberapa faktor penyebab kesulitan huruf hijaiyah yang terjadi pada warga Desa Saradan Baturetno Wonogiri adalah karena faktor 1) kebiasaan dari lingkungan, 2) pengaruh bahasa pertama (ibu) yaitu dialek Jawa (medok) dan 3) letak artikulasi (makhorijul huruf) (Ifka, 2013). Oleh karena itu,
UIN Syarif Hidayatullah Jakarta
mempelajari makhorijul huruf merupakan suatu hal yang penting dalam pelafalan huruf hijaiyah supaya tidak terjadi perubahan makna ketika membaca al-Qur’an.
Dengan demikian, maka penulis menggunakan objek pelafalan huruf hijaiyah pada penelitian ini menggunakan 8 huruf-huruf hijaiyah yaitu ق ز ذ ص س ع ء ك yang sering salah ketika dilafalkan merujuk pada penelitian sebelumnya oleh Ifnani Ifka (2013). Dengan melakukan penelusuran beberapa penelitian sebelumnya tentang identifkasi suara menggunakan berbagai macam metode pengenalan. Pada studi literatur sejenis, peneliti telah mengumpulkan 3 penelitian sejenis berupa jurnal penelitian yang berasal dari penulusuran online. Pada hasil penelusuran ini diuraikan kelebihan dan kekurangan dari ketiga penelitian tersebut yang nantinya menjadi bahan pertimbangan peneliti sebagai acuan untuk menghasilkan pengenalan dan identifikasi suara yang lebih baik.
Berdasarkan permasalahan di atas, penulis menerapkan metode ekstraksi ciri yaitu mel-frequency cepstrum coefficients sebagai proses untuk mengkonversi sinyal suara menjadi beberapa parameter yang mampu menangkap karakteristik suara yang sangat penting bagi pengenalan suara. Selain itu, penulis juga menerapkan salah satu metode klasifikasi yaitu jaringan syaraf tiruan backpropagation yang nantinya akan memberikan hasil klasifikasi suara huruf hijaiyah yang telah diinput.
Pada penelitian ini, masalah yang harus diseleseikan adalah bagaimana melakukan identifikasi pelafalan huruf hijaiyah menggunakan algoritma ekstraksi ciri yaitu mel-frequency cepstrum coefficients dan jaringan syaraf tiruan backpropagation sebagai metode klasifikasi. Dengan melakukan simulasi pada sistem yang telah dibuat menggunakan parameter pengaruh hasil dari klasifikasi,
learning rate, maksimal epoch terhadap akurasi dari identifikasi pelafalan tersebut.
4.2 Conceptual Model
Seni dan ilmu untuk memodifikasi data seri waktu untuk keperluan analisis atau peningkatan disebut dengan signal processing. Seperti analisis spektral (menggunakan Fast Fourier atau transformasi lainnya) dan meningkatkan data yang diperoleh menggunakan penyaringan digital (www.wavemetrics.com). Dalam
UIN Syarif Hidayatullah Jakarta
produksi suara, dalam sistem komunikasi elektronik yang direkayasa manusia, informasi yang akan ditransmisikan dikodekan dalam bentuk terus menerus pada berbagai bentuk gelombang (analog) yang dapat ditransmisikan, direkam, dimanipulasi, dan akhirnya diterjemahkan oleh pendengar manusia. (Jurafsky dan Martin, 2017).
Peneliti membuat model konseptual yang berisi langkah-langkah yang dilakukan dalam penelitian untuk melakukan identifikasi pelafalan huruf hijaiyah menggunakan metode mel-frequency cepstral coefficient kemudian diklasifkasikan menggunakan jaringan syaraf tiruan backpropagaton. Menurut Jurafsky dan Martin (2017), dalam bukunya “Speech and Language Processing an Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition” signal processing merupakan proses memanipulasi sinyal untuk mengubah karakteristik atau mengekstrak informasi. Tidak ada kumpulan fitur
“standar” untuk pengenalan suara. Sebagai gantinya, berbagai kombinasi fitur akustik, artikulatoris, dan pendengaran telah digunakan dalam berbagai sistem pengenalan suara. Fitur akustik yang paling populer adalah mel-frekuensi (koefisien cepstrum) dan turunannya. Sehingga mel-frequency cepstral coefficient termasuk bagian dari signal processing.
Maka penulis menggunakan metode mel-frequency cepstral coefficient sebagai metode ekstraksi ciri dari pelafalan 8 huruf hijaiyah. Adapun juan dari tahapan ini, yaitu untuk menjawab pertanyaan permasalahan yang telah didefinisikan sebelumnya. Adapun langkah-langkahnya adalah sebagai berikut:
Gambar 4.1 Alur Conceptual Model Identifikasi Pelafalan Huruf Hijaiyah
UIN Syarif Hidayatullah Jakarta
Gambar diatas merupakan alur conceptual model secara detail. Yang dimulai dari tahap ekstraksi ciri, proses pelatihan dan proses identifikasi.
4.3 Collection of Input Data
Untuk mendapatkan data atau informasi yang dibutuhkan sebagai objek penelitian ini yaitu suara pelafalan huruf hijaiyah. Observasi ini dilakukan menggunakan perekaman suara kepada qori’-qori’ah yang sering mengikuti dan menjuarai kompetisi baik tingkat provinsi maupun tingkat nasional yang ada di Pondok Pesantren al-Qur’an Batul Qurro yang didirikan oleh Dra. Hj. Maria Ulfah, MA. Seperti yang disebutkan pada laman suara suarapesantren.net (2016), beliau merupakan qori’ah terbaik I STQ Nasional 1980 dan Juara I MTQ Internasional di Malaysia.
Menggunakan teknik pengambilan sampel stratified random sampling, merupakan teknik pengambilan sampel berstrata, yaitu suatu subsampel acak sederhana ditarik dari setiap strata yang kurang lebih sama dalam beberapa karakteristik. Dalam hal ini, seluruh binaan di Pondok Pesantren al-Qur’an Baitul Qurro merupakan populasi. Secara khusus, penelitian ini mengarah pada pelafalan huruf hijaiyah yang baik dan benar sesuai makharijul huruf. Oleh karena itu, peneliti mengerucutkan pada subsampel acak sederhana sesuai dengan karakteristik yang dituju yaitu power suara dari penutur dalam melafalkan huruf hijaiyah yang sesuai dengan makharijul huruf. Dengan demikian, penelitian ini menggunakan perekaman suara dari qori’-qori’ah nasional yang berjumlah 5 orang, di antaranya adalah:
56
Tabel 4.2 Data Responden
No Nama Jenis
Kelamin
Usia Keterangan Nama File Waktu Pengambilan
Suara
1 Miftah Farid L 15
Tahun
Juara 1 Semesta Bertilawah MNCTV
sa(5).wav sho(5).wav dza(5).wav za(5).wav qo(5).wav ka(5).wav a(5).wav
sa(2).wav sho(2).wav dza(2).wav za(2).wav qo(2).wav ka(2).wav a(2).wav
sa(1).wav sho(1).wav dza(1).wav za(1).wav qo(1).wav ka(1).wav a(1).wav
sa(3).wav sho(3).wav dza(3).wav za(3).wav qo(3).wav ka(3).wav a(3).wav
sa(4).wav sho(4).wav dza(4).wav za(4).wav qo(4).wav ka(4).wav a(4).wav
‘a(4).wav
18/12/2017 Pukul 17:25 WIB
UIN Syarif Hidayatullah Jakarta
56
Proses pengambilan suara ini menggunakan alat bantu yaitu smartphone.
Masing-masing orang melafalkan huruf hijaiyah yang telah ditentukan yaitu huruf ع ء ك ق ز ذ ص س berharakat fathah sebanyak 1 kali sehingga jumlah seluruh sampel yang digunakan sebanyak 40 buah. Kemudian suara rekaman yang berformat *.mp3 dikonversikan menjadi *.wav menggunakan bantuan converter secara online pada laman https://online-audio-converter kemudian dipotong menjadi suatu pelafalan satu huruf hijaiyah per-filenya secara online menggunakan bantuan https://audiotrimmer.com pelafalan huruf hijaiyah tersebut disimpan pada komputer agar suara yang diinputkan dapat diolah.
Gambar 4.2 Database Instrumen Suara
Dari 40 buah sampel, akan dibagi menjadi data latih dan data uji. Data latih berjumlah 24 buah sinyal suara dan data uji berjumlah 16 buah sinyal suara.
Tabel 4.3 Data
UIN Syarif Hidayatullah Jakarta
4.4 Modelling
1. Pre-Processing Mengggunakan Proses Pre-Emphasis
Pada tahap modelling ini, penulis menggunakan sampel file “a(1).wav”
untuk diekstraksi. Setelah sinyal suara dimasukkan akan keluar bentuk gelombang sinyal suara dari file “a(1).wav” seperti gambar berikut.
Gambar 4.3 Gelombang Sinyal “a(1).wav” Sebelum Dilakukan Pre-emphasis
Setelah itu akan keluar nilai sinyal yang diinput seperti pada tabel di bawah ini. Tabel 4.4 merupakan sebagian nilai dari seluruh indeks yang terdeteksi pada sinyal “a(1).wav”. Terlihat bahwa pada indeks ke-0 sampai ke-4315 bernilai 0 dan pada indeks selanjutnya terdapat nilai yang berbeda dari sebelumnya.
Tabel 4.4 Sample Sebagian Sinyal Suara “a(1).wav” Filter Pre-Emphasis Dalam Domain Waktu
Indeks Sample Sinyal Suara Sebelum Melalui Filter Pre-Emphasis
0 s/d 4315 0,0
4316 3.05175781250000e-05
4317 3.05175781250000e-05
4318 3.05175781250000e-05
4319 3.05175781250000e-05
4320 3.05175781250000e-05
4321 6.10351562500000e-05
Kemudian dihitung nilai dari pre-emphasis setiap file suara pelafalan 8 huruf hijaiyah yang diucapkan oleh satu orang yang sama. Berikut contoh perhitungan manual nilai pre-emphasis yang diambil dari file “a(1).wa” dari tabel 4.4. Penulis mengambil nilai sample sinyal suara pada indeks 4316 untuk
UIN Syarif Hidayatullah Jakarta
menggambarkan perhitungan pre-emphasis, dikarenakan indeks sebelumnya bernilai 0.0.
𝑆𝑝(𝑛) = s(n) - 0.97 s(n-1)
𝑆𝑝(4316)= 𝑠(4316)− 0.97 𝑠 (4316 − 1) 𝑆𝑝(4316)= 3.0518𝐸−5− 0.97 𝑠 (0.0) 𝑆𝑝(4316)= 3.0518𝐸−5− 0
𝑆𝑝(4316)= 3.0518𝐸−5
Data sinyal baru adalah data sinyal sebelum proses pre-emphasis ditambah dengan data hasil pre-emphasis diatas. Sehingga sinyal setelah pre-emphasis:
Nn = Nn + Yn N4316 = N4316 + Y4316
= 3.0518𝐸−5 + 3.0518𝐸−5 = 6.0136E-5
Tabel 4.5 Contoh Perhitungan Sinyal “a(1).wav” Hasil Filter Pre-emphasis
No S(n) Sinyal Original Sinyal Pre-emphasis 1 S(4316) 3.05175781250000e-05 3.05175781250000e-05 2 S(4317) 3.05175781250000e-05 1.52587890625000e-06 3 S(4318) 3.05175781250000e-05 1.52587890625000e-06 4 S(4319) 3.05175781250000e-05 1.52587890625000e-06 5 S(4320) 3.05175781250000e-05 1.52587890625000e-06 6 S(4321) 6.10351562500000e-05 3.20434570312500e-05
Sebelum Pre-emphasis Sesudah Pre-emphasis
Gambar 4.4 Perbandingan Bentuk Gelombang File “a(1).wav”
Sesudah dan Sebelum Pre-emphasis
UIN Syarif Hidayatullah Jakarta
Sehingga diperoleh perbedaan sinyal hasil dari sebelum proses pre-emphasis dan sesudah pre-pre-emphasis sebagaimana pada tabel 4.5. Terlihat bahwa nilai hasil pre-emphasis mengalami penurunan dari nilai sebelumnya.
Membuktikan bahwa pada proses pre-emphasis terjadi penekanan pada sinyal suara.
2. Frame Blocking dan Windowing
Pada tahap frame blocking, proses ini membagi sinyal suara ke dalam frame tertentu. Satu frame terdiri dari beberapa sampel tergantung tiap detik suara yang akan disampel dan berapa besar frekuensi suara. Hasil dari proses pre-emphasis file a(1).wav kemudian dipotong-potong menjadi beberapa potongan kecil, setiap potongan tersebut disebut frame. Untuk menghitung jumlah frame yang digunakan adalah sebagaimana rumus berikut:
Menggunakan frame size (N) = 512 dan overlap (M) = 100 sehingga:
Jumlah Frame = ((I - N) / M) + 1
= ((44100 - 512) / 100) + 1 = 436
Pada frame blocking, tidak dilakukan untuk semua frame yang ada.
Pengujian dilakukan untuk beberapa frame tertentu. Contoh nilai frame yang digunakan dari framesize file a(1).wav ditunjukkan oleh tabel berikut:
Tabel 4.6 Hasil Sebagian Frame Blocking Sinyal Suara “a(1).wav”
Framesize ke (n) Frame
UIN Syarif Hidayatullah Jakarta
Langkah selanjutnya adalah menghaluskan masing-masing frame untuk meminimalkan sinyal yang tidak kontinu pada awal dan akhir masing-masing frame. Fungsi window yang digunakan adalah yang bernilai maksimum 1 untuk daerah di dalam window dan nol untuk daerah yang lain. Window bergerak sepanjang isyarat suara dan mengekstraksi bentuk isyarat yang berada di dalamnya.
Pada penelitian ini digunakan fungsi hamming window yang dinyatakan oleh persamaan berikut Hal ini dilakukan menggunakan hamming window, berikut rumusnya:
Diperoleh hasil hamming windowing sebagai berikut pada w ke-497 𝑤(497) = 0.54 − 0.46cos (2 ∗ 3.14 ∗ 2.68554687500000𝑒 − 05
512 − 1
= 0.0878018359210797
Untuk data hasil frame blocking pada frame ke-1 seperti pada tabel 4.7 adalah 0.0878018359210797. Maka hasil dari widowing adalah:
X [497] = X [497] * W [497]
= 2.68554687500000e-05 * 0.0878018359210797
= 0.0241148635288356
Berikut hasil dari proses windowing menggunakan file a(1).wav yang menggunakan nilai frame seperti pada tabel 4.6.
Tabel 4.7 Hasil Sebagian Windowing Sinyal Suara “a(1).wav”
Framesize ke (n) Windowing
497 0.0241148635288356
UIN Syarif Hidayatullah Jakarta
3. Fast Fourier Transform (FFT)
Analisa berdasarkan fourier transform sama artinya dengan analisa spektrum, karena fourier transform merubah signal digital dari domain waktu ke domain frekuensi.
Diketahui sinyal hasil windowing file “a(1).wav” pada tabel 4.7:
(0.0241, 0.0043, 0.0245, 0.0216, -0.0002, 0.0359) sebagai contoh, menggunakan 6 data dari hasil windowing, maka untuk F0, maka diperoleh perhitungan sebagai
Kemudian perhitungan magnitude dari hasil bilangan complex adalah sebagai berikut:
|𝑓(0)|=|[𝑅2+ 𝐼2]|= √(0,01836667)2+ (0)2= 0,01836667
Sehingga F0 = 0,01836667 menggunakan cara yang sama dilakukan kepada kelima data sinyal lainnya yang nantinya akan diperoleh data sinyal hasil fast fourier transform anatara lain:
Tabel 4.8 Hasil Sebagian Fast Fourier Transform Sinyal Suara “a(1).wav”
Hasil Fast Fourier Transform ke-n Fast Fourier Transform
F0 0.01836667
UIN Syarif Hidayatullah Jakarta
4. Mel-Frequency Wrapping (Filterbank)
Tahap selajutnya adalah melakukan filterbank atau disebut dengan filter triangular. Diketahui sinyal hasil fast fourier transform sebelumya (F0) pada tabel 4.8 adalah 0,01836667 maka:
Dengan mengulang cara yang sama, didapatkan hasil dari filterbank adalah:
Tabel 4.9 Hasil Sebagian Mel-Frequency Wrapping Sinyal Suara “a(1).wav”
Hasil filterbank (Mel-Frequency
5. Discrete Cosine Transform (DCT)
Kemudian melewati tahap akhir dari feature extraction yaitu Discrete cosine transform.
UIN Syarif Hidayatullah Jakarta
6. Cepstral Liftering
Hasil dari fungsi discrete cosine transform adalah merupakan hasil akhir dari proses feature extraction. Namun, guna meningkatkan kualitas pengenalan dari pelafalan huruf hijaiyah, maka cepstrum hasil dari discrete cosine transform harus melewati proses cepstral liftering terlebih dahulu. Diketahui nilai discrete cosine transform sebelumnya adalah 19,8
𝑤[0] = {19.8 ∗ 6
2∗ sin 𝜋
5} = 34.914
Hasil dari feature extraction dari file sinyal suara bernama “a(1).wav”
adalah 34.914. Sedangkan perbedaan hasil siyal suara pelafalan “a(1).wav” yang telah melalui proses cepstral liftering dapat dilihat pada gambar berikut.
Original Wave Cepstrum Signal
Gambar 4.5 Perbandingan Bentuk Gelombang File “a(1).wav”
Sesudah dan Sebelum Ekstraksi Ciri
7. Algoritma Jaringan Syaraf Tiruan Backpropagation
Pada algoritma jaringan syaraf tiruan ini, digunakan tiga lapisan antara lain lapisan input, lapisan tersembunyi (hidden layer) dan lapian output. Parameter yang terdeteksi pada signal suara ini akan menjadi masukan pada lapisan input menggunakan jumlah titik simpul (node) pada input adalah sebanyak 2 unit, menggunakan data masukan berupa koefisien Cepstrum (C) dan Time (t). Lapisan tersembunyi terdiri dari 3 kali noda input dan lapisan output terdiri atas satu titik simpul. Output terdiri atas 8 keputusan
Data input yang diberikan pada input layer antara lain:
X1 = Koefisien Cepstrum (C)
X2 = Time (t)
UIN Syarif Hidayatullah Jakarta
Output terdiri atas 8 keputusan (target) yaitu: 1, 2, 3, 4, 5, 6, 7, dan 8 dengan label:
1 = sa (س)
2 = sho (ص)
3 = dza (ذ)
4 = za (ز)
5 = qo (ق)
6 = ka (ك)
7 = a (ء)
8 = ‘a (ع)
Data input di atas akan diproses menggunakan algoritma jaringan syaraf tiruan backpropagation. Proses dilakukan menggunakan beberapa urutan langkah untuk mencari nilai laju pembelajaran (learning rate) dan nilai momentum (kecepatan perubahan bobot neuron) yang sesuai, kemudian mencoba keduanya menggunakan beberapa jumlah iterasi yang berbeda.
Menggunakan layer tersembunyi (hidden layer) sebanyak 3 unit dan 2 masukan X1 dan X2.
Berikut langkah-langkah pembelajaran data latih:
a. Inisialisasi bobot awal menggunakan bilangan acak
Langkah yang pertama adalah memberi bobot vij menggunakan nilai acak yang kecil kisaran -1 sampai 1. Seperti dimisalkan pada tabel berikut:
Tabel 4.10 Perhintungan Jaringan Syaraf Tiruan (1)
Z1 Z2 Z3
X1 -0,3 -0,2 0,1
X2 0,1 0,4 -0,2
1 -0,3 -0,3 0,3
UIN Syarif Hidayatullah Jakarta
Kemudian beri bobot awal Wjk
Tabel 4.11 Perhintungan Jaringan Syaraf Tiruan (2)
Y
Jumlahkan semua sinyal yang masuk ke hidden unit
Selanjutnya, menghitung keluaran unit tersembunyi (hidden layer) (Zj) menggunakan rumus berikut:
Keterangan:
z_netj = total sinyal masukan pada hidden unit j xi = nilai masukan pada unit i
Jumlahkan semua sinyal yang masuk ke output unit k 𝑌𝑛𝑒𝑡 𝑘= 𝑊0 𝑗+ ∑𝑧𝑗𝑤𝑗𝑘
𝑚
𝑘=1
Keterangan:
y_netk = total sinyal masukan pada output unit k
UIN Syarif Hidayatullah Jakarta
Hitung keluaran pada semua unit pada output layer
𝑦 = 1
1 + 𝑒−0,13 = 0,53
c. Propagasi mundur
Hitung faktor kesalahan (δ) pada output layer
Keterangan:
δk = daktor kesalahan pada output unit k Yk = keluaran pada output unit k
δk = (𝑡𝑘− 𝑦𝑘) f’ (𝑌𝑛𝑒𝑡 𝑘) = (𝑡𝑘− 𝑦𝑘) 𝑦𝑘 (1 − 𝑦𝑘)
Karena jaringan hanya memiliki satu keluaran, dan target yang ditentukan adalah 0 maka:
UIN Syarif Hidayatullah Jakarta
∆𝑤31 = 0,2 (-0,13) (0,45) = -0,01
Hitung penjumlahan kesalahan dari unit tersembunyi
Karena jaringan hanya memiliki satu unit keluaran, maka:
𝛿𝑛𝑒𝑡 𝑗 = 𝛿 𝑤𝑗 1 (𝑗 = 1,2,3)
𝛿𝑛𝑒𝑡 1 =(−0,13)(0,5)= −0,065 𝛿𝑛𝑒𝑡 2 =(−0,13)(−0,4)= 0,052 𝛿𝑛𝑒𝑡 3 =(−0,13)(−0,3)= 0,039
Hitung faktor kesalahan pada hidden layer
𝛿1 = −0,065 (0,62)(1 − 0,62)= -0,02 𝛿2 = 0,052 (0,52)(1 − 0,52)= 0,01 𝛿3 = 0,039 (0,45)(1 − 0,45)= 0,01
Hitung perubahan bobotnya (𝑗 = 1,2,3 𝑖 = 0,1,2)
Tabel 4.12 Perhintungan Jaringan Syaraf Tiruan (3)
Z1 Z2 Z3
UIN Syarif Hidayatullah Jakarta
g. Perubahan bobot
Ubah bobot yang menuju output layer
𝑤𝑗𝑘 (baru) = 𝑤𝑗𝑘 (lama) + ∆𝑤𝑗𝑘 (k =1 ; j = 0,1,2,3) 𝑤11 (baru) = 0,5 – 0,02 = 0,48
𝑤21 (baru) = -0,4 – 0,01 = -0,41 𝑤31 (baru) = -0,3 – 0,01= -0,31 𝑤01 (baru) = -0,1 – 0,03 = -0,13
Ubah bobot yang menuju hidden layer
𝑣𝑖𝑗 (baru) = 𝑣𝑖𝑗 (lama) + ∆𝑣𝑖𝑗 (j = 1,2,3 ; i = 0,1,2)
Tabel 4.13 Perhintungan Jaringan Syaraf Tiruan (4)
Z1 Z2 Z3
X1 𝑣11= -0,3 + 0 =-0,3 𝑣12= -0,2 + 0 = 0,2 𝑣13 = 0,1 + 0 = 0,1 X2 𝑣21= 0,1 + 0 = 0,1 𝑣22= 0,4 + 0 = 04 𝑣23 = -0,2 + 0 = -0,2 1 𝑣01= -0,3 + 0 = -0,3 𝑣02 = -0,3+ 0 = -0,3 𝑣03 = 0,3 + 0 = 0,3
Kemudian iterasi diteruskan untuk pola kedua (X1 =1, X2 = 0, t = 1) dan seterusnya.
4.5 Simulation
Simulasi ini dibuat menggunakan MATLAB 2014a yang menggunakan tahap yang sesuai dengan alur sistem yang dirancang pada tahap pemodelan. Pada tahap ini, dilakukan dengan memeriksa kesesuaian proses simulasi pada program yang telah dibuat dengan hasil running pada komputer. Hal ini dilakukan dengan tujuan memastikan bahwa proses simulasi menggunakan teknik pengolahan sinyal telah benar.
UIN Syarif Hidayatullah Jakarta
1. Tampilan Antarmuka Awal
Gambar 4.6 Design GUI Antarmuka Awal
Gambar 4.7 Tampilan Antarmuka Awal Setelah Dijalankan
Sebelumnya, mengartur letak dan apa saja menu yang akan ada dalam simulasi identifikasi pada GUI, sehingga setelah dirunning akan tampak pada gambar 4.7. Terdapat 5 button yang memiliki fungsi berbagai macam. Di antaranya,
‘browse’ sebagai perintah input sinyal suara yang telah disimpan dalam format
UIN Syarif Hidayatullah Jakarta
*.wav, 2 tombol ‘play’ untuk memutar suara yang sudah diinput, ‘test menggunakan mel-frequency cepstral coefficient’ untuk mengekstraksi sinyal suara sehingga menghasilkan nilai koefisien cepstrum, dan yang terakhir adalah perintah
‘uji’ untuk melihat hasil dari identifikasi huruf yang telah dicocokkan menggunakan algoritma jaringan syaraf tiruan backpropagation sebagai classifier.
2. Tampilan Antarmuka Input Sinyal
Gambar 4.8 Tampilan Antarmuka Setelah Sinyal Diinput
Dari gambar di atas ditampilkan hasil dari perintah ‘browse’ yang menghasilkan nilai sample rate dan lama durasi pelafalan dalam satuan detik serta keluar gambar gelombang suara dari sinyal sebelum emphasis dan sesudah pre-emphasis.
UIN Syarif Hidayatullah Jakarta
3. Tampilan Antarmuka Hasil Tes Menggunakan Mel-Frequency Cepstral Coefficient
Gambar 4.9 Antarmuka Hasil Tes Menggunakan Mel-Frequency Cepstral Coefficient (1)
Setelah diproses menggunakan mel-frequency cepstral coefficient, ditampilkan nilai pre-emphasis, windowing, fast fourier transform, discrete cosine transform, dan yang terakhir aadalah nilai cepstrum dari hasil ekstraksi ciri.
Kemudian akan muncul tampilan gelombang sinyal uang telah melewati proses ekstraksi ciri seperti gambar di bawah ini.
Gambar 4.10 Antarmuka Hasil Tes Menggunakan Mel-Frequency Cepstral Coefficient (2)
UIN Syarif Hidayatullah Jakarta
Gambar- gambar di atas merupakan hasil running dari source code berikut ini:
function varargout = utama(varargin)
% --- Executes on button press in browse_btn.
function browse_btn_Callback(hObject, eventdata, handles) clc
%read the file
[filename,pathname]=uigetfile('*.wav*');
if ~isequal(filename,0)
[y,Fs] = audioread(fullfile(pathname,filename));
a=0.97;
% --- Executes on button press in Mel-Frequency Cepstral Coefficient_btn.
UIN Syarif Hidayatullah Jakarta function Mel-Frequency Cepstral
Coefficient_btn_Callback(hObject, eventdata, handles)
% hObject handle to Mel-Frequency Cepstral Coefficient_btn (see GCBO) Tf=(length(y))/Fs; %Frame duration in seconds
N=Fs*Tf; %Number of samples per frame
%fn=24; %Number of mel filters
l=length(y); %total number of samples in speech Ts=0.01; %Frame step in seconds
FrameStep=Fs*Ts; %Frame step in samples
noFrame=floor(l/FrameStep); %Maximum no of frames in speech sample
for i=1:noFrame
frame=y2((i-1)*FrameStep+1:(i-1)*FrameStep+N); %Holds individual frames
UIN Syarif Hidayatullah Jakarta
% Input for a DISCRETE COSINE TRANSFORM Tranform.
k=0:(length(in_discrete cosine transform)-1);
% Limits for Variable K tends to N-1.
ex=exp(-j*k*pi/(length(in_discrete cosine transform)));
UIN Syarif Hidayatullah Jakarta
n=length(in_discrete cosine transform);
% Length of the input_discrete cosine transform.
p=1:n; % To Get Even Symmetric Output Waveform (DISCRETE COSINE TRANSFORM).
n=length(in_discrete cosine transform)/2;
% Length of the input_discrete cosine transform halved.
p=1:n; % Samples Halved.
x(p)=in_discrete cosine transform(p);
% Storing valves in another Variable.
x;
rata_discrete cosine transform= mean(x);
set(handles.discrete cosine transform,'string',rata_discrete cosine transform);
handles.rata_discrete cosine transform = rata_discrete cosine transform;
UIN Syarif Hidayatullah Jakarta set(gca, 'FontName', 'Times New Roman', 'FontSize', 12)
xlabel('Time, s')
ylabel('Normalized amplitude')
title('The signal in the time domain')
% plot of the cepstrum
% 1 ms minimum speech quefrency (1000 Hz) and 20 ms maximum speech quefrency (50 Hz)
subplot(2, 1, 2) plot(q*1000, C, 'r');
grid on
xlim([1 20])
set(gca, 'FontName', 'Times New Roman', 'FontSize', 12) xlabel('Quefrency, ms')
ylabel('Amplitude')
title('Amplitude cepstrum of the signal (quefrencies from 1 ms to 20 ms)')
% % a=data input training data dari excel a=xlsread ('C:\Users\waf_r\Downloads\ref suara\input.xlsx','Sheet1');
cepstrum=handles.cepstrum;
time1=handles.time1;
c=[cepstrum;time1];
t(1:3)=1; t(4:6)=2; t(7:9)=3; t(10:12)=4; t(13:15)=5;
t(16:18)=6; t(19:21)=7; t(22:24)=8;
net = newff(a',t,[10 5],{'logsig','logsig'},'trainlm');
% melihat bobot, bobot akan diberikan secara acak oleh matlab
bobotawal_Input = net.IW(1,1);
bobotawal_bias_input = net.b(1,1);
UIN Syarif Hidayatullah Jakarta %parameter training
net.trainParam.show = 25;
net.trainParam.epochs = 5000; % jumlah maksimum epoch net.trainParam.goal=0.00000000001; %nilai minimum error
set(handles.edithasil,'String','Sa','Visible', 'on') elseif(y==2)
set(handles.edithasil,'String','Sho','Visible', 'on') elseif (y==3)
set(handles.edithasil,'String','Dza','Visible', 'on') elseif (y==4)
set(handles.edithasil,'String','Za','Visible', 'on') elseif (y==5)
set(handles.edithasil,'String','Qo','Visible', 'on') elseif (y==6)
set(handles.edithasil,'String','Ka','Visible', 'on') elseif (y==7)
set(handles.edithasil,'String','A','Visible', 'on') elseif (y==8)
set(handles.edithasil,'String','^A','Visible', 'on') end
%b=jumlah input yang memiliki niai sama dengan target
UIN Syarif Hidayatullah Jakarta
disp(['accuracy JARINGAN SYARAF TIRUAN = ',num2str(ak,'%.2f'),'%'])
% % --- Executes on button press in play_ori_btn.
function play_ori_btn_Callback(hObject, eventdata, handles) y=handles.y;
Fs=handles.Fs;
sound(y,Fs);
% --- Executes on button press in play_emphasis_btn.
function play_emphasis_btn_Callback(hObject, eventdata, handles)
% hObject handle to play_emphasis_btn (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
Dengan mensimulasikan semua data sinyal suara menggunakan mel-frequency cepstral coefficient maka akan dihasilkan beragam gelombang yang terbentuk dan nilai parameter yang berbeda, seperti ditunjukkan pada tabel 4.14 berikut ini.
UIN Syarif Hidayatullah Jakarta Tabel 4.14 Sinyal Suara hasil Mel-Frequency Cepstral Coefficient
No. Nama File
*.wav Sebelum Pre-emphasis Sesudah Pre-emphasis Cepstrum Signal
1. a(1).wav
2. a(2).wav
3. a(3).wav
4. ‘a(1).wav
5. ‘a(2).wav
6. ‘a(3).wav
7. sa(1).wav
UIN Syarif Hidayatullah Jakarta
8. sa(2).wav
9. sa(3).wav
10. sho(1).wav
11. sho(2).wav
12. sho(3).wav
13. ka(1).wav
14. ka(2).wav
UIN Syarif Hidayatullah Jakarta
15. ka(3).wav
16. qo(1).wav
17. qo(2).wav
18. qo(3).wav
19. dza(1).wav
20. dza(2).wav
21. dza(3).wav
UIN Syarif Hidayatullah Jakarta Tabel 4.15 Nilai Hasil Ekstraksi Sinyal Suara Menggunakan Mel-Frequency Cepstral Coefficient No. Nama File Time Nilai Pre-emphasis Windowing FFT DCT Cepstrum Label
1 sa(1).wav 0.940408 -1.35E-05 -0.00292655 -0.49888 0.033476 -1.61E-06 1 2 sa(2).wav 0.653061 -7.46E-07 0.00124152 1.56298 0.029031 -0.00013 1 3 sa(3).wav 0.679184 -6.12E-06 0.00339347 -1.3691 0.271175 -6.60E-05 1 4 sho(1).wav 1.07102 -2.13E-06 0.00271011 -1.83383 -0.01668 -4.28E-05 2 5 sho(2).wav 0.522449 -8.64E-08 -0.00097847 0.107798 0.005286 -0.00019 2 6 sho(3).wav 0.470204 -7.51E-06 0.00508763 0.448048 -0.09971 -8.40E-05 2 7 dza(1).wav 0.783673 -1.17E-05 0.000614985 1.02429 -0.00138 2.73E-05 3 8 dza(2).wav 0.574694 -3.99E-07 0.000602359 -2.43598 0.141776 -0.00013 3 9 dza(3).wav 0.574694 -9.53E-06 -0.0025578 4.05194 -0.11846 3.32E-06 3 10 za(1).wav 1.07102 2.00E-06 0.00694373 -0.96126 0.019902 -9.72E-05 4 11 za(2).wav 0.731429 6.33E-07 -0.00146312 1.72256 0.005363 -0.00011 4 12 za(3).wav 0.470204 -3.38E-06 0.00206808 -3.71141 -0.00296 -0.00011 4 13 qo(1).wav 0.835918 -4.42E-06 -0.00081097 1.47957 -0.0009 -6.30E-05 5 14 qo(2).wav 0.496327 -1.18E-06 -0.00028943 3.55498 -0.00107 -8.13E-05 5 15 qo(3).wav 0.626939 -2.07E-06 -0.00405515 0.76288 0.114871 -9.43E-05 5 16 ka(1).wav 0.888163 -2.31E-06 0.0132536 -1.72439 0.008557 -4.99E-05 6 17 ka(2).wav 0.470204 -1.83E-07 0.00973082 -0.12555 0.001402 -0.00025 6 18 ka(3).wav 0.679184 -1.03E-05 -0.00339416 1.71231 0.146293 -3.25E-05 6 19 a(1).wav 0.705306 -8.93E-07 -0.00121378 -0.76136 0.098211 -4.83E-05 7 20 a(2).wav 0.470204 -2.16E-07 -0.00143924 -1.03367 -0.01341 -1.81E-04 7 21 a(3).wav 0.470204 -1.23E-06 0.00109698 -2.26652 0.183359 -1.00E-04 7 22 a(1).wav 0.835918 -4.47E-06 -0.00840344 -0.44563 -0.0009 -7.97E-06 8 23 a(2).wav 0.522449 -9.06E-07 -0.0055141 -3.14008 -0.01789 -8.44E-05 8 24 a(3).wav 0.548571 -4.57E-06 0.00660205 0.970409 -0.13124 -2.53E-05 8
22. za(1).wav
23. za(2).wav
24. za(3).wav
83
BAB V
HASIL DAN PEMBAHASAN
5.1 Hasil
5.1.1 Verfication dan Validation
Pada proses pelatihan, dibutuhkan data latih yang telah melewati proses ekstraksi ciri sebelumnya tersimpan dalam MS. Excel. Sehingga didapatkan 2 parameter yang akan dilatih yaitu time, dan koefisien cepstrum.
Gambar 5.1 Data Latih dan Data Uji
Untuk menguji training hasil dari inputan yang telah diekstraksi ciri, dipilih perintah uji yang telah tersedia pada halaman antarmuka identifikasi makhroj huruf hijaiyah. Seperti yang terlihat pada gambar 5.2.
UIN Syarif Hidayatullah Jakarta Gambar 5.2 Antarmuka Simulasi Identifikasi Makhraj Huruf Hijaiyah
Supaya diperoleh hasil uji dari file yang masuk, dijalankan source code
Supaya diperoleh hasil uji dari file yang masuk, dijalankan source code