快速了解机器学习中LogisticRegression里的五种solver优化参数(超详细)

本文比较了逻辑回归中不同优化算法(liblinear,newton-cg,lbfgs,Sag,Saga)的特性,强调liblinear适用于小数据集,而sag/saga适用于大数据且速度快。多分类问题中,newton-cg,sag,saga,lbfgs适用于多项损失,liblinear限于OvR。考虑正则化和样本规模,选择算法需综合考量。

目录

Solver:

liblinear:

newton-cg:

Lbfgs:

Sag:

Saga:

总结:


Solver:

优化算法选择参数,只有五个可选参数,即newton-cg,lbfgs,liblinear,sag,saga。默认为liblinear。solver参数决定了我们对逻辑回归损失函数的优化方法,有四种算法可以选择,分别是:

liblinear:

使用坐标轴下降法来迭代优化损失函数。使用了开源的liblinear库实现,内部使用了坐标轴下降法来迭代优化损失函数。

newton-cg:

牛顿法,sag方法使用一阶导数,而牛顿法采用了二阶泰勒展开,这样缩减了迭代轮数,但是需要计算Hsssian矩阵的逆,所以计算复杂度较高。【也是牛顿法家族的一种,利用损失函数二阶导数矩阵即海森矩阵来迭代优化损失函数。】

Lbfgs:

拟牛顿法,考虑到牛顿法的Hessian矩阵求逆太过复杂,尤其在高维问题中几乎不可行,想到了用较低的代价寻找Hessian矩阵的近似逆矩阵,便有了拟牛顿法。【拟牛顿法的一种,利用损失函数二阶导数矩阵即海森矩阵来迭代优化损失函数。】

Sag:

即随机平均梯度下降,类似于我们的stocGradAscent1函数,思想是常用的一阶优化方法,是求解无约束优化问题最经典,最简单的方法之一。【即随机平均梯度下降,是梯度下降法的变种,和普通梯度下降法的区别是每次迭代仅仅用一部分的样本来计算梯度,适合于样本数据多的时候。】

Saga:

线性收敛的随机优化算法。【线性收敛的随机优化算法的的变种。】

总结:

liblinear适用于小数据集,而sag和saga适用于大数据集因为速度更快。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值