sklearn.linear_model——LogisticRegression调参小结

sklearn.linear_model——LogisticRegression调参⼩结
from sklearn.linear_model import LogisticRegression
数据标准化处理:
from sklearn.preprocessing import StandardScaler
X = preprocessing.StandardScaler().fit_transform(X)
⽤法:
LogisticRegression(penalty=’l2’, dual=False, tol=0.0001, C=1.0, fit_intercept=True, intercept_scaling=1,
class_weight=None, random_state=None, solver=’liblinear’, max_iter=100, multi_class=’ovr’, verbose=0,
warm_start=False, n_jobs=1)手机应急充电器
参数介绍
penalty惩罚项
艾叶提取物
客流统计系统方案挤压铸造str, ‘l1’ or ‘l2’,
默认: ‘l2’
注:在调参时如果我们主要的⽬的只是为了解决过拟合,⼀般penalty选择L2正则化就够了。但是如果选择L2正则化发现还是过拟合,即预测效果差的时候,就可以考虑L1正则化。另外,如果模型的特征⾮常多,我们希望⼀些不重要的特征系数归零,从⽽让模型系数稀疏化的话,也可以使⽤L1正则化。数字电视下载
solver优化⽅法
皮革涂饰剂(1)liblinear:使⽤了开源的liblinear库实现,内部使⽤了坐标轴下降法来迭代优化损失函数
(2)lbfgs:拟⽜顿法的⼀种,利⽤损失函数⼆阶导数矩阵即海森矩阵来迭代优化损失函数。
(3)newton-cg:也是⽜顿法家族的⼀种,利⽤损失函数⼆阶导数矩阵即海森矩阵来迭代优化损失函数。
(4)sag:即随机平均梯度下降,是梯度下降法的变种,和普通梯度下降法的区别是每次迭代仅仅⽤⼀部分的样本来计算梯度,适合于样本数据多的时候,SAG是⼀种线性收敛算法,这个速度远⽐SGD快。
注:从上⾯的描述可以看出,newton-cg, lbfgs和sag这三种优化算法时都需要损失函数的⼀阶或者⼆阶连续导数,因此不能⽤于没有连续导数的L1正则化,只能⽤于L2正则化。⽽liblinear通吃L1正则化和L2正则化。
multi_class:(待完善)
‘ovr’:uses the one-vs-rest (OvR) scheme,⽆论多少元逻辑回归都看作⼆元的
‘multinomial’:uses the cross- entropy loss
正则化参数C
smaller values specify stronger regularization

本文发布于:2024-09-22 23:18:34,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/314720.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:正则   梯度   损失   函数   迭代   矩阵
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议