【问题标题】:GridSearchCV and LogisticRegression raise ValueError: Can't handle mix of continuous and binaryGridSearchCV 和 LogisticRegression 引发 ValueError:无法处理连续和二进制的混合
【发布时间】:2014-07-26 12:22:14
【问题描述】:

我正在尝试使用 LogisticRegression 运行 gridsearch,并得到 ​​p>

ValueError: Can't handle mix of continuous and binary

我已将此错误追溯到metrics.accuracy_score。显然预测不太顺利,虽然 y_true 是连续的(与其余数据一样),但 y_pred 全部为零,因此被归类为二进制。

  • 有什么办法可以避免这个错误吗?
  • y_pred 的性质是否意味着我根本没有使用逻辑回归的业务,或者这可能是使用的参数的结果?

谢谢

【问题讨论】:

    标签: python python-2.7 machine-learning scikit-learn


    【解决方案1】:

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

    【讨论】:

    • 如果标签数量固定,可以使用LogisticRegression
    • 尽管有上述评论,但这当然是正确答案。感觉很蠢,谢谢。
    • @AbishekThakur,是的,这是一个很好的观点,但请注意,对于多类 LR,scikit-learn 在二进制 LR 算法周围使用一对多的包装器。
    • 仍然在 API 方面,LogisticRegression 对象需要类标签,不一定是 [0,1] 向量。
    猜你喜欢
    • 2016-10-27
    • 2014-07-30
    • 1970-01-01
    • 2017-10-28
    • 2022-01-25
    • 2019-06-24
    • 2017-08-14
    • 2018-04-21
    • 2017-06-06
    相关资源
    最近更新 更多