apa arti angka-angka dalam laporan klasifikasi sklearn?


29

Saya memiliki contoh di bawah ini yang saya ambil dari dokumentasi sklearn's sklearn.metrics.classification_report.

Apa yang saya tidak mengerti adalah mengapa ada nilai f1, nilai presisi dan recall untuk setiap kelas di mana saya percaya kelas adalah label prediktor? Saya pikir skor f1 memberi tahu Anda keakuratan keseluruhan model. Juga, apa yang diceritakan kolom dukungan kepada kami? Saya tidak dapat menemukan info tentang itu.

print(classification_report(y_true, y_pred, target_names=target_names))
             precision    recall  f1-score   support

    class 0       0.50      1.00      0.67         1
    class 1       0.00      0.00      0.00         1
    class 2       1.00      0.67      0.80         3

avg / total       0.70      0.60      0.61         5

Jawaban:


21

Skor f1 memberi Anda rata-rata harmonis presisi dan daya ingat. Skor yang sesuai dengan setiap kelas akan memberi tahu Anda keakuratan classifier dalam mengklasifikasikan titik data dalam kelas tersebut dibandingkan dengan semua kelas lainnya.

Dukungannya adalah jumlah sampel dari respons sejati yang ada di kelas itu.

Anda dapat menemukan dokumentasi tentang kedua tindakan dalam dokumentasi sklearn.

Dukungan - http://scikit-learn.org/stable/modules/generated/sklearn.metrics.precision_recall_fscore_support.html

Skor-F1 - http://scikit-learn.org/stable/modules/generated/sklearn.metrics.f1_score.html

EDIT

Baris terakhir memberikan rata-rata tertimbang dari presisi, daya ingat dan skor f1 di mana bobot adalah nilai dukungan. jadi untuk presisi rata-rata adalah (0.50*1 + 0.0*1 + 1.0*3)/5 = 0.70. Totalnya hanya untuk dukungan total yaitu 5 di sini.


1
bagaimana dengan baris terakhir avg / total? Tampaknya tidak cocok dengan kolom artinya ... Bagaimana cara menghitung dan apa artinya?
Antoine

@Antoine Saya juga bertanya-tanya sama. Apakah Anda mengetahui bagaimana cara menghitungnya?
Pale Blue Dot

@Antoine Baris terakhir memberikan rata-rata tertimbang dari presisi, daya ingat dan skor f1 di mana bobot adalah nilai dukungan. jadi untuk presisi rata-rata adalah (0.50*1 + 0.0*1 + 1.0*3)/5 = 0.70. Totalnya hanya untuk dukungan total yaitu 5 di sini.
Nitin

Berkat jawaban @Nitin saya sebelumnya menemukan melalui tautan deskripsi visual terbaik dan intuisi di balik matematika: en.wikipedia.org/wiki/Precision_and_recall en.wikipedia.org/wiki/F1_score
Bogdan Korecki
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.