Rabu, 15 Juli 2020

Perbedaan: precision, recall & accuracy

Perbedaan: precision, recall & accuracy

Dalam “dunia” pengenalan pola (pattern recognition) dan temu kembali informasi (information retrieval), precision dan recall adalah dua perhitungan yang banyak digunakan untuk mengukur kinerja dari sistem / metode yang digunakan. Precision adalah tingkat ketepatan antara informasi yang diminta oleh pengguna dengan jawaban yang diberikan oleh sistem. Sedangkan recall adalah tingkat keberhasilan sistem dalam menemukan kembali sebuah informasi.

Sedangkan di “dunia lain” seperti dunia statistika dikenal juga istilah accurayAccuracy didefinisikan sebagai tingkat kedekatan antara nilai prediksi dengan nilai aktual. Ilustrasi berikut ini memberikan gambaran perbedaan antara accuracy dan precision.

Accuracy vs Precision [4]

Accuracy vs Precision [4]

Agar lebih jelas, mari kita bahas dengan menggunakan contoh.

Misalkan kita ingin mengukur kinerja dari sebuah mesin pemisah ikan yang bertugas memisahkan ikan-ikan salmon dari semua ikan yang telah didapat. Untuk mengujinya kita akan memasukkan 100 ikan salmon dan 900 ikan lain (bukan ikan salmon). Hasilnya mesin tersebut memisahkan 110 yang dideteksi sebagai ikan salmon. Ke 110 ikan tersebut kemudian dicek kembali oleh manusia, ternyata dari 110 ikan tersebut hanya 90 ekor yang merupakan ikan salmon, sedangkan 20 lainnya merupakan ikan lain.

Dari kasus tersebut maka kita dapat simpulkan bahwa mesin tersebut memiliki precision sebesar 82%, recall sebesar 90% dan accuracy sebesar 97% yang didapatkan dari perhitungan berikut:

precision
recall
accuracy

Secara umum precision, recall dan accuracy dapat dirumuskan sebagai berikut:

rumus

Sehingga untuk kasus mesin pemisah ikan diatas dapat dituliskan sebagai berikut:

kasus

Oke, sekarang akan saya tunjukkan hal yang menarik. Menggunakan precision atau accuracy saja dalam sebuah mengukur kinerja dari sebuah sistem / metode bisa menimbukan bias yang sangat fatal. Sebagai contoh, misalnya dari pengujian menggunakan 100 ikan salmon dan 900 ikan lain ternyata mesin hanya memisahkan 1 ikan salmon, dan setelah dicek oleh manusia, 1 ikan tersebut benar merupakan ikan salmon. Pengujian ini dapat kita tuliskan sebagai berikut:

kasus2

Dari hasil perhitungan kita dapatkan precision sebesar 100% dan accuracy sebesar 90.1%. Sekilas tampak baik, namun perhatikan nilai recall yang hanya sebesar 1%. Hal ini menunjukkan bahwa sistem hanya dapat memisahkan ikan salmon dalam jumlah yang sedikit sekali dan masih banyak ikan-ikan salmon yang lolos dari pemisahan.

Bila digambarkan, kasus pengujian mesin pemisah ikan ini dapat digambarkan seperti ini:

salmon ven

Jadi dalam mengukur kinerja dari sebuah sistem / metode dalam pengenalan pola atau temu kembali informasi disarankan menggunakan minimal dua parameter yaitu precision dan recall untuk mendeteksi bias seperti pada kasus diatas.

Semoga bermanfaat. Bila ada kesalahan saya akan dengan senang bila dikoreksi.

Referensi:

  1. putubuku, “Recall & Precision,” Ilmu Perpustakaan & Informasi – diskusi dan ulasan ringkas, 27-Mar-2008. [Online]. Available: http://iperpin.wordpress.com/2008/03/27/recall-precision/. [Accessed: 16-Jun-2013].
  2. “Precision and recall,” Wikipedia – The Free Encyclopedia. [Online]. Available: http://en.wikipedia.org/wiki/Precision_and_recall. [Accessed: 16-Jun-2013].
  3. “Accuracy and precision,” Wikipedia – The Free Encyclopedia. [Online]. Available: https://en.wikipedia.org/wiki/Accuracy_and_precision. [Accessed: 16-Jun-2013].
  4. B. Raharjo, “Presisi Dan Akurasi,” Beni Raharjo – Nature, Environment, Remote Sensing, GIS, IT and Myself, 17-Mar-2011. [Online]. Available: http://www.raharjo.org/math/presisi-dan-akurasi.html. [Accessed: 16-Jun-2013].