通过h2o集合模型找到每个特征对特定预测的贡献

时间:2018-02-21 13:26:32

标签: decision-tree h2o ensemble-learning

我试图解释h2o GBM模型所做出的决定。根据想法:https://medium.com/applied-data-science/new-r-package-the-xgboost-explainer-51dd7d1aa211 我想计算每个特征在测试时做出某个决定的贡献。 是否有可能从每个节点获取每个单独的树以及log-odds? 在进行预测时,还需要按模型对每棵树进行路径遍历。

1 个答案:

答案 0 :(得分:0)

H2O没有等效的xgboostExplainer包。但是,有一种方法可以获得一些接近的东西。

1)如果你想知道单行/观察采取了什么决策路径,可以使用h2o.predict_leaf_node_assignment(model, frame)来获取带有叶节点分配的H2OFrame,这将生成如下所示的内容(显示在以下情况下构建的每个树的路径,您可以看到构建了5棵树):

enter image description here

2)您可以使用H2O MOJO来显示单个树木,您可以在构建GBM或XGBoost模型后下载它们,如下所示:

enter image description here

3)在即将发布的版本中,您将能够使用GBM获取每个叶节点的预测值(拉取请求为here

将所有这些步骤放在一起应该可以让您非常接近获得所需的值,这样您就可以添加它们以满足您的个性化影响。(对于python jupyter笔记本,其中包含有关如何生成叶节点分配和可视化的示例树外观here

相关问题