Klasifikasi: Bias Prediksi

Prediksi regresi logistik tidak boleh bias. Yakni:

"rata-rata prediksi" seharusnya ≈ "rata-rata observasi"

Bias Prediksi adalah kuantitas yang mengukur seberapa jauh kedua rata-rata tersebut. Yakni:

$$\text{bias prediksi} = \text{rata-rata prediksi} - \text{rata-rata label dalam kumpulan data}$$

Bias prediksi yang bukan nol memberi tahu Anda bahwa terdapat bug di suatu tempat di model Anda, karena hal tersebut menunjukkan bahwa model telah salah mengenai seberapa sering label positif muncul.

Misalnya, kita mengetahui rata-rata, 1% dari semua email adalah spam. Jika kita tidak mengetahui apa pun tentang email tersebut, kita harus memprediksi bahwa kemungkinan email spam adalah 1%. Demikian pula, model spam yang baik harus memprediksi rata-rata bahwa kemungkinan email adalah spam adalah 1%. (Dengan kata lain, jika kita mengambil rata-rata kemungkinan prediksi bahwa sebuah email adalah spam, hasilnya harus 1%.) Jika prediksi rata-rata model adalah 20% kemungkinan spam, kita dapat menyimpulkan bahwa hal tersebut menunjukkan bias prediksi.

Akar penyebab bias prediksi yang mungkin adalah:

  • Set fitur tidak lengkap
  • Kumpulan data memiliki derau
  • Pipeline bermasalah
  • Contoh pelatihan yang bias
  • Regularisasi terlalu kuat

Anda mungkin ingin mencoba memperbaiki bias prediksi dengan pasca pemrosesan model yang dipelajari—yakni, dengan menambahkan lapisan kalibrasi yang menyesuaikan keluaran model untuk mengurangi bias prediksi. Misalnya, jika model memiliki +3% bias, Anda bisa menambahkan lapisan kalibrasi yang dapat menurunkan rata-rata prediksi sebesar 3%. Namun, menambahkan lapisan kalibrasi adalah ide buruk untuk alasan berikut:

  • Anda memperbaiki gejala, bukan penyebabnya.
  • Anda telah membuat sistem yang lebih rapuh sehingga Anda kini harus terus memeriksanya.

Jika memungkinkan, hindari penggunaan lapisan kalibrasi. Project yang menggunakan lapisan kalibrasi cenderung akan bergantung pada lapisan tersebut—menggunakan lapisan kalibrasi untuk memperbaiki semua kesalahan modelnya. Pada akhirnya, terus menggunakan lapisan kalibrasi bisa menjadi keputusan yang sangat buruk.

Pengelompokan dan Bias Prediksi

Regresi logistik memprediksi nilai antara 0 dan 1. Namun, semua contoh berlabel adalah persis 0 (Yang berarti, misalnya, "bukan spam") atau persis 1 (yang berarti, misalnya, "spam"). Oleh karena itu, saat menguji bias prediksi, Anda tidak bisa menentukan bias prediksi secara akurat hanya berdasarkan satu contoh; Anda harus menguji bias prediksi di contoh "kelompok". Dengan begitu, bias prediksi untuk regresi logistik hanya masuk akal jika mengelompokkan cukup contoh agar dapat membandingkan nilai yang diprediksi (misal, 0,392) dengan nilai yang diobservasi (misalnya, 0,394).

Anda bisa membentuk kelompok dengan cara berikut:

  • Memisah prediksi target secara linear.
  • Membentuk kuantil.

Pertimbangkan plot kalibrasi berikut dari model tertentu. Setiap titik mewakili kelompok nilai 1.000. Sumbunya memiliki arti sebagai berikut:

  • Sumbu x mewakili rata-rata nilai yang diprediksi model untuk kelompok tersebut.
  • Sumbu y mewakili rata-rata sebenarnya nilai dalam kumpulan data untuk kelompok tersebut.

Kedua sumbu adalah skala logaritmik.

Sumbu X adalah Prediksi; sumbu y adalah Label. Untuk nilai prediksi menengah dan tinggi, bias prediksi dapat diabaikan. Untuk nilai prediksi rendah, bias prediksinya relatif tinggi.

Gambar 8. Kurva bias prediksi (skala logaritmik)

Mengapa prediksi sangat buruk hanya untuk satu bagian model? Berikut beberapa kemungkinannya:

  • Set pelatihan tidak cukup mewakili subset ruang data tertentu.
  • Beberapa subset kumpulan data memiliki lebih banyak derau daripada yang lain.
  • Model terlalu diregularisasi. (Pertimbangkan untuk mengurangi nilai lambda.)