繁体   English   中英

如何解释分类树的 plot 中的预测?

[英]How to interpret the prediction in this plot of classification tree?

在此处输入图像描述 我已按照本教程进行操作,并且能够重现结果。 然而,最后一张图让我感到困惑。 我知道大部分时间是概率,但为什么会有负数 由于响应是 Survived,如何解释预测中的数字? 如何将这些数字转换为是和否?

https://www.h2o.ai/blog/finally-you-can-plot-h2o-decision-trees-in-r/

EIDT 11/19/2019:顺便说一句,我确实在 Cross Validated 上找到了类似的帖子。 答案不确定,因为它以问号结尾。 https://stats.stackexchange.com/questions/374569/may-somebody-help-with-interpretation-of-trees-from-h2o-gbm-see-as-photo-attach

我使用树中的逻辑过滤数据并查看子集的唯一预测。 我能够找到“是”和“否”预测的阈值。 我还更改了原始代码(从第 34 行开始),以便叶子显示数字的最终结果。 然而,这只是破解 plot 的一种方法。 如果有人能告诉我这些数字是如何得出的,那就太好了。

    if(class(left_node)[[1]] == 'H2OLeafNode')
      leftLabel = ifelse(left_node@prediction >= threshold, 'Yes', 'No')
  else
    leftLabel = left_node@split_feature

  if(class(right_node)[[1]] == 'H2OLeafNode')
    rightLabel = ifelse(right_node@prediction >= threshold, 'Yes', 'No')
  else
    rightLabel = right_node@split_feature

由于图片是 GBM plot,它并不像您想的那么简单,因为推理计算对从树的叶子中提取的值进行了一些数学运算。

实际代码在这里:

https://github.com/h2oai/h2o-3/blob/master/h2o-genmodel/src/main/java/hex/genmodel/algos/gbm/GbmMojoModel.java

看分数0 function。

我的建议是构建一个 1-tree DRF,然后编写一个简短的 java 程序并尝试在 java 调试器中单步执行它。

java 片段开始是如何编译和运行本文档中的 MOJO:

http://docs.h2o.ai/h2o/latest-stable/h2o-genmodel/javadoc/index.html

如果您这样做,您将能够逐步完成产生答案的确切步骤(如果您愿意,也适用于 GBM),此时没有什么是未知的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM