主要内容

预测

预测使用分类树标签

    描述

    例子

    标签=预测(Mdl,X)返回一个矢量预测类标签的预测数据表或矩阵X基于训练,全部或紧凑的分类树Mdl

    例子

    标签=预测(Mdl,X“子树”,子树)李子Mdl前一个特定水平预测标签。

    例子

    (标签,分数,节点,cnum)=预测(___)使用任何输入参数组合在前面的语法和另外的回报:

    • 一个矩阵的分类评分(分数)显示一个标签的可能性来自于一个特定的类。分类树,分数是后验概率。为每一个观察X,预测类标签对应于最低预期的误分类代价在所有类。

    • 一个向量分类预测节点数(节点)。

    • 一个向量的预测分类类数(cnum)。

    例子

    全部折叠

    检查预测几行数据集的训练。

    加载费雪的虹膜数据集。

    负载fisheriris

    分区数据训练(50%)和验证(50%)。

    1)n =大小(量;rng (1)%的再现性idxTrn = false (n, 1);idxTrn (randsample (n,圆(0.5 * n))) = true;idxVal = idxTrn = = false;

    使用训练集的分类树生长。

    Mdl = fitctree(量(idxTrn:),物种(idxTrn));

    预测标签验证数据,并显示一些预测标签。数的数量分类错误的观察。

    标签=预测(Mdl量(idxVal:));标签(randsample(元素个数(标签),5))
    ans =5 x1细胞{' setosa} {‘setosa} {‘setosa} {‘virginica}{“癣”}
    numMisclass =总和(~ strcmp(标签,物种(idxVal)))
    numMisclass = 3

    软件分类三个样本外观察。

    加载费雪的虹膜数据集。

    负载fisheriris

    分区数据训练(50%)和验证(50%)。

    1)n =大小(量;rng (1)%的再现性idxTrn = false (n, 1);idxTrn (randsample (n,圆(0.5 * n))) = true;idxVal = idxTrn = = false;

    使用训练集的分类树,然后把它。

    Mdl = fitctree(量(idxTrn:),物种(idxTrn));视图(Mdl,“模式”,“图”)

    图分类树查看器包含一个坐标轴对象和其他对象类型uimenu uicontrol。坐标轴对象包含18行类型的对象,文本。一个或多个行显示的值只使用标记

    由此产生的树有四个水平。

    估计后验概率的测试集使用子树修剪水平1和3。显示几个后验概率。

    [~,后]=预测(Mdl量(idxVal:)“子树”3 [1]);Mdl.ClassNames
    ans =3 x1细胞{' setosa}{“癣”}{' virginica '}
    后(randsample(大小(后,1),5),:,:)
    ans = ans (:: 1) = 1.0000 0 0 0 0 0 0 0 0 1.0000 1.0000 1.0000 0.8571 - 0.1429 ans (:,: 2) = 0.3733 0.3200 0.3067 0.3733 0.3200 0.3067 0.3733 0.3200 0.3067 0.3733 0.3200 0.3067 0.3733 0.3200 0.3067

    的元素类的后验概率:

    • 行对应于观测的验证集。

    • 列对应中列出的类Mdl.ClassNames

    • 页面对应的子树。

    1级的子树修剪是肯定的预测比子树修剪三级(根节点)。

    输入参数

    全部折叠

    训练有素的分类树,指定为一个ClassificationTreeCompactClassificationTree模型对象。也就是说,Mdl返回的是一个训练分类模型fitctree紧凑的

    预测数据分类,指定为一个数字矩阵或表。

    每一行的X对应于一个观察,每一列对应一个变量。

    • 一个数字矩阵:

      • 变量的列X必须有相同的订单预测变量,训练吗Mdl

      • 如果你训练Mdl使用一个表(例如,资源描述),然后X可以是一个数字矩阵如果资源描述包含所有数值预测变量。将数值预测资源描述分类在训练、识别分类预测使用CategoricalPredictors名称-值参数fitctree。如果资源描述包含了异构预测变量(例如,数字和分类数据类型)X是一个数字矩阵,然后呢预测抛出一个错误。

    • 一个表:

      • 预测不支持多列变量或细金宝app胞数组以外的细胞阵列的特征向量。

      • 如果你训练Mdl使用一个表(例如,资源描述),那么所有的预测变量X必须有相同的变量名和数据类型的培训Mdl(存储在Mdl.PredictorNames)。然而,列的顺序X不需要对应的列顺序资源描述资源描述X可以包含额外的变量(响应变量,观察体重、等等),但预测忽略了它们。

      • 如果你训练Mdl使用一个数字矩阵,然后预测名称Mdl.PredictorNames和相应的预测变量名称X必须相同。指定预测名称在训练,看到PredictorNames名称-值参数fitctree。所有的预测变量X必须是数值向量。X可以包含额外的变量(响应变量,观察体重、等等),但预测忽略了它们。

    数据类型:||

    修剪水平,指定为一个向量的非负整数按升序或“所有”

    如果您指定一个矢量,然后所有的元素都必须至少0在大多数马克斯(Mdl.PruneList)0显示完整的,unpruned树马克斯(Mdl.PruneList)表示完全修剪树(根节点)。

    如果您指定“所有”,然后预测运行在所有子树(即整个修剪序列)。这相当于使用规范0:马克斯(Mdl.PruneList)

    预测李子Mdl每个级别表示子树,然后估计相应的输出参数。的大小子树确定一些输出参数的大小。

    调用子树,属性PruneListPruneAlphaMdl必须非空的。换句话说,成长Mdl通过设置“删除”、“”,或者通过修剪Mdl使用修剪

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

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

    输出参数

    全部折叠

    预测类标签,作为一个向量或数组返回。每个条目的标签对应的类以最小的预期成本相应的行X

    假设子树是一个数值向量包含吗T元素(“所有”,请参阅子树),XN行。

    • 如果响应数据类型字符和:

      • T= 1,然后标签是一个字符矩阵包含吗N行。每行包含预测的标签产生的子树子树

      • T> 1,那么标签是一个N——- - - - - -T单元阵列。

    • 否则,标签是一个N——- - - - - -T数组具有相同的数据类型作为响应。(软件对字符串数组作为细胞阵列特征向量)。

    后两个情况下,列j标签包含预测的向量标签产生的子树子树(j)

    后验概率,返回的数值矩阵的大小N——- - - - - -K,在那里N观察(行)的数量吗X,K类的数量(在吗Mdl.ClassNames)。评分(i, j)后验概率这一行吗X的类j

    如果子树T元素,XN行,然后分数是一个N——- - - - - -K——- - - - - -T数组,并节点cnumN——- - - - - -T矩阵。

    节点编号为预测类,作为一个数值向量返回。每个条目对应于预测节点Mdl相应的行X

    类数字对应于预测标签,作为一个数字返回向量。每个条目的cnum对应于一个预测类数量相应的行X

    更多关于

    全部折叠

    预测类标签

    预测将通过最小化预期的误分类代价:

    y ^ = 参数 最小值 y = 1 , , K j = 1 K P ^ ( j | x ) C ( y | j ) ,

    地点:

    • y ^ 是预测分类。

    • K类的数量。

    • P ^ ( j | x ) 是类的后验概率j为观察x

    • C ( y | j ) 分类的成本是一个观察是吗y当它真正的类j

    分数(树)

    对于树木,分数分类的一个叶节点的后验概率分类节点。的后验概率分类节点训练序列的数量,导致节点的分类,除以训练序列的数量,导致该节点。

    例如,看到的后验概率定义分类树

    真正的误分类代价

    真正的误分类代价的成本分类是一个观察到一个不正确的类。

    您可以设置每类通过使用真正的误分类代价成本名称-值参数当您创建分类器。成本(i, j)分类的成本是一个观察到班呢j当它真正的类。默认情况下,成本(i, j) = 1如果我~ = j,成本(i, j) = 0如果我=我。换句话说,是成本0正确的分类和1不正确的分类。

    预期成本

    每个观测是一个预期的错误分类成本分类观察到每个类的平均成本。

    假设你有脑袋观察你想要与训练的分类器进行分类,和你K类。你把观测到一个矩阵X有一个观察每一行。

    预期成本矩阵CE有大小脑袋——- - - - - -K。每一行的CE包含预期的(平均)的观察到每个分类的成本K类。CE (n,k)

    = 1 K P ^ ( | X ( n ) ) C ( k | ) ,

    地点:

    • K类的数量。

    • P ^ ( | X ( n ) ) 是类的后验概率为观察X(n)。

    • C ( k | ) 是真正的错误分类的成本分类的观察k当它真正的类

    预测的协会

    预测的协会是一个值,表明决策规则之间的相似性分割观测。在所有可能的分裂,而决定最优分割(发现树的种植),最好的代理决定分手产量最大的预测指标。第二代孕将拥有第二大的预测指标。

    假设xjxk预测变量jk分别为,jk。在节点t预测的协会之间的最优分割xj<u和代理xk<v

    λ j k = 最小值 ( P l , P R ) ( 1 P l j l k P R j R k ) 最小值 ( P l , P R )

    • Pl节点观测的比例t,这样xj<u。下标l代表的左子节点t

    • PR节点观测的比例t,这样xju。下标R代表的右子节点t

    • P l j l k 观察节点的比例吗t,这样xj<uxk<v

    • P R j R k 观察节点的比例吗t,这样xjuxkv

    • 观察缺失值xjxk不会导致比例计算。

    λjk是一个值(-∞,1]。如果λjk> 0,然后xk<v是一个有价值的代理分裂xj<u

    算法

    预测遵循的分支生成预测Mdl直到它到达一个叶子节点或缺失值。如果预测到达一个叶子节点,则返回该节点的分类。

    如果预测到达一个节点与一个缺失值预测,其行为取决于的设置代理名称-值参数时fitctree构造Mdl

    • 代理=“关闭”(默认)预测返回标签的训练样本数量达到最大的节点。

    • 代理=“上”- - - - - -预测使用最好的代理分节点。如果所有的代理变量与积极的分裂预测的协会人失踪,预测返回标签的训练样本数量达到最大的节点。一个定义,请参阅预测的协会

    选择功能

    金宝app仿真软件块

    分类树模型的集成预测模型金宝app®,你可以使用ClassificationTree预测块的统计和机器学习的图书馆或MATLAB工具箱™®功能块的预测函数。有关示例,请参见预测类标签使用ClassificationTree预测块预测类标签使用MATLAB函数块

    当决定使用哪种方法,考虑以下几点:

    • 如果你使用统计和机器学习工具库,您可以使用定点的工具(定点设计师)一个浮点模型转换为定点。

    • 金宝app支持适应可变数组必须启用的MATLAB函数块预测函数。

    • 如果使用MATLAB功能块,您可以使用MATLAB函数之前或之后预处理或后处理预测在同一MATLAB功能块。

    扩展功能

    版本历史

    介绍了R2011a