Mengklarifikasi apa yang dimaksud dengan parameter α dan Elastic Net
Terminologi dan parameter yang berbeda digunakan oleh paket yang berbeda, tetapi artinya secara umum sama:
The paket R Glmnet menggunakan definisi berikut
minβ0, β1N∑Ni = 1wsayal ( ysaya, β0+ βTxsaya)+λ[(1−α)||β||22/2+α||β||1]
Penggunaan Sklearn
minw12N∑Ni=1||y−Xw||22+α×l1ratio||w||1+0.5×α×(1−l1ratio)×||w||22
Ada parameter alternatif menggunakan a dan b juga ..
Untuk menghindari kebingungan, saya akan menelepon
- λ parameter kekuatan penalti
- L 1 rasioL1ratio antarapenaltiL1 danL2 , mulai dari 0 (ridge) hingga 1 (laso)
Memvisualisasikan dampak parameter
Pertimbangkan set data simulasi di mana y terdiri dari kurva sinus berisik dan X adalah fitur dua dimensi yang terdiri dari X1=x dan X2=x2 . Karena korelasi antara X1 dan X2 fungsi biaya adalah lembah sempit.
Gambar di bawah ini menggambarkan jalur solusi dari elasticnet regresi dengan dua berbeda L1 parameter rasio, sebagai fungsi dari λ parameter kekuatan.
- Untuk kedua simulasi: ketika λ=0 maka solusinya adalah solusi OLS di kanan bawah, dengan fungsi biaya berbentuk lembah yang terkait.
- Ketika λ meningkat, regularisasi akan masuk dan solusinya cenderung (0,0)
- Perbedaan utama antara kedua simulasi adalah parameter rasio L1 .
- LHS : untuk kecil L1 rasio, fungsi biaya regularized terlihat banyak seperti regresi Ridge dengan kontur bulat.
- RHS : untuk besar L1 rasio, fungsi biaya terlihat banyak seperti regresi Lasso dengan kontur bentuk berlian yang khas.
- Untuk rasio L1 menengah (tidak ditampilkan) fungsi biaya adalah campuran keduanya
Memahami efek dari parameter
The ElasticNet diperkenalkan untuk melawan beberapa keterbatasan Lasso yaitu:
- Jika ada lebih banyak variabel p daripada titik data n , p>n , laso memilih paling banyak variabel n .
- Lasso gagal melakukan seleksi yang dikelompokkan, terutama di hadapan variabel yang berkorelasi. Ini akan cenderung untuk memilih satu variabel dari grup dan mengabaikan yang lain
Dengan menggabungkan penalti L1 dan kuadrat L2 kita mendapatkan keuntungan dari keduanya:
- L1 menghasilkan model yang jarang
- L2 menghilangkan batasan jumlah variabel yang dipilih, mendorong pengelompokan dan menstabilkanjalur regularisasiL1 .
Anda dapat melihat ini secara visual pada diagram di atas, singularitas pada simpul mendorong sparsity , sedangkan tepi cembung yang ketat mendorong pengelompokan .
Berikut ini visualisasi yang diambil dari Hastie (penemu ElasticNet)
Bacaan lebih lanjut
caret
paket yang dapat melakukan cv dan tune berulang untuk kedua alpha & lambda (mendukung pemrosesan multicore!). Dari memori, saya pikirglmnet
saran dokumentasi terhadap penyetelan untuk alpha seperti yang Anda lakukan di sini. Ini merekomendasikan untuk menjaga lipatan tetap jika pengguna menyetel untuk alpha di samping tuning untuk lambda yang disediakan olehcv.glmnet
.