Klasifikasi "Bagus" menghancurkan kurva Precision-Recall saya. Apa yang terjadi?

11

Saya bekerja dengan data yang tidak seimbang, di mana ada sekitar 40 kelas = 0 kasus untuk setiap kelas = 1. Saya dapat membedakan antara kelas menggunakan fitur individual, dan melatih Bayes naif dan classifier SVM pada 6 fitur dan data yang seimbang menghasilkan diskriminasi yang lebih baik (kurva ROC di bawah).

masukkan deskripsi gambar di sini

Tidak apa-apa, dan saya pikir saya baik-baik saja. Namun, konvensi untuk masalah khusus ini adalah untuk memprediksi hit pada tingkat presisi, biasanya antara 50% dan 90%. mis. "Kami mendeteksi sejumlah hit pada presisi 90%." Ketika saya mencoba ini, presisi maksimum yang bisa saya dapatkan dari pengklasifikasi adalah sekitar 25% (garis hitam, kurva PR di bawah).

Saya bisa memahami ini sebagai masalah ketidakseimbangan kelas, karena kurva PR sensitif terhadap ketidakseimbangan dan kurva ROC tidak. Namun, ketidakseimbangan tampaknya tidak mempengaruhi fitur individual: Saya bisa mendapatkan presisi yang cukup tinggi menggunakan fitur individual (biru dan cyan).

masukkan deskripsi gambar di sini

Saya tidak mengerti apa yang sedang terjadi. Saya bisa memahaminya jika semuanya berkinerja buruk di ruang PR, karena, setelah semua, data sangat tidak seimbang. Saya juga bisa memahaminya jika pengklasifikasi tampak buruk di ruang ROC dan PR - mungkin mereka hanya pengklasifikasi yang buruk. Tetapi apa yang terjadi untuk membuat pengklasifikasi lebih baik seperti yang dinilai oleh ROC, tetapi lebih buruk seperti yang dinilai oleh Precision-Recall ?

Sunting : Saya perhatikan bahwa di area TPR / Panggil rendah (TPR antara 0 dan 0,35), fitur individual secara konsisten mengungguli pengklasifikasi di kurva ROC dan PR. Mungkin kebingungan saya adalah karena kurva ROC "menekankan" area TPR tinggi (di mana pengklasifikasi bekerja dengan baik) dan kurva PR menekankan TPR rendah (di mana pengklasifikasi lebih buruk).

Sunting 2 : Pelatihan data tidak seimbang, yaitu dengan ketidakseimbangan yang sama dengan data mentah, menghidupkan kembali kurva PR (lihat di bawah). Saya kira masalah saya adalah melatih para pengklasifikasi secara tidak tepat, tetapi saya tidak sepenuhnya mengerti apa yang terjadi. masukkan deskripsi gambar di sini

R Greg Stacey
sumber

Jawaban:

7

Saya telah menemukan bahwa tidak ada manfaat luar biasa dalam menggunakan downsampling / upsampling ketika kelas sedang tidak seimbang (yaitu, tidak lebih buruk dari 100: 1) dalam hubungannya dengan metrik invarian ambang (seperti AUC). Pengambilan sampel membuat dampak terbesar untuk metrik seperti skor F1 dan Akurasi, karena pengambilan sampel secara artifisial memindahkan ambang batas menjadi lebih dekat dengan apa yang mungkin dianggap sebagai lokasi "optimal" pada kurva ROC. Anda dapat melihat contohnya di dokumentasi caret .

Saya tidak setuju dengan @Chris karena memiliki AUC yang baik lebih baik daripada presisi, karena benar-benar berhubungan dengan konteks masalah. Selain itu, memiliki AUC yang baik tidak harus diterjemahkan ke kurva Precision-Recall yang baik ketika kelas tidak seimbang. Jika model menunjukkan AUC yang baik, tetapi masih memiliki pengambilan awal yang buruk, kurva Precision-Recall akan meninggalkan banyak hal yang diinginkan. Anda dapat melihat contoh yang bagus tentang ini terjadi dalam jawaban untuk pertanyaan serupa. Untuk alasan ini, Saito et al. merekomendasikan menggunakan area di bawah kurva Precision-Recall daripada AUC ketika Anda memiliki kelas tidak seimbang.

dmartin
sumber
Saya tidak bermaksud mengatakan bahwa AUC yang baik selalu lebih baik daripada kurva PR yang baik.
Chris
1
Perhatikan juga bahwa Anda selalu dapat membalik label positif dan negatif sebelum menyesuaikan model dan memaksimalkan AUC-PR. Contoh pengambilan dokumen yang populer menunjukkan fakta bahwa orang biasanya menyukai AUC-PR karena dapat digunakan untuk meminimalkan hit palsu; mereka jelas lebih terganggu oleh dokumen yang tidak berhubungan yang terpaksa mereka lihat daripada dokumen relevan yang mereka lewatkan. Saya belajar perang ... jadi, dengan kata lain, saya jauh lebih terganggu oleh hit yang terlewat daripada alarm palsu. Tapi itu berarti saya hanya menggunakan AUC-PR dengan damai sebagai positif. Saya hanya akan menggunakan ROC jika saya tidak memiliki preferensi mengenai jenis kesalahan.
DHW
1

Cara terbaik untuk mengevaluasi model adalah dengan melihat bagaimana itu akan digunakan di dunia nyata dan mengembangkan fungsi biaya.

Sebagai tambahan, misalnya, ada terlalu banyak penekanan pada r kuadrat tetapi banyak yang percaya itu adalah statistik yang tidak berguna. Jadi, jangan terpaku pada salah satu statistik.

Saya menduga bahwa jawaban Anda adalah contoh dari paradoks akurasi.

https://en.m.wikipedia.org/wiki/Accuracy_paradox

Ingat (juga dikenal sebagai sensitivitas alias true positive rate) adalah fraksi dari contoh yang relevan yang diambil.

tpr = tp / (tp + fn)

Presisi (alias nilai prediktif positif) adalah sebagian kecil dari instance yang diambil yang relevan.

ppv = tp / (tp + fp)

Katakanlah Anda memiliki set 99 positif yang sangat tidak seimbang dan satu negatif.

Katakanlah seorang model dilatih di mana model mengatakan semuanya positif.

tp = 99 fp = 1 ppv menjadi 0,99

Jelas model sampah meskipun nilai prediktif positif "baik".

Saya merekomendasikan membangun satu set pelatihan yang lebih seimbang baik melalui oversampling atau undersampling. Setelah model dibangun kemudian gunakan set validasi yang menjaga ketidakseimbangan asli dan membangun bagan kinerja di atasnya.

Chris
sumber
Terima kasih banyak. Saya tidak menyebutkannya, tapi saya melatih data seimbang (dilakukan dengan pengambilan sampel ulang) dan mengevaluasi data yang tidak seimbang. Re: paradoks akurasi, apakah maksud Anda bahwa classifier mungkin hanya memilih kelas yang dominan? Bukankah itu mengarah pada kurva ROC yang tampak acak? Klasifikasi "baik" dalam contoh Anda memiliki Presisi yang baik dan ROC yang buruk; classifier "baik" dalam kasus saya memiliki kebalikannya, sebuah Presisi yang buruk tetapi ROC yang baik.
R Greg Stacey
Menghilangkan data berharga bukanlah solusi yang benar. Ini adalah cara yang boros dalam menangani masalah yang berasal dari penggunaan aturan penilaian akurasi yang tidak tepat. Selain itu, strategi yang diajukan dalam pertanyaan awal bertentangan dengan pengambilan keputusan yang optimal.
Frank Harrell
Di mana dia menyatakan bahwa dia menghilangkan data berharga?
Chris
@ Jujur terima kasih atas komentarnya. Apa yang Anda maksud dengan "menggunakan aturan penilaian akurasi yang tidak tepat"? Juga, "strategi yang diusulkan mana yang bertentangan dengan pengambilan keputusan yang optimal"? Apakah maksud Anda mendefinisikan hit pada tingkat presisi tertentu, atau sesuatu yang lain?
R Greg Stacey
1
Tidak cukup hanya dengan mengevaluasi model dalam kasus bisnis. Kasus bisnis harus diselesaikan secara optimal dengan membangun model yang optimal dan menerapkan fungsi utilitas di atas itu untuk membuat keputusan, bukan dengan membangun ambang batas ke dalam analisis. Skor akurasi terputus dan skor akurasi tidak tepat lainnya memungkinkan seseorang untuk mengklaim bahwa model palsu (salah) lebih unggul, dan mengarahkan seseorang untuk memilih fitur yang salah dan merugikan lainnya ketika skor akurasi yang tidak tepat digunakan untuk membangun model. Fakta bahwa data yang dibuang @Qroid adalah bukti yang bagus untuk penilaian akurasi yang salah.
Frank Harrell
1

Saya bisa memahami ini sebagai masalah ketidakseimbangan kelas, karena kurva PR sensitif terhadap ketidakseimbangan dan kurva ROC tidak. Namun, ketidakseimbangan tampaknya tidak mempengaruhi fitur individual: Saya bisa mendapatkan presisi yang cukup tinggi menggunakan fitur individual (biru dan cyan).

Bolehkah saya hanya menunjukkan bahwa ini sebenarnya sebaliknya: ROC sensitif terhadap ketidakseimbangan kelas sementara PR lebih kuat ketika berhadapan dengan distribusi kelas yang miring. Lihat https://www.biostat.wisc.edu/~page/rocpr.pdf .

Mereka juga menunjukkan bahwa "algoritma yang mengoptimalkan area di bawah kurva ROC tidak dijamin untuk mengoptimalkan area di bawah kurva PR."

Milad Shahidi
sumber