Catatan: Saya tahu bahwa L1 memiliki properti pemilihan fitur. Saya mencoba memahami yang mana yang harus dipilih ketika pemilihan fitur sama sekali tidak relevan.
- Bagaimana cara memutuskan regularisasi (L1 atau L2) mana yang akan digunakan?
- Apa pro & kontra dari masing-masing regularisasi L1 / L2?
- Apakah disarankan untuk pertama melakukan pemilihan fitur menggunakan L1 & kemudian menerapkan L2 pada variabel-variabel terpilih ini?
regression
lasso
regularization
ridge-regression
GeorgeOfTheRF
sumber
sumber
Jawaban:
Apa tujuanmu? Keduanya dapat meningkatkan generalisasi model dengan menghukum koefisien, karena fitur dengan hubungan yang berlawanan dengan hasil dapat "mengimbangi" satu sama lain (nilai positif yang besar diimbangi oleh nilai negatif yang besar). Ini bisa muncul ketika ada fitur collinear. Perubahan kecil dalam data dapat menghasilkan estimasi parameter yang sangat berbeda (estimasi varians tinggi). Penalti dapat menahan kedua koefisien menjadi lebih kecil. (Hastie et al, Elemen Pembelajaran Statistik , edisi 2, hal. 63)
Regulator L1 dapat mengatasi masalah multikolinieritas dengan membatasi norma koefisien dan menyematkan beberapa nilai koefisien ke 0. Secara komparatif, regresi Lasso (regresi dengan penalti L1) adalah program kuadratik yang memerlukan beberapa alat khusus untuk menyelesaikannya. Ketika Anda memiliki lebih banyak fitur daripada pengamatanN , laso akan menyimpan paling banyak N koefisien tidak nol . Tergantung pada konteksnya, itu mungkin bukan yang Anda inginkan.
Regulator L1 terkadang digunakan sebagai metode pemilihan fitur. Misalkan Anda memiliki semacam batasan pada jumlah fitur yang dapat Anda gunakan (karena pengumpulan data untuk semua fitur mahal, atau Anda memiliki kendala teknis yang ketat tentang berapa banyak nilai yang dapat Anda simpan, dll.). Anda dapat mencoba untuk menyetel penalti L1 untuk mencapai jumlah fitur non-nol yang Anda inginkan.
Regulator L2 dapat mengatasi masalah multikolinieritas dengan membatasi norma koefisien dan menjaga semua variabel. Ini tidak mungkin untuk memperkirakan koefisien menjadi tepat 0. Ini belum tentu kekurangan, kecuali vektor koefisien jarang penting untuk beberapa alasan.
Dalam pengaturan regresi, ini adalah solusi "klasik" untuk masalah estimasi regresi dengan lebih banyak fitur daripada pengamatan. Regulator L2 dapat memperkirakan koefisien untuk setiap fitur bahkan jika ada lebih banyak fitur daripada pengamatan (memang, ini adalah motivasi asli untuk "regresi ridge").
Sebagai alternatif, jaring elastis memungkinkan regularisasi L1 dan L2 sebagai kasus khusus. Kasus penggunaan umum untuk seorang ilmuwan data di industri adalah Anda hanya ingin memilih model terbaik, tetapi tidak perlu peduli apakah itu dihukum menggunakan L1, L2 atau keduanya. Jaring elastis bagus dalam situasi seperti ini.
Saya tidak akrab dengan publikasi yang mengusulkan pipa L1-lalu-L2, tapi ini mungkin hanya ketidaktahuan di pihak saya. Sepertinya tidak ada yang salah dengan itu. Saya akan melakukan tinjauan literatur.
Beberapa contoh pipa "bertahap" yang serupa ada. Salah satunya adalah "laso santai", yang menerapkan regresi laso dua kali , satu kali untuk memilih-turun dari kelompok besar ke sekelompok kecil fitur, dan kedua untuk memperkirakan koefisien untuk digunakan dalam model. Ini menggunakan validasi silang pada setiap langkah untuk memilih besarnya penalti. Alasannya adalah bahwa pada langkah pertama, Anda melakukan validasi silang dan kemungkinan akan memilih penalti besar untuk menyaring prediksi yang tidak relevan; pada langkah kedua, Anda melakukan validasi silang dan kemungkinan akan mengambil penalti yang lebih kecil (dan karenanya koefisien lebih besar). Ini disebutkan secara singkat dalam Elemen Pembelajaran Statistik dengan kutipan untuk Nicolai Meinshausen ("Santai Lasso." Statistik Komputasi & Analisis Data Volume 52, Edisi 1, 15 September 2007, hlm 374-393).
Pengguna @amoeba juga menyarankan pipa L1-then-OLS; ini mungkin bagus karena hanya memiliki 1 hiperparameter untuk besarnya penalti L1, jadi lebih sedikit bermain-main diperlukan.
Satu masalah yang dapat muncul dengan setiap pipa analisis "bertahap" yang melakukan beberapa langkah dan kemudian beberapa langkah lain secara terpisah adalah bahwa tidak ada "visibilitas" antara algoritma yang berbeda, sehingga satu proses mewarisi setiap data yang mengintai yang terjadi pada langkah sebelumnya. Efek ini tidak dapat diabaikan; pemodelan yang kurang dipahami dapat menghasilkan model sampah.
Salah satu cara untuk melindungi terhadap efek samping pengintaian data adalah dengan memvalidasi silang semua pilihan Anda. Namun, peningkatan biaya komputasi dapat menjadi penghalang.
sumber
Secara umum jika Anda ingin prediksi yang optimal gunakan L2. Jika Anda ingin kekikiran pada beberapa pengorbanan diskriminasi prediktif, gunakan L1. Tetapi perhatikan bahwa kekhilafan bisa menjadi ilusi, misalnya, mengulangi proses laso menggunakan bootstrap akan sering mengungkapkan ketidakstabilan yang signifikan dalam daftar fitur "dipilih" terutama ketika prediktor berkorelasi satu sama lain.
sumber