GridSearchCV和LogisticRegression引发ValueError: 无法处理连续和二元混合。

6
我正在尝试使用逻辑回归模型来运行网格搜索,并得到以下结果:
ValueError: Can't handle mix of continuous and binary

我已经找到了这个错误的根源:metrics.accuracy_score。显然,预测并不顺利,虽然y_true是连续的(就像其他数据一样),但y_pred都是零,因此被分类为二进制。
  • 有没有避免这个错误的方法?
  • y_pred的性质是否意味着我根本不能使用逻辑回归,还是这可能是使用的参数的结果?
谢谢!
1个回答

3
有点令人困惑的是,逻辑回归实际上是一种分类算法(请参见http://scikit-learn.org/stable/modules/linear_model.html#logistic-regression)。因此,您要提供给它的目标(“y_true”)数据应该是二进制的。如果您实际上正在尝试解决回归问题,您应该选择不同的算法,例如LinearRegression、SVR、RandomForestRegressor等。

如果标签数量是固定的,可以使用逻辑回归。 - Abhishek Thakur
尽管上面的评论有些不同意,但这当然是正确的答案。感觉有点傻,谢谢。 - Korem
@AbishekThakur,是的,那是个好观点,但请注意,对于多类LR,scikit-learn在二元LR算法周围使用一种一对多的包装器。 - DavidS
在API方面,LogisticRegression对象需要类标签,而不一定是[0,1]向量。 - Fred Foo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接