在Zou和Hastie http://www.stanford.edu/~hastie/Papers/elasticnet.pdf的论文中,弹性网定义为两个正则化参数λ1和λ2,并提供了另一种形式,使用弹性网惩罚项a,其中约束α定义为α = λ2/λ1 + λ2。
我的问题是在scikit-learn弹性网模块中alpha和l1_ratio参数与论文中参数的关系是什么?
据我所知,sklearn中的l1_ratio等于λ2/λ1 + λ2。在sklearn中等于λ1 + λ2。这是正确的吗?
这是写在ElasticNet类的文档字符串:
sklearn.linear_model.ElasticNet
的最小目标函数为:
1 / (2 * n_samples) * ||y - Xw||^2_2 + alpha * l1_ratio * ||w||_1 + 0.5 * alpha * (1 - l1_ratio) * ||w||^2_2
所以lamba_1 == alpha * l1_ratio
和lambda_2 == 0.5 * alpha * (1 - l1_ratio)