Menggunakan LASSO untuk pemilihan variabel, kemudian menggunakan Logit

10

Saya tahu ini akan memperburuk kesimpulan statistik, tetapi saya benar-benar hanya peduli dengan sedekat mungkin dengan model yang akurat.

Saya memiliki variabel hasil dikotomis, dengan seperangkat besar prediktor dikotomis. Saya pikir saya ingin mencoba menggunakan LASSO untuk memilih variabel mana yang harus saya sertakan dalam model saya, kemudian memasukkan variabel-variabel yang dipilih ke dalam regresi Logit.

Apakah ada sesuatu yang saya abaikan dalam hal kepraktisan pendekatan ini?

EvKohl
sumber
4
Anda mengabaikan bahwa Anda dapat menggunakan penalti L1-norma LASSO dalam regresi logistik seperti halnya dalam regresi linier.
Scortchi
1
Dan itu LASSO menyusut serta memilih, yang akan Anda kembalikan.
Scortchi
Jadi, itulah yang saya pikir (vis-a-vis) menyusut). Saya menggunakan paket LARS di STATA. Model yang dihasilkannya tidak memberikan intersep, jadi tidak bisa menyusut, bukan?
EvKohl
Intersep dalam model logit ditetapkan oleh rasio positif ke negatif.
Sycorax berkata Reinstate Monica
2
Anda selalu dapat menyertakan kolom yang ke data Anda untuk memperkirakan jangka waktu intersepsi. Tapi memang tidak perlu lari ke model yang terpisah. Cukup gunakan regresi logistik dengan penalti L1.
Sven

Jawaban:

9

Ada paket di R yang disebut glmnet yang dapat ditampung oleh model logistik LASSO untuk Anda! Ini akan lebih mudah daripada pendekatan yang Anda pertimbangkan. Lebih tepatnya, glmnet adalah hibrida antara LASSO dan regresi Ridge tetapi Anda dapat menetapkan parameterα=1untuk melakukan model LASSO murni. Karena Anda tertarik pada regresi logistik, Anda akan menetapkan family = "binomial".

Anda dapat membaca lebih lanjut di sini: http://web.stanford.edu/~hastie/glmnet/glmnet_alpha.html#intro

TrynnaDoStat
sumber
(+1) Tidak diragukan lagi ada paket Stata untuk ini - Statalist akan menjadi tempat terbaik untuk bertanya.
Scortchi
Terima kasih. Sebenarnya saya tidak berpikir ada paket STATA untuk itu. Semua yang saya sebutkan adalah untuk R.
EvKohl
3
Googling for stata lasso logisticmemberi saya homepages.ucl.ac.uk/~ucakgam/stata.html sebagai hasil pertama.
Scortchi
Adakah yang mengetahui paket dengan Python yang bisa melakukan ini juga?
rbm
@ rbm Saya pasti terlambat untuk pesta, tetapi Anda dapat menerapkan regularisasi untuk regressor logistik di scikit-belajar.
Eli Korvigo
2

Pertama, tidak ada jaminan bahwa model probabilitas linier akan mendekati model logit dengan sangat baik; akibatnya subset dari variabel yang dipilih untuk satu mungkin kurang tepat untuk yang lain.

Kedua, pemasangan kembali tidak berlaku penyusutan sama sekali, meskipun pemilihan variabel yang terjadi pada langkah pertama; beresiko salah kalibrasi serius & mungkin sedikit kehilangan diskriminasi.

Anda mungkin dapat memvalidasi prosedur pada set data tertentu, tetapi tampaknya tidak aman secara umum, atau untuk menawarkan keuntungan apa pun dibandingkan dengan regresi logistik bertahap. Dan tentu saja itu tidak perlu; LASSOL.1Denda normal dapat digunakan untuk penyusutan & seleksi dalam regresi logistik.

Scortchi - Reinstate Monica
sumber