亲爱的费边,
我看到了你的代码,有一些错误。
首先,TreeBagger(函数/类)不接受作为参数“TreeArguments”。所以不可能创造一个单元阵列(代码的情况下),或一个结构和简单的通过Trebagger作为参数。
一种运行您的代码如下:
maxNumSplits = 3;%最大数量的决策分歧,正整数
minLeafSize = 3;%小叶子节点数的观察,正整数
minParentSize = 3;%最小数量的分支节点观察,正整数
numberPredictorsToSample = 3;%的随机特性对于每一个决定,默认= squareroot总数的特性
numTrees = 500;%标量值等于决策树的数量
方法=“回归”;%或“分类”
% % TreeBagger培训。
%是随机森林自numberPredictorsToSample更少
%比trainingData的输入量,用来训练射频。
%,否则,我们有一个简单的袋装的树。
%假设:
% - trainingData是一张桌子
% - y_label是一个字符串,输出的名字
射频= TreeBagger (numTrees trainingData y_label,…
“方法”、方法、…%你说是否回归或分类问题
“MaxNumSplits”maxNumSplits,…
“MinLeafSize”minLeafSize,…
“NumPredictorsToSample”,numberPredictorsToSample);
我遗漏了“MinParentSize”,因为一个错误发生了,即:
“错误使用TreeBagger / init(第1414行)
TreeBagger不接受“MinParentSize”和“SplitMin”输入参数。使用‘MinLeafSize’。”
我没有试图解决这个问题。也许,一个可能的解决办法是设置这个参数通过使用templateTree,并将其传递给TreeBagger,是这样的:
t = templateTree (“MinParentSize”、数量);
射频= TreeBagger (numTrees trainingData y_label,…
“方法”、方法、…%你说是否回归或分类问题
“MaxNumSplits”maxNumSplits,…
“MinLeafSize”minLeafSize,…
“NumPredictorsToSample”numberPredictorsToSample,…
“学习者”t);%通过创建templateTree对象