Fakultas Ilmu Komputer
Universitas Brawijaya
2083
Pengenalan Jenis Kelamin dan Rentang Umur berdasarkan Suara
menggunakan Metode Backpropagation Neural Network
Avisena Abdillah Alwi1, Putra Pandu Adikara2, Indriati3
Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya Email: 1[email protected], 2[email protected], 3[email protected]
Abstrak
Teknologi di bidang speech recognition saat ini mengalami kemajuan pesat. Salah satu teknologi yang memanfaatkan speech recognition adalah asisten virtual seperti Google Asisten, Cortana, dan Alexa. Guna meningkatkan kualitas komunikasi antara asisten virtual dan manusia, asisten virtual perlu mengenal siapa lawan komunikasinya. Salah satu caranya adalah dengan mengetahui jenis kelamin dan umurnya. Pengenalan jenis kelamin dan rentang umur berdasarkan suaranya merupakan salah satu bagian speech recognition. Dari audio tidak bisa langsung diklasifikasikan oleh karena itu perlu adanya ekstraksi ciri atau fitur, ekstraksi fitur yang dapat digunakan antara lain Mel-Spectogram, Mel Frequency Cepstral Coefficients (MFCC), dan Chroma- Short-Time Fourier Transform. Arsitektur jaringan saraf tiruan mampu mengklasifikasikan hal tersebut, salah satu metodenya adalah Backpropagation. Dari pengujian yang dilakukan klasifikasi jenis kelamin dan rentang umur dengan
dataset dari Mozilla Common Voice mendapatkan akurasi yang kurang baik yaitu 0,18357. Dari hasil
pengujian tersebut perlu untuk dilakukan pengujian tambahan yaitu pengujian dataset. Ketika dilakukan pengujian dataset untuk klasifikasi jenis kelamin saja terlihat akurasi klasifikasi dengan dataset Mozilla Common Voice sebesar 0,62504 sedangkan akurasi dari klasifikasi dengan dataset dari Free ST American English Corpus mendapat 0,9349. Dari pengujian yang dilakukan disimpulkan bahwa penggunaan dataset Mozilla Common Voice kurang direkomendasikan untuk pengenalan jenis kelamin dan/atau rentang umur.
Kata kunci: Speech Recognition, jenis kelamin, umur, Backpropagation, Mel-Spectogram, MFCC, Chroma-STFT
Abstract
Technology in the field of speech recognition is currently experiencing rapid progress. One technology that utilizes speech recognition is virtual assistants such as Google Assistant, Cortana, and Alexa. In order to improve the quality of communication between virtual assistants and humans, virtual assistants need to know who their communication opponents are. One way is by knowing the gender and age. Recognition of gender and age range based on voice is one part of speech recognition. Audio cannot be directly classified, therefore there is a need for feature or feature extraction, feature extraction that can be used include Mel-Spectogram, Mel Frequency Cepstral Coefficients (MFCC), and Chroma- Short-Time Fourier Transform. Artificial neural network architecture is able to classify it, one of the methods is Backpropagation. From the tests conducted by gender classification and age range with a dataset from Mozilla Common Voice, the accuracy is less good, that is 0.18357. From the test results it is necessary to do additional testing, namely testing the dataset. When testing the dataset for gender classification alone, the accuracy of classification with the Mozilla Common Voice dataset is 0.62504, while the accuracy of the classification with the dataset from Free ST American English Corpus gets 0.9349. From the tests conducted it was concluded that the use of the Mozilla Common Voice dataset was less recommended for gender and / or age recognition.
Keywords: Speech Recognition, gender, age, Backpropagation, Mel-Spectogram, MFCC, Chroma-STFT
1. PENDAHULUAN
Tubuh manusia dapat menghasilkan data yang dapat merepresentasikan pemilik data
tersebut, salah datu data yang dihasilkan bagian tubuh manusia adalah suara. Dari suara yang dihasilkan bisa didapatkan informasi jenis kelamin, umur, emosi, dialek, atau hal-hal
lainnya yang berhubungan dengan identitas seseorang (Latinus & Belin, 2011) (Chaudhary & Sharma, 2018). Suara yang dihasilkan oleh laki-laki dan perempuan cenderung berbeda pada frekuensi yang dihasilkan, laki-laki dewasa umunya memiliki frekuensi suara 85 - 180 Hz dan perempuan dewasa sekitar 165 sampai 255 Hz (Titze, 1994).Selain mengenali jenis kelamin dari suara, pengenalan umur juga dapat dilakukan karena suara dapat berubah seiring bertambahnya usia mulai dari masa kanak-kanak hingga lanjut usia.
Sejalan dengan perkembangan teknologi,
Automatic Speech Recognition (ASR) menjadi
salah satu bidang penelitian yang berkembang cukup cepat dan pesat. Banyak pengaplikasian ASR yang sudah menjadi bagian dari kehidupan manusia, contoh sederhananya adalah speech to
text atau sebaliknya pada program asisten
virtual. Dari sekian banyak pengaplikasian ASR, peneliti tertarik pada satu sub bidang penelitian yaitu hubungan interaksi manusia dengan mesin khususnya dengan media suara yang contoh aplikasinya adalah Google Asisten, Alexa, dan Cortana.
Agar pengalaman berkomunikasi antara manusia dengan mesin meningkat maka perlu adanya pemahaman dengan siapa lawan komunikasinya. Selama ini komunikasi antara manusia dan mesin pada program-program virtual asisten berjalan seperti biasa. Oleh karena itu pengalaman komunikasi antara manusia dan mesin perlu ditingkatkan dengan memperhitungkan aspek-aspek penting, salah satu aspek penting dalam berkomunikasi adalah mengetahui betul siapa lawan komunikasinya. Untuk mengetahui lawan komunikasinya dapat mesin bisa mengenali lawan komunikasinya dengan jenis kelamin dan usianya. Dua atribut tersebut (jenis kelamin dan usia) dapat dikenali dengan suaranya, oleh karena itu memungkinkan bagi mesin untuk mengenalinya. Mengetahui jenis kelamin dan umur lawan komunikasinya dapat meningkatkan pengalaman berkomunikasi karena dapat menyesuaikan diksi, konteks, cara komunikasinya karena berkomunikasi dengan anak kecil, orang yang seumuran, atau orang yang lebih tua berbeda dalam pemilihan diksi, konteks, bahkan caranya berkomunikasi. Agar mesin dapat mengenali lawan komunikasi, mesin perlu menganalisis dan mengklasifikasi dari suara yang diterima dari lawan bicaranya itu berdasarkan frekuensi, pitch, amplitudo, dll.
Penelitian tentang pengenalan jenis kelamin dan umur berdasarkan suara pernah dilakukan
oleh peneliti sebelumnya. Přibil dkk. (2016)
.
melakukan penelitian yang berfokus pada pengenalan jenis kelamin dan umur dengan menggunakan Gaussian Mixture Models(GMM). Dengan menggunakan data suara peneliti mengategorikan menjadi beberapa jenis suara yaitu anak-anak, pemudi, pemudi, laki-laki dewasa, perempuan dewasa, lanjut usia laki-laki, dan lanjut usia perempuan. Penelitian pengenalan jenis kelamin dan umur menggunakan metode GMM mencapai tingkat akurasi hingga 92,3% (Přibil dkk., 2016).
Perkembangan teknologi terus meningkat seiring kebutuhan dan perkembangan zaman. Teknologi yang sedang populer yang memungkinkan komputer untuk belajar dan mendapat kecerdasan buatan salah satunya adalah Machine Learning. Banyak algoritme yang digunakan dalam Machine Learning, salah satunya adalah Backpropagation Neural Network. Metode Backpropagation terkenal memiliki kelebihan dapat menyelesaikan masalah klasifikasi dengan tingkat akurasi yang cukup tinggi. Mansour dkk. (2015). melakukan penelitian dengan data yang serupa yaitu tentang pengenalan orang berdasarkan suaranya menggunakan algoritme Backpropagation. Penelitian tersebut mengambil 5 sampel suara dari 40 orang dengan metode ekstraksi fitur yang digunakan adalah MFCC memiliki tingkat akurasi yang sangat baik dengan nilai 95%.
2. LANDASAN KEPUSTAKAAN
Penelitian awal tentang pengenalan jenis kelamin dan umur juga pernah dilakukan oleh Kim dkk., (2007) dengan menggunakan metode GMM. Penelitian tersebut menggunakan data karakteristik Mel Frequency Cepstral Coefficients (MFCC) dari audio untuk melakukan klasifikasi. MFCC dikenal sebagai salah satu metode dari ekstraksi fitur dari sebuah suara, percakapan, dan emosi (Kim dkk., 2007). Penelitian tersebut menggunakan MFCC karena metode tersebut memiliki kelebihan dalam hal
noise dan perkiraan kesalahan spektral dibandingkan dengan faktor lain. Penggunaan metode GMM dalam proses klasifikasinya dapat menghasilkan tingkat akurasi yang terbilang cukup tinggi yaitu mencapai angka 94,9%.
Penelitian lain juga pernah dilakukan oleh Přibil dkk. (2016) peneliti menggunakan metode
Gaussian Mixture Models (GMM) sebagai
metode dalam penelitiannya. Data yang digunakan dalam penelitiannya berbentuk suara.
Fakultas Ilmu Komputer, Universitas Brawijaya Data yang digunakan berupa suara yang disimpan dalam bentuk fail MP3 stereo dengan frekuensi 44,1 kHz lalu dilakukan sampling menjadi 16 kHz. Penelitian tersebut mengategorikan data menjadi 7 kategori yaitu anak-anak, pemuda, pemudi, laki-laki dewasa, perempuan dewasa, laki-laki lanjut usia, dan perempuan lanjut usia. Peneliti menggunakan metode k-fold untuk memvalidasi hasil. Dari hasil pengujian yang dilakukan menunjukkan bahwa tingkat akurasi yang didapat mencapai angka 92,3% (Přibil dkk., 2016).
Penelitian lain tentang pengenalan jenis kelamin dengan menggunakan Backpropagation sudah pernah dilakukan Simamora (2018) penelitian tersebut meneliti tentang identifikasi jenis kelamin berdasarkan suaranya menggunakan metode Backpropagation. Pada penelitian tersebut berfokus untuk mengimplementasikan algoritme Backpro-pagation pada sistem identifikasi dan menggunakan metode ekstraksi fitur Mel
Frequency Cepstrum Coefficients (MFCC).
Pada penelitian tersebut dibahas secara detail tentang metode ekstraksi fitur hingga melakukan analisis terhadap metode tersebut. Dari penelitian tersebut menyimpulkan bahwa MFCC tidak cocok untuk data yang jumlahnya besar, namun cocok dengan data yang jumlahnya sedikit.
Penelitian terbaru tentang pengenalan jenis kelamin saja oleh Nugroho dkk., (2019), penelitian tidak termasuk pengenalan umur. Penelitian ini menggunakan data berupa audio yang berisikan orang menyebutkan beberapa kata dalam bahasa Jawa. Dengan data dari 5 laki-laki dan 5 perempuan yang masing-masingnya mengucapkan 3 kata dalam bahasa Jawa yang diulang sebanyak 10 kali. Peneliti mengambil karakteristik dari suara tersebut dengan metode MFCC yang nantinya dapat digunakan sebagai fitur untuk proses klasifikasi. Untuk mengurangi dimensi dari matrix yang dihasilkan, peneliti menggunakan Single Value Decomposition sebagai metodenya. Penelitian tersebut menggunakan 3 metode dengan tujuan membandingkan metode, 3 metode tersebut yaitu Logistic Regression, Support Vector
Machine (SVM), dan Deep Learning. Dari
ketiga metode tersebut Deep Learning memiliki tingkat akurasi tertinggi yaitu 97,78% sedangkan untuk metode lainnya mencapai tingkat akurasi 95,56% untuk Logistic Regression dan 93,33% untuk SVM (Nugroho dkk., 2019).
2.1 Mel-Spectogram
Mel-spectogram bertujuan menghitung
koefisien daya skala mel dari spectogram yang terdapat pada sinyal audio. Tipe mel-spectrogram memiliki sebuah objek yang
merepresentasikan dari frekuensi suara pada sinyal audio. Pada kepadatan spektral daya 𝑃(𝑓, 𝑡) dilakukan sampling di sejumlah titik pada waktu 𝑡𝑖 dan frekuensi 𝑓𝑗 pada skala
frekuensi mel. Persamaan dari skala frekuensi mel dapat ditunjukkan pada Persamaan (1) (Alkhawaldeh, 2019).
𝑚𝑒𝑙 = 2596 × log10((1 + ℎ𝑒𝑟𝑡𝑧)/700) (1) 2.2 Mel Frequency Cepstral Coefficients
(MFCC)
Mel Frequency Cepstral Coefficient (MFCC) merupakan salah satu metode yang dapat digunakan untuk mengekstrak ciri atau fitur dari audio. MFCC dapat mewakilkan secara akurat saluran vokal (suara), hal itu merupakan bentuk dari suara manusia yang telah difilter dan juga bentuk manifestasi dirinya dalam spektrum daya dalam waktu yang singkat (Alkhawaldeh, 2019).
2.3 Chroma- Short Time Fourier Transform
Chroma-STFT merupakan sebuah metode ekstraksi fitur dari sebuah audio dengan mengimplementasikan Short Time Fourier
Transform pada fitur chroma. Fitur ini dapat
merepresentasikan pitch dari suara. Selain dari suara fitur Chroma-STFT ini juga dapat merepresentasikan tangga nada.
2.4 Normalisasi Min-Max
Ada kalanya dalam data penelitian yang digunakan memiliki rentang nilai yang berbeda. Perbedaan rentang nilai dapat memengaruhi hasil klasifikasi. Salah satu metode yang dapat digunakan untuk menormalkan data adalah
Min-Max. Metode Min-Max ini memastikan nilai
akan berada dalam rentang 0 sampai 1. Pada Persamaan (2) 𝑣′ merupakan nilai baru yang setelah di normalisasikan. Pada Persamaan (2), nilai 𝑚𝑖𝑛𝐴 dan 𝑚𝑎𝑥𝐴 merupakan nilai terkecil
dan terbesar di keseluruhan data yang ada. 𝑣′ = 𝑣−𝑚𝑖𝑛𝐴
2.5 Backpropagation Nerual network
Backpropagation Neural Network (BPNN) merupakan salah satu algoritme yang menerapkan jaringan multilayer perceptron yang berbasis neural network. Algoritme BPNN menggunakan metode pembelajaran backpropagation/delta rule/gradient descent. Proses pembelajarannya dilakukan secara terawasi, sehingga membutuhkan data latih agar dapat digunakan. Selain untuk klasifikasi, BPNN juga dapat digunakan untuk regresi yaitu perkiraan berdasarkan data sebelumnya. Pada pelatihan BPNN terdapat 3 fase yaitu
feedforward, distribusi error, dan pemutakhiran
bobot. Pada tahap pengujian BPNN hanya terdapat fase feedforward. Berikut tahap-tahap dari pelatihan BPNN:
Fase Feedforward
1. Inisialisasi Bobot pada hidden layer dan
output layer. Penentuan nilai bobot
disarankan menggunakan nilai acak yang mendekati 0.
2. Lakukan langkah 3 – 9 jika kondisi berhenti belum terpenuhi.
3. Setiap data latih lakukan langkah 4 – 8. 4. Pada setiap hidden neuron (Zj), hitung
dengan Persamaan (3).
𝑧_𝑖𝑛𝑗= 𝑣0𝑗+ ∑𝑛𝑖=𝑖𝑥𝑖𝑣𝑖𝑗 (3)
Setelah mendapat 𝑧_𝑖𝑛𝑗 menghitung output
dari neuron tersebut fungsi aktivasi, detail pada Persamaan (4).
𝑧𝑗= 𝑓(𝑧_𝑖𝑛𝑗) (4)
5. Pada masing-masing neuron output, hitung dengan Persamaan (5).
𝑦_𝑖𝑛𝑘 = 𝑤0𝑘+ ∑𝑝𝑗=𝑗𝑧𝑗𝑤𝑗𝑘 (5)
Setelah mendapat 𝑦_𝑖𝑛𝑘menghitung output
dari neuron tersebut fungsi aktivasi, detail pada Persamaan (6).
𝑦𝑗 = 𝑓(𝑦_𝑖𝑛𝑘) (6)
Fase Distribusi Error
6. Fase dimulai dari layer output. Untuk setiap neuron di layer output hitung faktor error (𝛿𝑘) dengan Persamaan (7).
𝛿𝑘= (𝑡𝑘+ 𝑦𝑘)𝑓′(𝑦_𝑖𝑛𝑘) (7)
Setelah mendapatkan faktor error di masing-masing neuron output hitung delta bobot w dan biasnya dengan rumus pada Persamaan (8) dan Persamaan (9).
Δ𝑤𝑗𝑘 = 𝛼𝛿𝑘𝑧𝑗 (8)
Δ𝑤0𝑘= 𝛼𝛿𝑘 (9)
7. Setelah dari output layer, selanjutnya pada
hidden layer. Pada hidden layer
menghitung total faktor error yang masuk
dari output neuron ke setiap hidden neuron dengan rumus pada Persamaan (10).
𝛿_𝑖𝑛𝑗= ∑𝑚𝑘=1𝛿𝑘𝑤𝑗𝑘 (10)
Setelah itu menghitung faktor error di masing-masing neuron hidden dengan rumus pada Persamaan (11).
𝛿𝑗 = 𝛿_𝑖𝑛𝑗𝑓′(𝑧_𝑖𝑛𝑗) (11)
Setelah mendapatkan faktor error di masing-masing neuron output hitung delta bobot v dan biasnya dengan rumus pada Persamaan (12) dan Persamaan (13).
∆𝑣𝑖𝑗 = 𝛼𝛿𝑗𝑥𝑖 (12)
Δ𝑣0𝑗= 𝛼𝛿𝑗 (13)
Fase Pemutakhiran Bobot
8. Setelah didapatkan delta bobot dan bias di semua layer, langkah selanjutnya adalah menjumlahkan bobot saat ini dengan delta bobotnya. Hal yang sama untuk bias di kedua layer.
9. Setelah semua data telah dilatih, selanjutnya adalah memeriksa kondisi berhenti.
Keterangan:
𝑛 = banyak neuron input 𝑝 = banyak neuron hidden 𝑚 = banyak neuron output 𝛼 = learning rate
𝑥𝑖 = input ke-i
𝑣𝑖𝑗 = bobot hidden layer input ke-i ke
neuron hidden ke-j
𝑣0𝑗 = bias neuron hidden ke-j
𝑤𝑗𝑘 = bobot output layer neuron hidden ke-j
ke neuron output ke-k
𝑤0𝑘 = bias neuron output ke-k
𝑧_𝑖𝑛𝑗 = nilai masuk pada neuron hidden ke-j
𝑧𝑗 = nilai output pada neuron hidden ke-j
𝑦_𝑖𝑛𝑘 = nilai masuk pada neuron output ke-k
𝑦𝑗 = nilai output pada neuron output ke-k
𝑓(𝑥) = fungsi aktivasi
𝑓′(𝑥) = turunan fungsi aktivasi
𝑡𝑘 = target output dari neuron output ke-k
𝑦𝑘 = nilai output dari neuron output ke-k
𝛿𝑘 = faktor error neuron output ke-k
𝛿_𝑖𝑛𝑗 = faktor error yang masuk ke neuron
hidden ke-j
𝛿𝑗 = faktor error dari neuron hidden ke-j
Δ𝑤𝑗𝑘 = beda nilai bobot 𝑤𝑗𝑘 sebelum dan
sesudah perhitungan error
Δ𝑣𝑖𝑗 = beda nilai bobot 𝑣𝑖𝑗 sebelum dan
Fakultas Ilmu Komputer, Universitas Brawijaya
2.6 Nguyen-Widrow
Nguyen-Widrow merupakan metode yang dapat digunakan untuk menginisialisasi bobot awal pada jaringan saraf tiruan di hidden layer. Kelebihan yang dimiliki metode Nguyen-Widrow adalah dapat mempercepat proses
training ke keadaan konvergen (Aisyah dkk.,
2018). Langkah-langkah pada metode Nguyen-Widrow sebagai berikut:
1. Inisialisasi bobot dengan nilai acak dengan rentang nilai antara -0.5 dan 0.5.
2. Menghitung faktor skala dengan rumus pada Persamaan (14).
𝛽 = 0,7 √𝑝𝑛
(14)
3. Menghitung panjang vektor 𝑣𝑗 dengan
Persamaan (15).
‖𝑣𝑗‖ = √𝑣1𝑗2+. . +𝑣𝑛𝑗2 (15) 4. Menghitung bobot baru dengan rumus pada
Persamaan (16) 𝑣𝑖𝑗(𝑏𝑎𝑟𝑢) =
𝛽𝑣𝑖𝑗(𝑙𝑎𝑚𝑎)
‖𝑣𝑗(𝑙𝑎𝑚𝑎)‖ (16)
5. Menghitung bias dengan nilai angka acak dengan rentang nilai -β dan β.
Keterangan:
𝛽 = faktor skala
𝑛 = banyak neuron input
𝑝 = banyak neuron output
‖𝑣𝑗‖ = panjang vektor 𝑣𝑗
𝑣𝑖𝑗(𝑏𝑎𝑟𝑢) = bobot hidden layer baru
𝑣𝑖𝑗(𝑙𝑎𝑚𝑎) = bobot hidden layer lama 2.7 Confusion Matrix
Confusion Matrix merupakan salah satu
cara untuk melakukan evaluasi terhadap suatu sistem klasifikasi. Confusion Matrix berbentuk tabel yang berisikan rangkuman hasil benar atau salahnya prediksi sistem klasifikasi tersebut. Hal tersebut merupakan kunci utama dari keberadaan
confusion matrix. Bentuk dari confusion matrix
ditunjukkan pada Tabel 1 Terdapat 4 nilai pada tabel confusion matrix yaitu True Positive (TP),
True Negative (TN), False Positive (FP), dan False Negative (FN).
Tabel 1. Confusion Matrix
Kelas 1 Kelas 2
Kelas 1 TP FN
Kelas 2 FP TN
Dari tabel confusion matrix maka didapatkan akurasi dengan cara menghitung berdasarkan dengan rumus pada Persamaan (17).
𝑎𝑘𝑢𝑟𝑎𝑠𝑖 = 𝑇𝑃+𝑇𝑁
𝑇𝑃+𝑇𝑁+𝐹𝑃+𝐹𝑁 (17)
Pada dasarnya confusion matrix digunakan pada Binary Classification atau klasifikasi yang hanya terdapat 2 kelas saja, namun confusion
matrix juga dapat digunakan pada kasus multiclass classification. Untuk menghitung
akurasi didapat dengan cara menghitung untuk setiap kelasnya dengan notasi yang ditunjukkan pada Gambar 1. Setelah mengetahui TP, TN, FP, dan FN di setiap kelasnya maka selanjutnya adalah menghitung akurasi untuk setiap kelas dengan Persamaan (17). Akurasi dapat dihitung dengan merata-rata akurasi setiap kelas. Selain rata-rata akurasi untuk setiap kelas terdapat juga akurasi secara garis besar dengan cara membagi jumlah prediksi yang benar dengan jumlah data uji.
Gambar 1. Confusion Matrix Multiclass
2.8 K-Fold Cross Validation
K-fold Cross Validation merupakan salah satu teknik validasi yang biasa digunakan untuk membagi dataset menjadi sebanyak beberapa kelompok yang masing-masing kelompok memiliki jumlah data yang sama (Langford, 2005). Untuk setiap kelompok tersebut, klasifikasi menggunakannya sebagai data latih atau data uji terhadap kelompok yang lain. Hal itu dilakukan sebanyak kelompok yang ada.
3. METODOLOGI PENELITIAN 3.1 Data
Data yang digunakan bersifat sekunder yang didapat dari Mozilla Common Voice. Data bersifat terbuka dan dapat diakses di laman https://voice.mozilla.org/en/datasets. Data berupa fail audio yang dilengkapi dengan fail
metadata. Dataset tersebut memiliki banyak
atribut, namun yang digunakan hanyalah jenis kelamin dan umur. Selain dataset dari Common Voice peneliti menggunakan dataset tambahan dari OpenSLR yaitu Free ST American English Corpus yang bisa diakses di laman
http://
openslr.org/45/.
Jumlah data yang dimilikidataset tersebut sebanyak 3842 data. Dataset
dari Free ST American English Corpus hanya memiliki keterangan jenis kelamin saja.
Data dari Mozilla Common Voice sebanyak lebih dari 600.000 data dan hanya 368.083 saja yang tervalidasi. Untuk memudahkan penelitian maka akan dilakukan sampling. Penentuan jumlah sampling menggunakan rumus Slovin pada Persamaan (18). N merupakan jumlah populasi dan e merupakan error yang ditoleransi. Dengan N sebesar 368.083 dan error sebesar 3% maka data yang digunakan akan sebanyak 1108 data dari Common Voice.
𝑛 = 𝑁
1+(𝑁×𝑒2) (18)
Kelas yang digunakan pada sistem klasifikasi dengan dataset dari Mozilla Common Voice ditunjukkan pada Tabel 2 dan kelas pada
dataset dari Free ST American English Corpus
ditunjukkan pada Tabel 3. Ketika dilakukan pengujian dengan klasifikasi jenis kelamin saja maka kelas dari Mozilla Common Voice diambil jenis kelaminnya saja.
Tabel 2. Kelas pada dataset dari Mozilla Common Voice
No Kelas
1 Laki-laki 10-an tahun 2 Laki-laki 20-an tahun ... ...
8 Laki-laki 80-an tahun 9 Perempuan 10-an tahun 10 Perempuan 20-an tahun
... ...
16 Perempuan 80-an tahun
Tabel 3. Kelas pada dataset dari Free ST American English Corpus
No Kelas
1 Laki-laki 2 Perempuan
Sebelum dilakukan ekstraksi fitur, semua data dari kedua dataset dilakukan
per-processing. Dalam pre-processing terdapat
tahap penghapusan silent dari audio dan pemotongan audio sehingga durasi audio sama rata di semua data. Penghapusan silent menggunakan FFMPEG dengan pengaturan bagian audio yang lebih rendah dari -50 dB akan dihapus. Pemotongan audio dilakukan dengan
library LibROSA dengan durasi 0,5 detik.
Ekstraksi fitur menggunakan tiga ekstraksi fitur yaitu Mel-Spectogram, MFCC, dan Chroma-STFT. Hasil dari ekstraksi fitur akan
disimpan dalam bentuk fail json sehingga dapat digunakan sistem klasifikasi.
3.2 Rancangan Algoritme
Rancangan algoritme merupakan gambaran dasar yang menjadi acuan sistematis dalam implementasi. Dalam rancangan algoritme ini akan ditunjukkan gambaran besar alur kerja algoritme yang digunakan secara sistematis. Rancangan algoritme ditunjukkan pada Gambar 2 dalam bentuk diagram alir.
Mulai Input Data Preprocessing Ekstraksi Fitur Pelatihan Backpropagation Selesai Pengujian Backpropagation
Evaluasi: Confusion Matrix
Output Hasil Evaluasi
A
A
Validasi: K-Fold Cross Validation
Gambar 2. Rancangan Algoritme
3.3 Teknik Analisis Hasil
Dari pengujian yang dilakukan, akan dilihat hasilnya terhadap tingkat akurasi yang dicapai. Menghitung akurasi akan menggunakan
confusion matrix. Untuk memvalidasi hasil bisa
menggunakan metode K-Folds Cross Validation. Untuk setiap K pada cross validation
dilakukan perhitungan akurasi dengan confusion
matrix. Hasil akhir evaluasi didapat merata-rata
akurasi pada semua K.
4. PENGUJIAN DAN ANALISIS 4.1 Pengujian Fitur
Pengujian pertama yaitu pengujian penggunaan fitur yang digunakan untuk proses klasifikasi. Fitur-fitur yang digunakan antara lain Mel-Spectogram, MFCC, dan Chroma-STFT. Pengujian dilakukan secara bergantian dan berurutan dimulai dari pengujian fitur Mel-Spectogram hingga Chroma-STFT. Nilai
learning rate akan diatur menjadi 0,1, hidden
neuron yang digunakan sebanyak 20 neuron, dan perulangan epoch sebanyak 10 epoch. Hasil pengujian ditunjukkan pada Gambar 3.
Fakultas Ilmu Komputer, Universitas Brawijaya
Gambar 3. Hasil Pengujian Fitur
Dari pengujian fitur, hasil terbaik ditunjukkan dengan menggunakan fitur yang diperoleh dengan metode ekstraksi fitur MFCC dengan tingkat akurasi yang dicapai sebesar 0,09346. Fitur yang didapat dari metode ekstraksi lain seperti Chroma-STFT dan Mel-Spectogram juga memiliki hasil yang mirip dengan MFCC yaitu 0,08468 untuk Chroma-STFT dan 0,07565. Hal tersebut dapat terjadi karena fitur MFCC dapat merepresentasikan vokal dari suara manusia lebih jelas dari pada fitur lainnya. Meskipun suara manusia dapat dibedakan melalui rentang frekuensinya namun dengan ekstraksi fitur yang menggunakan acuan frekuensi tanpa proses lebih lanjut yaitu Chroma-STFT masih kurang untuk merepresentasikan suara manusia dari segi jenis kelamin ataupun dengan umurnya.
4.2 Pengujian Pengaruh Learning Rate Terhadap Tingkat Akurasi
Pengujian pertama dalam pengujian parameter ini bertujuan mengetahui pengaruh
learning rate terhadap tingkat akurasi. Pada
pengujian ini banyak neuron hidden yang digunakan sebanyak 100 neuron dan epoch maksimum sebesar 10 epoch. Hasil pengujian ditunjukkan pada Gambar 4.
Gambar 4. Hasil Pengujian Pengaruh Learning Rate Terhadap Tingkat Akurasi
Ketika learning rate yang digunakan bernilai 0,0001 akurasi yang dihasilkan terendah
dibandingkan yang lain pada pengujian tersebut, hal ini menunjukkan ketika learning rate terlalu kecil dapat menyebabkan lambatnya proses pembelajaran sehingga ketika epoch sudah mencapai maksimum hasil akurasi masih belum menunjukkan hasil terbaiknya. Dari nilai
learning rate 0,0001 sampai 0,005 mengalami
peningkatan yang cukup signifikan namun ketika learning rate bernilai 0,01 terjadi penurunan akurasi hingga akhirnya naik dan turun lagi pada learning rate bernilai 1. Hal tersebut terjadi karena pada keadaan tertentu dengan nilai learning rate yang tidak sesuai dapat melewati keadaan optimal karena terlalu cepat atau terlalu lambatnya proses pembelajaran yang diatur nilainya pada learning
rate. Belum ada metode pasti yang dapat
memperkirakan learning rate terbaik untuk klasifikasi, cara yang paling mudah untuk dilakukan adalah trial and error untuk menemukan nilai learning rate yang sesuai untuk kasus klasifikasi tertentu.
4.3 Pengujian Pengaruh Banyak Neuron Hidden Terhadap Tingkat Akurasi
Pengujian kedua pada pengujian parameter algoritme ini bertujuan mengetahui pengaruh penggunaan banyaknya neuron hidden terhadap tingkat akurasi. Pada pengujian ini learning rate yang akan digunakan adalah 0,005 dan epoch maksimum sebesar 10 epoch. Hasil pengujian ditunjukkan pada Tabel 4.
Tabel 4. Hasil Pengujian Pengaruh Banyak Neuron Hidden Terhadap Tingkat Akurasi
Banyak Hidden Neuron Tingkat Akurasi 50 0,09819 60 0,1009 70 0,1027 80 0,1063 90 0,11081 100 0,12162 110 0,14054 120 0,12612 130 0,12522 140 0,12522 150 0,11621
Dari Tabel 4 menunjukkan tingkat akurasi mencapai nilai tertingginya ketika neuron hidden sebanyak 110 yaitu 0,14054 dan tingkat akurasi terkecil ketika neuron hidden sebanyak 50 yaitu sebesar 0,09819. Jika diperhatikan, tingkat akurasi mengalami naik turun seiring
bertambahnya neuron hidden. Dalam penentuan banyaknya neuron hidden yang digunakan dalam klasifikasi khususnya pada metode Backpropagation sehingga menghasilkan hasil yang bagus memang tidak ada cara atau metode yang pasti, yang paling memungkinkan adalah cara trial and error. Dalam pengujian yang dilakukan ini tingkat akurasi terbaik yang bisa dihasilkan oleh sistem ketika neuron hidden yang digunakan sebanyak 110 hidden neuron.
4.4 Pengujian Pengaruh Epoch Maksimum Terhadap Tingkat Akurasi
Pengujian ketiga dari pengujian parameter algoritme ini adalah pengujian epoch
maksimum. Pengujian ini bertujuan mengetahui pengaruh epoch maksimum terhadap tingkat akurasi yang didapat. Pada pengujian ini
learning rate yang akan digunakan bernilai
0,005 dan hidden neuron yang akan digunakan dalam pengujian ini sebanyak 110 neuron. Hasil dari pengujian ini ditunjukkan pada Gambar 5.
Gambar 5. Hasil Pengujian Pengaruh Epoch Maksimum Terhadap Tingkat Akurasi
Dari hasil pengujian pengaruh epoch maksimum terhadap tingkat akurasi yang ditunjukkan pada Gambar 5 mengindikasikan bahwa antara keduanya linier positif. Semakin besar nilai epoch akurasi yang dihasilkan juga semakin baik hingga mencapai titik tertentu yaitu keadaan konvergen. Dari pengujian tersebut juga terlihat ketika epoch lebih dari sama dengan 250 perubahan pada akurasinya sangat kecil yaitu 0,00001 sampai 0,00002. Dari keadaan tersebut menunjukkan bahwa klasifikasi sudah mendekati keadaan konvergen. Dari pengujian tersebut juga didapat bahwa nilai akurasi tertinggi yang dapat dicapai sebesar 0,18357 ketika epoch maksimum sebesar 1000. Dari pengujian dapat ditarik bahwa epoch maksimum juga memengaruhi akurasi dari sistem klasifikasi jenis kelamin dan rentang umur dengan metode Backpropagation. Hal ini
dapat dilihat dari semakin banyaknya epoch pada pelatihan jaringan semakin baik juga akurasi yang diperoleh.
4.5 Pengujian Dataset yang Digunakan
Pada pengujian dataset yang digunakan akan dilakukan pengujian pada jenis kelamin saja. Dataset dari Free ST American English Corpus hanya memiliki keterangan untuk jenis kelamin saja, oleh karena itu pengujian akan menyesuaikan ketersediaan data tersebut. Sebelum dilakukan pengujian, pre-processing pada kedua dataset tersebut dilakukan dengan metode dan parameter yang sama. Metode ekstraksi fitur yang digunakan dan parameternya diperlakukan sama pada kedua dataset.
Pengujian ini akan menggunakan fitur MFCC, nilai learning rate 0.005, hidden neuron sebanyak 110 neuron, dan epoch maksimal sebesar 100 epoch. Hasil pengujian dataset yang digunakan ditunjukkan pada Tabel 5.
Tabel 5. Hasil Pengujian Dataset yang Digunakan
Sumber Data Akurasi
Mozilla Common Voice 0,62504 Free ST American English Corpus 0,93490
Dari pengujian jenis kelamin saja dengan
dataset yang berbeda terlihat bahwa terdapat
perbedaan besar pada hasilnya. Pengujian yang menggunakan dataset dari Mozilla Common Voice mendapatkan tingkat akurasi sebesar 0,62504 sedangkan dari dataset Free ST American English Corpus mendapatkan tingkat akurasi 0,93490. Tangkap layar hasil pengujian
dataset Open SLR ditunjukkan pada Gambar
6.6. Proses pengolahan data mentah yang berupa audio hingga berbentuk fitur dilakukan sama pada kedua dataset. Dari pengujian tersebut terlihat bahwa kualitas data dari Mozilla Common Voice cukup rendah. Klasifikasi jenis kelamin memang memiliki probabilitas 50:50 karena kelas hanya laki-laki atau perempuan saja.
Jika audio dari kedua sumber data tersebut diperdengarkan maka audio dari Free ST American English Corpus lebih bagus dan lebih jernih suaranya. Audio dari Mozilla Common Voice memiliki kelebihan pada kelengkapan propertinya yaitu memiliki label rentang umur
Fakultas Ilmu Komputer, Universitas Brawijaya namun jika didengarkan tidak sedikit yang memiliki noise background pada audionya. Hal tersebut terjadi karena Mozilla Common Voice mendapatkan audio tersebut dari sumbangan orang-orang. Dengan menerapkan cara kerja untuk mendapatkan data tersebut Mozilla Common Voice tidak dapat menjamin hal-hal yang berhubungan dengan perekaman suara misalnya jenis mikrofon, posisi mikrofon, kualitas mikrofon, kebisingan ruangan perekaman, dll. karena proses perekaman dilakukan oleh relawan yang ingin menyumbangkan suaranya. Meskipun terdapat data audio yang berkualitas rendah banyak juga audio yang memiliki kualitas bagus dari segala aspek.
Disisi lain pada data dari OpenSLR yaitu Free ST American English Corpus lebih terorganisir proses mendapatkan data. Data tersebut didapat dari 10 orang yang terdiri dari 5 laki-laki dan 5 perempuan. Masing-masing orang mengucapkan lebih dari 300 kalimat, sehingga totalnya terdapat 3842 data audio. Pemilik dataset tersebut mengklaim bahwa setiap data audio terlah diperiksa oleh manusia dan dapat menjamin akurasi yang dihasilkan. Selain dari quality control oleh pemilik dataset jika audio dari Free ST American English Corpus terdengar lebih jelas dan jernih pengucapannya. Dengan perbedaan kualitas dari kedua dataset yang digunakan menunjukkan perbedaan besar pada akurasi yang dihasilkan.
4.6 Pengujian Cross Validation
K-fold Cross validation merupakan salah
satu teknik yang digunakan untuk memvaliditas hasil klasifikasi. Teknik ini membagi data menjadi beberapa kelompok. Data latih dan data uji dipilih dari kelompok (fold) yang ada, data uji diambil dari 1 kelompok data dan sisanya sebagai data latih. Pengujian dilakukan terus menerus hingga semua kelompok pernah menjadi data uji. Pada pengujian ini akan menggunakan sebanyak 5 fold atau 5 kelompok. Setiap kelompok akan memiliki 20% dari keseluruhan data, artinya 20% data sebagai data uji dan 80% sisanya sebagai data latih. Sebelum pembagian kelompok pada cross validation,
dataset akan diacak posisinya. Pengacakan dataset ditujukan karena pada data mentah dari dataset kelas terurut secara ascending, akibatnya
terjadi kesamaan kelas pada semua data dari setiap kelompok. Pengujian hanya dilakukan untuk klasifikasi jenis kelamin saja dengan
dataset dari Free ST American English Corpus
karena pada pengujian sebelumnya hasilnya terbaik dari pengujian-pengujian lainnya. Hasil pengujian ditunjukkan pada Tabel 6.
Tabel 6. Hasil Pengujian Cross Validation
Letak Data Uji Tingkat Akurasi
Fold 1 0,90123 Fold 2 0,86989 Fold 3 0,86005 Fold 4 0,87034 Fold 5 0,90256 Rerata 0,880814
Dari hasil pengujian cross validation yang ditunjukkan pada Tabel 6 menunjukkan hasil rata-rata dari semua fold sebesar 0,880814. Ketika data uji berada pada fold pertama yaitu pada posisi 0%-20% dan data latih berada pada 21%-100% tingkat akurasi yang dicapai sebesar 0,90123. Ketika data uji berada pada fold kedua akurasi yang dicapai sebesar 0,86989, dan seterusnya pada fold-fold selanjutnya. Dari pengujian cross validation terlihat kestabilan dari algoritme Backpropagation dalam klasifikasi jenis kelamin dengan dataset dari Free ST American English Corpus, hal ini karena sudah dapat merepresentasikan keseluruhan data pada dataset dari Free ST American English Corpus. Dari pengujian tersebut juga didapat bahwa tingkat akurasi yang tervalidasi sebesar 0,880814 yang didapat dari rata-rata tingkat akurasi di semua fold.
4.7 Analisis
Dari semua pengujian yang dilakukan, klasifikasi jenis kelamin dan rentang umur dengan dataset dari Mozilla Common Voice mendapatkan hasil yang kurang bagus. Tingkat akurasi paling tinggi yang dicapai dari klasifikasi jenis kelamin dan rentang umur adalah 0,18357. Dengan tingkat akurasi yang bahkan belum mencapai angka 0,2 disimpulkan bahwa hasilnya kurang bagus.
Pada pengujian dataset yang digunakan peneliti menggunakan dataset dari Mozilla Common Voice sebagai dataset utama dan Free ST American English Corpus sebagai dataset tambahan. Pada dataset dari Free ST American English Corpus tidak memiliki keterangan umur maka untuk pengujian dataset yang dilakukan hanya klasifikasi jenis kelamin saja. Setelah dilakukan pengujian pada dataset yang digunakan terlihat bahwa tingkat akurasi
klasifikasi jenis kelamin yang didapat dengan
dataset dari Free ST American English Corpus
mendapatkan hasil terbaik yaitu 0,93490. Pengujian dengan dataset dari Mozilla Common Voice Mendapatkan tingkat akurasi yang jauh di bawah dari Free ST American English Corpus yaitu sebesar 0,62504. Jika hanya dengan pengujian jenis kelamin saja mendapatkan tingkat akurasi yang belum baik, maka hasil klasifikasi jenis kelamin dan rentang umur memang wajar jika akurasinya di bawahnya.
5. KESIMPULAN DAN SARAN
Berdasarkan pengujian dan analisis algoritme Backpropagation Neural Network untuk pengenalan jenis kelamin dan rentang usia berdasarkan suaranya menghasilkan tingkat akurasi tertinggi yang dapat dicapai sebesar 0,18203. Untuk klasifikasi jenis kelamin saja dengan dataset dari Free ST American English Corpus mendapat tingkat akurasi sebesar 0,93490 sedangkan dengan dataset dari Mozilla Common Voice mendapat tingkat akurasi sebesar 0,62504. Penggunaan dataset Mozilla Common Voice kurang direkomendasikan untuk pengenalan jenis kelamin dan/atau rentang umur. Untuk penelitian selanjutnya yang serupa disarankan untuk memperhatikan data yang digunakan. Jika memang data yang digunakan dirasa memiliki kualitas kurang, disarankan melakukan pre-processing data yang lebih baik.
6. DAFTAR RUJUKAN
Aisyah, S., Harahap, M., Husein Siregar, A. M., & Turnip, M. (2018). Optimization of training backpropagation algorithm using nguyen widrow for angina ludwig diagnosis. Journal of Physics: Conference
Series, 1007(1).
https://doi.org/10.1088/1742-6596/1007/1/012050
Alkhawaldeh, R. S. (2019). DGR : Gender Recognition of Human Speech Using One-Dimensional Conventional Neural Network. Hindawi Scientific
Programming, 2019, 12. https://doi.org/https://doi.org/10.1155/20 19/7213717
Chaudhary, S., & Sharma, D. K. (2018). Gender Identification based on Voice Signal Characteristics. Proceedings - IEEE 2018
International Conference on Advances in Computing, Communication Control and
Networking, ICACCCN 2018, 869–874.
https://doi.org/10.1109/ICACCCN.2018. 8748676
Hassan Mansour, A., Alabdeen Salh, G. Z., & Zeen Alabdeen, H. H. (2015). Voice recognition Using back propagation algorithm in neural networks.
International Journal of Computer Trends and Technology, 23(3), 132–139. https://doi.org/10.14445/22312803/ijctt-v23p128
Kim, H. J., Bae, K., & Yoon, H. S. (2007). Age and gender classification for a home-robot service. Proceedings - IEEE International
Workshop on Robot and Human Interactive Communication, 122–126.
https://doi.org/10.1109/ROMAN.2007.44 15065
Langford, J. (2005). The Cross Validation
Problem.
https://doi.org/https://doi.org/10.1007/11 503415_47
Latinus, M., & Belin, P. (2011). Human voice perception. Current Biology, 21(4), R143–R145.
https://doi.org/10.1016/j.cub.2010.12.033 Nugroho, K., Noersasongko, E., Purwanto, Muljono, & Santoso, H. A. (2019). Javanese Gender Speech Recognition Using Deep Learning and Singular Value Decomposition. Proceedings - 2019
International Seminar on Application for Technology of Information and Communication: Industry 4.0: Retrospect, Prospect, and Challenges, iSemantic
2019, 251–254.
https://doi.org/10.1109/ISEMANTIC.201 9.8884267
Přibil, J., Přibilová, A., & Matoušek, J. (2016). GMM-based speaker gender and age classification after voice conversion. 2016
1st International Workshop on Sensing, Processing and Learning for Intelligent Machines, SPLINE 2016 - Proceedings.
https://doi.org/10.1109/SPLIM.2016.752 8391
Simamora, C. G. M. (2018). Identifikasi Voice
Menggunakan Jaringan Syaraf Tiruan dan Mel Frequency Cepstrum Coefficients. Universitas Sumatera Utara.
Fakultas Ilmu Komputer, Universitas Brawijaya production (1 ed.). Prentice Hall.