失利

分类错误

描述

大号=损失(TBLResponseVarName返回一个代表如何标分类数据TBL, 什么时候TBL.ResponseVarName包含真正的分类。

当计算的损失,失利标准化在类概率ÿ以用于培训类的概率,存储在财产

大号=损失(TBLÿ返回一个代表如何标分类数据TBL, 什么时候ÿ包含真正的分类。

大号=损失(Xÿ返回一个代表如何标分类数据X, 什么时候ÿ包含真正的分类。

大号=损失(___名称,值返回由一个或多个指定的使用附加选项损失名称,值自变量对,使用任何以前的语法。例如,您可以指定损失函数或观察权重。

[大号SENLeafbestlevel] =损耗(___还返回分类误差的标准误差的矢量(SE),叶数的矢量在修剪序列的树中的节点(NLeaf),以及如在定义的最佳修剪水平的TreeSize名称 - 值对(bestlevel)。

注意

失利回报SE和进一步输出只有当LossFun名称 - 值对是默认'classiferror'

输入参数

展开全部

训练的分类树,指定为ClassificationTree要么CompactClassificationTree模型对象。那是,是一个训练有素的分类模型由归国fitctree要么紧凑

样本数据,指定为表。每行TBL对应于一个观测,并且每一列对应于一个预测变量。(可选)TBL可以包含用于响应变量和权重观察附加列。TBL必须包含所有用于训练预测。多列变量和除字符向量的单元阵列的其他单元阵列是不允许的。

如果TBL包含用于列车响应变量,那么你就需要指定ResponseVarName要么ÿ

如果你训练使用包含在采样数据,则此方法的输入数据也必须是在表中。

数据类型:

数据进行分类,指定为数值矩阵。每行X代表一个观察,每一列代表一个预测值。X必须具有相同的列数作为用于训练数据X必须有相同数量的行作为元素的数量ÿ

数据类型:|

响应变量名,指定为变量的名称中的TBL。如果TBL包含用于列车响应变量,那么你就需要指定ResponseVarName

如果您指定ResponseVarName,那么你就必须这样做的特征向量或串标。例如,如果响应变量被存储为TBL.Response,然后将其指定为'响应'。否则,该软件将所有的列TBL, 包含TBL.ResponseVarName,作为预测。

响应变量必须是明确的,字符或字符串数​​组,逻辑或数字载体,或字符向量的单元阵列。如果响应变量是一个字符数组,则每个元素必须对应于所述阵列的一行。

数据类型:烧焦|

类标签,指定为分类,字符或字符串数​​组,逻辑或数字载体,或字符向量的单元阵列。ÿ必须是相同的类型作为分类用来训练和它的元件的数量必须等于的行数X

数据类型:明确的|烧焦||合乎逻辑|||细胞

名称 - 值对参数

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

损耗函数,指定为逗号分隔的一对组成的'LossFun'和一个内置的,亏损函数名或函数句柄。

  • 下表列出了可用的损失函数。利用其对应的字符向量或标量的字符串指定一个。

    描述
    'binodeviance' 二项式越轨
    'classiferror' 分类错误
    “指数” 指数
    '合页' 合页
    'Logit模型' 物流
    'mincost' 最小预期误判成本(对于那些后验概率分类分)
    “二次” 二次

    'mincost'适合于那些后验概率分类分数。分类树在默认情况下返回后验概率作为分类的分数(见预测)。

  • 使用功能句柄符号指定自己的函数。

    假设ñ是观察在数Xķ是不同的类的数量(numel(tree.ClassNames))。你的函数必须有这个签名

    lossvalue =<Ë米Class="replaceable">lossfun(C,S,W,成本)
    哪里:

    • 输出参数lossvalue是一个标量。

    • 你选择的函数名(<Ë米Class="replaceable">lossfun)。

    • C是一个ñ-通过-ķ与指示对应的观察属于哪个类别的行逻辑矩阵。列顺序对应于类顺序tree.ClassNames

      构造C通过设置C(P,Q)= 1如果观察p在类q,对于每一行。组行的所有其他元素p0

    • 小号是一个ñ-通过-ķ分类评分的数值矩阵。列顺序对应于类顺序tree.ClassNames小号是分类分数的矩阵,类似于的输出预测

    • w ^是一个ñ×1观察权重的数值向量。如果您通过w ^,软件标准化他们对总和1

    • 成本是<Ë米Class="varname">ķ-通过-ķ误判成本数字矩阵。例如,成本=酮(K) - 眼(K)指定的成本0正确分类,1对于错误分类。

    使用指定功能'LossFun',@<Ë米Class="replaceable">lossfun

有关损失功能的更多详细信息,请参阅分类损失

数据类型:烧焦||function_handle

观察权重,指定为逗号分隔的一对组成的“权重”和正值的数值向量或一个变量的名称中的TBL

如果您指定权重作为数字向量,则尺寸权重必须等于行中数X要么TBL

如果您指定权重作为变量的名称中的TBL,你必须这样做,作为一个特征向量或串标。例如,如果权重被存储为TBL.W,然后将其指定为'W'。否则,该软件将所有的列TBL, 包含TBL.W,作为预测。

失利归一化的权重,以便在每一个类和以该类的先验概率的观察权重。当您提供权重失利计算加权分类损失。

数据类型:||烧焦|

名称,值与修剪子树相关的参数:

修剪水平,指定为逗号分隔的一对组成的“子树”和非负整数的升序排列的载体或'所有'

如果指定一个矢量,那么将所有元件必须至少0在最MAX(tree.PruneList)0指示充分,未修剪的树MAX(tree.PruneList)表示完全修剪树(即,只是根节点)。

如果您指定'所有', 然后失利运行在所有子树(即,整个修剪序列)。本说明书是等效于使用0:最大(tree.PruneList)

失利梅干每个电平表示在子树,然后估计相应的输出参数。的大小子树确定的一些输出参数的大小。

要调用子树,属性PruneListPruneAlpha不能是空的。换句话说,成长通过设置“修剪”,“上”,或通过修剪运用修剪

例:“子树”,“全部”

数据类型:||烧焦|

树尺寸,指定为逗号分隔的一对组成的'的TreeSize'和以下值之一:

  • 'SE'-失利返回与损失最小的一个标准差之内的最高水平修剪(大号+SE,其中大号SE涉及在最小值子树)。

  • “最小值”-失利返回的元素子树具有最小损耗,通常的最小元素子树

输出参数

展开全部

分类损失时,返回作为矢量的长度子树。错误的含义取决于价值观权重LossFun

损失的标准误差,返回作为矢量的长度子树

在修剪子树的叶(终端节点)的数目,返回为矢量的长度子树

作为定义的最佳修剪水平的TreeSize名称 - 值对,返回一个标量,其价值取决于的TreeSize

  • 的TreeSize='SE'-失利返回与损失最小的一个标准差之内的最高水平修剪(大号+SE,其中大号SE涉及在最小值子树)。

  • 的TreeSize=“最小值”-失利返回的元素子树具有最小损耗,通常的最小元素子树

默认,bestlevel是修剪水平,让损失降到最低的一个标准差之内的损失。

例子

展开全部

计算为在resubstituted分类错误电离层数据集。

加载电离层树= fitctree(X,Y);L =损失(树,X,Y)
L = 0.0114

未修剪决策树倾向于过度拟合。到平衡模型的复杂性和外的样本演奏的一种方法是修剪树(或限制其生长),使得样本内和外的样品性能是令人满意的。

加载费舍尔的虹膜数据集。将数据划分为训练(50%)和验证(50%)集。

加载fisheririsN =尺寸(MEAS,1);RNG(1)%用于重现idxTrn =假(N,1);idxTrn(randsample(N,圆形(0.5 * N)))= TRUE;%培训组逻辑指数idxVal = idxTrn == FALSE;%验证组逻辑指数

生成,使用训练集的分类树。

MDL = fitctree(MEAS(idxTrn,:),物种(idxTrn));

查看分类树。

视图(MDL,'模式''图形');

分类树有四个修剪水平。Level 0是满的,未修剪的树(如图显示)。级别3仅仅是根节点(即,没有裂痕)。

检查不包括最高级别的每个子树(或修剪电平)的训练样本分类误差。

M = MAX(Mdl.PruneList) -  1;trnLoss = resubLoss(MDL,“子树”,0:米)
trnLoss =3×10.0267 0.0533 0.3067
  • 有关训练的观察2.7%的满,未修剪的树misclassifies。

  • 树修剪水平1 misclassifies有关训练观察的5.3%。

  • 树修剪到2级(即,残端)有关训练观测30.6%misclassifies。

检查每个级别不包括最高级别的验证样本分类错误。

valLoss =损失(MDL,MEAS(idxVal,:),物种(idxVal),“子树”,0:米)
valLoss =3×10.0369 0.0237 0.3067
  • 有关验证观察的3.7%的满,未修剪的树misclassifies。

  • 树修剪水平1 misclassifies有关验证意见的2.4%。

  • 树修剪到2级(即,残端)有关验证观测30.7%misclassifies。

为了平衡模型的复杂性和外的样品性能,可以考虑修剪MDL比1平。

pruneMdl =剪枝(MDL,'水平',1);视图(pruneMdl,'模式''图形'

更多关于

展开全部

扩展功能

也可以看看

|||