Saya telah memprogram regresi logistik menggunakan algoritma IRLS . Saya ingin menerapkan hukuman LASSO untuk memilih fitur yang tepat secara otomatis. Pada setiap iterasi, berikut ini dipecahkan:
Biarkan menjadi bilangan real non-negatif. Saya tidak menghukum intersep seperti yang disarankan dalam The Elements of. Pembelajaran Statistik . Ditto untuk koefisien yang sudah nol. Kalau tidak, saya mengurangi istilah dari sisi kanan:
Namun, saya tidak yakin tentang modifikasi algoritma IRLS. Apakah ini cara yang benar untuk dilakukan?
Sunting: Meskipun saya tidak yakin tentang hal itu, berikut adalah salah satu solusi yang akhirnya saya temukan. Yang menarik adalah solusi ini sesuai dengan apa yang sekarang saya mengerti tentang LASSO. Memang ada dua langkah di setiap iterasi alih-alih hanya satu:
- langkah pertama adalah sama seperti sebelumnya: kita membuat iterasi dari algoritma (seolah-olah dalam rumus untuk gradien di atas),
- langkah kedua adalah yang baru: kami menerapkan soft-thresholding untuk setiap komponen (kecuali untuk komponen , yang sesuai dengan intersep) dari vektor diperoleh pada langkah pertama. Ini disebut Iterative Soft-Thresholding Algorithm .