可以提供两个预测作为输出的决策树?

时间:2019-10-22 13:56:01

标签: python scikit-learn classification prediction decision-tree

背景故事:我目前正在研究多标签(153个标签)的分类问题,有人要求我(看起来应该是)一个非常独特的输出功能。我的客户希望获得用于新观测值(标准)的预测值,以及“第二次猜测”作为备用度量。我以前从未听说过此消息,也没有找到有关通过SO或Google生成此类指标的任何信息。

如果我的模型对预测的信心低于某个百分比,则将手动检查预测以确保准确性,我的客户希望两个手头有两个预测,以便他们可以快速查看这些规格并查看它们是否匹配希望减少手动验证所需的时间。

请求:遗憾的是,我没有到目前为止已尝试过的任何代码,因为我什至不知道从哪里开始。我觉得某种“如果x不是x,那么”循环动作就会发生,但我只是不知道。

所需的输出:仅是我所需的输出文件的示例,如下所示:

Actual label | Predicted Label | confidence | second guess | confidence
      1               1             .85             2           .09
      2               2             .51             2           .34
      3               27            .22             3           .21

格式化输出是我自己可以处理的事情,但是最后两列是我目前无法生成的内容。如果有人只是将我指向某些文档或完成此示例的方向,那么我愿意进行研究并将其独自应用于我的特定用例。

谢谢:)

1 个答案:

答案 0 :(得分:0)

您要描述的内容看起来很像TOP-N度量,该度量会测量准确度,并且如果根据模型在N个更可能的输出中存在地面实况,则说明正确的输出。我相信您正在寻找的是这个https://scikit-learn.org/stable/modules/generated/sklearn.tree.DecisionTreeClassifier.html#sklearn.tree.DecisionTreeClassifier.predict_proba,它返回属于每个类别的测试集上每个样本的概率,您要做的就是排序并取前N个前2名