逻辑回归在更新到 v.0.17 后不起作用



我有类似的东西:

linear_model.LogisticRegression(penalty='l2').fit(X_train, y_train)

哪里X_train

array([[  2500. ,   5000. ,   5000. , ...,   4697.2,      3. ,  10600. ],
       ..., 
       [  2500. ,   3500. ,   3500. , ...,   3072. ,      3. ,  12800. ]])

和y_train:

array([  4.865146,  12.309128,   1.469881, ...,   5.248941,  11.84231 ,
         2.178483])

这在v.0.16.1中没有任何错误或警告,但是升级到v.0.17.1后,它失败并显示错误:

ValueError: Unknown label type: my y_train array.

阅读 v16 和 v17 的文档,我没有发现任何不同之处。唯一可疑的是:

逻辑回归(又名logit,MaxEnt)分类器。

这表明这实际上不是回归模型,而是分类模型,因此y_train应该是类别(但在 v16 中也有相同的解释,所以我不确定是否是这种情况)。

无论如何,我想知道为什么会发生这种情况以及如何使其工作。


演示问题的可运行、自包含的示例

X_train_1 = np.array([[ 2500.,  5000.], [ 4500.,  4500.]])
y_train_1 = np.array([  4.865146,  12.309128])
linear_model.LogisticRegression(penalty='l2').fit(X_train_1, y_train_1)

我认为你想要一个LinearRegression;逻辑回归实际上是一个分类模型(尽管名称具有误导性)。不确定您的代码在以前的版本中做了什么,也许它将每个浮点值视为标签?

相关内容

  • 没有找到相关文章

最新更新