【问题标题】:Python : How to use Multinomial Logistic Regression using SKlearnPython:如何使用 SKlearn 使用多项逻辑回归
【发布时间】:2016-08-14 02:06:48
【问题描述】:

我有一个测试数据集和训练数据集,如下所示。我提供了一个包含最少记录的示例数据,但我的数据有超过 1000 条记录。这里 E 是我需要使用算法预测的目标变量。它只有四个类别,如 1、2、3、4。它只能采用这些值中的任何一个。

训练数据集:

A    B    C    D    E
1    20   30   1    1
2    22   12   33   2
3    45   65   77   3
12   43   55   65   4
11   25   30   1    1
22   23   19   31   2
31   41   11   70   3
1    48   23   60   4

测试数据集:

A    B    C    D    E
11   21   12   11
1    2    3    4
5    6    7    8 
99   87   65   34 
11   21   24   12

由于 E 只有 4 个类别,我想到了使用多项逻辑回归(1 vs Rest Logic)来预测这一点。我正在尝试使用 python 来实现它。

我知道我们需要在变量中设置这些目标并使用算法来预测这些值中的任何一个的逻辑:

output = [1,2,3,4]

但是我在如何使用 python (sklearn) 循环这些值以及我应该使用什么算法来预测输出值方面遇到了问题?任何帮助将不胜感激

【问题讨论】:

标签: python scikit-learn logistic-regression data-analysis


【解决方案1】:

你可以试试

LogisticRegression(multi_class='multinomial',solver ='newton-cg').fit(X_train,y_train)

【讨论】:

  • 这不是和这个问题的现有答案基本相同吗?
【解决方案2】:

LogisticRegression 可以开箱即用地处理多个类。

X = df[['A', 'B', 'C', 'D']]
y = df['E']
lr = LogisticRegression()
lr.fit(X, y)
preds = lr.predict(X)  # will output array with integer values.

【讨论】:

  • 这是多类吗?看起来更像是一个多标签解决方案
猜你喜欢
  • 2022-01-12
  • 2015-12-19
  • 2016-03-06
  • 1970-01-01
  • 2013-12-24
  • 2020-11-17
  • 2018-10-30
  • 2017-07-07
  • 2018-10-09
相关资源
最近更新 更多