zoukankan      html  css  js  c++  java
  • LogisticRegressionCV 参数使用以及含义 笔记

    第一次接触LogisticRegressionCV ,记录一下。

     Logistic回归是分类算法,不能应用于回归中(传入模型的y值,不能是float类型,必须是int类型)
     

    正则化选择参数 :penalty   
                                  ——>  L1 / L2    默认是L2的正则化,一般使用L2就可以了,但是如果还是过拟合,就可以用                                                                         L1,如果特征较多希望略去不重要特征,就有L1。

    参数优化方式    :solver     
                                 ——> 当penalty为l1的时候,参数只能是:liblinear(坐标轴下降法),lbfgs和cg都是关于目标函数的二                                                          阶泰勒展开,当penalty为l2的时候,参数可以是:lbfgs(拟牛顿法)、newton-cg(牛顿法变种),                                                          seg(minibatch) 、而liblinear通吃L1正则化和L2正则化     

                     维度<10000时,lbfgs法比较好,   维度>10000时, cg法比较好,显卡计算的时候,lbfgs和cg都比seg快

                        1.  liblinear:使用了坐标轴下降法来迭代优化损失函数。

              2.  lbfgs:拟牛顿法的一种,利用损失函数二阶导数矩阵即海森矩阵来迭代优化损失函数。

              3. newton-cg:也是牛顿法家族的一种,利用损失函数二阶导数矩阵即海森矩阵来迭代优化损失函数。

              4.  sag:即随机平均梯度下降,是梯度下降法的变种,和普通梯度下降法的区别是每次迭代仅仅用一部分的样本来计                          算梯度,适合于样本数据多的时候,SAG是一种线性收敛算法,这个速度远比SGD快。关于SAG的理解.

     分类方式参数    :multi_class  
                           ——>ovr(默认)、multinomial;这两种方式在二元分类问题中,效果是一样的,在多元分类问题中,                                                         效果不一样

                            1. ovr  :one-vs-rest, 对于多元分类的问题,先将其看做二元分类,分类完成后,再迭代对其中一类继续进行二元                                       分类

                             2.multinomial:  many-vs-many(MVM),即Softmax分类效果   

    类型权重参数   :class_weight    
                           ——>权重一样可以不输入、可以选择balanced让类库自己计算类型权重、或自己输入                                                                              <class_weight={0:0.9, 1:0.1},这样类型0的权重为90%,而类型1的权重为10%>,

                            1.选择balanced,那么类库会根据训练样本量来计算权重。某种类型样本量越多,则权重越低,样本量越少,则                                权重越高。

                            2.

    样本权重参数: sample_weight
                            由于样本不平衡,导致样本不是总体样本的无偏估计,调用fit函数时,通过sample_weight来自己调节每个样本权                          重

                           如果上面两种方法都用到了,那么样本的真正权重是class_weight*sample_weight.

    交叉验证参数 :  cv
                          ——>  默认None,使用三折交叉验证。指定fold数量,默认为3,也可以是yield训练/测试数据的生成器。

     并行数   : n_jobs
                           ——> int:个数,-1:跟CPU核数一致, 1:默认值。

    迭代终止判据的误差范围  :tol
    ---------------------
    作者:一个有文化的暴发户
    来源:CSDN
    原文:https://blog.csdn.net/wangyuhao07/article/details/86152183
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    大数据基础---Scala_Array
    大数据基础---Scala流程控制语句
    大数据基础---Scala基本数据类型和运算符
    大数据基础---Scala简介及开发环境配置
    大数据基础---Flink_Standalone_集群部署
    大数据基础---Flink状态管理与检查点机制
    大数据基础---Flink_窗口模型
    大数据基础---Flink_Data_Sink
    IDL keywords 检查
    IDL 多线程
  • 原文地址:https://www.cnblogs.com/jfdwd/p/11046747.html
Copyright © 2011-2022 走看看