Saya telah membangun classifier regresi logistik yang sangat akurat pada data saya. Sekarang saya ingin lebih mengerti mengapa itu bekerja dengan baik. Secara khusus, saya ingin memberi peringkat fitur mana yang memberikan kontribusi terbesar (fitur mana yang paling penting) dan, idealnya, menghitung seberapa banyak setiap fitur berkontribusi pada akurasi model keseluruhan (atau sesuatu dalam nada ini). Bagaimana saya melakukan ini?
Pikiran pertama saya adalah memberi peringkat berdasarkan koefisien, tetapi saya kira ini tidak benar. Jika saya memiliki dua fitur yang sama-sama berguna, tetapi penyebaran yang pertama sepuluh kali lebih besar dari yang kedua, maka saya berharap yang pertama menerima koefisien yang lebih rendah daripada yang kedua. Apakah ada cara yang lebih masuk akal untuk mengevaluasi pentingnya fitur?
Perhatikan bahwa saya tidak mencoba memahami seberapa besar perubahan kecil dalam fitur mempengaruhi probabilitas hasilnya. Sebaliknya, saya mencoba memahami betapa berharganya setiap fitur, dalam hal membuat pengklasifikasi menjadi akurat. Juga, tujuan saya bukan untuk melakukan pemilihan fitur atau membuat model dengan fitur yang lebih sedikit, tetapi untuk mencoba memberikan "kemampuan menjelaskan" untuk model yang dipelajari, sehingga pengklasifikasi tidak hanya kotak hitam buram.
Jawaban:
Hal pertama yang perlu diperhatikan adalah Anda tidak menggunakan regresi logistik sebagai classifier. Fakta bahwa adalah biner sama sekali tidak ada hubungannya dengan menggunakan metode kemungkinan maksimum ini untuk benar-benar mengklasifikasikan pengamatan. Setelah Anda melewati itu, berkonsentrasilah pada pengukuran informasi standar emas yang merupakan produk sampingan dari kemungkinan maksimum: rasio kemungkinan χ 2 statistik. Anda dapat menghasilkan grafik yang menunjukkan kontribusi sebagian dari masing-masing prediktor dalam hal parsial χ 2Y χ2 χ2 statistik. Statistik ini memiliki informasi / kekuatan maksimum. Anda dapat menggunakan bootstrap untuk menunjukkan betapa sulitnya memilih "pemenang" dan "pecundang" dengan mendapatkan interval kepercayaan pada jajaran informasi prediktif yang disediakan oleh masing-masing prediktor setelah prediktor lain diperhitungkan. Contohnya ada di Bagian 5.4 dari catatan kursus saya - klik Handout lalu Handout lagi.
Jika Anda memiliki fitur yang sangat berkorelasi, Anda dapat melakukan "chunk test" untuk menggabungkan pengaruhnya. Bagan yang melakukan ini diberikan pada Gambar 15.11 di mana
size
merupakan kontribusi gabungan dari 4 prediktor terpisah.sumber
Jawaban singkatnya adalah tidak ada satu pun cara yang "benar" untuk menjawab pertanyaan ini.
Untuk ulasan terbaik dari masalah ini lihat makalah Ulrike Groemping, misalnya, Pengukur Relatif Pentingnya dalam Regresi Linier Berdasarkan Dekomposisi Varians . Opsi yang ia diskusikan berkisar dari heuristik sederhana hingga solusi multivarian yang canggih, intensif CPU.
http://prof.beuth-hochschule.de/fileadmin/prof/groemp/downloads/amstat07mayp139.pdf
Groemping mengusulkan pendekatannya sendiri dalam paket R yang disebut RELAIMPO yang juga layak dibaca.
https://cran.r-project.org/web/packages/relaimpo/relaimpo.pdf
Satu heuristik cepat dan kotor yang telah saya gunakan adalah untuk meringkas chi-kuadrat (nilai F, t-statistik) yang terkait dengan setiap parameter kemudian repercentage nilai-nilai individu dengan jumlah itu. Hasilnya akan menjadi metrik kepentingan relatif peringkat.
Yang mengatakan, saya tidak pernah menjadi penggemar "koefisien beta terstandarisasi" meskipun mereka sering direkomendasikan oleh profesi dan banyak digunakan. Inilah masalah dengan mereka: standarisasi adalah univariat dan eksternal untuk solusi model. Dengan kata lain, pendekatan ini tidak mencerminkan sifat kondisional dari hasil model.
sumber
Cara yang cukup kuat untuk melakukan ini adalah dengan mencoba menyesuaikan model N kali di mana N adalah jumlah fitur. Setiap kali menggunakan N-1 dari fitur dan meninggalkan satu fitur. Kemudian Anda dapat menggunakan metrik validasi favorit Anda untuk mengukur seberapa banyak inklusi atau pengecualian dari masing-masing fitur mempengaruhi kinerja model. Tergantung pada jumlah fitur yang Anda miliki ini mungkin mahal secara komputasi.
sumber
Mengenai poin terakhir Anda, tentu saja ada kemungkinan bahwa variabel dapat berkontribusi banyak pada peluang log diperkirakan sementara tidak benar-benar mempengaruhi peluang log "benar" banyak, tapi saya tidak berpikir ini perlu terlalu banyak perhatian jika kita memiliki kepercayaan pada prosedur yang menghasilkan estimasi.
sumber
Anda benar tentang mengapa Anda tidak harus menggunakan koefisien sebagai ukuran relevansi, tetapi Anda pasti bisa jika Anda membaginya dengan kesalahan standar mereka! Jika Anda memperkirakan model dengan R, maka itu sudah dilakukan untuk Anda! Anda bahkan dapat menghapus fitur paling tidak penting dari model dan melihat cara kerjanya.
Pendekatan yang lebih heuristik untuk mempelajari bagaimana perubahan yang berbeda dalam variabel mengubah hasil adalah melakukan hal itu: coba input yang berbeda dan pelajari perkiraan probabilitas mereka. Namun, karena model Anda cukup sederhana, saya akan menentangnya
sumber