BAB 3 ANALISIS DAN PERANCANGAN PROTOTIPE
Bab ini menguraikan tentang analisis penelitian mencakup metode yang digunakan untuk ekstraksi fitur sinyal musik digital serta metode klasifikasi dengan Neural Network Back Propagation, analisis jenis alat musik dan sampel lagu, perancangan layar, serta spesifikasi proses yang akan diterapkan dalam program. Analisis dilakukan untuk menjelaskan langkah-langkah yang akan dilakukan selama pengujian arsitektur Neural Network Back Propagation dan penentuan parameter terbaik pada Neural Network Back Propagation untuk diterapkan ke dalam aplikasi klasifikasi jenis alat musik sehingga menghasilkan model sistem yang optimal, yaitu sistem yang mempunyai tingkat kesalahan error yang kecil dengan kecepatan proses yang baik.
3.1. Analisis Sub bab ini melakukan analisis terhadap jenis alat musik, aplikasi tambahan, sampel lagu, serta metode yang digunakan dalam penelitian
3.1.1. Analisis Jenis Alat Musik Alat musik yang dipilih dalam proses klasifikasi ini adalah gitar, piano, biola dan flute karena alat-alat musik tersebut masing-masing mewakili jenis alat musik non perkusi berdasarkan cara membunyikannya, yakni gitar mewakili alat musik petik, piano mewakili alat musik tekan, biola mewakili alat musik gesek, dan flute mewakili alat musik tiup. Keempat alat musik tersebut paling umum digunakan pada lagu-lagu 62
63 instrumental. Alat-alat musik ini juga telah dapat didefinisikan atau dikategorikan dengan baik dibanding alat musik lainnya yang tidak terlalu dikenal orang (tidak bersifat universal).
3.1.2. Analisis Aplikasi Tambahan Untuk proses pelatihan atau pembelajaran, dibutuhkan file musik yang murni menggunakan satu alat musik saja. Lagu instrumental yang ada pada CD komersial saat ini jarang yang hanya menampilkan satu alat musik dari awal sampai akhir lagu. Oleh karena itu, perlu dilakukan pemotongan lagu untuk mengambil bagian-bagian di mana satu alat musik saja yang sedang tampil. Pemotongan file ini dilakukan dengan aplikasi mp3DirectCut versi 1.36. Perlu diingat file yang dipotong masih dalam bentuk MP3. Penelitian ini menggunakan file lagu dari format MP3 yang akan diubah(diconvert) menjadi file berekstensi WAV. Hal ini perlu dilakukan karena pengekstraksian file MP3 telah mengalami pemampatan sehingga menyebabkan hilangnya sebagian informasi yang menyebabkan sinyal musik menjadi tidak kontinu yang dapat mempengaruhi hasil akhir penelitian. Setelah file dipotong, file yang dihasilkan masih dalam format MP3. Oleh karena itu, diperlukan aplikasi tambahan dalam sistem untuk mengubah file audio MP3 menjadi file ber-ekstensi WAV dalam versi mono. WAV dalam versi mono lebih baik untuk digunakan dalam penelitian ini karena menghasilkan data dalam lajur satu kolom yang mempermudah dalam pembacaan input. Penelitian ini menggunakan aplikasi yg cukup mudah digunakan, yaitu MediaMonkey versi 2.4.2.
64 3.1.3. Analisis Sampel Lagu Penelitian ini menggunakan sampel-sampel lagu instrumental yang mewakili empat jenis alat musik melodis, yakni gitar sebagai alat musik petik, piano sebagai alat musik tekan, biola sebagai alat musik gesek, dan flute sebagai alat musik tiup. Sampel lagu yang diambil untuk proses pembelajaran adalah sampel lagu yang mencirikan setiap jenis alat musik, dengan tempo yang bervariasi supaya aplikasi yang dibuat dapat mengenali lagu dengan tempo cepat maupun lambat. Judul-judul sampel lagu yang digunakan untuk proses pembelajaran dapat dilihat pada Tabel 3.1 berikut, sedangkan untuk proses pengujian dapat dilihat pada peta lampiran. Tabel 3.1 Sampel Lagu pada Proses Pembelajaran Alat musik Judul Lagu Biola
flute
Dc_suru01 From Partita No.2 for solo Violin 1 From Partita No.2 for solo Violin 6 From Partita No.2 for solo Violin 7 From Partita No.2 for solo Violin 8 From Partita No.2 for solo Violin 9 From Partita No.2 for solo Violin 10 From Partita No.2 for solo Violin 11 From Partita No.2 for solo Violin 12 From Partita No.2 for solo Violin 13 From Partita No.2 for solo Violin 14 From Partita No.2 for solo Violin 15 From Partita No.2 for solo Violin 17 OUJI2 folies3 folies12 folies13 folies22 folies23 folies32 folies33 folies52 folies53
65
Gitar
Piano
folies62 folies63 Folies Lies & Truth Night & Day Nobuo Uematsu – Breezy Eyes On Me (Accoustic Guitar V 1) Yume no Kakera [A Shard of a Dream] Luna Sea - Guitar Solo Instrumental5 Four Divertimentos, op.- 'n.1, And 2 Learning Classic guitar2 Learning Classic guitar3 Learning Classic guitar4 Learning Classic guitar5 Learning Classic guitar6 Learning Classic guitar7 Endless Love – Reason Final Fantasy X - To Zanarkand Nobuo Uematsu – Juline Silent Emotion2 Silent Emotion Those Who Fight [Piano Version] Nobuo Uematsu – Breezy2 Richard Clayderman – Triste Coeur Richard Clayderman - Because I Love Richard Clayderman - Greenleaves Richard Clayderman - Intro How Deep Your Love Richard Clayderman - Intro Love Story Richard Clayderman - Intro Lyphard Melodic
3.1.4. Analisis Metode Dalam penelitian ini diperlukan metode untuk mengambil data mentah dari file musik menjadi suatu informasi atau pola input yang berarti, yakni dengan metode pemrosesan sinyal digital, ekstraksi fitur, dan metode klasifikasi jenis alat musik menggunakan Neural Network Back Propagation.
66 3.1.4.1. Metode Pemrosesan Sinyal Digital dan Ekstraksi Fitur Sinyal musik dari file MP3 secara otomatis akan melalui pemrosesan sinyal digital melalui side program. Namun, jumlah data yang sangat besar pada setiap lagu serta pengaruh temporal yang sangat kuat membuat pemrosesan sinyal suara digital (pengekstrakan data mentah berdasarkan artibut-atribut spektral) dengan hanya menghitung nilai koefisien FFT saja mengakibatkan klasifikasi alat musik kurang optimal. Metode ekstraksi fitur yang berhubungan dengan permukaan spektral musik yaitu fase Spectral Centroid, fase Rolloff, fase Zero Crossing Rate, dan fase Flux dipilih dalam penelitian ini karena mampu mengekstraksi fitur-fitur penting yang digunakan untuk klasifikasi sehingga klasifikasi diharapkan dapat memberikan hasil yang optimal.
3.1.4.2. Metode Klasifikasi dengan Neural Network Back Propagation Metode klasifikasi dengan Neural Network Back Propagation dipilih karena beberapa kelebihan yang dimilikinya, yaitu kemudahannya untuk diimplementasikan serta kekuatan generalisasinya yang baik sehingga dapat memberikan hasil yang akurat dengan sampel di luar kumpulan sampel yang digunakan untuk proses pembelajaran Berdasarkan teori-teori nilai parameter Neural Network Back Propagation yang baik, dalam arsitektur yang akan dirancang dipilih nilai parameter Neural Network Back Propagation sebagai berikut: 1. Epoch Dalam penelitian ini, epoch dibatasi dengan target keluaran. Ketika target keluaran memenuhi target yang ditentukan maka tercapailah batas epoch. Tetapi
67 untuk menentukan banyaknya unit tersembunyi, maka epoch di tentukan sebanyak 9000. pembatasan ini hanya untuk menentukan nilai unit tersembunyi. 2. Kecepatan Pembelajaran Dalam penelitian ini, kecepatan pembelajaran tidak dibatasi sehingga dapat dicapai hasil pelatihan yang optimal. 3. Lapisan Tersembunyi Keseluruhan rancangan arsitektur Neural Network Back Propagation yang diterapkan dalam penelitian ini menggunaan satu lapisan tersembunyi. 4. Unit tersembunyi Dengan 8 unit masukkan (hasil fitur ekstraksi file lagu), batas epoch sebesar 9000, dan unit keluaran sebanyak 4 (jenis alat musik), maka dengan menggunakan persamaan 2.30 di mana p>2n dengan n=8 unit masukkan sehingga diperoleh perkiraan jumlah unit tersembunyi (p) yang optimal lebih dari 16, dan dari persamaan 2.31 di mana h=n/[r(i+0)], dengan epoch (n) = 9000, nilai koefisien noise(r) 5 sampai dengan 10, unit masukkan (i)=8 dan unit keluaran (o)=4 sehingga diperoleh perkiraan banyak unit tersembunyi yang optimal dalam penelitian ini berkisar antara 75 sampai 150. Untuk mendapatkan hasil yang lebih akurat, maka pengujian dilakukan terhadap jumlah unit tersembunyi sebanyak 25, 75, 113, dan 150, dan 200. 5. Lama Pembelajaran Pembelajaran terus dilakukan selama belum dijumpai global minima. Dalam penelitian ini lamanya pembelajaran untuk masing-masing arsitektur Neural Network Back Propagation berbeda-beda. Untuk arsitektur dengan nilai unit tersembunyi 25, lama pembelajaran 650.055 kali. Untuk arsitektur dengan nilai unit tersembunyi 75,
68 lama pembelajaran 18.800 kali. Untuk arsitektur dengan nilai unit tersembunyi 113, lama pembelajaran 27.455 kali. Untuk arsitektur dengan nilai unit tersembunyi 150, lama pembelajaran 41.146 kali. Untuk arsitektur dengan nilai unit tersembunyi 200, lama pembelajaran 40.038 kali. Dan dari hasil pembelajaran tersebut diperoleh tingkat perubahan error yang menunjukkan pola yang cukup stabil. Sehingga, secara umum dapat diperoleh global minima dari perolehan local minima yang stabil. 6. Fungsi Aktivasi Fungsi sigmoid bipolar dipilih karena dapat memetakan sinyal masukkan negatif dengan tepat dan memiliki kecepatan yang lebih baik daripada fungsi sigmoid biner. 7. Inisialisasi Nilai Bobot Inisialisasi awal nilai bobot menggunakan metode Nguyen-Widrow yang memberikan nilai bobot yang lebih baik daripada dengan cara acak biasa
3.2. Perancangan Sub bab ini membahas tentang perancangan perangkat lunak dalam bentuk hierarki menu, State Transition Diagram, serta Rancangan Layar. Spesifikasi proses penelitian juga dijelaskan pada sub bab ini.
69 3.2.1. Hierarki Menu Struktur menu pada side program:
Gambar 3.1. Struktur Menu Utama pada Side Program
Gambar 3.2. Struktur Menu Open pada Side Program
Struktur menu pada program utama:
Gambar 3.3. Struktur Menu Utama
70
Gambar 3.4. Struktur Menu Pelatihan
Gambar 3.5. Struktur Menu Tes Aplikasi
3.2.2. State Transition Diagram State Transition Diagram pada side program:
Gambar 3.6. State Transition Diagram Layar Utama Side Program
71
Gambar 3.7. State Transition Diagram Layar Convert Side Program
State Transition Diagram pada program utama:
Gambar 3.8. State Transition Diagram Layar Utama
72
Gambar 3.9. State Transition Diagram Layar Pelatihan
Gambar 3.10. State Transition Diagram Layar Tes Aplikasi
73 3.2.3. Rancangan Layar Untuk mengkonversi file WAV diperlukan side program yang dibuat dengan bantuan GUI MATLAB dengan rancangan sebagai berikut:
Gambar 3.11. Rancangan Layar Utama Side Program Signal to Bipolar Converter
Pilih File -> Open untuk memilih file WAV yang akan dikonversi menjadi bipolar dalam format TXT. File WAV yang akan digunakan harus dalam folder c:/Program Files/Matlab 7.1/Work. Jika tab ‘About’ di klik akan keluar dialog box yang berisi tentang informasi program.
74
Gambar 3.12. Rancangan Layar Convert
Pada layar ini sinyal dari file WAV akan ditempilkan pada kotak Axes. Untuk mengkonversi file WAV menjadi angka bipolar pada format TXT, tekan tombol ‘Convert to train.txt’. File TXT akan secara otomatis tersimpan pada folder c:/Program Files/Matlab 7.1/Work Untuk keluar pilih File->Exit. Jika tab ‘About’ di klik akan keluar dialog box yang berisi tentang informasi program.
75
Gambar 3.13. Rancangan Layar Utama
Layar utama berisi ucapan selamat datang. User dapat klik Ambil Data untuk mengambil file WAV dalam format .txt yang telah diproses oleh GUI Matlab pada side program. Klik Keluar untuk keluar dari aplikasi. Klik Pembelajaran untuk memulai proses training. Klik Tes Aplikasi untuk memulai proses checking dan menuju layar tes aplikasi. Saat menuju layar pemilihan pelatihan atau tes aplikasi, setelah tombol ditekan akan dilakukan proses Hamming Window, FFT, IFFT, dan ekstraksi fitur kemudian menampilkan layar yang dipilih tadi.
76
Gambar 3.14. Rancangan Layar Pelatihan
Klik Acak Bobot untuk me-random weight saat pertama kali melakukan pelatihan. Klik Ambil Bobot untuk mengambil data weight yang telah ter-update. Klik Simpan Bobot untuk menyimpan weight yang telah terupdate. Klik Mulai Pembelajaran untuk memulai proses pembelajaran. Klik Keluar untuk keluar.
77
Gambar 3.15. Rancangan Layar Tes Aplikasi Klik Acak Bobot untuk me-random weight saat pertama kali melakukan tes aplikasi. Klik Ambil Bobot untuk mengambil data weight yang telah ter-update. Klik Simpan Bobot untuk menyimpan weight yang telah terupdate. Klik Mulai Tes Aplikasi untuk memulai proses tes aplikasi. Klik Keluar untuk keluar. Setelah proses tes aplikasi selesai, muncul keterangan hasil checking.
3.2.4. Spesifikasi Proses Percobaan yang dilakukan melalui dua tahapan, yaitu tahap pemrosesan sinyal digital dan pengenalan serta klasifikasi jenis alat musik menggunakan Neural Network Back Propagation. Tahap pemrosesan sinyal digital menggunakan file musik untuk diekstrak sebagai input dalam Neural Network Back Propagation untuk mendapatkan
78 pola jenis-jenis alat musik terlebih dahulu kemudian mengklasifikasikan sampel-sampel musik ke dalam jenis alat musik tertentu yang pola alat musiknya sesuai. Modul utama yang menggambarkan urutan garis besar dari program ini dapat dilihat pada Gambar 3.16 berikut:
Gambar 3.16 Modul Utama File musik untuk proses pembelajaran diambil sebanyak 52 buah lagu instrumen, masing-masing 13 lagu untuk setiap jenis alat musik yaitu gitar, piano, biola, dan flute. Sedangkan untuk proses pengujian, digunakan 120 sampel lagu, masing-masing 30 lagu untuk masing-masing jenis alat musik. File musik yang digunakan dalam proses pembelajaran adalah file MP3 yang kemudian akan dipotong dengan aplikasi tambahan mp3DirectCut untuk diambil penampilan satu alat musiknya saja. File hasil potongan yang masih berformat MP3 tersebut kemusian didecode menggunakan aplikasi tambahan MediaMonkey ke dalam bentuk file WAV sehingga bisa dianalisis dan diambil datanya. Karena sebagian data
79 yang ada di dalam file MP3 terdiskontinu karena dimampatkan, sehingga tidak mungkin untuk dianalisis. Kemudian dilakukan pengambilan data-data dari file WAV tersebut yang merupakan rangkaian amplitudo. Data yang telah diambil dibagi rata dalam 40 window dengan proses Hamming Window. Setelah itu dilakukan penghitungan koefisien Fast Fourier Transform (FFT) yang bertujuan mengubah fungsi amplitudo dalam domain waktu dari file WAV menjadi domain frekuensi. Data-data hasil proses FFT selanjutnya digunakan untuk proses ekstraksi fitur. Fitur-fitur yang dihitung berhubungan dengan permukaan spektral musik (musical surface features). Urutan Modul ekstraksi fotur dapat dilihat pada Gambar 3.17 berikut:
Gambar 3.17 Modul Ekstraksi Fitur Modul ekstraksi fitur secara lengkap dari setiap fasenya dapat dilihat pada halaman lampiran. Setelah melalui tahap ekstraksi fitur, diperoleh 8 nilai yang akan menjadi input dalam Neural Network Back Propagation, antara lain: rata-rata Centroid,
80 rata-rata Rolloff, rata-rata Flux, rata-rata Zero Crossing, varian Centroid, varuan Rolloff, varian Flux, dan varian Zero Crossing. Data yang telah diolah menjadi informasi yang berisi indikator analisis teknis tersebut belum siap untuk digunakan dalam proses klasifikasi dengan Neural Network Back Propagation, karena perlu melalui tahap preprocessing atau normalisasi data. Pada tahap ini setiap informasi akan diubah dalam rentang bipolar yakni -1 sampai 1. Normalisasi data perlu dilakukan karena hasil fungsi aktivasi yang akan digunakan adalah fungsi sigmoid bipolar yang mempunyai rentang ouput antara -1 sampai 1 dan output yang diharapkan dari Neural Network sendiri juga antara -1 sampai 1. Tahap preprocessing ini menggunakan persamaan 2.49 dengan nilai high adalah 1 dan nilai low adalah -1. Hasil normalisasi inilah yang akan digunakan dalam proses klasifikasi. Setelah melalui tahap preprocessing, maka modul pembelajaran akan dijalankan. Tahapan inisialisasi seperti terlihat pada gambar 3.18 berikut ini:
Gambar 3.18 Modul Inisialisasi
81 Modul Back Propagation secara lengkap dilampirkan setelah modul ekstraksi fitur pada halaman lampiran. Dalam proses klasifikasi dengan Neural Network Back Propagation ada lima arsitektur yang diujikan. Kelima arsitektur tersebut dihasilkan oleh perhitungan batas epoch yang menghasilkan jumlah unit hidden layer yang beragam. Secara keseluruhan, arsitektur jaringan adalah kombinasi dari berbagai parameter Neural Network Back Propagation yang mencakup jumlah unit input, jumlah hidden layer, jumlah unit hidden layer, jumlah unit output, batas epoch, target error, kecepatan pembelajaran, serta target output. Arsitektur jaringan tersebut menggunakan 8 unit input yang dihasilkan dari proses ekstraksi fitur, satu hidden layer, empat unit output yang merepresentasikan empat jenis alat musik, yaitu gitar, biola, piano, dan flute. Batas epoch 9000, target error 0.0000001, dan dengan variasi unit hidden layer 25, 75, 113, 150, dan 200 unit. Nilai awal bobot yang merupakan nilai random menyebabkan hasil yang berbeda walau di dalam jaringan yang sama. Jumlah unit hidden layer yang digunakan dalam penelitian juga berbeda-beda. Oleh karena itu, nilai random bobot pada arsitektur yang satu tidak dapat dipergunakan untuk arsitektur yang lain. Proses klasifikasi terdiri dari tahap pelatihan dan pengujian. Tahap pelatihan dilakukan untuk memperoleh sebuah vektor nilai bobot yang menjadi pola atau mencirikan hasil klasifikasi itu. Proses pembelajaran dilakukan dengan cara mempelajari pola masing-masing alat musik (gitar, piano, biola, flute) dari 52 lagu yang telah dipilih dengan urutan yang sama dilakukan dalam siklus-siklus pembelajaran sesuai kelima arsitektur yang ada seperti yang telah dijabarkan sebelumnya.
82 Tahap pengujian menggunakan 120 sampel lagu (30 lagu per alat musik) dilakukan untuk melakukan klasifikasi dengan menggunakan nilai bobot yang telah dirandom untuk tiap arsitektur yang berbeda saat melakukan proses pembelajaran. Hasil pengujian menampilkan jenis alat musik yang dikenali sesuai dengan pola masing-masing alat musik dengan jumlah lagu yang diujikan (per alat musik) dari proses pembelajaran dengan harapan memperoleh persentase error (100% - alat musik dikenali). Sampel lagu yang digunakan untuk proses pengujian adalah lagu-lagu di luar sampel pembelajaran. Untuk lebih jelasnya, pemrosesan sinyal digital secara rinci (modul FFT, modul Hamming Window, modul IFFT), ekstraksi fitur secara rinci (fase Spectral Centroid, fase Rolloff, fase Zero Crossing Rate, fase Flux), modul pembelajaran, inisialisasi bobot, Neural Network Back Propagation (Fase Forward Input-Hidden, Fase Forward HiddenOutput, Fase Hitung error keluaran, Fase Backward Output-Hidden, Fase Backward Hidden-Input, Fase update weight hidden, Fase update Weigth output), serta modul pengujian dapat dilihat pada bagian lampiran Gambar 3.19 sampai dengan Gambar 3.35..