Pertanyaan ini agak umum dan bertele-tele, tapi tolong tahan dengan saya.
Dalam aplikasi saya, saya memiliki banyak dataset, masing-masing terdiri dari ~ 20.000 titik data dengan ~ 50 fitur dan satu variabel biner yang tergantung. Saya mencoba untuk memodelkan dataset menggunakan regresi logistik teratur (paket R glmnet )
Sebagai bagian dari analisis saya, saya telah membuat plot residual sebagai berikut. Untuk setiap fitur, saya mengurutkan titik data sesuai dengan nilai fitur itu, membagi titik data menjadi 100 ember, dan kemudian menghitung nilai output rata-rata dan nilai prediksi rata-rata dalam setiap ember. Saya merencanakan perbedaan-perbedaan ini.
Berikut ini contoh plot sisa:
Dalam plot di atas, fitur tersebut memiliki kisaran [0,1] (dengan konsentrasi berat pada 1). Seperti yang Anda lihat, ketika nilai fitur rendah, model tampaknya bias terhadap perkiraan kemungkinan 1-output. Misalnya, dalam bucket paling kiri, model melebih-lebihkan probabilitas sekitar 9%.
Berbekal informasi ini, saya ingin mengubah definisi fitur secara langsung untuk secara kasar memperbaiki bias ini. Perubahan suka diganti
atau
Bagaimana saya bisa melakukan ini? Saya mencari metodologi umum sehingga manusia dapat dengan cepat menelusuri semua ~ 50 plot dan membuat perubahan, dan melakukan ini untuk semua dataset dan sering mengulangi untuk menjaga model tetap up-to-date karena data berkembang seiring waktu.
Sebagai pertanyaan umum, apakah ini pendekatan yang tepat? Pencarian Google untuk "analisis residu regresi logistik" tidak menghasilkan banyak hasil dengan saran praktis yang baik. Mereka tampaknya terpaku pada menjawab pertanyaan, "Apakah model ini cocok?" dan menawarkan berbagai tes seperti Hosmer-Lemeshow untuk menjawab. Tapi saya tidak peduli apakah model saya bagus, saya ingin tahu bagaimana membuatnya lebih baik!
tidak mungkin ada perangkat lunak umum untuk melakukan ini. kemungkinan besar karena tidak ada teori umum untuk memperbaiki masalah dalam regresi. karenanya ini lebih merupakan tipe jawaban "apa yang akan saya lakukan" daripada prosedur yang didasarkan pada teori.
plot yang Anda hasilkan pada dasarnya adalah uji HL visual dengan 100 nampan, tetapi menggunakan prediktor tunggal alih-alih probabilitas yang diprediksi untuk melakukan binning. ini berarti prosedur Anda kemungkinan akan mewarisi beberapa sifat uji HL.
prosedur Anda terdengar masuk akal, meskipun Anda harus waspada dengan kriteria Anda yang “terlalu cocok” kriteria Anda juga kurang bermanfaat sebagai diagnostik karena telah menjadi bagian dari proses estimasi. juga, setiap kali Anda melakukan sesuatu dengan intuisi, Anda harus menuliskan proses pengambilan keputusan Anda sedetil mungkin. ini karena Anda dapat menemukan benih dari proses umum atau teori, yang ketika dikembangkan mengarah ke prosedur yang lebih baik (lebih otomatis dan optimal sehubungan dengan beberapa teori).
Saya pikir salah satu cara untuk pergi adalah mengurangi jumlah plot yang perlu Anda selidiki terlebih dahulu. salah satu cara untuk melakukan ini adalah untuk menyesuaikan setiap variabel sebagai spline kubik, dan kemudian menyelidiki plot yang memiliki estimasi non linear non linear. mengingat jumlah titik data ini juga merupakan perbaikan otomatis yang mudah untuk non linearitas. ini akan memperluas model Anda dari 50 ke 200 + 50 k di mana k adalah jumlah knot. Anda bisa menganggap ini sebagai penerapan "ekspansi seri statistik taylor" dari transformasi "benar".
jika diagnostik Anda masih terlihat buruk setelah ini, maka saya akan mencoba menambahkan istilah interaksi.
bagian dari pertanyaan Anda tampaknya lebih tentang menulis program interaktif, yang lebih merupakan domain dari stackoverflow daripada di sini. mungkin juga berguna untuk mencari alat analisis data eksplorasi karena ini lebih cenderung memiliki fitur yang Anda dapat "kembalikan".
sumber