2021-04-14
阅读量:
1776
LogisticRegression的solver参数怎么选择?
问:
LogisticRegression的solver参数怎么选择?
答:
solver参数决定了我们对逻辑回归损失函数的优化⽅法,有4种算法可以选择,分别是:
liblinear:使⽤了开源的liblinear库实现,内部使⽤了坐标轴下降法来迭代优化损失函数。
lbfgs:拟⽜顿法的⼀种,利⽤损失函数⼆阶导数矩阵即海森矩阵来迭代优化损失函数。
newton-cg:也是⽜顿法家族的⼀种,利⽤损失函数⼆阶导数矩阵即海森矩阵来迭代优化损失函数。
sag:即随机平均梯度下降,是梯度下降法的变种,和普通梯度下降法的区别是每次迭代仅⽤⼀部分的样本来计算梯度,适合于样本数据多的时候。
从上⾯的描述可以看出, newton-cg, lbfgs和sag这三种优化算法时都需要损失函数的⼀阶或者⼆阶连
续导数,因此不能⽤于没有连续导数的L1正则化,只能⽤于L2正则化。⽽liblinear通吃L1正则化和L2正则化。同时, sag每次仅使⽤了部分样本进⾏梯度迭代,所以当样本量少的时候不要选择它,⽽如果样本量⾮常⼤,⽐如⼤于10万, sag是第⼀选择。但是sag不能⽤于L1正则化,所以当你有⼤量的样本,⼜需要L1正则化的话就要⾃⼰做取舍了。要么通过对样本采样来降低样本量量,要么回到L2正则化。






评论(0)


暂无数据
推荐帖子
0条评论
0条评论
0条评论