文档帮助中心
使用回归树预测响应
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可以是数字矩阵如果资源描述包含所有数字预测变量。为了治疗在数字预测资源描述在训练时,使用the识别分类谓词CategoricalPredictors的名称 - 值对参数fitrtree。如果资源描述包含异构预测变量(例如,数值和分类数据类型)和X是一个数字矩阵,那么预测抛出一个错误。
资源描述
CategoricalPredictors
预测
对于表:
预测不支持多列变量和除万博1manbetx字符向量的单元阵列的其他单元阵列。
如果你训练的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英里。
这个函数完全支持高数组。万博1manbetx您可以使用培训了无论是在内存或使用此功能高大的数据模型。
有关更多信息,请参见高大的数组(MATLAB)。
用法说明和限制:
您可以生成C / C ++两种代码预测和更新通过使用编码器配置器。或者,仅为。生成代码预测通过使用saveLearnerForCoder,loadLearnerForCoder和codegen。
更新
saveLearnerForCoder
loadLearnerForCoder
codegen
代码生成预测和更新-创建一个编码器配置使用learnerCoderConfigurer然后通过使用生成代码generateCode。然后,您可以更新生成的代码中的模型参数,而不必重新生成代码。
learnerCoderConfigurer
generateCode
代码生成预测-保存一个训练模型使用saveLearnerForCoder。定义一个入口点函数加载使用保存的模型loadLearnerForCoder并调用预测函数。然后使用codegen生成的入口点函数的代码。
还可以生成针对定点C / C ++代码预测。定点代码生成需要另外一个步骤,该步骤定义预测所需变量的定点数据类型。属性创建定点数据类型结构数据类型函数生成的generateLearnerDataTypeFcn,并使用该结构作为的输入参数loadLearnerForCoder在入口点函数。产生定点C / C ++代码需要MATLAB®编码器™和定点设计师™。
generateLearnerDataTypeFcn
的参数的注释预测。完全支持不包括在此表中的参数。万博1manbetx
对于模型对象的使用注意事项和限制,请参见代码生成的CompactRegressionTree目的。
对于一般的代码生成,X必须是单精度或双精度基质或含有表单要么双预测变量。
如果你想指定X作为一个表,那么你的模型必须使用一个表的训练,你必须确保你的预测入口点函数:
接受数组形式的数据
根据数据输入参数创建一个表,并指定表中的变量名
通过该表预测
此表的工作流程的一个例子,见生成代码,以表分类数字数据。有关在代码生成使用表的详细信息,请参阅表的代码生成(MATLAB编码器)和表限制代码生成(MATLAB编码器)。
在编码器配置程序工作流中,X必须是单要么双矩阵。
对于固定点代码生成,X必须是一个定点矩阵。
行,或观测的数量,X可以是可变的大小,但列的数X必须是固定的。
名称-值对参数中的名称必须是编译时常量。例如,要在生成的代码中允许用户定义修剪级别,需要包括{coder.Constant(子树),coder.typeof (0, (1, n), [0,1])}在-args的价值codegen,在那里ñ是马克斯(Mdl.PruneList)。
{coder.Constant(子树),coder.typeof (0, (1, n), [0,1])}
-args
ñ
该“子树”在编码器配置器工作流中不支持名称-值对参数。万博1manbetx
对于定点代码生成,则“子树”值必须是coder.Constant( '全部')或具有整数数据类型。
coder.Constant( '全部')
有关更多信息,请参见代码生成简介。
CompactRegressionTree|RegressionTree|紧凑的|fitrtree|损失
损失
您的系统上有此示例的修改版本。你想打开这个版本吗?
您单击对应于该MATLAB命令的链接:
通过在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。万博1manbetx
选择一个网站,在可用的地方获得翻译内容,并查看当地的活动和优惠。根据您的位置,我们建议您选择:。
您还可以选择从下面的列表中的网站:
选择最佳的网站性能的中国网站(在中国或英文)。其他MathWorks的国家网站都没有从您的位置访问进行了优化。
与当地办事处联系