sklearn使用probato进行逻辑二进制分类



是否有某种方法可以报告sklearn模型二进制分类模型的期望值?在之前的一个问题中,有人推荐了predict_proba。我期望的输出类似于xgboost包"objective": "binary:logistic"参数。然而,这似乎并没有产生预期的结果。我的Y值是谨慎的。

我被predict_proba的输出弄糊涂了。由于我只有一个目标,所以我希望返回一个单列预测。但是,这将返回两列,并且这些列的总和为一。这些值似乎与模型实际预测的值不一致:

In [27]: modl.predict(X_test)
Out[27]: array([0, 0, 0, ..., 0, 0, 0])
In [28]: modl.predict_proba(X_test)
Out[28]: 
array([[ 0.6,  0.4],
       [ 0.7,  0.3],
       [ 1. ,  0. ],
       ..., 
       [ 1. ,  0. ],
       [ 0.9,  0.1],
       [ 0.8,  0.2]])

predict_proba输出数组中的列是分类器预测不同标签的概率。在您的案例中,您已经构建了一个二进制分类器,因此第一列modl.predict_proba(X_test)[:,0]是标签为0的概率,第二列modl.predict_proba(X_test)[:,1]是标签为1的概率。

相关内容

  • 没有找到相关文章

最新更新