crossval

类:RegressionTree

交叉验证决策树

句法

cvmodel = crossval(模型)
cvmodel = crossval(型号,名称,值)

描述

cvmodel= crossval(模型从创建分区模型模型,拟合回归树。默认,crossval采用交叉验证在训练数据10倍以产生cvmodel

cvmodel= crossval(模型名称,值创建具有额外的选项的一个或多个指定的分区模型名称,值对参数。

输入参数

模型

回归模型,制作使用fitrtree

名称 - 值对参数

指定可选的用逗号分隔的对名称,值参数。名称是参数的名称和是对应的值。名称必须出现引号内。您可以按照任何顺序指定多个名称和值对参数名1,值1,...,NameN,值N

'CVPartition'

类对象cvpartition通过创建cvpartition功能。crossval数据分成与子集cvpartition

只能使用在同一时间这四个选项之一:'KFold''坚持''忽略', 要么'CVPartition'

默认:[]

'坚持'

躲起来的验证测试数据的指定分数,并使用该数据的其他部分进行训练。指定一个来自数字标01。您只能使用这四个选项一次一个用于创建交叉验证树:'KFold''坚持''忽略', 要么'CVPartition'

'KFold'

褶皱的数目在一个交叉验证树,正整数值大于1来使用。

只能使用在同一时间这四个选项之一:'KFold''坚持''忽略', 要么'CVPartition'

默认:10

'忽略'

调成'上'为留一交叉验证。

输出参数

cvmodel

类的分区模式RegressionPartitionedModel

例子

展开全部

加载carsmall数据集。考虑促进移位马力重量作为预测变量。

加载carsmallX = [加速位移马力重量];

使用整个数据集的增长回归树。

MDL = fitrtree(X,MPG);

MDLRegressionTree模型。

交叉验证使用回归树10倍交叉验证。

CVMdl = crossval(MDL);

CVMdlRegressionPartitionedModel交叉验证模型。crossval商店十训练有素,在紧凑回归树熟练财产CVMdl

显示紧凑回归树crossval使用所有的观测,除了那些在第一折训练。

CVMdl.Trained {1}
ANS = classreg.learning.regr.CompactRegressionTree PredictorNames:{X1 '×2' '×3' '×4'} ResponseName: 'Y' CategoricalPredictors:[] ResponseTransform: '无' 的属性,方法

估计泛化误差MDL通过计算10倍交叉验证的均方误差。

L = kfoldLoss(CVMdl)
L = 25.6450

提示

  • 评估的预测性能模型上使用“kfold”方法和属性交叉验证数据cvmodel, 如kfoldLoss

备择方案

您可以直接从数据创建,而不是创建一个决策树,然后交叉验证树交叉验证树。要做到这一点,包括这五个选项之一fitrtree'CrossVal''KFold''坚持''忽略', 要么'CVPartition'

也可以看看

|