Saya telah mengimplementasikan versi elastis jaring GLMNET untuk regresi linier dengan perangkat lunak lain selain R. Saya membandingkan hasil saya dengan fungsi R glmnet dalam mode laso pada data diabetes .
Pilihan variabel ok ketika memvariasikan nilai parameter (lambda) tapi saya mendapatkan nilai koefisien yang sedikit berbeda. Untuk alasan ini dan lainnya saya pikir itu berasal dari intersep di loop pembaruan, ketika saya menghitung fit saat ini, karena saya tidak memvariasikan intersep (yang saya ambil sebagai rata-rata dari variabel target) dalam keseluruhan algoritma: sebagai dijelaskan dalam artikel Trevor Hastie ( Jalur Regularisasi untuk Model Linear Umum melalui Koordinat Keturunan , halaman 7, bagian 2.6):
intersep tidak diatur, [...] untuk semua nilai [...] lambda [parameter L1-constraint]
Namun terlepas dari artikel tersebut, fungsi R glmnet memang memberikan nilai yang berbeda untuk intersep di sepanjang jalur regularisasi (nilai yang berbeda lambda). Apakah ada yang punya petunjuk tentang bagaimana nilai Intercept dihitung?
glmnet
Saya pikir ini mungkin di mana Anda salah: tidak seperti model linier, Anda tidak dapat membuat kembali prediktor sedemikian rupa sehingga mereka akan selalu ortogonal terhadap intersep, maka intersep tidak dapat hanya dihitung sebagai mean.
sumber