1

我在 Matlab 中估计一个随机森林,并尝试在估计后获取有关树结构的信息。特别是,对于集合中的每棵树,我想弄清楚——通过树的哪条路径提供了最高/最低和最/最不准确的预测。- 这些路径具有哪些特征和阈值。

我发现很难访问 Matlab 结果来做到这一点。作为一个最小示例,请考虑帮助文件中的示例:

load carsmall
b = TreeBagger(50,[Weight, Cylinders],MPG,'oobvarimp','on', 'method', 'r');

现在,例如

FirstTree = b.Trees{1,1};

提供第一棵树的估计值。功能

FirstTreeNodeMeans = nodemean(FirstTree);
FirstTreeTerminalNodes = ~isbranch(FirstTree);

提供有关每个节点的平均预测以及哪些节点是终端节点的信息。我可以通过例如找到所有终端节点的最高(同样也是最低)预测

Highest = max(FirstTreeNodeMeans(FirstTreeTerminalNodes)) == FirstTreeNodeMeans;

我剩下的问题是:说,我发现节点 4 是我想要的。如何提取通向节点 4 的路径(包括拆分变量和截止值)?

我会感谢任何帮助,最好的,汤姆

4

0 回答 0