• Tidak ada hasil yang ditemukan

Metrik Evaluasi Klasifikasi

N/A
N/A
Aryo Haris Wirakusuma

Academic year: 2024

Membagikan "Metrik Evaluasi Klasifikasi"

Copied!
26
0
0

Teks penuh

(1)

Metrik Evaluasi Klasifikasi

Dina Chahyati, Siti Aminah, Ari Wibisono Fakultas Ilmu Komputer Universitas Indonesia

(2)

Referensi

The 5 Classification Evaluation Metrics Every Data Scientist Must Know, Rahul Agarwal, https://towardsdatascience.com/the-5-classification- evaluation-metrics-you-must-know-aa97784ff226

Tour of Evaluation Metrics for Imbalanced Classification, Jason Brownlee, https://machinelearningmastery.com/tour-of-evaluation-metrics-for-

imbalanced-classification/

https://turi.com/learn/userguide/evaluation/classification.html

https://towardsdatascience.com/multi-class-metrics-made-simple-part-ii- the-f1-score-ebe8b2c2ca1

https://developers.google.com/machine-learning/crash- course/classification/roc-and-auc

https://neptune.ai/blog/f1-score-accuracy-roc-auc-pr-auc

(3)

Pendahuluan

• Bagus atau tidaknya suatu classifier tergantung pada metrik evaluasi yang digunakan

• Jika metrik yang digunakan tidak tepat, maka bisa jadi model yang dipilih tidak bagus, atau bahkan misleading

• Untuk kasus dimana data untuk setiap kelas tidak berimbang (imbalanced class), kita perlu lebih hati-hati karena bisa jadi metrik akan sangat dipengaruhi oleh kelas mayoritas.

• Pemilihan metrik bergantung pada aspek apa yang penting untuk diperhatikan oleh peneliti.

(4)

Contoh-contoh Metrik

• Akurasi

• Specificity – Sensitivity

• Precision – Recall

• F1 – F Beta Score

• ROC (Receiver Operating Characteristic)

• AUC (Area Under Curve)

(5)

Akurasi

Hasil Tes Positif Hasil Tes Negatif Orang sakit (Kelas +) True Positive (TP) False Negative (FN) Orang sehat (Kelas - ) False Positive (FP) True Negative (TN)

Akurasi = 𝑇𝑃+𝑇𝑁

𝑇𝑃+𝐹𝑁+𝐹𝑃+𝑇𝑁

• Merupakan metric yang paling mudah dipahami

• Dapat digunakan untuk klasifikasi biner maupun multiclass

• Baik digunakan jika tidak ada masalah imbalanced class

(6)

Sensitivity - Specificity

Hasil Tes Positif Hasil Tes Negatif Orang sakit (Kelas +) True Positive (TP) False Negative (FN) Orang sehat (Kelas - ) False Positive (FP) True Negative (TN)

Sensitivity mengitung seberapa baik kelas positif diprediksi dengan benar

Sensitivity = 𝑇𝑃

𝑇𝑃+𝐹𝑁

Specificity menghitung seberapa baik kelas negatif diprediksi benar

Specificity = 𝑇𝑁

𝐹𝑃+𝑇𝑁

Sensitivity dan Specificity dapat digabung, disebut dengan geometric mean atau G-mean

G-mean = 𝑠𝑒𝑛𝑠𝑖𝑡𝑖𝑣𝑖𝑡𝑦 ∗ 𝑠𝑝𝑒𝑐𝑖𝑓𝑖𝑐𝑖𝑡𝑦

(7)

Precision - Recall

Hasil Tes Positif Hasil Tes Negatif Orang sakit (Kelas +) True Positive (TP) False Negative (FN) Orang sehat (Kelas - ) False Positive (FP) True Negative (TN)

• Precision menghitung rasio orang sakit yang diprediksi sakit terhadap kumpulan orang yang hasil tes nya positif

Precision = 𝑇𝑃

𝑇𝑃+𝐹𝑃

• Recall menghitung rasio orang sakit yang diprediksi sakit

terhadap seluruh orang yang sakit (sama dengan sensitivity)

Recall = Sensitivity = 𝑇𝑃

𝑇𝑃+𝐹𝑁

Hati-hati: Jika classifier kita error dan menebak semua sample menjadi positif, maka hasil Recall = 1

(8)

F1 Score

• 𝐹1 = 2 ∗ 𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 ∗𝑟𝑒𝑐𝑎𝑙𝑙 𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛+𝑟𝑒𝑐𝑎𝑙𝑙

• Memadukan nilai precision dan recall

• Nilainya antara 0 dan 1

• Disebut harmonic mean dari precision dan recall

• Mengapa tidak menggunakan simple mean dari precision dan recall saja?

• Kita akan lihat dua contoh kasus dimana terjadi imbalanced class

(9)

F1 Score

Hasil Tes Positif Hasil Tes Negatif

Orang sakit (Kelas +) 5 1

Orang sehat (Kelas - ) 100 894 Kasus: Imbalanced Class

Akurasi : 0.899

Precision: 5/105 = 0.048

Recall : 5/6 = 0.833

Simple Mean = (0.048+0.833)/2= 0.4405

Harmonic Mean = 𝐹1 = 2 ∗ 𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 ∗𝑟𝑒𝑐𝑎𝑙𝑙

𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛+𝑟𝑒𝑐𝑎𝑙𝑙 = 2 ∗ 0.04

0.881 = 0.09

Pada kasus ini, simple mean menghasilkan nilai yang masih tinggi (0.4405)

Harmonic Mean (F1) menunjukkan angka yang mendekati 0, karena Precision juga mendekati 0

Intuisi: Nilai F1 baru akan besar kalau kedua nilai precision dan recall besar.

Jika ada salah satu yang rendah, maka nilai F1 juga akan rendah)

Alat tes/classifier ini tidak ideal karena masih banyak orang sehat yang dinyatakan positif.

Akurasi (0.899) tidak baik digunakan karena misleading

(10)

F-Beta Score

• F1 score memberikan bobot yang sama untuk precision dan recall.

• Jika kita ingin mementingkan salah satunya, maka kita bisa menambahkan bobot 𝛽 pada precision

• Rumusnya menjadi sebagai berikut

(11)

F-Beta Score

Pada kasus dimana kita ingin menghindari FP (cost kesalahan FP sangat besar), maka

direkomendasikan untuk menggunakan Beta = 0.5

Contoh kasus di samping

Precision = 𝑇𝑃

𝑇𝑃+𝐹𝑃 = 5

105 = 0.048

Recall = 𝑇𝑃

𝑇𝑃+𝐹𝑁 = 5

6 = 0.833

𝐹1 = 2 ∗ 𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 ∗𝑟𝑒𝑐𝑎𝑙𝑙

𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛+𝑟𝑒𝑐𝑎𝑙𝑙 = 2 ∗ 0.04

0.881 = 𝟎. 𝟎𝟗

𝐹0.5 = 1 + 0.52 𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛∙𝑟𝑒𝑐𝑎𝑙𝑙 (0.52∙𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛+𝑟𝑒𝑐𝑎𝑙𝑙)

= 1.25 0.04

0.25 0.048 +0.833 = 0.05

0.845 = 𝟎. 𝟎𝟔

𝐹2 = 5 0.04

4 0.048 +0.833 = 0.2

1.025 = 𝟎. 𝟏𝟗

Hasil Tes Positif

Hasil Tes Negatif Orang sakit

(Kelas +)

5 1

Orang sehat (Kelas - )

100 894

Pada Kasus ini, FP masih sangat tinggi (100 kejadian), sehingga precision rendah.

Maka kita menginginkan metrik yang memberi

penilaian paling buruk untuk classifier ini pilih 𝐹0.5

(12)

F-Beta Score

Pada kasus dimana kita ingin menghindari FN (cost kesalahan FN sangat besar), maka

direkomendasikan untuk menggunakan Beta = 2

Contoh kasus di samping

Precision = 𝑇𝑃

𝑇𝑃+𝐹𝑃 = 6

7 = 0.857

Recall = 𝑇𝑃

𝑇𝑃+𝐹𝑁 = 6

10 = 0.6

𝐹1 = 2 ∗ 𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 ∗𝑟𝑒𝑐𝑎𝑙𝑙

𝑝𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛+𝑟𝑒𝑐𝑎𝑙𝑙 = 2 ∗ 0.514

1.457 = 𝟎. 𝟕𝟎

𝐹0.5 = 1.25 0.514

0.25 0.857 +0.6 = 0.6425

0.8142 = 𝟎. 𝟕𝟗

𝐹2 = 5 0.514

4 0.857 +0.6 = 2.57

4.028 = 𝟎. 𝟔𝟒

Hasil Tes Positif

Hasil Tes Negatif Orang sakit

(Kelas +)

6 4

Orang sehat (Kelas - )

1 9

Pada Kasus ini, FN masih sangat tinggi (4 kejadian), sehingga recall rendah.

Maka kita menginginkan metrik yang memberi

penilaian paling buruk untuk classifier ini pilih 𝐹2

(13)

F-Beta Score

𝐹0.5 = 0.49 𝐹0.5 = 0.46

𝐹1 = 0.47 𝐹1 = 0.47

𝐹2 = 0.46 𝐹2 = 0.49

Classifier mana yang dipilih jika FP diinginkan minimal? Apa metrik yang sesuai?

Classifier mana yang dipilih jika FN diinginkan minimal? Apa metrik yang sesuai?

Classifier A Hasil Tes Positif

Hasil Tes Negatif Orang sakit

(Kelas +)

5 6

Orang sehat (Kelas - )

5 5

Classifier B Hasil Tes Positif

Hasil Tes Negatif Orang sakit

(Kelas +)

5 5

Orang sehat (Kelas - )

6 5

(14)

Klasifikasi dengan Threshold

Seringkali kita menggunakan thresholding untuk menentukan apakah suatu objek termasuk dalam suatu kelas tertentu

Misal, alat tes positif sakit dalam contoh sebelumnya mengeluarkan angka dari 0 - 1

Jika digunakan threshold 0.8, maka orang yang ditest dinyatakan positif jika hasil tes menunjukkan angka >= 0.8

Cenderung akan sedikit kasus False Positive, tapi False Negative bisa jadi tinggi

Jika digunakan threshold 0.4, maka orang yang ditest dinyatakan positif jika hasil tes menunjukkan angka >= 0.4

Cenderung akan banyak kasus False Positive, tapi False Negative jadi rendah

Menentukan threshold tidak mudah, maka dibuat metric untuk

(15)

ROC

• ROC: Receiver Operating Characteristic

• Merupakan kurva yang dibentuk dengan mem-plot nilai True Positive Rate (TPR) terhadap False Positive Rate (FPR) pada bermacam threshold.

• TPR = Sensitivitiy = Recall

• FPR = FP/(TN+FP) = 1 – Specificity

(16)

ROC

Contoh: suatu alat menunjukkan hasil sebagai berikut ketika digunakan

beberapa threshold

Threshold 0 tidak berguna, karena semua dianggap positif sakit

Thrshold 1 tidak berguna, karena tidak ada yang dianggap sakit

Thres

hold TP FN FP TN Spec 1- Spec

Sens

1.0 0 50 0 50 1 0 0

0.9 30 20 3 47 0.94 0.06 0.6

0.6 40 10 5 45 0.9 0.1 0.9

0.2 45 5 30 20 0.4 0.6 0.95

0 50 0 50 0 0 1 1

https://towardsdatascience.com/the-5-

(17)

ROC

• Kita mengharapkan

classifier / alat tes yang kinerjanya mendekati kurva hijau

• Kita tidak menginginkan kurva yang kinerja

mendekati kurva merah

https://machinelearningmastery.com/tour-of- evaluation-metrics-for-imbalanced-classification/

(image source)

(18)

AUC

• AUC = Area Under ROC Curve

• Merupakan luas dari daerah dibawah kuva ROC

• Menunjukkan probabilitas kelas positif dapat dipisahkan dari kelas negative

• Contoh sebelumnya, luas daerah dibawah kurva hijau mendekati 1, artinya kinerjanya baik

• AUC bersifat scale-invariant

It measures how well predictions are ranked, rather than their absolute values.

(caveat) Scale invariance is not always desirable. For example, sometimes we really do need well calibrated probability outputs, and AUC won’t tell us about that.

(19)

AUC

• AUC bersifat threshold-invariant, karena memperlihatkan kinerja classifier di berbagai nilai threshold, tidak seperti F1 score yang masih bergantung pada satu nilai threshold saja.

Caveat: Classification-threshold invariance is not always desirable. In cases where there are wide disparities in the cost of false negatives vs. false positives, it may be critical to minimize one type of classification error. For example, when doing email spam detection, you likely want to

prioritize minimizing false positives (even if that results in a significant increase of false negatives). AUC isn't a useful metric for this type of optimization.

(20)

PR-AUC

• PR-AUC: Area Under Precision vs Recall Curve

• Direkomendasikan jika kelas positif lebih penting, karena PR lebih sensitive terhadap perubahan pada kelas positif

• Biasanya terjadi ketika datanya imbalance, dimana kasus positif jarang ditemukan dibanding kasus negatif

(21)

• Misalkan suatu penelitian deteksi kanker paru menunjukkan hasil seperti berikut ini. Metode deteksi mana yang paling baik kinerjanya?

Computer-aided diagnosis of lung carcinoma using deep learning – a pilot study https://arxiv.org/ftp/arxi v/papers/1803/1803.054 71.pdf

Contoh AUC ROC

(22)

Brier Score

• Pada beberapa metode klasifikasi, outputnya tidak langsung berupa kelas, namun berupa probabilitas suatu sample masuk ke suatu kelas

• Kelas biner: hanya ada kelas 0 dan kelas 1

• Rumus: 𝐵𝑆 = 1

𝑁 𝑡=1𝑁 𝑓𝑡 − 𝑜𝑡 2

• 𝑓𝑡 adalah nilai yang dikeluarkan oleh classifier

• 𝑜𝑡 adalah kelas sesungguhnya dari sampel (0 atau 1)

(23)
(24)

Multiclass

• Jika jumlah kelas lebih dari dua, maka perhitungan nilai akurasi, precision, recall, F1, dst dapat menggunakan pendekatan sebagai berikut:

micro: Calculate metrics globally by counting the total number of times each class was correctly predicted and incorrectly predicted.

macro: Calculate metrics for each "class" independently, and find their unweighted mean. This does not take label imbalance into account.

(25)

Contoh Multiclass: Macro

https://towardsdatascience.com/multi-class-metrics-made- simple-part-ii-the-f1-score-ebe8b2c2ca1

Macro-F1 = (42.1% + 30.8% + 66.7%) / 3 = 46.5%

Macro-precision = (31% + 67% + 67%) / 3 = 54.7%

Macro-recall = (67% + 20% + 67%) / 3 = 51.1%

Ketika menghitung TP untuk Cat, anggap hanya ada 2 kelas yaitu

Cat dan Non-Cat

Cat Precision = 4/13 = 30.8%

Cat Recall = 4/6 = 66.6%

True Cat True Non- Cat

Pred Cat 4 9

Pred Non- Cat

2 10

(26)

Contoh Multiclass: Micro

Pada penghitungan Micro, nilai FP, TP, FN, TN dihitung langsung dari tabel confusion matrix tersebut.

TP = 4 + 2 + 6 = 12

FP = 6 + 3 + 1 + 0 + 1 + 2 = 13

False Negative: jika cat dianggap sebagai fish, maka itu dianggap false negative, sehingga nilainya sama dengan FP

Micro Precision = 12/(12 + 13) = 48%

Micro Recall = 12/(12+13) = 48%

Karena nilai Micro precision = micro recall, maka nilai micro-F1 juga akan sama dengan kedua nilai ini.

Referensi

Dokumen terkait

Evaluasi ketepatan pemilihan obat adalah proses untuk menganalisis dan menilai kesesuaian penggunaan semua obat antihipertensi pada pasien hipertensi dengan gagal ginjal di

Analisis Netode Klasifikasi Terhadap Hasil Klasifikasi Kelas Spektral, Data Citra SPOT (Studi Kasus Daerah.. Lembang Dan

 Kegiatan evaluasi merupakan ikhtiar kolektif penyelenggara untuk mengumpulkan dan menganalisis data dan informasi secara sistematis dalam menilai pencapaian

Evaluasi ketepatan pemilihan obat adalah proses untuk menganalisis dan menilai kesesuaian penggunaan semua obat antihipertensi pada pasien hipertensi dengan gagal ginjal di

Evaluasi penawaran memiliki peran penting dalam pemilihan penyedia konstruksi karena hasil penilaian tersebut dijadikan dasar untuk memilih penyedia yang layak dan

Jenis studi evaluasi yang digunakan adalah evaluasi deskriftif yaitu menilai dan menganalisa data dengan cara menggambarkan atau mendeskripsikan data yang telah ada dan

Dari hasil pengujian menggunakan 1000 data dengan komposisi data seimbang dan data tidak seimbang dapat diketahui bahwa pemilihan ruang warna menghasilkan akurasi

iii EVALUASI PEMILIHAN SUPPLIER BAHAN BAKU DENGAN MENGGUNAKAN METODE ANALYTICAL HIERARCHY PROCESS Studi Kasus Pabrik Tahu Tauhid Lembang Oleh: Nisa Adila Pembimbing: Dr.. Sri