Matrix Confusion pada Matlab

Matriks Confusion digunakan untuk mengukur akurasi dan memvalidasi model yang dibuat. Untuk menghitungnya dapat dilihat pada rumus yang disertakan pada pos terdahulu. Untuk mempermudah perhitungan, Matlab menyediakan fasilitas untuk menghitung matriks confusion ini.

Data Aktual Versus Data Prediksi

Untuk membuat matriks confusion diperlukan dua data yaitu data real/aktual dan data prediksi yang dihitung dari model. Berikut ini contoh data yang akan dibuat matriks confusion-nya. Buka command window dan masukan kode berikut (

  • yaktual=transpose([0 1 1 0 1 1 1 0]);
  • yprediksi=transpose([1 1 1 0 1 0 1 0]);

Untuk membuat matriks confusion, dibutuhkan fungsi confusionmat yang memerlukan dua data masukan tersebut di atas. Jalankan kode berikut:

  • [matriks,label]=confusionmat(yaktual,yprediksi)
  • matriks =
  • 2 1
  • 1 4
  • label =
  • 0
  • 1

Perhatikan matriks berwarna merah di atas, tampak matriks confusion sebagai berikut:

Jadi dapat diketahui a, b, c, dan d berturut-turut 2, 1, 1, dan 4. Jadi dapat dihitung recall, precision, false positive, false negative.

Recall atau dengan nama lain True Positif:

TP=4/(1+4)=4/5=0.8. Nilai lain dengan mudah dapat dihitung.

Kasus Lebih dari Dua Label

Matriks Confusion bisa juga untuk kasus lebih dari dua label. Misal ada dua data dengan tiga label, matriks confusion-nya adalah:

  • yaktual=transpose([0 1 1 2 1 2 1 0]);
  • yprediksi=transpose([0 1 2 2 1 2 1 0]);
  • [matriks,label]=confusionmat(yaktual,yprediksi)
  • matriks =
  • 2 0 0
  • 0 3 1
  • 0 0 2
  • label =
  • 0
  • 1
  • 2

Tampak pada matriks confusion label 2 ada satu error. Precision-nya = 2/(1+2) = 2/3 (lihat rumus di pos yang lalu). Semoga bermanfaat.

Iklan