Apakah Random Forests menunjukkan bias prediksi?

12

Saya pikir ini adalah pertanyaan langsung, meskipun alasan di balik mengapa atau mengapa tidak. Alasan saya bertanya adalah bahwa saya baru-baru ini menulis implementasi RF saya sendiri dan meskipun berkinerja baik, kinerjanya tidak sebaik yang saya harapkan (berdasarkan set data kompetisi Prediksi Kualitas Foto Kaggle , skor kemenangan dan beberapa info selanjutnya yang tersedia tentang teknik apa yang digunakan).

Hal pertama yang saya lakukan dalam keadaan seperti itu adalah kesalahan prediksi plot untuk model saya, jadi untuk setiap nilai prediksi yang diberikan, saya menentukan bias rata-rata (atau penyimpangan) dari nilai target yang benar. Untuk RF saya, saya mendapatkan plot ini:

Nilai prediksi versus bias dari nilai target yang benar

Saya bertanya-tanya apakah ini adalah pola bias yang umum diamati untuk RF (jika tidak maka mungkin bisa menjadi sesuatu yang spesifik untuk kumpulan data dan / atau implementasi saya). Tentu saja saya dapat menggunakan plot ini untuk meningkatkan prediksi dengan menggunakannya untuk mengkompensasi bias, tapi saya bertanya-tanya apakah ada kesalahan yang lebih mendasar atau kekurangan dalam model RF itu sendiri yang perlu ditangani. Terima kasih.

== ADDENDUM ==

Investigasi awal saya ada di entri blog ini Random Forest Bias - Update

redcalx
sumber
2
Mungkin fitur data Anda; Sudahkah Anda mencoba menjalankan implementasi RF lainnya pada dataset yang sama untuk melihat apakah ia mereproduksi efek ini?

Jawaban:

4

(Saya jauh dari ahli. Ini hanya renungan dari seorang ahli statistik junior yang telah menangani berbagai masalah yang berbeda, tetapi sangat analogi. Jawaban saya mungkin di luar konteks.)

Mengingat sampel baru yang akan diprediksi, dan ramalan yang memiliki akses ke perangkat pelatihan yang jauh lebih besar, maka mungkin prediksi "terbaik" dan paling jujur ​​adalah dengan mengatakan "Saya memperkirakan dengan 60% kemungkinan bahwa ini termasuk dalam kelas Merah daripada kelas Biru ".

Saya akan memberikan contoh yang lebih konkret. Bayangkan, di set pelatihan kami yang sangat besar, ada satu set sampel besar yang sangat mirip dengan sampel baru kami. Dari jumlah tersebut, 60% berwarna biru dan 40% berwarna merah. Dan tampaknya tidak ada yang membedakan The Blues dari The Red. Dalam kasus seperti itu, jelas bahwa 60% / 40% adalah satu-satunya prediksi yang dapat dilakukan orang waras.

Tentu saja, kami tidak memiliki ramalan seperti itu, sebaliknya kami memiliki banyak pohon. Pohon keputusan sederhana tidak mampu membuat prediksi 60% / 40% ini dan karenanya setiap pohon akan membuat prediksi terpisah (Merah atau Biru, tidak ada di antaranya). Karena sampel baru ini jatuh tepat di sisi Merah pada permukaan keputusan, Anda akan menemukan bahwa hampir semua pohon memprediksi Merah daripada Biru. Setiap pohon berpura-pura lebih yakin dari itu dan mulai menyerbu ke prediksi yang bias.

Masalahnya adalah kita cenderung salah menafsirkan keputusan dari satu pohon. Ketika satu pohon menempatkan sebuah simpul di kelas Merah, kita tidak boleh menafsirkannya sebagai prediksi 100% / 0% dari pohon. (Saya tidak hanya mengatakan bahwa kita 'tahu' bahwa itu mungkin prediksi yang buruk. Saya mengatakan sesuatu yang lebih kuat, yaitu bahwa kita harus berhati-hati kita mengartikannya sebagai prediksi pohon). Saya tidak bisa secara singkat mengembangkan cara memperbaikinya. Tetapi adalah mungkin untuk meminjam ide dari area statistik tentang bagaimana membangun lebih banyak pemisahan 'fuzzy' di dalam pohon untuk mendorong satu pohon untuk lebih jujur ​​tentang ketidakpastiannya. Maka, harus mungkin untuk merata rata prediksi dari hutan pohon.

Aku berharap ini akan sedikit membantu. Jika tidak, saya berharap dapat belajar dari respons apa pun.

Aaron McDaid
sumber
Berpisah Fuzzy, mengerti, dalam semangat RF ekstrim (tapi mungkin tidak terlalu ekstrem?). Saya akan mencoba ini karena penjelasan Anda masuk akal bagi saya. Terima kasih.
redcalx
[Hutan Acak - Pikiran tentang Masalah Bias] ( the-locster.livejournal.com/134241.html ) "Kuncinya kalau begitu (saya pikir) adalah dengan menggunakan pengacakan yang tidak seragam [dari ambang batas perpecahan] sehingga himpunan semua titik perpecahan ketika dikombinasikan akan menciptakan kembali y = f (x), dan mendekati representasi sempurna dari y = f (x) karena jumlah DTs dalam RF cenderung menuju infinity. "
redcalx
Apakah prediksi 60/40% tidak akan ditangani oleh pohon regresi? Kepercayaan akan rasio kelas di partisi daun (untuk set pelatihan). Mungkin ini bisa / telah diperluas untuk menangani kekuatan statistik juga
Alter
3

Iya. Sebagian besar pohon memiliki bias pada ekornya. Lihat:

Bagaimana seharusnya pemisahan pohon keputusan diterapkan ketika memprediksi variabel kontinu?

"Salah satu masalah potensial dengan pohon adalah bahwa mereka cenderung kurang pas di bagian ekor. Pikirkan simpul terminal yang menangkap kisaran rendah dari rangkaian pelatihan. Ini akan memprediksi menggunakan rata-rata dari titik-titik pelatihan yang ditetapkan, yang akan selalu kurang diprediksi hasilnya (karena itu adalah rata-rata). "

topepo
sumber
Saya tidak berpikir komentar itu berlaku untuk hutan acak
Zach
Saya percaya implementasi referensi hutan acak berhenti dengan ~ 5 pengamatan di simpul ketika variabel respon kontinu. Itu masih akan memperkenalkan sejumlah kecil bias jika variabel pemisahan juga kontinu. Mirip dengan mengapa LOESS sering terlihat lebih baik daripada rata-rata bergerak terpusat di tepi dukungan ...
Shea Parkes