SEKOLAH PASCASARJANA INSTITUT PERTANIAN BOGOR
1.3 Ruang Lingkup
Ruang lingkup penelitian ini meliputi :
1. Genre yang akan diklasifikasi hanya terbatas pada genre klasik, disko, metal dan reggae.
2. Klasifikasi menggunakan metode Voting Feature Intervals (VFI) dan Jaringan Saraf Tiruan (JST).
3
1.4 Manfaat Penelitian
Prototipe sistem yang dihasilkan penelitian ini diharapkan dapat dikembangkan lebih lanjut menjadi sebuah sistem yang memiliki kemampuan dalam manajemen dan memanggil (retrieve) basisdata berkas musik audio.
II TINJAUAN PUSTAKA
2.1 Musik
Definisi dari musik adalah pengaturan (aransemen) bunyi atau suara yang memiliki nilai seni terhadap rentang waktu. Musik adalah bagian dari setiap budaya di dunia, akan tetapi memiliki ragam yang luas antara budaya-budaya dalam corak dan struktur (Butler 2005).
Pada awalnya musik dihasilkan baik dari vokal manusia maupun dari sebuah alat instrumen musik atau lebih, yang dimainkan secara harmonis atau gabungan dari kedua unsur tersebut. Dengan berkembangnya teknologi, maka kini musik dapat dibuat dengan bantuan komputer atau alat elektronik (sound synthesizer) yang menggunakan suara-suara buatan (artificial) yang telah direkam sebelumnya.
Perkembangan musik juga dibantu dengan perkembangan industri musik. Hal ini juga mengakibatkan munculnya budaya-budaya baru yang berhubungan dengan gaya hidup manusia dan teknologi-teknologi baru yang mendukung perkembangan musik itu sendiri.
Media penyimpanan musik pun berubah dari piringan hitam, pita kaset, hingga cakram optik sesuai dengan teknologi perekaman yang ada. Media yang terakhir diakibatkan oleh perubahan sinyal audio yang dulunya berbentuk analog menjadi bentuk digital. Dengan adanya digitalisasi musik, maka distribusi musik menjadi lebih mudah, murah, dan cepat ke seluruh dunia terutama karena adanya web.
2.2 Genre Musik
Genre musik adalah jenis atau kategori dari hasil artistik musik yang biasanya dipengaruhi oleh budaya masyarakat. Perkembangan dari genre yang sudah ada menghasilkan genre-genre baru yang terdengar sangat berbeda yang disebut sub-genre.
Pada akhir abad ke-20, terdapat genre-genre baru yang dihasilkan dari perkawinan dua atau lebih genre yang ada. Percobaan-percobaan tersebut juga memberikan kontribusi yang besar dalam perkembangan musik serta
5
memperkaya genre-genre dan budaya-budaya yang sudah ada. Pada Tabel 1 dapat dilihat beberapa contoh genre dan sub-genrenya.
Tabel 1. Beberapa contoh genre dan sub-genrenya (Hayne et al. 2005)
Genre Sub-genre
Modern Rock Alternative rock, experimental rock, indie rock, jam rock, new wave, post punk, power pop Rock Classic rock (british invasion, glam rock, folk
rock), hard rock, prog rock, southern rock Metal Funk metal, industrial metal, thrash
Punk ’77 style punk, hardcore punk, pop punk, ska
punk, psychobilly
Folk 60s revival, anti-folk, contemporary folk, singer-songwriter, traditional folk
Electronica Acid Jazz, ambient, downbeat, intelligent dance music, techno, industrial, drum ’n’ bass
Jazz Be bop, big band, crossover jazz, lounge, vocal jazz, cool jazz, soul jazz
Blues Chicago blues, electric blues, country blues, female vocal blues
Country Alt country, bluegrass, contemporary country, country rock, traditional country
Oldies Doo wop, early rock & roll. Rockabilly, surf Pop Dance pop, easy listening, euro pop, soft rock,
teen pop, vocalists
Hip hop Abstract hip hop, bass, gangsta rap, pop rap R&B Funk, disco, gospel, soul
Reggae Roots reggae, ska
2.3 Sinyal Suara
Sinyal suara dan seluruh karakteristiknya dapat direpresentasikan dalam dua domain nilai yang berbeda, yaitu waktu dan frekuensi (Nilsson dan Ejnarsson 2002). Domain waktu (time-domain) yaitu domain yang berhubungan dengan perubahan amplitudo dari waktu ke waktu. Sedangkan domain frekuensi yaitu domain yang terdapat dalam interval waktu tertentu.
Representasi dalam bentuk spectral merupakan representasi sinyal suara berdasarkan intensitasnya terhadap waktu. Salah satu bentuk representasi ini yang paling populer adalah spectogram.
Pada Gambar 1 diperlihatkan adanya bagian yang berwarna biru gelap yang merepresentasikan bagian dari sinyal suara di mana suara tidak dihasilkan. Sedangkan, bagian yang bewarna merah merepresentasikan intensitas yang menandakan suara dihasilkan.
Gambar 1. Spectrogram menggunakan metode Welch (Nilsson dan Ejnarsson 2002)
Proses analisa sinyal dalam bentuk jumlah sinusoida telah banyak digunakan seperti pada aplikasi analisa ucapan, sonar, hingga analisa musik terkini dimana mereka berkaitan dengan keharmonisan sumber suara musik.
Metode yang paling tua dari analisa sinyal suara adalah berdasarkan dari transformasi Fourier yang diformulasikan sebagai berikut :
x
te dt X jt
(1)dan inversnya, yaitu :
X e d t x
j t 2 1 (2) di mana x(t) adalah sinyal time-domain kontinu sementara X(ω) adalah transformasinya, yang sama-sama kontinu dalam frekuensi dan t serta ωtidak terikat. Sifat ini tidak cocok untuk sinyal audio digital karena diskret terhadap proses sampling dan juga terikat dengan waktu (Hainsworth 2003).
Oleh karena itu, digunakan Discrete Fourier Transform (DFT):
M knj M M k M M n M knje
k
X
M
n
x
e
n
x
k
X
2 1 2 2 1 2 2 21
(3) (4)7
di mana X[k] dikalkulasikan untuk range –M/2 ≤ k < M/2 dan juga tergantung pada panjang sinyal time-domain M.
Sinyal musik menunjukkan variasi amplitudo dan frekuensi dari waktu ke waktu. Representasi sinyal musik yang lebih baik dari DFT adalah short time Fourier Transform (STFT). Hal ini menerapkan window h[n], panjang N << M pada data :
N j k N N h k n h xn e X 2 1 2 2 ,
(5)2.4Frame Blocking dan Windowing
Sinyal suara umumnya dipilah-pilah menjadi sejumlah segmen sinyal. Segmen sinyal suara ini disebut frame. Tujuan sinyal suara dipilah-pilah ke dalam sejumlah frame agar karakteristiknya dapat ditangkap, di mana karakteristiknya tidak berubah dalam rentang waktu yang pendek.
Lebar setiap frame yang ditentukan di dalam suatu aplikasi pengolahan suara adalah sama misalnya 30 milidetik, sehingga setiap framenya akan memiliki jumlah sampel yang sama pula, misalnya N sampel (Lai 2003). Frame kedua adalah frame yang juga memiliki N sampel yang posisi awal framenya bergeser sebanyak M sampel dari posisi awal frame pertama.
Begitu juga frame ketiga, dengan N sampel yang posisi awal framenya bergeser sebanyak M sampel dari posisi awal frame kedua atau sebanyak 2M sampel dari posisi awal frame pertama. Demikian pula seterusnya hingga frame terakhir.
M dapat diperoleh dari M(1/3)N atau M = (a/b)N di mana a dan b adalah bilangan asli, a ≤ b dan M ≤ N. Overlap antara suatu frame dengan frame sebelahnya adalah N – M sampel (Rabiner dan Juang 1993). Adanya overlap dimaksudkan agar pengambilan sampel-sampel dari frame berikutnya dapat bergerak secara halus (smooth) sehingga karakteristik sinyal suara dalam setiap framenya tidak banyak berkurang. Ilustrasi tentang pembentukan frame dapat dilihat pada Gambar 2.
Gambar 2. Pembentukan frame pada sinyal suara (Rabiner dan Juang 1993)
Tahap selanjutnya dari pemrosesan sinyal adalah membuat window terhadap tiap-tiap frame dengan tujuan untuk meminimalkan ketidak-kontinuan pada awal dan akhir setiap frame. Umumnya, window yang digunakan adalah window Hamming. Pembentukan window Hamming menggunakan formula : 1 , , 0 ; 1 2 cos 46 , 0 54 , 0 n N N n n (6)
dengan N adalah banyaknya sampel.
Keuntungan menggunakan window Hamming adalah memiliki kebocoran spektral yang lebih sedikit dari pada tanpa menggunakan window Hamming (Ahrendt 2006).
Kebocoran spektral (spectral leakage) adalah efek pada analisis frekuensi sinyal di mana munculnya sejumlah energi sinyal kecil yang diamati pada komponen frekuensi yang tidak terdapat pada bentuk gelombang aslinya. Istilah kebocoran di sini dimaksudkan bahwa seolah-olah terdapat sebagian energi yang bocor keluar dari spektrum sinyal aslinya ke frekuensi yang lain (http://en.wikipedia.org/wiki/Spectral_leakage).
Setelah sinyal suara dibagi-bagi ke dalam frame, setiap frame sinyal suara tersebut dikenakan operasi window Hamming. Selanjutnya proses ekstraksi ciri akan dilakukan terhadap setiap frame tersebut.
Sinyal suara N N N M M Frame3 Frame1 Frame2 N – M
9
2.5 Penyiapan Data untuk Klasifikasi
Menurut Han dan Kamber (2001) terdapat beberapa langkah praproses terhadap data untuk meningkatkan akurasi, efisiensi, dan skalabilitas dari klasifikasi atau prediksi, antara lain :
1) Pembersihan Data
Tujuan dari praproses ini adalah untuk menghilangkan atau mengurangi noise (misalnya dengan melakukan proses smoothing) dan mengadakan perlakuan khusus pada data yang hilang (misalnya menggantinya dengan nilai modus data tersebut).
2) Analisa Relevansi atau Pemilihan Ciri
Sejumlah atribut di dalam data mungkin saja tidak relevan untuk diklasifikasi atau diprediksi atau juga atribut yang lain mungkin redundant. Praproses ini dilakukan untuk menghilangkan atribut yang redundant atau tidak relevan.
3) Transformasi atau Normalisasi Data
Data dapat digeneralisasi ke konsep yang lebih tinggi. Konsep hirarki dapat digunakan di sini. Misalnya nilai untuk atribut frekuensi dapat diganti dengan rendah, sedang, atau tinggi. Beberapa metode yang umum digunakan yaitu :
a. Min-Max
Min-Max merupakan metode normalisasi dengan melakukan transformasi linier terhadap data asli. Salah satu metodenya adalah distribusi normal kumulatif dengan rumus sebagai berikut :
√ (7) Di mana x adalah nilai yang akan didistribusi dan erf adalah error function. Error function didapatkan dengan rumus sebagai berikut :
√ ∫ (8) Metode ini akan menormalisasi input dan target sedemikian rupa sehingga hasil normalisasi akan berada pada interval 0 dan 1.
b. Unary Encoding
Unary Encoding merupakan metode transformasi data yaitu dengan merepresentasikan data dengan kombinasi angka 1 dan 0
(variabel bilangan biner). Metode ini digunakan untuk mentransformasi
data bersifat kategori. Sebagai contoh ‘10’ untuk data ‘musik’ dan ‘01’
untuk data ‘bukan musik’.
c. Data Numerik dan Kategorik
Menurur Kantardzic (2003) tipe data yang umum adalah numerik dan kategorik. Nilai numerik termasuk nilai real maupun integer seperti waktu dan frekuensi. Nilai numerik memiliki 2 properti yang penting yaitu relasi urut (2 < 5 dan 5 < 7) dan jarak (jarak (2,1, 3,2) = 1, 1). Sedangkan untuk kategorik data tidak memiliki keduanya tersebut. Nilai dari 2 variabel ini bisa sama atau tidak sama yang artinya hanya mempunyai relasi equality (rock = rock, rock <> klasik). Variabel dengan tipe ini dapat dikonversi menjadi numeric binary variable atau dalam statistik disebut dengan dummy variables.
Variabel kategorik dengan n nilai dapat dikonversi menjadi n numerical binary variable. Jika terdapat 4 pilihan genre yaitu rock, klasik, pop dan jazz. Maka 4 genre tersebut dapat dikonversi menjadi 4 bit numerical binary variable yaitu klasik bernilai 1000, disko bernilai 0100, metal bernilai 0010, dan reggae bernilai 0001.
2.6 Ekstraksi Ciri
Tahap pertama dalam sistem klasifikasi, seperti yang ditunjukkan dalam Gambar 3, adalah penting bagi akurasi sistem klasifikasi. Vektor ciri y, yang merupakan komposisi dari beberapa ciri harus sediskriminatif mungkin dari kelas yang bersangkutan. Idealnya, vektor ciri harus dapat memisahkan seluruh sampel dari kelas-kelas yang berbeda.
Gambar 3. Sistem dasar klasifikasi (Andersson 2004)
y
Pengklasifikasi Ekstraksi Ciri
Pengamatan Vektor Ciri
11
Bagaimana vektor ciri y dibentuk adalah penting bagi akurasi klasifikasi. Vektor ciri yang dibentuk secara efektif memudahkan pengklasifikasian dan juga memudahkan perancangan pengklasifikasi. Oleh karena itu, ciri apa yang akan diekstrak tergantung dari konteks.
Adapun tujuan dari ekstraksi ciri (feature extraction) adalah untuk mengurangi jumlah data yang sebenarnya dengan melakukan pengukuran terhadap properti atau ciri tertentu yang membedakan pola masukan (input) yang satu dengan yang lainnya (Duda et al. 2001).
Dalam sistem klasifikasi musik, ciri diekstrak oleh algoritma pemproses sinyal untuk mendapatkan informasi diskriminatif sebanyak mungkin dari tahap pengamatan. Ciri yang sering dipakai dalam penelitian sitem klasifikasi musik seperti pada penelitian Costa et al. (2004), Tzanetakis et al. (2002), dan Norowi et al. (2005) adalah Mel-Frequency Cepstral Coefficents (MFCC).
Ciri MFCC menghitung koefisien cepstral dengan mempertimbangkan persepsi sistem pendengaran manusia terhadap frekuensi suara.
Gambar 4. Ilustrasi dari perhitungan MFCC
Diagram alir yang terlihat pada Gambar 4 mengilustrasikan langkah-langkah dalam menghitung MFCC dari sinyal audio mentah menjadi ciri MFCC. Sinyal audio dibaca frame demi frame, dan dilakukan windowing untuk setiap frame untuk berikutnya dilakukan transformasi Fourier. Dari nilai hasil transformasi Foruier ini selanjutnya dihitung spektrum mel menggunakan sejumlah filter yang dibentuk sedemikian sehingga jarak antar pusat filter adalah konstan pada ruang frekuensi mel. Dari literatur yang ada, skala mel ini dibentuk untuk mengikuti persepsi sistem
Hamming Window Dicsrete Fourier Transform Mel-Frequency Wrapping Dicsrete Cosine Transform Sinyal Ciri MFCC
pendengaran manusia yang bersifat linear untuk frekuensi rendah dan logaritmik untuk frekuensi tinggi, dengan batas pada nilai frekuensi akustik sebesar 1000 Hz. Proses ini dikenal dengan nama Mel-Frequency Wrapping. Koefisien MFCC merupakan hasil transformasi kosinus dari spektrum mel tersebut, dan dipilih K koefisien. Transformasi kosinus berfungsi untuk mengembalikan domain, dari frekuensi ke domain waktu (Buono 2009).
Setelah menerapkan window Hamming pada frame, maka langkah berikutnya untuk menghitung MFCC adalah sebagai berikut :
a. Discrete Fourier Transform (DFT)
DFT merupakan analisis sinyal suara yang berkaitan dengan sinyal periodik-diskret, yaitu sinyal diskret yang dapat diperlebar tanpa batas ke kiri dan ke kanan, dengan pola yang berulang.
Pada analisis sinyal digital, dilakukan sampling sinyal sebanyak N. Anggap bahwa sampel ini sebagai satu periode dan dapat diduplikasi terus-menerus ke kiri dan ke kanan, sehingga dapat dianalisis dengan menggunakan DFT. DFT mentransformasikan N titik sinyal sebagai input menjadi N/2+1 titik sinyal output, seperti yang diilustrasikan pada Gambar 5.
Gambar 5. Ilustrasi transformasi DFT (Buono 2009)
Time Domain Frequency Domain
0 N-1 N sampel Dari x[0] s.d. x[N-1] Decomposition Analysis Forward DFT DFT Re X[ ] 0 N/2 N/2+1 sampel Cosine Wave amplitudes Dari Re X[0] s.d. Re X[N/2] x[ ] Im X[ ] 0 N/2 N/2+1 sampel Sine Wave amplitudes Dari Im X[0] s.d. Im X[N/2]
Secara bersama dinotasikan X[ ] Synthesis
13
Notasi untuk domain frekuensi adalah Re X[k] dan Im X[k] untuk k [0,N/2] atau Re X[f] dan Im X[f] untuk f=k/N atau f [0, 0,5]. Hal ini dikarenakan sinyal diskret hanya mengandung frekuensi antara 0 dan 0,5 dari sampling rate. Atau bisa juga Re X[] dan Im X[] untuk
=2πk/N [0, π]. Oleh karena itu, gelombang kosinus pada domain
frekuensi tersebut bisa dituliskan sebagai berikut :
c[n] = cos(2πkn/N) = cos(2πfn) = cos(n) (9) Fungsi basis (basis function) dalam DFT adalah gelombang sinus dan kosinus dengan amplitudo satu. Fungsi basis ini dituliskan dengan rumus sebagai berikut :
ck[i] = cos(2πki/N) dan sk[i] = sin(2πki/N) (10) untuk i = 0, 1, 2, ..., N-1, dan k = 0, 1, 2, ..., N/2 (dalam hal ini k adalah banyaknya gelombnag pada N sampel). Sebagai contoh untuk 32 titik sampel, DFT direpresentasikan dengan basis gelombang sinus dan kosinus masing-masing sebanyak 17 buah, yaitu untuk k = 0, 1, 2, ..., 16. Dalam hal ini sinyal dalam domain waktu dapat dirumuskan sebagai penjumlahan terboboti dari fungsi basis dengan formula :
[ ] ∑ ⁄ ̅ [ ] ⁄ ∑ ⁄ ̅ [ ] ⁄ (11) dengan i = 0, 1, 2, ..., N-1 yang disebut persamaan sintesa. Sinyal sampel sebanyak N titik dibentuk oleh N/2+1 gelombang kosinus dan N/2+1 gelombang sinus dengan amplitudo untuk kosinus dan sinus masing-masing adalah array ̅[ ] dan ̅[ ], yang dalam hal ini :
̅[ ] [ ] ⁄ dan ̅ [ ] [ ]
⁄ (12) Sedangkan untuk k = 0 dan k = N/2, bagian real adalah :
̅[ ] [ ] dan ̅[ ⁄ ] [ ⁄ ] (13) Nilai-nilai DFT untuk k = 0, 1, 2, ..., N/2 dihitung dari sinyal input dengan rumus sebagai berikut :
[ ] ∑ [ ] ⁄
(14)
[ ] ∑ [ ] ⁄
Yang disebut sebagai persamaan analisis. Ada kalanya array dalam domain frekuensi direpresentasikan dengan koordinat polar. Dalam koordinat polar, pasangan [ ] dan [ ] digantikan oleh pasangan magnitudo, Mag [ ], dan fase X[k].
Gambar 6. Ilustrasi fase X[k]
Berdasarkan ilustrasi pada Gambar 6, maka domain frekuensi dapat dirumuskan sebagai berikut :
Mag X[k] = (Re X[k]2 + Im X[k]2)1/2 dalam amplitudo Fase X[k] = arctan [ ]
[ ] dalam radian Juga sebaliknya :
Re X[k] = Mag X[k] cos(Fase X[k]) Im X[k] = Mag X[k] sin(Fase X[k])
Oleh karena itu, sinyal input dalam domain waktu dapat ditransformasikan menjadi domain frekuensi melalui analisis DFT, baik dalam bentuk komponen real dan imajiner, maupun dalam bentuk koordinat polar (magnitudo dan fase) tanpa mengubah informasi yang terkandung dalam sinyal. Secara umum ada tiga cara untuk menghitung DFT, yaitu mealui persamaan simultan, korelasi dan algoritma FFT. Dengan algoritma FFT, kompleksitas menjadi rendah dari n2 menjadi n*log2(n).
b. Mel-Frequency Wrapping dan Transformasi Kosinus
Untuk proses wrapping, diperlukan beberapa filter yang saling overlap dalam domain frekuensi. Filter yang digunakan adalah berbentuk segitiga dengan tinggi satu dan rentang filter segitiga tersebut ditentukan berdasarkan hasil studi psikologi mengenai persepsi manusia dalam menerima frekuensi bunyi.
B
A M
θ
A cos (x) + B sin (x) = M cox (x+θ) M = (A2+B2)1/2
Θ = arctan (B/A) A = M cos (θ) dan B = M sin (θ)
15
Dari studi psikologi, telinga manusia mempunyai persepsi terhadap frekuensi suara secara tidak linear pada frekuensi di atas 1000 Hz. Ukuran persepsi ini dinyatakan dalam skala mel (melody). Hubungan skala mel dengan frekuensi yang dirumuskan oleh Nilsson dan Ejnarsson (2002) adalah sebagai berikut :
{
(16)
Dan diilustrasikan seperti pada Gambar 7. Dari formula di atas, maka nilai frekuensi (FHz) sebagai fungsi dari skala mel adalah :
( ) (17)
Gambar 7. Grafik hubungan frekuensi dengan skala mel
Terlihat bahwa untuk frekuensi rendah, filter yang digunakan menggunakan skala linear, sehingga lebarnya konstan. Sedangkan untuk frekuensi tinggi (>1000 Hz), filter dibentuk dengan skala logaritma.
Sesuai dengan perkembangannya, teknik MFCC mengalami beberapa variasi terutama dalam bentuk filter dan jumlahnya. Bentuk filter mengalami perubahan dalam hal tinggi, sedangkan bentuk yang digunakan
0 500 1000 1500 2000 2500 0 1000 2000 3000 4000 5000 S k al a M e l Frekuensi Akustik (Hz) linear ⬚ ( )
tetap segitiga dengan jumlah 20, 24 atau 40. Gambar 8 menyajikan contoh filter yang diperkenalkan oleh Davis dan Mermelstein pada tahun 1980.
Berikut akan diuraikan tahapan pembentukan filter yang pertama kali diperkenalkan oleh Davis dan Mermelstein. Pada penjelasan ini dimisalkan frekuensi suara yang akan dicakup adalah pada rentang 0 hingga 5000 Hz. Secara umum ada tiga tahapan yaitu :
1) Gambarkan fungsi Fmel mulai frekuensi terendah hingga FHz = 5000 Hz dengan menggunakan persamaan 16, dan tentukan nilai mel untuk frekuensi akustik 5000 Hz (misal M2) dan nilai mel untuk frekuensi akustik 1000 Hz (misal M1).
2) Sumbu mel dari 0 hingga M1 dan M1 ke M2 disekat masing-masing menjadi M/2 sekatan yang sama lebarnya.
3) Dari setiap batas sekatan ditarik garis ke kurva fungsi dan diproyeksikan ke sumbu FHz sehingga diperoleh titik tengah filter pada sumbu FHz.
Gambar 8. Filter yang diperkenalkan oleh Davis dan Mermelstein
Algoritma detail untuk membentuk M filter pada teknik MFCC yang disarankan oleh Davis dan Mermelstein adalah sebagai berikut :
a) Pilih jumlah filter yang akan dibuat (M)
b) Pilih frekuensi terbesar (fhigh). Dari nilai ini, maka nilai tertinggi dari
adalah : A mp li tu d o Frekuensi
17
c) Pusat filter ke i adalah fi : c.1.
untuk i = 1, 2, 3, ..., M/2
c.2. untuk i = M/2, M/2+1, ..., M, maka fi dihitung dengan prosedur berikut :
1. skala mel disekat dengan lebar yang sama, yaitu sebesar , dengan :
Dari point (b), maka nilai dapat ditulis sebagai :
2. nilai mel untuk pusat filter ke i adalah :
3. pusat dari filter ke i adalah :
( ⁄ )
Dari M filter yang sudah dibentuk, maka dilakukan wrapping terhadap sinyal dalam domain frekuensi dan menghasilkan satu komponen untuk setiap filter dengan formula sebagai berikut :
∑ | |
(18)
Dalam hal ini i = 1, 2, 3, ..., M (M adalah jumlah filter segitiga) dan
adalah nilai filter segitga ke i untuk frekuensi akustik sebesar k. Nilai koefisien MFCC ke j akhirnya diperoleh menggunakan transformasi kosinus dengan formula sebagai berikut :
∑ (19) dengan j = 1, 2, 3, ..., K, K adalah jumlah koefisien MFCC yang diinginkan dan M adalah jumlah filter. Gambar 9 memberikan ilustrasi ekstraksi ciri menggunakan teknik MFCC dari suatu sinyal audio.
19
dibangun pada setiap dimensi feature pada tahap pembelajaran dan interval-interval berkoresponden pada setiap feature memberikan suara (vote) untuk setiap kelas pada tahap klasifikasi algoritma VFI (Demiroz 1997). Algoritma VFI telah dikembangkan menjadi lima versi, yaitu VFI1, VFI2, VFI3, VFI4, dan VFI5. Pada penelitian ini akan digunakan algoritma yang terakhir yaitu VFI5.
Algoritma VFI5 adalah versi terakhir dari algoritma VFI yang menggeneralisasi pembentukan point intervals pada seluruh end points. Algoritma VFI5 membentuk point interval dari setiap end point yang berbeda dan range interval antara sepasang end point yang berbeda mengecualikan end points. Algoritma pembelajaran dari VFI5 dapat dilihat pada Gambar 10.
Gambar 10. Tahap pembelajaran pada algoritma VFI5 (Demiroz 1997)
Interval-interval beserta kelas yang diperoleh dari contoh dataset pembelajaran pada Gambar 11 dapat dilihat pada Gambar 12. Batas bawah dari semua interval adalah point intervals dan terdapat range intervals antara batas bawah tersebut meniadakan batas bawah.
train(TrainingSet): begin
for each feature f for each class c
EndPoints[f] = EndPoints[f] find_end_points(TrainingSet,f,c); sort(EndPoints[f]);
if f is linear
for each end point p in EndPoints[f] form a point interval from end point p
form a range interval between pand the next endpoint ≠ p else /* f is nominal */
each distinct point in EndPoints[f] forms a point interval
for each interval i on feature dimension f for each class c
interval_class_count[f,i,c] = 0 count_instances(f, TrainingSet); for each interval i on feature dimension f for each class c
interval_class_vote[f,i,c] = _� _� [ �]
� _� [�]
normalize interval_class_vote[f, i, c];
21
interval i26 dengan batas bawah 6 dan dimensi feature f2. Hal ini dapat dilihat pada Gambar 13. Karena terdapat point intervals dimana t1 = 5 dan t2 = 6 keduanya terletak, vote feature individu diambil dari point intervals yang berkoresponden.
Gambar 13. Contoh pengklsifikasian pada algoritma VFI5 dengan contoh pengujian t=<5,6>
Vote point interval i16 dari feature f1 dimana t1 = 5 terletak sama dengan interval_class_vote[f1, i16, A] = 0 dan interval_class_vote[f1, i16, B] = 1 untuk kelas A dan juga kelas B. Sehingga, vektor vote individu f1 adalah v1 = <0;1>. Jika f1 diberikan kesempatan untuk memprediksi sendirian, maka ia akan memprediksi kelas B dengan pasti karena B menerima seluruh vote feature f1 dan kelas A tidak mendapatkan vote. Pada dimensi feature f2, point interval i26 dimana t2 = 6 terletak memiliki vote yang sama dengan interval_class_vote[f1, i26, A] = 0,57 untuk kelas A dan vote yang sama dengan interval_class_vote[f1, i26, B] = 0,43 untuk kelas B. Sehingga vektor vote individu f2 adalah v2 = <0,57;0,43>. Jika f2 diberikan kesempatan untuk memprediksi, maka ia akan memprediksi kelas A.
Pada tahap akhir, vote individu dari kedia feature dijumlahkan dan jumlah vektor vote v = <0,57;1,43>. Algoritma VFI5 memberikan vote 0,57 untuk kelas A dan 1,43 untuk kelas B, sehingga kelas B dengan nilai vote tertinggi diprediksikan sebagai kelas dari contoh pengujian.
2.8 Jaringan Saraf Tiruan (JST)
Dalam sistem pengenalan musik (music recognition), pembentukan model referensi musik dan pencocokan pola adalah dua tahapan yang sangat berkaitan. Pembentukan model referensi musik akan membentuk suatu model referensi yang akan digunakan untuk pencocokan pola (pattern recognition).
Salah satu teknik yang dapat digunakan dalam pencocokan pola adalah JST. JST atau Neural Network adalah metode soft computing yang merupakan salah satu representasi buatan dari otak manusia yang selalu mencoba untuk mensimulasikan proses pembelajaran pada otak manusia tersebut. Istilah buatan (artificial) digunakan karena jaringan saraf ini diimplementasikan dengan menggunakan program komputer yang mampu menyelesaikan sejumlah proses perhitungan selama proses pembelajaran.
JST akan melakukan pembelajaran untuk membentuk suatu model referensi, kemudian JST yang telah melakukan pembelajaran tersebut dapat