🧠JS13 - Artificial Neural Network (ANN) dan Evaluasi Classifier

1. Evaluasi Classifier

Untuk mengevaluasi kinerja dari model classifier, beberapa tool dapat digunakan dan yang paling populer adalah dengan menggunakan tabel confusion matrix. Dari tabel ini, akan dapat dihitung beberapa indikator evaluasi seperti Accuracy, Kappa, Precision, F-1 Score, Recall dan sebagainya.

1.1.1. Confusion Matrix

Confusion matrix adalah tabel yang digunakan untuk mengevaluasi kinerja model klasifikasi pada dataset yang telah diberi label. Confusion matrix membandingkan hasil prediksi dari model dengan nilai sebenarnya dari dataset untuk mengukur seberapa baik model melakukan prediksi.

Confusion matrix memiliki empat bagian utama, yang mewakili empat kemungkinan hasil dari prediksi model:

1. True Positive (TP): Jumlah sampel yang benar-benar positif dan diprediksi sebagai positif oleh model.

2. True Negative (TN): Jumlah sampel yang benar-benar negatif dan diprediksi sebagai negatif oleh model.

3. False Positive (FP): Jumlah sampel yang benar-benar negatif tetapi salah diprediksi sebagai positif oleh model (disebut juga sebagai kesalahan tipe I).

4. False Negative (FN): Jumlah sampel yang benar-benar positif tetapi salah diprediksi sebagai negatif oleh model (disebut juga sebagai kesalahan tipe II).

Confusion matrix biasanya ditampilkan dalam bentuk tabel 2x2 seperti terlihat pada gambar berikut ini:

Gambar 1. Tabel Confusion Matrix

Dari confusion matrix, kita dapat menghitung berbagai metrik evaluasi seperti akurasi, presisi, recall, F1-score, dan lainnya untuk mengevaluasi kinerja model. Confusion matrix memberikan gambaran yang lebih rinci tentang bagaimana model melakukan prediksi pada setiap kelas dan memungkinkan kita untuk mengidentifikasi jenis kesalahan yang dibuat oleh model. Ini adalah alat yang sangat berguna dalam mengevaluasi kinerja model klasifikasi dan memperbaiki model yang kurang akurat.

Perhatikan tabel confusion matrix dari dataset Iris menggunakan k-NN berikut:

Gambar 2. Contoh Tabel Confusion Matrix Dataset Iris

Untuk menghitung metrik evaluasi seperti akurasi (accuracy), presisi (precision), dan recall dari confusion matrix, kita dapat menggunakan rumus-rumus berikut:

1. Akurasi (Accuracy): Akurasi mengukur seberapa baik model dalam memprediksi secara benar kelas-kelas pada dataset.

Sehingga jika menggunakan tabel Confusion Matrix, maka:

2. Presisi (Precision): Presisi mengukur seberapa banyak dari prediksi positif yang benar-benar positif. Ini penting ketika kita ingin meminimalkan jumlah hasil positif palsu.

3. Recall: Recall (juga dikenal sebagai sensitivity atau true positive rate) mengukur seberapa banyak dari keseluruhan kelas positif yang telah diprediksi secara benar oleh model.

Setelah memiliki nilai-nilai ini dari confusion matrix, kita dapat menghitung metrik-metrik evaluasi tersebut. Penting untuk memahami bahwa tidak ada satu metrik tunggal yang dapat memberikan gambaran lengkap tentang kinerja model, sehingga penting untuk mempertimbangkan beberapa metrik evaluasi bersamaan.

Hasil evaluasi menunjukkan baik jika nilai accuracy dan precision tinggi. Gambar berikut memperjelas kaitan antara accuracy dan precision.

Gambar 3. Analogi Keterkaitan antara Accuracy dan Precision

1.1.2. Kurva ROC (Receiver Operating Characteristic)

Kurva ROC adalah alat visual yang digunakan untuk mengevaluasi kinerja model klasifikasi di berbagai threshold. ROC grafik menampilkan perbandingan antara true positive rate (TPR) dan false positive rate (FPR) pada berbagai nilai threshold.

Komponen utama dari kurva ROC:

1. True Positive Rate (TPR): Juga dikenal sebagai recall atau sensitivity, TPR adalah proporsi dari kelas positif yang secara benar diprediksi oleh model. Ini dihitung sebagai:

2. False Positive Rate (FPR): FPR adalah proporsi dari kelas negatif yang salah diprediksi sebagai positif oleh model. Ini dihitung sebagai:

Kurva ROC adalah grafik TPR versus FPR yang menggambarkan kinerja model klasifikasi pada berbagai threshold. FPR diplot pada sumbu X, sedangkan TPR diplot di sumbu Y. Setiap titik pada kurva ROC mewakili pasangan nilai TPR dan FPR pada nilai threshold tertentu.

Interpretasi Kurva ROC:

- Idealnya, kita ingin kurva ROC mendekati sudut kiri atas dari plot (TPR = 1, FPR = 0), yang menunjukkan bahwa model memiliki tingkat TPR yang tinggi dan tingkat FPR yang rendah.

- Kurva ROC yang dekat dengan garis diagonal (FPR = TPR) menunjukkan kinerja yang buruk, di mana model tidak memiliki kemampuan lebih baik daripada pemilihan kelas secara acak.

- Area di bawah kurva ROC (AUC) adalah metrik numerik yang mengukur kualitas pemisahan antara kelas positif dan negatif oleh model. Semakin tinggi nilainya, semakin baik kinerja modelnya.

Kurva ROC adalah alat yang berguna dalam mengevaluasi kinerja model klasifikasi, terutama saat kita ingin memahami bagaimana model merespons terhadap perubahan threshold dan seberapa baik model membedakan antara kelas positif dan negatif.

Precision-Recall digunakan saat ada ketidakseimbangan distribusi kelas pada dataset, sedangkan ROC digunakan saat distribusi kelas seimbang.

Gambar berikut menunjukkan kurva ROC dari RapidMiner.

Gambar 4. Contoh Visualisasi kurva ROC

2. JST / ANN

Jaringan Syaraf Tiruan (JST) atau Artificial Neural Network (ANN) adalah cabang dari kecerdasan buatan yang terinspirasi dari cara kerja otak manusia. ANN berfungsi untuk mempelajari hubungan antara input dan output melalui proses pelatihan dan adaptasi bobot. Dalam kehidupan modern, ANN digunakan dalam banyak aplikasi: pengenalan wajah, sistem rekomendasi, klasifikasi penyakit, deteksi objek, hingga chatbot seperti ChatGPT.

Namun, sebelum memahami model modern, kita perlu memahami fondasinyaβ€”yaitu ANN klasik seperti perceptron, multilayer perceptron (MLP), dan backpropagation. Modul ini disusun untuk memberikan pemahaman bertahap: dari konsep biologis, teori matematis, hingga implementasi kode.

1950-an: Awal Mula

  • Tahun 1943, McCulloch dan Pitts menciptakan model neuron buatan pertama.

  • Tahun 1957, Frank Rosenblatt memperkenalkan Perceptron, model ANN pertama yang dapat belajar dari data.

  • Perceptron digunakan untuk kasus klasifikasi sederhana berbasis garis pemisah linear.

1970-an: Masa Kegelapan (AI Winter)

  • Marvin Minsky membuktikan bahwa perceptron tidak dapat menyelesaikan masalah non-linear seperti XOR.

  • Hal ini menyebabkan dunia riset menghentikan pendanaan ANN.

1986: Kebangkitan ANN

  • Rumelhart, Hinton, dan Williams memperkenalkan backpropagation untuk melatih jaringan multilayer.

  • MLP dapat mempelajari fungsi non-linear sehingga ANN kembali populer.

2012–Sekarang: Ledakan Deep Learning

  • Keberhasilan AlexNet 2012 membuka era Deep Learning.

  • ANN berkembang menjadi CNN, RNN, Transformer, dan model besar seperti GPT.

ANN yang kita pelajari di modul ini adalah fondasi utama menuju deep learning modern.

Neuron buatan menerima input, mengalikan dengan bobot, menjumlahkan, kemudian melewati fungsi aktivasi:

Persamaan:

output=f(WX+b)output = f(WX + b)

Pada contoh diatas, dapat kita lihat bahwa JST tidak dapat menyelesaikan permasalahan non linier menggunakan JST sederhana (Perceptron), atau sering disebut sebagai Single Layer Perceptron. Pada modifikasi dan perkembangan berikutnya, Perceptron ditambahkan jumlah layer dan proces update bobot dilakukan secara Feed Forward dan Back Forward agar proses training dapat berjalan lebih cepat dan dapat menyelesaikan permasalahan non-linier dengan menggunakan fungsi aktivasi non-linier seperti Sigmoid, Softmax, ReLu, dsb.

Fungsi Aktivasi:

Fungsi aktivasi digunakan sebagai salah satu cara untuk menyelesaikan permasalahan non-linearitas. beberapa fungsi aktivasi seperti Sigmoid, Tanh, ReLu, Leaky ReLu, Softmax, dan lain sebagainya. untuk hidden layer biasanya menggunakan ReLU / Leaky ReLu (kecuali kasus khusus

Softmax: untuk output multi-class, biasa digunakan pada object detection menggunakan CNN.

Last updated