Presisi vs Ingat. Apa yang Sebenarnya Mereka Katakan kepada Anda? – Menuju AI

Dart board with 3 darts hitting the center

Pengarang: Nikita Andriievskyi

Awalnya diterbitkan di Towards AI the World’s Leading AI and Technology News and Media Company. Jika Anda sedang membangun produk atau layanan terkait AI, kami mengundang Anda untuk mempertimbangkan untuk menjadi sponsor AI. Di Towards AI, kami membantu menskalakan AI dan startup teknologi. Biarkan kami membantu Anda melepaskan teknologi Anda kepada massa.

Pahami ide di balik Precision and Recall

Papan dart dengan 3 anak panah mengenai pusatFoto oleh Michiel di Pexel

Jika Anda bertanya kepada ilmuwan data atau insinyur pembelajaran mesin tentang topik termudah dan paling membingungkan yang mereka pelajari — salah satu hal pertama yang akan muncul di benak mereka adalah Precision vs Recall.

Di satu sisi, topik ini memang membingungkan, dan saya sendiri menghabiskan banyak waktu untuk mencoba memahami perbedaannya, dan yang terpenting, apa yang dikatakan kedua istilah ini kepada Anda.

Di sisi lain, topiknya sangat sederhana dan tidak memerlukan pemahaman tentang matematika, pemrograman, atau hal lain yang rumit. Dan dalam artikel ini, saya akan menggabungkan semua sumber daya yang saya temukan, dan saya akan melakukan yang terbaik untuk menjelaskan topik ini kepada Anda sehingga Anda tidak perlu khawatir lagi.

Pertama-tama, kita harus memahami bahwa Precision dan Recall adalah cara lain untuk mengevaluasi model Anda. Seringkali, pengukuran akurasi sederhana tidak akan cukup.

Mengapa saya tidak bisa menggunakan akurasi saja?

Katakanlah Anda memiliki kumpulan data 1000 gambar buah, 990 apel, dan 10 jeruk. Anda melatih model untuk mengklasifikasikan apel vs jeruk pada kumpulan data ini, dan model Anda memutuskan untuk mengatakan bahwa semua gambar adalah apel. Jika Anda menghitung akurasi (prediksi yang benar / semua prediksi): 990/1000, maka Anda akan mendapatkan akurasi 99%!! Meskipun model Anda memiliki akurasi yang luar biasa, itu benar-benar salah mengklasifikasikan semua jeruk.

Tapi, jika kita juga mengevaluasi model menggunakan Precision and Recall, kita akan langsung direndahkan.

Sebelum masuk ke penjelasan kedua istilah tersebut, kita memang harus mengetahui apa yang dimaksud dengan True Positive, True Negative, False Positive, dan False Negative.

Catatan: Jika Anda sudah mengetahui perbedaannya dengan sempurna, Anda dapat melewati bagian ini

Pertama-tama mari kita lihat “kelas” Sejati.

Benar di sini berarti model diprediksi dengan benar.

Jadi, jika kami membuat model untuk mengklasifikasikan gambar anjing vs bukan anjing — prediksi True Positive adalah ketika model mengklasifikasikan gambar sebagai anjing, dan itu memang seekor anjing. Prediksi True Negative adalah jika model mengklasifikasikan gambar sebagai bukan anjing, dan itu sebenarnya bukan anjing.

Bagaimana dengan kelas False?

Seperti yang mungkin sudah Anda duga, False berarti model memprediksi dengan tidak benar.

Positif Palsu— model mengklasifikasikan gambar sebagai anjing, tetapi sebenarnya itu bukan anjing. Negatif Palsu — model mengklasifikasikan gambar sebagai bukan anjing, tetapi sebenarnya adalah seekor anjing.

Seperti yang Anda lihat, Benar dan Salah memberi tahu Anda apakah model itu benar atau salah. Sedangkan Positif dan Negatif memberi tahu Anda kelas apa yang diprediksi model. (Dalam contoh kami, kelas Positif adalah gambar anjing, dan kelas Negatif adalah gambar non-anjing)

CATATAN

Kelas Positif tidak harus berupa gambar anjing, bisa juga dikatakan bahwa kelas Positif adalah gambar bukan anjing. Tetapi kebanyakan, ilmuwan data menyebut Positif sebagai kelas yang mereka targetkan/fokuskan.

Mudah-mudahan, sekarang Anda memahami bagian sebelumnya dengan baik karena kita akan membutuhkannya dalam memahami Precision vs Recall.

presisi

Katakanlah kita telah membuat model untuk mengklasifikasikan gambar anjing vs bukan anjing, dan kita menguji model kita pada 10 gambar, mari kita fokus pada kelas anjing:

10 gambar, 6 di antaranya adalah gambar anjing, dan yang lainnya bukan, model mengklasifikasikan 7 gambar sebagai anjing, 4 di antaranya adalah prediksi yang benarVideo oleh codebasics

Mari kita lihat… Ada 6 gambar anjing, dan 4 gambar non-anjing. Model kami mengklasifikasikan 7 gambar sebagai anjing, namun hanya 4 yang benar.

Rumus untuk Presisi:

Presisi = # Positif Benar / # Positif Benar # Positif Palsu

Mari kita hitung Presisi untuk kelas anjing bersama-sama: ada 4 citra True Positive (4 citra anjing yang diklasifikasikan sebagai anjing). Sekarang kita bagi dengan 4 True Positives + 3 False Positives (3 gambar bukan anjing yang tergolong anjing).

4/7 = 0,57.

Apa yang dikatakannya kepada kita?

Yah, pada dasarnya, ini memberi tahu kita berapa persentase gambar anjing yang diklasifikasikan dengan benar di antara semua gambar yang diklasifikasikan sebagai anjing.

Saat kami menghitung Presisi, kami fokus pada prediksi.

Jika kita memiliki Presisi 100%, kita dapat yakin 100% bahwa Jika model kita mengklasifikasikan gambar sebagai anjing, itu pasti benar. Meskipun tidak mengklasifikasikan sebagian besar gambar anjing sebagai anjing, gambar yang diklasifikasikan sebagai anjing — 100% benar. Di Precision, kami hanya peduli tentang prediksi kelas target yang diklasifikasikan dengan benar.

Mengingat

Mari kita simpan contoh yang sama, saya akan melampirkan foto yang sama, jadi Anda tidak perlu menggulir ke atas lagi:

Video oleh codebasics

Rumus untuk Mengingat:

Ingat = # Positif Benar / # Positif Benar + # Negatif Palsu

Mari kita hitung bersama: 4 Positif Benar dibagi 4 Positif Benar + 2 Negatif Palsu (2 gambar anjing yang tergolong bukan anjing).

4/6 = 0,67

Apa yang dikatakannya kepada kita?

Jadi, jika Precision menunjukkan kepada kita persentase gambar anjing yang diklasifikasikan dengan benar di antara gambar anjing yang diprediksi— Recall menunjukkan kepada kita persentase gambar anjing yang diklasifikasikan dengan benar di antara gambar anjing yang sebenarnya.

Saat kami menghitung Recall, kami fokus pada data aktual.

Jika kita memiliki 100% Recall, kita dapat 100% yakin bahwa jika diberikan satu set, katakanlah, 20 gambar, 8 di antaranya adalah gambar anjing, model kita akan mengklasifikasikan semua 8 gambar anjing sebagai anjing. Namun, mungkin juga dikatakan bahwa 12 gambar lainnya adalah anjing juga, tetapi dalam Recall kami hanya peduli tentang gambar target sebenarnya yang diklasifikasikan dengan benar.

Presisi vs Recall Tradeoff

Saya tidak akan banyak fokus pada topik ini, jika Anda ingin saya menulis posting tentang itu, beri tahu saya di komentar. Tapi pada dasarnya, biasanya ketika Precision naik, Recall turun, dan sebaliknya.

Bagaimana saya tahu apa yang perlu saya fokuskan lebih banyak? (Contoh dunia nyata)

Anda mungkin memiliki pertanyaan seperti: “Oke, saya mengerti perbedaannya, dan bahwa ada tradeoff, tetapi kapan saya membutuhkan presisi yang lebih tinggi, dan kapan saya membutuhkan recall yang lebih tinggi?”

Kapan kita lebih peduli dengan Presisi?

Bayangkan kita bekerja untuk Google, khususnya, kita sedang mengerjakan model yang akan mendeteksi email sebagai spam vs bukan spam, dan semua email spam akan disembunyikan. Dalam hal ini, kami tidak ingin secara tidak sengaja mengklasifikasikan email penting sebagai spam, karena akan disembunyikan. Oleh karena itu, kami ingin memastikan bahwa jika model mengklasifikasikan email sebagai spam, itu benar. Kami tidak terlalu peduli jika beberapa email spam tidak disembunyikan dari pengguna, mereka akan dapat menyembunyikannya sendiri. Luangkan waktu untuk memprosesnya, dan coba pahami bagaimana Presisi cocok dengan contoh.

Bagaimana dengan Recall? Kapan kita lebih fokus padanya?

Mari kita bayangkan kita bekerja di bandara, dan kita telah membangun sebuah model untuk mengklasifikasikan orang-orang berbahaya. Jika model kami tidak mengklasifikasikan orang berbahaya sebagai orang berbahaya, mereka mungkin tidak terdeteksi oleh keamanan juga, dan kemudian menyebabkan banyak kerusakan. Inilah sebabnya mengapa kita perlu mengklasifikasikan setiap orang yang berbahaya sebagai orang yang berbahaya.

Di sisi lain, jika model mengklasifikasikan warga sipil biasa sebagai berbahaya, kami tidak terlalu peduli, mereka akan diperiksa, dan kemudian melanjutkan.

Latihan

Ambil contoh data dengan anjing vs bukan anjing, dan coba hitung Precision dan Recall untuk kelas bukan anjing. (Pikirkan bukan kelas anjing sebagai kelas Positif Anda). Cobalah untuk membuat definisi Anda sendiri untuk Precision and Recall. Pikirkan sebuah proyek atau bahkan masalah dunia nyata di mana Presisi akan lebih penting, dan sebaliknya. Beri tahu saya jawaban Anda di komentar, dan saya akan memberi tahu Anda jika Anda benar atau salah.

Saya harap artikel ini membantu Anda, saya mencoba membuat semuanya sejelas mungkin. Tetapi jika Anda masih memiliki beberapa pertanyaan, tanyakan di komentar, dan saya akan mencoba membantu Anda.

Presisi vs Ingat. Apa yang Sebenarnya Mereka Katakan kepada Anda? awalnya diterbitkan di Towards AI on Medium, di mana orang-orang melanjutkan percakapan dengan menyoroti dan menanggapi cerita ini.

Diterbitkan melalui Menuju AI

Author: Scott Anderson