Cara menghitung koefisien korelasi matthews dengan python


Koefisien Korelasi Matthews (MCC) adalah metrik yang dapat kita gunakan untuk mengevaluasi kinerja model klasifikasi .

Ini dihitung sebagai berikut:

PKS = (TP*TN – FP*FN) / √ (TP+FP)(TP+FN)(TN+FP)(TN+FN)

Emas:

  • TP : Jumlah positif sebenarnya
  • TN : Jumlah negatif sebenarnya
  • FP : Jumlah positif palsu
  • FN : Jumlah negatif palsu

Metrik ini sangat berguna ketika kedua kelas tidak seimbang, yaitu, satu kelas tampil lebih banyak dibandingkan kelas lainnya.

Nilai MCC antara -1 dan 1 dimana:

  • -1 menunjukkan ketidaksepakatan total antara kelas yang diprediksi dan kelas sebenarnya
  • 0 berarti tebakan yang benar-benar acak
  • 1 menunjukkan kesesuaian penuh antara kelas prediksi dan kelas aktual

Misalnya, seorang analis olahraga menggunakan model regresi logistik untuk memprediksi apakah 400 pemain bola basket perguruan tinggi yang berbeda akan direkrut ke NBA atau tidak.

Matriks konfusi berikut merangkum prediksi yang dibuat oleh model:

Untuk menghitung MCC model, kita dapat menggunakan rumus berikut:

  • PKS = (TP*TN – FP*FN) / √ (TP+FP)(TP+FN)(TN+FP)(TN+FN)
  • PKS = (15*375-5*5) / √ (15+5)(15+5)(375+5)(375+5)
  • PKS = 0,7368

Koefisien korelasi Matthews ternyata 0,7368 . Nilai ini mendekati satu, yang menunjukkan bahwa model tersebut mampu memprediksi dengan baik apakah pemain akan direkrut atau tidak.

Contoh berikut menunjukkan cara menghitung PKS untuk skenario spesifik ini menggunakan fungsi matthews_corrcoef() dari pustaka sklearn dengan Python.

Contoh: Menghitung Koefisien Korelasi Matthews dengan Python

Kode berikut menunjukkan cara mendefinisikan array kelas prediksi dan array kelas aktual, lalu menghitung koefisien korelasi Matthews suatu model dengan Python:

 import numpy as np
from sklearn. metrics import matthews_corrcoef

#define array of actual classes
actual = np. repeat ([1, 0], repeats=[20, 380])

#define array of predicted classes
pred = np. repeat ([1, 0, 1, 0], repeats=[15, 5, 5, 375])

#calculate Matthews correlation coefficient
matthews_corrcoef(actual, pred)

0.7368421052631579

PKSnya adalah 0,7368 . Ini cocok dengan nilai yang kami hitung secara manual sebelumnya.

Catatan : Anda dapat menemukan dokumentasi lengkap untuk fungsi matthews_corrcoef() di sini .

Sumber daya tambahan

Tutorial berikut menjelaskan cara menghitung metrik umum lainnya untuk model klasifikasi dengan Python:

Pengantar Regresi Logistik dengan Python
Cara menghitung skor F1 dengan Python
Cara menghitung presisi seimbang dengan Python

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *