# Ringkasan Model dan Metode ConfiVoice

ConfiVoice menggunakan pendekatan klasifikasi suara untuk membedakan tingkat kepercayaan diri pembicara ke dalam dua kelas, yaitu `PD` atau percaya diri dan `TPD` atau tidak percaya diri. Proses klasifikasi dilakukan dengan mengekstraksi ciri-ciri akustik dari file audio, lalu memasukkan vektor fitur tersebut ke model Support Vector Machine (SVM). Model dilatih menggunakan pipeline `StandardScaler` untuk standardisasi fitur dan `SVC` sebagai classifier.

Audio diproses terlebih dahulu agar formatnya konsisten. Setiap audio dibaca sebagai sinyal mono dengan sample rate 22050 Hz, bagian silence di awal atau akhir dipotong, lalu volume dinormalisasi. Validasi dasar juga dilakukan untuk mendeteksi audio yang terlalu pendek, terlalu pelan, atau mengalami clipping karena volume terlalu keras.

Fitur pertama yang digunakan adalah Mel-Frequency Cepstral Coefficients (MFCC). MFCC merepresentasikan karakteristik timbre atau warna suara berdasarkan persepsi pendengaran manusia. Pada sistem ini digunakan 13 koefisien MFCC, kemudian setiap koefisien diringkas menjadi nilai rata-rata dan standar deviasi. Dengan demikian, MFCC menghasilkan 26 fitur numerik.

Selain MFCC statis, sistem juga menggunakan Delta MFCC. Delta MFCC menggambarkan perubahan MFCC antar frame audio sehingga dapat menangkap dinamika suara saat berbicara. Sama seperti MFCC, 13 nilai Delta MFCC diringkas menjadi rata-rata dan standar deviasi, sehingga menghasilkan 26 fitur tambahan.

Fitur energi suara dihitung menggunakan RMS atau Root Mean Square Energy. Fitur ini menunjukkan kuat-lemahnya energi suara pembicara. Sistem menghitung RMS pada audio yang sudah dinormalisasi serta RMS pada audio mentah. Selain itu, sistem menghitung `peak_amplitude`, `clipping_ratio`, dan `energy_stability` untuk menilai kestabilan volume serta kemungkinan suara pecah akibat volume terlalu tinggi.

Fitur pitch atau fundamental frequency digunakan untuk menangkap tinggi-rendah suara. Pitch diekstraksi menggunakan metode `pyin` dari library `librosa`. Dari pitch yang terdeteksi, sistem menghitung rata-rata pitch, standar deviasi pitch, rentang pitch, stabilitas pitch, dan variasi pitch. Fitur ini membantu membaca kestabilan serta variasi intonasi pembicara.

Zero Crossing Rate (ZCR) digunakan untuk menghitung seberapa sering sinyal suara melewati titik nol. Nilai ini dapat menggambarkan karakter tekstur suara dan perubahan sinyal. Pada sistem ini, ZCR diringkas menjadi rata-rata dan standar deviasi.

Sistem juga menggunakan fitur spektral, yaitu spectral centroid, spectral bandwidth, dan spectral rolloff. Spectral centroid menggambarkan pusat massa frekuensi dan berhubungan dengan kesan terang atau gelapnya suara. Spectral bandwidth menunjukkan lebar sebaran frekuensi, sedangkan spectral rolloff menunjukkan batas frekuensi tempat sebagian besar energi spektrum berada. Masing-masing fitur spektral diringkas menjadi nilai rata-rata dan standar deviasi.

Selain fitur akustik, sistem menghitung fitur jeda bicara. Fitur ini meliputi durasi bicara aktif, durasi silence, rasio silence, jumlah jeda, rata-rata durasi jeda, dan rasio aktivitas bicara. Fitur jeda digunakan karena pola bicara yang terlalu banyak diam atau ragu-ragu dapat menjadi salah satu indikator rendahnya kepercayaan diri.

Secara keseluruhan, sistem menghasilkan 78 fitur numerik dari setiap audio. Vektor fitur tersebut kemudian distandardisasi dan diklasifikasikan menggunakan model SVM. Pendekatan ini dipilih karena SVM cocok digunakan untuk data berukuran relatif kecil hingga menengah dan mampu membentuk batas keputusan yang baik pada ruang fitur berdimensi banyak.
