Apa nama grafik ini yang menunjukkan tingkat positif palsu dan benar dan bagaimana cara menghasilkannya?

22

Gambar di bawah ini menunjukkan kurva kontinu dari tingkat positif palsu vs.

masukkan deskripsi gambar di sini

Namun, yang saya tidak segera dapatkan adalah bagaimana tarif ini dihitung. Jika suatu metode diterapkan pada dataset, ia memiliki tingkat FP tertentu dan tingkat FN tertentu. Bukankah itu berarti bahwa setiap metode harus memiliki satu titik daripada kurva? Tentu saja ada beberapa cara untuk mengonfigurasi metode, menghasilkan beberapa titik berbeda, tetapi tidak jelas bagi saya bagaimana ada rangkaian tingkat ini atau bagaimana itu dihasilkan.

Axoren
sumber
2
Saya akan tertarik dari mana ini berasal. Tampaknya mengklaim bahwa Baidu adalah 100% sempurna (dan lebih baik daripada orang) dalam mengidentifikasi / mengenali wajah. Entah itu atau itu menggunakan hasil Baidu sebagai kebenaran dasar daripada kategorisasi manusia, yang juga sangat aneh.
Stop Harming Monica
Oke, mereka mencampurkan hasil percobaan yang berbeda, dan membulatkan data sumber mereka secara tidak benar. Baidu harusnya 0,9977 ± 0,0006
Stop Harming Monica
2
Secara kebetulan, Anda melewatkan bahwa sumber Anda memiliki jawaban: "Lihat Wikipedia untuk detail lebih lanjut tentang membaca kurva ROC."
Stop Harming Monica
2
@OrangeDog 0,9977 ± 0,0006 adalah akurasi Baidu dari halaman hasil LFW , bukan AUC. Ini membingungkan karena halaman hasil LFW tidak memiliki judul untuk kolom ini. Namun, makalah v4 arxiv mereka menyajikan angka ini sebagai akurasi. Saya telah menghitung AUC pada kurva mereka dalam fungsi ini . Meskipun AUC 1.000 membingungkan, saya percaya teknik saya valid.
Brandon Amos

Jawaban:

27

Plotnya adalah kurva ROC dan poin (False Positive Rate, True Positive Rate) dihitung untuk ambang yang berbeda. Dengan asumsi Anda memiliki fungsi utilitas yang seragam, nilai ambang batas optimal adalah yang untuk titik terdekat dengan (0, 1).

Morten
sumber
Jadi jenis kurva ini mengharuskan metode memiliki parameter ambang relaks?
Axoren
2
Ya, tetapi ambangnya bisa banyak hal misalnya kemungkinan log untuk model yang terlatih mengingat data uji atau jarak ke hyperplane pemisah untuk SVM.
Morten
1
Misalnya, garis diagonal adalah algoritma tebakan acak; parameternya adalah "dengan probabilitas apa yang akan kita tebak BENAR?"
Stop Harming Monica
21

Untuk menghasilkan kurva ROC (= Kurva Karakteristik Operasi Penerima):

Asumsikan kita memiliki probabilistik, klasifikasi biner seperti regresi logistik. Sebelum menyajikan kurva ROC, konsep matriks kebingungan harus dipahami. Saat kami membuat prediksi biner, mungkin ada 4 jenis kesalahan:

  • Kami memperkirakan 0 sementara kami harus memiliki kelas sebenarnya 0: ini disebut True Negative , yaitu kami benar memprediksi bahwa kelas negatif (0). Misalnya, antivirus tidak mendeteksi file yang tidak berbahaya sebagai virus.
  • Kami memperkirakan 0 sementara kami seharusnya memiliki kelas sebenarnya 1: ini disebut a False Negative , yaitu kami salah memprediksi bahwa kelas tersebut negatif (0). Misalnya, antivirus gagal mendeteksi virus.
  • Kami memperkirakan 1 sementara kami seharusnya memiliki kelas sebenarnya 0: ini disebut a False Positive , yaitu kami salah memprediksi bahwa kelas tersebut positif (1). Misalnya, antivirus menganggap file tidak berbahaya sebagai virus.
  • Kami memperkirakan 1 sementara kami seharusnya memiliki kelas sebenarnya 1: ini disebut True Positive , yaitu kami benar memprediksi bahwa kelas positif (1). Misalnya, antivirus mendeteksi virus dengan benar.

Untuk mendapatkan matriks kebingungan, kita memeriksa semua prediksi yang dibuat oleh model, dan menghitung berapa kali masing-masing dari keempat jenis kesalahan terjadi:

masukkan deskripsi gambar di sini

Dalam contoh ini dari matriks kebingungan, di antara 50 titik data yang diklasifikasikan, 45 diklasifikasikan dengan benar dan 5 diklasifikasi salah.

Karena untuk membandingkan dua model yang berbeda, seringkali lebih mudah untuk memiliki satu metrik daripada beberapa yang lain, kami menghitung dua metrik dari matriks kebingungan, yang nantinya akan kami gabungkan menjadi satu:

  • TPTP+FN . Secara intuitif metrik ini sesuai dengan proporsi poin data positif yang secara tepat dianggap sebagai positif, sehubungan dengan semua poin data positif. Dengan kata lain, semakin tinggi TPR, semakin sedikit poin data positif yang akan kami lewatkan.
  • FPFP+TN . Secara intuitif metrik ini sesuai dengan proporsi titik data negatif yang keliru dianggap positif, sehubungan dengan semua titik data negatif. Dengan kata lain, semakin tinggi FPR, semakin banyak poin data negatif yang akan kami klasifikasi salah.

0,00;0,01,0,02,...,1,00

masukkan deskripsi gambar di sini

Dalam gambar ini, area biru sesuai dengan Area Di Bawah kurva Receiver Operating Characteristic (AUROC). Garis putus-putus dalam diagonal kami menyajikan kurva ROC dari prediktor acak: ia memiliki AUROC 0,5. Prediktor acak biasanya digunakan sebagai dasar untuk melihat apakah model itu berguna.

Jika Anda ingin mendapatkan pengalaman langsung:

Franck Dernoncourt
sumber
9

Jawaban Morten dengan benar menjawab pertanyaan dalam judul - angka tersebut memang merupakan kurva ROC. Ini diproduksi dengan memplot urutan tingkat positif palsu (FPR) terhadap tingkat positif sejati yang sesuai.

Namun, saya ingin menjawab pertanyaan yang Anda tanyakan di badan pos Anda.

Jika suatu metode diterapkan pada dataset, ia memiliki tingkat FP tertentu dan tingkat FN tertentu. Bukankah itu berarti bahwa setiap metode harus memiliki satu titik daripada kurva? Tentu saja ada beberapa cara untuk mengonfigurasi metode, menghasilkan beberapa titik berbeda, tetapi tidak jelas bagi saya bagaimana ada rangkaian tingkat ini atau bagaimana itu dihasilkan.

Banyak metode pembelajaran mesin memiliki parameter yang dapat disesuaikan. Sebagai contoh, output dari regresi logistik adalah probabilitas prediksi keanggotaan kelas. Aturan keputusan untuk mengklasifikasikan semua poin dengan probabilitas yang diprediksi di atas ambang batas untuk satu kelas, dan yang lainnya, dapat membuat rentang pengklasifikasi yang fleksibel, masing-masing dengan statistik TPR dan FPR yang berbeda. Hal yang sama dapat dilakukan dalam kasus hutan acak, di mana orang mempertimbangkan suara pohon, atau SVM, di mana Anda mempertimbangkan jarak yang ditandatangani dari pesawat terbang.

Dalam kasus di mana Anda melakukan validasi silang untuk memperkirakan kinerja out-of-sample, praktik umum adalah dengan menggunakan nilai prediksi (suara, probabilitas, jarak yang ditandatangani) untuk menghasilkan urutan TPR dan FPR. Ini biasanya terlihat seperti fungsi langkah, karena biasanya hanya ada satu titik yang bergerak dari TP ke FN atau FP ke FN, pada setiap nilai prediksi (yaitu semua nilai prediksi out-of-sample unik). Dalam hal ini, sementara ada kontinum opsi untuk menghitung TPR dan FPR, fungsi TPR dan FPR tidak akan kontinu karena hanya ada banyak titik di luar sampel, sehingga kurva yang dihasilkan akan memiliki tampilan seperti langkah .

Sycorax berkata Reinstate Monica
sumber
0

Dari Wikipedia:

Kurva ROC pertama kali dikembangkan oleh insinyur listrik dan insinyur radar selama Perang Dunia II untuk mendeteksi objek musuh di medan perang dan segera diperkenalkan ke psikologi untuk menjelaskan deteksi rangsangan persepsi. Analisis ROC sejak itu telah digunakan dalam bidang kedokteran, radiologi, biometrik, dan bidang lainnya selama beberapa dekade dan semakin banyak digunakan dalam pembelajaran mesin dan penelitian penambangan data.

ROC juga dikenal sebagai kurva karakteristik operasi relatif, karena merupakan perbandingan dari dua karakteristik operasi (TPR dan FPR) ketika kriteria berubah.

Anda dapat menganggap kedua sumbu sebagai biaya yang harus dikeluarkan agar classifier biner dapat beroperasi. Idealnya Anda ingin mengeluarkan tingkat positif palsu seminimal mungkin untuk tingkat positif sejati setinggi mungkin. Itu adalah Anda ingin classifier biner untuk memanggil sebagai positif palsu sesedikit mungkin sebanyak positif positif.

Untuk membuatnya konkret, bayangkan sebuah penggolong yang dapat mendeteksi apakah ada penyakit tertentu dengan mengukur jumlah beberapa biomarker. Bayangkan bahwa biomarker memiliki nilai dalam kisaran 0 (tidak ada) hingga 1 (jenuh). Tingkat apa yang memaksimalkan deteksi penyakit? Mungkin itu terjadi bahwa di atas tingkat tertentu biomarker akan mengklasifikasikan beberapa orang memiliki penyakit namun mereka tidak memiliki penyakit. Ini adalah positif palsu. Maka tentu saja ada orang-orang yang akan digolongkan memiliki penyakit ketika mereka memang memiliki penyakit. Ini adalah hal positif yang sebenarnya.

ROC menilai proporsi positif sejati semua positif terhadap proporsi positif palsu dengan memperhitungkan semua nilai ambang batas yang mungkin.

mempolarisasikan
sumber