如何在 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

最新更新