Fab*_*ana 6 python classification machine-learning prediction scikit-learn
假设我创建了一个模型,我的目标变量是0,1或2。似乎如果我使用predict,答案是 0、1 或 2。但是如果我使用predict_proba,我会得到一行,每行有 3 个列,如下所示,例如
model = ... Classifier # It could be any classifier
m1 = model.predict(mytest)
m2= model.predict_proba(mytest)
# Now suppose m1[3] = [0.6, 0.2, 0.2]
Run Code Online (Sandbox Code Playgroud)
假设我同时使用 predict 和predict_proba. 如果在索引 3 中,我得到了上面的结果predict_proba,在 predict 结果的索引 3 中,我应该看到 0。是这种情况吗?我试图了解如何在同一模型上使用predict和使用两者predict_proba相互关联。
Gio*_*ous 25
predict()用于预测实际类别(在您的情况下为0、1或 之一2)。predict_proba()用于预测类别概率从您共享的示例输出中,
predict()将输出类别0,因为 的类别概率为00.6。[0.6, 0.2, 0.2]的输出简单predict_proba地表示类0、1和的类概率分别为、2和。0.60.20.2现在,正如文档提到的predict_proba,生成的数组是根据您一直使用的标签进行排序的:
所有类别的返回估计值按类别标签排序。
因此,在您的类标签为 的情况下[0, 1, 2], 的相应输出predict_proba将包含相应的概率。0.6是实例被分类为的概率,0是0.2实例被分类为1和 的概率2。
如需更全面的解释,请参阅TDS 上scikit-learn 中的 Predict() 和 Predict_proba() 之间的区别是什么。
| 归档时间: |
|
| 查看次数: |
4951 次 |
| 最近记录: |