繁体   English   中英

如何在Matlab上设置后期修剪的决策树的最大深度?

[英]How to set maximum depth of decision tree for post prunning on matlab?

如何构建具有所需深度的树? 例如,我想创建一个只有3个深度的决策树。

load ionosphere 
treeModel = fitctree(X,Y) 
view(treeModel) 
view(treeModel,'mode','graph')

这段代码创建了7个深度树。 我使用相同的数据集,但我想创建深度为3或2的树。 我该如何在matlab上进行操作?

您可以使用MaxDepth名称/值对参数控制最大深度。

阅读文档以获取更多详细信息。

treeModel = fitctree(X,Y,'MaxDepth',3);

建立Matlab环境时,请尝试尽可能地灵活。 另外,根据官方文档,请注意, MaxDepth选项仅在对高阵列使用fitctree时适用。

load ionosphere 
treeModel = CreateTreeModel(X,Y,3);
view(treeModel) 
view(treeModel,'mode','graph')

function tm = CreateTreeModel(x,y,depth)
    if (nargin < 3)
        tm = fitctree(x,y);
        return;
    end

    if (depth < 1)
        depth = 1;
    end

    tm = fitctree(x,y,'MaxDepth',depth);
end

暂无
暂无

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

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