【问题标题】:Logistic Regression Scikit-Learn Getting the coefficients of the classificationLogistic Regression Scikit-Learn 获取分类的系数
【发布时间】:2015-10-12 08:48:52
【问题描述】:

我正在做多类分类并对其应用逻辑回归

当我通过调用拟合数据时

logistic.fit(InputDATA,OutputDATA)

估计器“逻辑”拟合数据。

现在当我调用logistic.coef_ 时,它会打印一个二维数组 有 4 行(我有 4 个课程)和 n 列(每个功能一个)

这是我在 SCIKIT LEARN 网站上看到的:

coef_ : 数组,形状 (n_features, ) 或 (n_targets, n_features) 线性回归问题的估计系数。如果多个 在拟合期间传递目标(y 2D),这是一个 2D 形状数组 (n_targets, n_features),而如果只传递一个目标,这是一个 长度为 n_features 的一维数组。

现在我的查询是: 为什么不同的类别有不同的系数,因为我只需要一个可以预测输出的假设。

【问题讨论】:

    标签: machine-learning scikit-learn logistic-regression


    【解决方案1】:

    由于您有一个多类案例(>2 个案例),因此应用了一对一的策略。 sklearn 创建了 4 个分类器,而不仅仅是 1 个。 因此,您有 4 个假设和 4 个*系数。

    注意:我对逻辑回归分类器一无所知,但这就是 sklearn SVM 的工作原理。

    【讨论】:

    • 非常感谢。我现在知道了。现在使用四个分类器,一个具有最大概率的分类器形成输出类。
    • 那么,logistic.predict 是否使用这种方法来选择合适的分类器?
    • 在训练阶段生成了 4 个分类器。一个将 A 与 BCD 分开,一个将 B 与 ACD 分开,依此类推。一个新样本(即 predict() )被输入所有四个分类器。具有最高概率的分类器获胜。例如,您的新类是 C,则 C 与 ABD 分类器的概率高于其他分类器。 C 是 predict() 的返回值。
    【解决方案2】:

    您将根据 L1 或 L2 正则化获得输入特征的系数。如果您未指定 L1 或 L2,则模型将假定 L2。您可以将这些系数用于模型优化或特征工程

    【讨论】:

      猜你喜欢
      • 2019-08-27
      • 2020-09-12
      • 1970-01-01
      • 2020-06-19
      • 2015-09-10
      • 2017-02-07
      • 2018-04-18
      • 2021-03-18
      相关资源
      最近更新 更多