文档帮助中心
使用回归树预测响应
X Yfit =预测(Mdl)
Yfit =预测(Mdl X、名称、值)
(Yfit、节点)=预测(___)
Yfit=预测(Mdl,X)返回表或矩阵中预测器数据的预测响应向量X,基于完整或紧凑回归树Mdl.
Yfit=预测(Mdl,X)
Yfit
Mdl
X
Yfit=预测(Mdl,X,名称,值)使用一个或多个指定的附加选项预测响应值名称,值对参数。例如,你可以指定去修剪Mdl在预测反应之前达到一个特定的水平。
Yfit=预测(Mdl,X,名称,值)
名称,值
[Yfit,节点) =预测(___)还使用前面语法中的任何输入参数,返回响应的预测节点数向量。
[Yfit,节点) =预测(___)
节点
全部展开
RegressionTree
CompactRegressionTree
训练过的分类树,指定为RegressionTree或CompactRegressionTree模型对象。也就是说,Mdl是否返回训练过的分类模型fitrtree或紧凑的.
fitrtree
紧凑的
要分类的预测器数据,指定为数字矩阵或表。
每一行的X对应一个观察值,每一列对应一个变量。
对于数值矩阵:
组成列的变量X必须和训练的预测变量有相同的顺序吗Mdl.
如果你训练Mdl使用表(例如,资源描述),然后X可以是一个数字矩阵,如果资源描述包含所有数值预测变量。处理数值预测资源描述作为分类训练,识别分类预测使用CategoricalPredictors的名称-值对参数fitrtree.如果资源描述包含异构预测变量(例如,数字和分类数据类型)和X是一个数值矩阵,那么预测抛出一个错误。
资源描述
CategoricalPredictors
预测
一个表:
预测除了字符向量的单元金宝app格数组外,不支持多列变量和单元格数组。
如果你训练Mdl使用表(例如,资源描述),然后所有预测变量X必须具有与那些训练过的相同的变量名和数据类型Mdl(存储在Mdl。PredictorNames).但是,的列顺序X不需要对应的列顺序资源描述.资源描述和X可以包含额外的变量(响应变量,观察权重等),但是预测忽略了它们。
Mdl。PredictorNames
如果你训练Mdl使用一个数字矩阵,然后预测器命名Mdl。PredictorNames和相应的预测变量名X肯定是一样的。要在训练期间指定预测器名称,请参见PredictorNames的名称-值对参数fitrtree.所有的预测变量X必须是数值向量。X可以包含额外的变量(响应变量,观察权重等),但是预测忽略了它们。
PredictorNames
数据类型:表格|双|单
表格
双
单
指定可选的逗号分隔的对名称,值参数。的名字参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家.
的名字
价值
Name1, Value1,…,的家
“子树”
“所有”
修剪级别,指定为逗号分隔的对,由“子树”一个非负整数的升序或向量“所有”.
如果指定一个向量,则所有元素必须至少为0在大多数马克斯(Mdl.PruneList).0表示完整的、未修剪的树马克斯(Mdl.PruneList)表示被完全修剪的树(即根节点)。
0
马克斯(Mdl.PruneList)
如果您指定“所有”,然后预测操作所有的子树(即,整个修剪序列)。这个规范等同于使用0:马克斯(Mdl.PruneList).
0:马克斯(Mdl.PruneList)
预测李子Mdl的每一层子树,然后估计相应的输出参数。的大小子树确定某些输出参数的大小。
子树
调用子树,属性PruneList和PruneAlpha的Mdl必须非空的。换句话说,就是成长Mdl通过设置“删除”,“上”,或修剪Mdl使用修剪.
PruneList
PruneAlpha
“删除”,“上”
修剪
例子:“子树”,“所有”
“子树”,“所有”
数据类型:单|双|字符|字符串
字符
字符串
预测的响应值,作为具有相同行数的数字列向量返回X.每一行的Yfit的对应行给出预测的响应X,基于Mdl.
预测的节点号,指定为数字向量。每个条目对应于中的预测叶节点Mdl对应的行X.
加载carsmall数据集。考虑位移,马力,重量作为反应的预测器英里/加仑.
carsmall
位移
马力
重量
英里/加仑
负载carsmallX =[排量马力重量];
使用整个数据集生长回归树。
Mdl = fitrtree (X, MPG);
预测一辆拥有200立方英寸排量、150马力、3000磅重量的汽车的MPG。
X0 = [200 150 3000];X0 MPG0 =预测(Mdl)
MPG0 = 21.9375
回归树预测汽车的效率为21.94英里/加仑。
这个函数完全支持高数组。金宝app使用这个函数,您可以使用在内存中或高数据上训练的模型。
有关更多信息,请参见高大的数组.
使用注意事项及限制:
您可以为两者生成C/ c++代码预测和更新通过使用编码器配置器。或者,只生成代码预测通过使用saveLearnerForCoder,loadLearnerForCoder,codegen.
更新
saveLearnerForCoder
loadLearnerForCoder
codegen
代码生成的预测和更新创建一个编码器配置器learnerCoderConfigurer然后通过使用generateCode.然后,您可以在生成的代码中更新模型参数,而不必重新生成代码。
learnerCoderConfigurer
generateCode
代码生成的预测通过使用保存一个训练过的模型saveLearnerForCoder.定义一个入口点函数,通过使用loadLearnerForCoder并调用预测函数。然后使用codegen(MATLAB编码器)为入口点函数生成代码。
您还可以生成单精度C/ c++代码预测.对于单精度代码生成,指定名称-值对参数“数据类型”、“单”作为附加的输入loadLearnerForCoder函数。
“数据类型”、“单”
您也可以生成固定的C/ c++代码预测.定点代码生成需要一个额外的步骤,定义预测所需变量的定点数据类型。属性创建定点数据类型结构数据类型的函数生成的generateLearnerDataTypeFcn,并将该结构用作的输入参数loadLearnerForCoder在入口点函数中。生成定点C/ c++代码需要MATLAB®编码器™和定点设计师™。
generateLearnerDataTypeFcn
这个表格包含关于的参数的注释预测.表中未包含的参数完全支持。金宝app
有关模型对象的使用说明和限制,请参见代码生成的CompactRegressionTree对象。
对于通用代码生成,X必须是一个单精度或双精度矩阵或一个包含单或双预测变量。
如果你想指定X作为一个表,那么你的模型必须使用一个表训练,你必须确保你的入口点函数的预测:
接受数据为数组
根据数据输入参数创建表,并指定表中的变量名
把桌子传递给预测
有关此表格工作流的示例,请参见生成代码对表中的数字数据进行分类.有关在代码生成中使用表的更多信息,请参见表的代码生成(MATLAB编码器)和代码生成的表限制(MATLAB编码器).
在编码器配置器工作流中,X必须是一个单或双矩阵。
对于定点代码生成,X一定是一个不动点矩阵。
中的行数或观察值X可以是一个可变的大小,但是X必须是固定的。
名称-值对参数中的名称必须是编译时常量。例如,要在生成的代码中允许用户定义的修剪级别,包括{coder.Constant(子树),coder.typeof (0, (1, n), [0,1])}在arg游戏的价值codegen(MATLAB编码器),在那里n是马克斯(Mdl.PruneList).
{coder.Constant(子树),coder.typeof (0, (1, n), [0,1])}
arg游戏
n
的“子树”在编码器配置程序工作流中不支持名称-值对参数。金宝app
对于定点代码生成,“子树”值必须是coder.Constant(所有的)或具有整数数据类型。
coder.Constant(所有的)
有关更多信息,请参见代码生成简介.
紧凑的|CompactRegressionTree|fitrtree|损失|RegressionTree
损失
在您的系统中存在这个示例的修改版本。你想打开这个版本吗?
你点击一个链接对应于这个MATLAB命令:
通过在MATLAB命令窗口中输入命令来运行命令。Web浏览器不支持MATLAB命令。金宝app
选择一个网站,在那里获得翻译的内容,并看到当地的活动和优惠。根据您的位置,我们建议您选择:.
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。
与当地办事处联系