Saya tidak pernah benar-benar menemukan teks atau contoh yang bagus tentang bagaimana menangani data 'tidak ada' untuk input ke segala jenis classifier. Saya telah membaca banyak tentang data yang hilang tetapi apa yang dapat dilakukan tentang data yang tidak dapat atau tidak ada dalam kaitannya dengan input multivarian. Saya mengerti ini adalah pertanyaan yang sangat kompleks dan akan bervariasi tergantung pada metode pelatihan yang digunakan ...
Misalnya jika mencoba memprediksi waktu lap untuk beberapa pelari dengan data akurat yang baik. Di antara banyak input, variabel yang mungkin di antara banyak adalah:
- Variabel Input - Pelari pertama kali (Y / T)
- Variabel Input - Putaran sebelumnya (0 - 500 detik)
- Variabel Input - Usia
- Variabel Input - Tinggi. . . banyak lagi variabel Input, dll
& Output Predictor - Prediksi Laptime (0 - 500 detik)
'Variabel yang hilang' untuk '2.Previous laptime' dapat dihitung beberapa cara tetapi '1. Pelari pertama kali 'akan selalu sama dengan N. Tetapi untuk 'NON EXISTENT DATA' untuk pelari pertama kali (di mana '1. Pelari pertama kali' = Y) berapa nilai / perawatan yang harus saya berikan untuk '2. Laptime sebelumnya?
Misalnya menetapkan '2. Laptime sebelumnya 'sebagai -99 atau 0 dapat mengubah distribusi secara dramatis dan membuatnya tampak seperti pelari baru telah berkinerja baik.
Metode pelatihan saya saat ini telah menggunakan regresi logistik, SVM, NN & pohon Keputusan
sumber
Jawaban:
Alih-alih menetapkan nilai khusus untuk putaran pertama kali pelari sebelumnya yang tidak ada, cukup gunakan istilah interaksi untuk waktu putaran sebelumnya dengan kebalikan dari dummy pelari pertama kali:
sini
Maka model untuk pelari pertama kali adalah:
dan untuk pelari tidak pertama kali:
sumber
Untuk regresi logistik yang dipasang dengan kemungkinan maksimum, selama Anda memiliki keduanya (1) dan (2) dalam model, maka tidak peduli apa nilai "default" yang Anda berikan kepada pelari baru untuk (2), perkiraan untuk (1) akan menyesuaikan sesuai.
Misalnya, biarkan menjadi variabel indikator untuk "adalah pelari baru", dan menjadi variabel " sebelumnya dalam detik". Maka prediktor linier adalah:X1 X2
Jika default untuk adalah nol, maka prediktor linier untuk pelari baru adalah:X2
sedangkan untuk pelari yang ada, itu akan menjadi:
Sekarang anggaplah Anda mengubah default untuk dari 0 ke -99. Maka prediktor linier untuk pelari baru sekarang:X2
tetapi untuk pelari yang ada, itu akan tetap sama. Jadi semua yang Anda lakukan adalah reparameterise model, sehingga , dan karena kemungkinan maksimum invarian paremeterisasi, estimasi akan menyesuaikan sesuai.β′1−99β2=β1
Tentu saja, jika Anda tidak menggunakan kemungkinan maksimum (yaitu Anda menggunakan semacam hukuman atau sebelumnya pada parameter), maka Anda akan mendapatkan nilai yang berbeda kecuali Anda menyesuaikan hukuman / sebelumnya sesuai. Dan jika modelnya non-linear (mis. SVM, NN & Pohon keputusan), maka argumen ini tidak berfungsi sama sekali.
sumber