主要内容

resubPredict

班级:RegressionTree

预测树木的再替代反应

语法

Yfit = resubPredict(树)
[Yfit、节点]= resubPredict(树)
[Yfit、节点]= resubPredict(树、名称、值)

描述

Yfit= ResubPredict(返回答案预测数据树。XYfit是关于根据数据fitrtree用于创建

Yfit节点] = ResubPredict(的节点号对于重新替换的数据。

Yfit节点] = ResubPredict(名称,值带有一个或多个指定的附加选项的预测名称,值对论点。

输入参数

全部展开

使用的回归树fitrtree

名称-值对的观点

指定可选的逗号分隔的对名称,值论点。的名字参数名和价值是相应的价值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数name1,value1,...,namen,valuen

修剪级别,指定为逗号分隔的对,由'子树'一个非负整数的升序或向量“所有”

如果指定向量,则所有元素必须至少0在大多数马克斯(tree.PruneList)0表示完整的、未修剪的树马克斯(tree.PruneList)表示被完全修剪的树(即根节点)。

如果您指定“所有”,然后resubPredict操作所有的子树(即,整个修剪序列)。这个规范等同于使用0:max(tree.prunelist)

resubPredict牧师的每一层子树,然后估计相应的输出参数。的大小子树确定某些输出参数的大小。

调用子树,属性PruneListPrunealpha.必须是不懈的。换句话说,成长通过设置“删除”,“上”,或修剪使用修剪

例子:“子树”,“所有”

数据类型:||char|字符串

输出参数

Yfit

响应预测训练数据。

如果子树名称值参数是标量或缺失,标签数据类型是否与培训响应数据相同树。Y

如果子树包含>1条目,标签列,每个列表示对应子树的预测。

节点

节点的数量,发送每个数据行。

如果子树名称值参数是标量或缺失,节点是一个数字列向量n行,相同的行数为树。X

如果子树包含>1条目,节点是一个n-经过-矩阵。每个列表示相应子树的节点预测。

例子

全部展开

加载Carsmall.数据集。考虑位移马力, 和重量作为回应的预测因素英里/加仑

负载Carsmall.x = [位移马力重量];

使用所有的观察结果生长一棵回归树。

mdl = fitrtree(x,mpg);

计算重新替换MSE。

Yfit = resubPredict (Mdl);意思是((Yfit - Mdl.Y) ^ 2)。
ANS = 4.8952.

您可以使用相同的结果resubLoss

Resubloss(MDL)
ANS = 4.8952.

加载Carsmall.数据集。考虑重量作为反应的预测器英里/加仑

负载Carsmall.IDXNAN = ISNAN(MPG +重量);x =重量(〜idxnan);y = mpg(〜idxnan);n = numel(x);

使用所有的观察结果生长一棵回归树。

Mdl = fitrtree (X, Y);

计算子树在多个修剪层次上的再替换拟合值。

m = max (Mdl.PruneList);pruneLevels = 1:4: m;百分比修剪水平要考虑z = numel(pruneelevels);Yfit = ResubPredict(MDL,“子树”,prunelevels);

Yfit是一个n-经过-z拟合值矩阵,其中行对应观测值,列对应子树。

绘制几列YfitYX

图;sortDat = sortrows([X Y Yfit],1);%根据X排序所有数据情节(repmat (sortDat(: 1), 1,尺寸(Yfit, 2) + 1), sortDat(:, 2:结束)...%为效率向量化列弗= cellstr (num2str ((pruneLevels) ',“水平% d MPG”));传奇([“观察到的MPG”;列弗])标题“样本内拟合响应”XLabel.的体重(磅);ylabel.“英里”;h = findobj(gcf);设置(h(4:结束),“线宽”3,3)加宽所有线条

图中包含一个坐标轴。标题为“样本内拟合响应”的轴包含5个线型对象。这些对象代表观察到的MPG, 1级MPG, 5级MPG, 9级MPG, 13级MPG。

的值Yfit因为较低的修剪水平往往比较高的修剪水平更接近数据。较高的修剪水平往往是平的大X间隔。

另请参阅

||