超类:据/b>CompactClassificationTree.据/code>
用于多类分类的二叉决策树据/p>
一种据code class="literal">ClassificationTree据/code>对象表示具有用于分类的二进制拆分的决策树。此类的一个对象可以使用该类的响应来预测新数据的响应据a href="//www.tatmou.com/help/stats/compactclassificationtree.predict.html">预测据/code>方法。该对象包含用于培训的数据,因此它也可以计算重新询问预测。据/p>
创建一个据code class="literal">ClassificationTree据/code>对象的使用据a href="//www.tatmou.com/help/stats/fitctree.html">
数字预测器的Bin边缘,指定为单元数组据em class="varname">P.据/em>数值向量,据em class="varname">P.据/em>是预测器的数量。每个矢量包括用于数字预测器的箱边缘。用于分类预测器的单元阵列中的元素是空的,因为软件没有箱分类预测器。据/p> 只有在指定的情况下,软件箱体才能指定数字预测器据code class="literal">“NumBins”据/code>名称 - 值对参数作为正整数标量培训与树学习者的模型。这据code class="argument">毕业生据/code>房产是空的据code class="literal">“NumBins”据/code>值为空(默认值)。据/p> 您可以重现Binned Predictor数据据code class="literal">Xbinned.据/code>通过使用据code class="argument">毕业生据/code>训练模型的性质据code class="literal">MDL.据/code>.据/p>
分类预测指标,指定为一个正整数向量。据code class="literal">分类预测器据/code>包含与包含分类预测器的预测器数据列对应的索引值。如果没有任何预测器是绝对的,则此属性为空(据code class="literal">[]据/code>)。据/p>
一个据em class="varname">N据/em>- 2个单元格阵列,其中据em class="varname">N据/em>是分类分裂的数量据code class="argument">树据/code>.在每一行据code class="literal">CategoricalSplits据/code>为分类拆分提供左和右值。对于具有分类拆分的每个分支节点据code class="literal">j据/code>基于分类预测变量据code class="literal">Z.据/code>,如果是,则选择左子子据code class="literal">Z.据/code>是在据code class="literal">CategoricalSplits (j, 1)据/code>选择正确的子结点,如果据code class="literal">Z.据/code>是在据code class="literal">CategoricalSplits (j, 2)据/code>.拆分与树的节点相同。通过选择找到这些分割的节点据code class="literal">'分类'据/code>从上到下切割据code class="literal">CutType据/code>财产。据/p>
一个据em class="varname">N据/em>-By-2数组,包含每个节点的子节点的数字据code class="argument">树据/code>, 在哪里据em class="varname">N据/em>为节点数。叶节点有子节点据code class="literal">0.据/code>.据/p>
一个据em class="varname">N据/em>-经过-据em class="varname">K.据/em>节点的类数组计数据code class="argument">树据/code>, 在哪里据em class="varname">N据/em>是节点数量和据em class="varname">K.据/em>为类数。对于任意节点数据code class="literal">一世据/code>,班级计数据code class="literal">classcount(我,:)据/code>来自满足节点条件的每个类,是从每个类的观测值(来自用于拟合树的数据)据code class="literal">一世据/code>.据/p>
元素列表据code class="argument">y据/code>删除重复的。据code class="literal">Classnames.据/code>可以是分类阵列,字符向量,字符阵列,逻辑向量或数字矢量的小区数组。据code class="literal">Classnames.据/code>是否与参数中的数据具有相同的数据类型据code class="argument">y据/code>.据span>(该软件将字符串数组视为字符向量的单元格阵列。)据/span>
一个据em class="varname">N据/em>-经过-据em class="varname">K.据/em>节点的类概率数组据code class="argument">树据/code>, 在哪里据em class="varname">N据/em>是节点数量和据em class="varname">K.据/em>为类数。对于任意节点数据code class="literal">一世据/code>,类概率据code class="literal">ClassProbability(我,:)据/code>是满足节点条件的点的每个类的估计概率据code class="literal">一世据/code>.据/p>
方阵,据code class="literal">成本(i,j)据/code>将一个点分类的成本是多少据code class="literal">j据/code>如果它的真实课程是据code class="literal">一世据/code>(行对应于真实类,列对应于预测类)。行和列的顺序据code class="literal">成本据/code>对应于类的顺序据code class="argument">Classnames.据/code>.行数和列的数量据code class="literal">成本据/code>是响应中唯一类的数量。此属性是只读的。据/p>
一个据em class="varname">N据/em>- 在分支机构中使用的类别的2个单元格阵列据code class="argument">树据/code>, 在哪里据em class="varname">N据/em>为节点数。对于每个分支节点据code class="literal">一世据/code>基于分类预测变量据code class="literal">X据/code>,如果是,则选择左子子据code class="literal">X据/code>在哪些类别中据code class="literal">CutCategories{1},我据/code>如果如果是,则选择合适的孩子据code class="literal">X据/code>是其中列出的据code class="literal">Cutcategories {I,2}据/code>.这两列的据code class="literal">CutCategories据/code>对于基于连续预测器的分支节点和叶节点为空。据/p>
一个据em class="varname">N据/em>-Element矢量的矢量作为切割点据code class="argument">树据/code>, 在哪里据em class="varname">N据/em>为节点数。对于每个分支节点据code class="literal">一世据/code>基于连续的预测变量据code class="literal">X据/code>,如果是,则选择左子子据code class="literal">x
一个据em class="varname">N据/em>-Element Cell阵列,指示每个节点处的切口类型据code class="argument">树据/code>, 在哪里据em class="varname">N据/em>为节点数。对于每个节点据code class="literal">一世据/code>那据code class="literal">cuttype {i}据/code>是:据/p>
一个据em class="varname">N据/em>- 用于在每个节点中用于分支的变量的名称的单元格数组据code class="argument">树据/code>, 在哪里据em class="varname">N据/em>为节点数。这些变量有时被称为据a class="indexterm" name="d122e168033">减少变量据/em>.叶节点,据code class="literal">Cutpredictor.据/code>包含一个空字符向量。据/p>
一个据em class="varname">N据/em>- 用于在每个节点中用于分支的变量的数字索引数组据code class="argument">树据/code>, 在哪里据em class="varname">N据/em>为节点数。有关更多信息,请参阅据a href="//www.tatmou.com/help/stats/classificationtree-class.html" class="intrnllnk">
扩展的预测器名称,存储为字符向量的单元格数组。据/p> 如果模型使用对分类变量的编码,那么据code class="literal">ExpandedPredictorNames.据/code>包括描述扩展变量的名称。否则,据code class="literal">ExpandedPredictorNames.据/code>是相同的据code class="literal">PredictorNames据/code>.据/p>
超参数的交叉验证优化描述,存储为据a href="//www.tatmou.com/help/stats/bayesianoptimization.html">
一个据em class="varname">N据/em>元素逻辑向量据code class="literal">真的据/code>对于每个分支节点和据code class="literal">错误的据/code>的每个叶节点据code class="argument">树据/code>.据/p>
训练参数据code class="argument">树据/code>.要显示所有参数值,请输入据code class="literal">树。modelParameters据/code>.要访问特定参数,请使用点表示法。据/p>
训练数据中的观测数,数值标量。据code class="literal">numobservations.据/code>可以小于输入数据的行数据code class="argument">X据/code>当存在缺失的值时据code class="argument">X据/code>或响应据code class="argument">y据/code>.据/p>
一个据em class="varname">N据/em>-element cell array,每个节点中最可能类的名称据code class="argument">树据/code>, 在哪里据em class="varname">N据/em>是树中的节点数量。此阵列的每个元素都是等于类名之一的字符向量据code class="argument">Classnames.据/code>.据/p>
一个据em class="varname">N据/em>中节点误差的元素向量据code class="argument">树据/code>, 在哪里据em class="varname">N据/em>为节点数。据code class="literal">NodeError(我)据/code>是节点的错误分类概率据code class="literal">一世据/code>.据/p>
一个据em class="varname">N据/em>- 节点概率的单个矢量据code class="argument">树据/code>, 在哪里据em class="varname">N据/em>为节点数。节点的概率被计算为来自满足节点条件的原始数据的观测的比例。针对分配给每个类的任何先前概率调整此比例。据/p>
一个据em class="varname">N据/em>-element vector的树是树中的节点的风险,其中据em class="varname">N据/em>为节点数。每个节点的风险是由节点概率加权的该节点的杂质(GINI指数或偏差)的量度。如果树的增长,则每个节点的风险为零。据/p>
一个据em class="varname">N据/em>中的节点大小的元素向量据code class="argument">树据/code>, 在哪里据em class="varname">N据/em>为节点数。节点的大小被定义为来自用于创建满足节点条件的树的数据的观察次数。据/p>
节点的数量据code class="argument">树据/code>.据/p>
一个据em class="varname">N据/em>-元素向量,其中包含每个节点的父节点数据code class="argument">树据/code>, 在哪里据em class="varname">N据/em>为节点数。根节点的父节点是据code class="literal">0.据/code>.据/p>
包含预测器名称的字符向量的单元格数组,按它们出现的顺序排列据code class="literal">X据/code>.据/p>
每个班级的先前概率的数字矢量。元素的顺序据code class="literal">之前据/code>对应于类的顺序据code class="argument">Classnames.据/code>.元素的数量据code class="literal">之前据/code>是响应中唯一类的数量。此属性是只读的。据/p>
数值矢量与每个修剪水平的一个元素。如果修剪级别范围为0到据em class="varname">m据/em>, 然后据code class="literal">Prunealpha.据/code>有据em class="varname">m据/em>+ 1个元素按升序排序。据code class="literal">Prunealpha(1)据/code>是修剪级别0(不修剪),据code class="literal">Prunealpha(2)据/code>用于修剪级别1,以此类推。据/p>
一个据em class="varname">N据/em>的每个节点中具有修剪级别的元素数值向量据code class="argument">树据/code>, 在哪里据em class="varname">N据/em>为节点数。修剪水平范围为0(无修剪)据em class="varname">m据/em>, 在哪里据em class="varname">m据/em>是最深叶和根节点之间的距离。据/p>
一个字符向量,指定响应变量的名称(据code class="argument">y据/code>)。据/p>
一个据em class="varname">N据/em>-element逻辑矢量,指示原始预测器数据的哪一行(据code class="argument">X据/code>)用于装配。如果软件使用的所有行据code class="literal">X据/code>, 然后据code class="literal">流浪据/code>是一个空数组(据code class="literal">[]据/code>)。据/p>
用于转换预测分类评分的功能手柄,或表示内置变换功能的字符向量。据/p> 例如,要将分数转换函数更改为:据em class="replaceable"> 对于可用功能(见据a href="//www.tatmou.com/help/stats/fitctree.html"> 您可以为可用函数或您自己定义的函数设置函数句柄据/p>
一个据em class="varname">N据/em>- 用于代理分裂的类别的单元格阵列据code class="argument">树据/code>, 在哪里据em class="varname">N据/em>节点数在吗据code class="argument">树据/code>.对于每个节点据code class="literal">K.据/code>那据code class="literal">SurrogateCutCategories {k}据/code>是单元格数组。的长度据code class="literal">SurrogateCutCategories {k}据/code>等于在该节点上找到的代理预测器的数量。每个元素的据code class="literal">SurrogateCutCategories {k}据/code>是连续代理预测器的空字符向量,或者是一个双元素单元数组,其中包含分类代理预测器的类别。这种双元素单元阵列的第一个元素列出了由此代理拆分分配给左子子的类别,以及该两个元素单元格阵列的第二个元素通过该代理拆分分配给右子的类别。每个节点处的代理分割变量的顺序与变量顺序匹配据code class="literal">surrogatecutprepictor.据/code>.不会出现此节点处的最佳分割变量。对于非支链(叶)节点,据code class="literal">surrogatecutcategories.据/code>包含一个空单元格。据/p>
一个据em class="varname">N据/em>- 用于代理分割的数字切割分配的元素阵列据code class="argument">树据/code>, 在哪里据em class="varname">N据/em>节点数在吗据code class="argument">树据/code>.对于每个节点据code class="literal">K.据/code>那据code class="literal">SurrogateCutFlip {k}据/code>是一个数字向量。的长度据code class="literal">SurrogateCutFlip {k}据/code>等于在该节点上找到的代理预测器的数量。每个元素的据code class="literal">SurrogateCutFlip {k}据/code>对于分类代理预测器为零,对于连续代理预测器为数字切割赋值。数字切割赋值可以是-1或+1。对于每个替代品分裂,用数字剪切据em class="varname">C据/em>基于连续的预测变量据em class="varname">Z.据/em>,如果是,则选择左子子据span class="inlineequation">Z.据/em>据据em class="varname">C据/em>和此代理拆分的切割分配是+1,或者如果据span class="inlineequation">Z.据/em>≥据em class="varname">C据/em>而这个替代拆分的切割分配是-1。同样,如果选择合适的孩子据span class="inlineequation">Z.据/em>≥据em class="varname">C据/em>和此代理拆分的切割分配是+1,或者如果据span class="inlineequation">Z.据/em>据据em class="varname">C据/em>而这个替代拆分的切割分配是-1。每个节点处的代理分割变量的顺序与变量顺序匹配据code class="literal">surrogatecutprepictor.据/code>.不会出现此节点处的最佳分割变量。对于非支链(叶)节点,据code class="literal">SurrogateCutFlip据/code>包含一个空数组。据/p>
一个据em class="varname">N据/em>用于代理的数值的单元格数组据code class="argument">树据/code>, 在哪里据em class="varname">N据/em>节点数在吗据code class="argument">树据/code>.对于每个节点据code class="literal">K.据/code>那据code class="literal">SurrogateCutPoint {k}据/code>是一个数字向量。的长度据code class="literal">SurrogateCutPoint {k}据/code>等于在该节点上找到的代理预测器的数量。每个元素的据code class="literal">SurrogateCutPoint {k}据/code>或者是据code class="literal">南据/code>对于分类代理预测器,或用于连续代理预测器的数字切割。对于每个替代品分裂,用数字剪切据em class="varname">C据/em>基于连续的预测变量据em class="varname">Z.据/em>,如果是,则选择左子子据span class="inlineequation">Z.据/em>据据em class="varname">C据/em>和据code class="literal">SurrogateCutFlip据/code>对于这个替代品拆分是+1,或者如果据span class="inlineequation">Z.据/em>≥据em class="varname">C据/em>和据code class="literal">SurrogateCutFlip据/code>对于这个替代斯普利特是-1。同样,如果选择合适的孩子据span class="inlineequation">Z.据/em>≥据em class="varname">C据/em>和据code class="literal">SurrogateCutFlip据/code>对于这个替代品拆分是+1,或者如果据span class="inlineequation">Z.据/em>据据em class="varname">C据/em>和据code class="literal">SurrogateCutFlip据/code>对于这个替代斯普利特是-1。每个节点处的替代分类变量的顺序与返回的变量顺序匹配据code class="literal">surrogatecutprepictor.据/code>.不会出现此节点处的最佳分割变量。对于非支链(叶)节点,据code class="literal">SurrogateCutPoint据/code>包含一个空单元格。据/p>
一个据em class="varname">N据/em>-element小区阵列,指示每个节点处的代理分裂类型据code class="argument">树据/code>, 在哪里据em class="varname">N据/em>节点数在吗据code class="argument">树据/code>.对于每个节点据code class="literal">K.据/code>那据code class="literal">surrogatecuttype {k}据/code>是一个单元数组,具有此节点的代理分割变量的类型。通过以降序的最佳预测器的相关性的预测度量来排序变量,并且仅包括具有阳性预测度量的变量。每个节点处的代理分割变量的顺序与变量顺序匹配据code class="literal">surrogatecutprepictor.据/code>.不会出现此节点处的最佳分割变量。对于非支链(叶)节点,据code class="literal">surrogatecuttype.据/code>包含一个空单元格。代理分割类型可以是以下两种据code class="literal">'连续'据/code>如果剪切在表单中定义据code class="literal">Z.据/code>据据code class="literal">V.据/code>为一个变量据code class="literal">Z.据/code>和切割点据code class="literal">V.据/code>或据code class="literal">'分类'据/code>如果削减是由是否据code class="literal">Z.据/code>在一组类别中取得一个值。据/p>
一个据em class="varname">N据/em>中每个节点中用于代理分割的变量名的单元格数组据code class="argument">树据/code>, 在哪里据em class="varname">N据/em>节点数在吗据code class="argument">树据/code>.每个元素的据code class="literal">surrogatecutprepictor.据/code>是一个单元数组,具有此节点的代理分割变量的名称。通过以降序的最佳预测器的相关性的预测度量来排序变量,并且仅包括具有阳性预测度量的变量。不会出现此节点处的最佳分割变量。对于非支链(叶)节点,据code class="literal">surrogatecutprepictor.据/code>包含一个空单元格。据/p>
一个据em class="varname">N据/em>-element单元阵列的预测关联度量为代理分裂据code class="argument">树据/code>, 在哪里据em class="varname">N据/em>节点数在吗据code class="argument">树据/code>.对于每个节点据code class="literal">K.据/code>那据code class="literal">替代商品报gRedicorAssociation{k}据/code>是一个数字向量。的长度据code class="literal">替代商品报gRedicorAssociation{k}据/code>等于在该节点上找到的代理预测器的数量。每个元素的据code class="literal">替代商品报gRedicorAssociation{k}据/code>给出了最佳分裂与此代理分裂之间的关联的预测措施。每个节点处的替代分类变量的顺序是变量的顺序据code class="literal">surrogatecutprepictor.据/code>.不会出现此节点处的最佳分割变量。对于非支链(叶)节点,据code class="literal">替代商品orassociation.据/code>包含一个空单元格。据/p>
鳞片据code class="argument">重量据/code>,一个有长度的向量据em class="varname">N据/em>,行数据code class="argument">X据/code>.据/p>
预测值的矩阵或表格。每列据code class="literal">X据/code>表示一个变量,每行代表一个观察。据/p>
类别数组、字符向量的单元数组、字符数组、逻辑向量或数字向量。每一行的据code class="literal">y据/code>的对应行的分类据code class="literal">X据/code>.据/p> 价值。要了解值类如何影响复制操作,请参阅据a href="//www.tatmou.com/help/matlab/matlab_prog/copying-objects.html" class="a">复制对象据/a>.据/p>
[1] Breiman, L., J. Friedman, R. Olshen, C. Stone。据em class="citetitle">分类和回归树据/em>.Boca Raton,FL:CRC Press,1984。据/p>
fitctree据/code>.据/p>
特性据/h2>
毕业生据/code>
X = mdl.X;%预测数据Xbinned = 0 (size(X));边缘= mdl.BinEdges;找到被分类的预测器的指数。idxNumeric =找到(~ cellfun (@isempty边缘));if iscolumn(idxNumeric) idxNumeric = idxNumeric';end for j = idxNumeric x = x (:,j);%如果x是一个表,则将x转换为数组。If istable(x) x = table2array(x);将x组到bin中据a href="//www.tatmou.com/help/matlab/ref/double.discretize.html" class="intrnllnk">
离散化据/code>功能。xbinned =离散化(x,[ - inf;边缘{j}; inf]);Xbinned(:,j)= xbinned;结尾据/pre>
Xbinned.据/code>包含单位,范围为1到箱数,用于数字预测器。据code class="literal">Xbinned.据/code>对于分类预测器,值为0。如果据code class="literal">X据/code>包含据code class="literal">南据/code>s,然后相应的据code class="literal">Xbinned.据/code>价值是据code class="literal">南据/code>年代。据P.>
分类预测器据/code>
CategoricalSplit据/code>
孩子们据/code>
ClassCOUNT.据/code>
Classnames.据/code>
ClassProbability.据/code>
成本据/code>
CutCategories据/code>
切口据/code>包含切割点据code class="literal">'连续'据/code>削减和据code class="literal">CutCategories据/code>包含一组类别。据/p>
切口据/code>
切口据/code>包含切割点据code class="literal">'连续'据/code>削减和据code class="literal">CutCategories据/code>包含一组类别。据/p>
CutType据/code>
'连续'据/code>- 如果剪切在表单中定义据code class="literal">X
'分类'据/code>- 如果切割是由变量定义的据code class="literal">X据/code>在一组类别中取得一个值。据/p>
''据/code>——如果据code class="literal">一世据/code>是叶节点。据/p>
切口据/code>包含切割点据code class="literal">'连续'据/code>削减和据code class="literal">CutCategories据/code>包含一组类别。据/p>
Cutpredictor.据/code>
切口据/code>包含切割点据code class="literal">'连续'据/code>削减和据code class="literal">CutCategories据/code>包含一组类别。据/p>
CutPredictorIndex据/code>
Cutpredictor.据/code>.据/p>
ExpandedPredictorNames.据/code>
HyperParameterOptimationResults.据/code>
BayesianOptimization据/code>对象或超参数和关联值表。否定的时候据code class="literal">OptimizeHyperparameters据/code>名称 - 值对在创建时是非空的。价值取决于设置的设置据code class="literal">HyperParameterOptimizationOptions.据/code>创建中的名称 - 值对:据/p>
'Bayesopt'据/code>(默认) - 类的对象据a href="//www.tatmou.com/help/stats/bayesianoptimization.html">
BayesianOptimization据/code>
'gridsearch'据/code>或据code class="literal">'randomsearch'据/code>-使用的超参数表,观测到的目标函数值(交叉验证损失),以及观测值从最低(最好)到最高(最差)的排序据/p>
Isbranchnode.据/code>
模特分析者据/code>
numobservations.据/code>
NodeClass据/code>
nodeerror.据/code>
NodeProbability据/code>
Noderisk.据/code>
节点化据/code>
numnodes.据/code>
父母据/code>
PredictorNames据/code>
之前据/code>
Prunealpha.据/code>
梅尔格莱斯据/code>
ractraceame.据/code>
流浪据/code>
scoretransform.据/code>
没有任何据/code>意味着没有转型,或据code class="literal">@(x)x据/code>.据/p>
功能据/code>,使用点符号。据/p>
fitctree据/code>),输入据/p>
Mdl。ScoreTransform = '据em class="replaceable">功能据/em>'据/pre>
tree.scoretransform = @据em class="replaceable">功能据/em>;据/pre>
surrogatecutcategories.据/code>
SurrogateCutFlip据/code>
SurrogateCutPoint据/code>
surrogatecuttype.据/code>
surrogatecutprepictor.据/code>
替代商品orassociation.据/code>
W.据/code>
X据/code>
y据/code>
对象功能据/h2>
袖珍的据/code>
紧凑的树据/td>
横梁据/code>
交叉验证的决策树据/td>
cvloss.据/code>
交叉验证的分类错误据/td>
边缘据/code>
分类的优势据/td>
损失据/code>
分类错误据/td>
保证金据/code>
分类的利润率据/td>
部分竞争据/code>
计算部分依赖据/td>
绘图竞争依赖性据/code>
创建部分依赖图(PDP)和个人有条件期望(ICE)情节据/td>
预测据/code>
使用分类树预测标签据/td>
预测的重要性据/code>
分类树中预测因子重要性的估计据/td>
修剪据/code>
通过修剪产生分类子树序列据/td>
重新提交据/code>
补偿分类边缘据/td>
resubloss.据/code>
补偿分类错误据/td>
resubMargin据/code>
补偿分类利润据/td>
重新预订据/code>
预测分类树的重新试业标签据/td>
Trustogateassociation.据/code>
分类树中替代分裂关联关联的平均预测措施据/td>
视图据/code>
视图分类树据/td>
复制语义据/h2>
例子据/h2>
更多关于据/h2>
参考文献据/h2>
扩展功能据/h2>
也可以看看据/h2>
分类素..据/code>
|据span itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">CompactClassificationTree.据/code>
|据span itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">CompareHoldout.据/code>
|据span itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">fitctree据/code>
|据span itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">预测据/code>
|据span itemscope itemtype="//www.tatmou.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">回归植物据/code>
话题据/h3>