主要内容

CompactClassificationTree

包:classreg.learning.classif

紧凑的分类树

描述

分类树的精简版本ClassificationTree).精简版本不包括训练分类树的数据。因此,您不能使用紧凑的分类树执行某些任务,例如交叉验证。使用紧凑的分类树对新数据进行预测(分类)。

建设

ctree=紧凑(从一个完整的决策树构造一个紧凑的决策树。

输入参数

一个使用fitctree

属性

CategoricalPredictors

分类预测指标,指定为正整数的向量。CategoricalPredictors包含指示相应的预测器是分类的索引值。索引值在1和之间p,在那里p用于训练模型的预测器的数量。如果没有一个预测器是绝对的,则此属性为空([]).

CategoricalSplit

一个n-by-2 cell array,其中n分类分裂的数量在吗.在每一行CategoricalSplit为分类拆分提供左值和右值。对每个分支节点进行分类拆分j基于一个分类预测变量z,则选择左子结点z是在CategoricalSplit (j, 1)如果选择了正确的子结点z是在CategoricalSplit (j, 2).拆分的顺序与树节点的顺序相同。通过运行可以找到这些分割的节点cuttype并选择“分类”从上到下切。

孩子们

一个n-by-2数组,其中每个节点的子节点编号,在那里n是节点数。叶节点有子节点0

ClassCount

一个n——- - - - - -k中的节点的类计数数组,在那里n节点数和k是类的数量。对于任意节点号,班级算ClassCount(我,:)每个类的观察计数(来自于拟合树所用的数据)是否满足节点的条件

一会

中的元素列表Y删除重复的。一会可以是数字向量、类别变量向量、逻辑向量、字符数组或字符向量的单元格数组。一会是否与实参中的数据类型相同Y(该软件将字符串数组视为字符向量的单元格数组。)

如果属性的值至少有一个长度维度k,然后一会指示元素沿该维度的顺序(例如,成本而且之前).

ClassProbability

一个n——- - - - - -k中的节点的类概率数组,在那里n节点数和k是类的数量。对于任意节点号,类概率ClassProbability(我,:)一个点的每个类的估计概率满足节点的条件吗

成本

方阵,成本(i, j)将一个点分类到类的成本是多少j如果它真正的阶级是(行对应真正的类,列对应预测的类)。的行和列的顺序成本中的类的顺序一会.中的行数和列数成本是响应中惟一类的数量。此属性是只读的。

CutCategories

一个n中分支使用的类别的-by-2 cell数组,在那里n是节点数。对于每个分支节点基于一个分类预测变量x,则选择左子结点x是在类别中列出的CutCategories{1},我,则选择正确的子结点x列在CutCategories{2},我.这两列的CutCategories对于基于连续预测器的分支节点和叶节点,为空。

割点的切点“连续”削减,CutCategories包含类别集。

割点

一个n中用作切点的值的元素向量,在那里n是节点数。对于每个分支节点基于连续预测变量x,则选择左子结点x <割点(我)如果选择了正确的子结点x > =割点(我)割点对于基于分类预测器的分支节点和叶节点。

割点的切点“连续”削减,CutCategories包含类别集。

CutType

一个n-element单元格数组,表示在每个节点上的切割类型,在那里n是节点数。为每个节点CutType{我}是:

  • “连续”-如果切割在表格中有定义x < v为一个变量x和减少点v

  • “分类”-如果切割被定义为是否一个变量x接受一组类别中的值。

  • ——如果是叶节点。

割点的切点“连续”削减,CutCategories包含类别集。

CutPredictor

一个n用于在每个节点中分支的变量名称的单元格数组,在那里n是节点数。这些变量有时被称为减少变量.叶节点,CutPredictor包含一个空的字符向量。

割点的切点“连续”削减,CutCategories包含类别集。

CutPredictorIndex

一个n用于在每个节点中分支的变量的数值索引数组,在那里n是节点数。有关更多信息,请参见CutPredictor

ExpandedPredictorNames

扩展的预测器名称,存储为字符向量的单元格数组。

如果模型对分类变量使用编码,则ExpandedPredictorNames包括描述展开变量的名称。否则,ExpandedPredictorNamesPredictorNames

IsBranchNode

一个n-元素逻辑向量即真正的对于每个分支节点和的每个叶节点

NodeClass

一个n的每个节点中最可能的类的名称,在那里n是树中的节点数。数组中的每个元素都是一个字符向量,等于其中一个类名一会

NodeError

一个n中的节点误差的-element向量,在那里n是节点数。NodeError(我)节点的错误分类概率是多少

NodeProbability

一个n中的节点概率的-元素向量,在那里n是节点数。一个节点的概率计算为原始数据中满足该节点条件的观测值的比例。这个比例根据分配给每个类别的任何先验概率进行调整。

NodeRisk

一个n树中节点风险的-元素向量,其中n是节点数。每个节点的风险是该节点通过节点概率加权的杂质(基尼指数或偏差)的度量。如果树是两倍生长的,那么每个节点的风险为零。

NodeSize

一个n中的节点大小的-element向量,在那里n是节点数。节点的大小定义为用于创建满足节点条件的树的数据的观察数。

NumNodes

中的节点数

一个n中每个节点的父节点编号,在那里n是节点数。根节点的父节点为0

PredictorNames

预测变量名称的单元格数组,按它们出现的顺序排列X

之前

每种类别的先验概率的数字向量。元素的顺序之前中的类的顺序一会.元素的个数之前是响应中惟一类的数量。此属性是只读的。

PruneAlpha

每个修剪级别有一个元素的数字向量。如果修剪级别在0 ~,然后PruneAlpha+ 1个元素按升序排序。PruneAlpha (1)为修剪级别0(不修剪),PruneAlpha (2)用于修剪级别1,以此类推。

PruneList

一个n的每个节点的剪枝级别为的-元素数值向量,在那里n是节点数。修剪级别从0(不修剪)到,在那里最深叶和根节点之间的距离。

ResponseName

描述响应变量的字符向量Y

ScoreTransform

转换分数的函数句柄,或表示内置转换函数的字符向量。“没有”意味着没有转换;同样,“没有”意味着@ x (x).有关内置转换函数的列表和自定义转换函数的语法,请参见fitctree

添加或更改ScoreTransform函数使用点表示法:

ctree。ScoreTransform = '函数”或ctree。ScoreTransform = @函数

SurrogateCutCategories

一个n中用于代理拆分的类别的-element单元格数组,在那里n节点数在吗.为每个节点kSurrogateCutCategories {k}是单元格数组。的长度SurrogateCutCategories {k}等于在此节点上找到的代理预测器的数量。每个元素的SurrogateCutCategories {k}是连续代理预测器的空字符向量,或者是类别代理预测器的带类别的双元素单元格数组。这个双元素单元格数组的第一个元素列出由这个代理拆分分配给左子元素的类别,这个双元素单元格数组的第二个元素列出由这个代理拆分分配给右子元素的类别。每个节点上的代理拆分变量的顺序与其中变量的顺序相匹配SurrogateCutVar.此节点上的最佳分割变量不会出现。对于非分枝(叶)节点,SurrogateCutCategories包含一个空单元格。

SurrogateCutFlip

一个n用于代理分割的数值切割分配的单元格数组,在那里n节点数在吗.为每个节点kSurrSurrogateCutFlip {k}是一个数字向量。的长度SurrogateCutFlip {k}等于在此节点上找到的代理预测器的数量。每个元素的SurrogateCutFlip {k}对于类别代理预测器是零,对于连续代理预测器是数值切割赋值。数字切割分配可以是-1或+1。对于每一个用数字切割的代理分割C基于连续预测变量Z,则选择左子结点Z<C这个代理分割的切割分配是+1,或者ZC代理分割的切割分配是-1。类似地,如果选择正确的子结点ZC这个代理分割的切割分配是+1,或者Z<C代理分割的切割分配是-1。每个节点上的代理拆分变量的顺序与其中变量的顺序相匹配SurrogateCutPredictor.此节点上的最佳分割变量不会出现。对于非分枝(叶)节点,SurrogateCutFlip包含一个空数组。

SurrogateCutPoint

一个n中用于代理分割的数值的单元格数组,在那里n节点数在吗.为每个节点kSurrogateCutPoint {k}是一个数字向量。的长度SurrogateCutPoint {k}等于在此节点上找到的代理预测器的数量。每个元素的SurrogateCutPoint {k}要么是对于类别替代预测器,或连续替代预测器的数字切割。对于每一个用数字切割的代理分割C基于连续预测变量Z,则选择左子结点Z<C而且SurrogateCutFlip对于这个代理程序拆分为+1,或者ifZC而且SurrogateCutFlip对于这个代理程序的分割是-1。类似地,如果选择正确的子结点ZC而且SurrogateCutFlip对于这个代理程序拆分为+1,或者ifZ<C而且SurrogateCutFlip对于这个代理程序的分割是-1。在每个节点上的代理拆分变量的顺序与返回的变量的顺序相匹配SurrogateCutPredictor.此节点上的最佳分割变量不会出现。对于非分枝(叶)节点,SurrogateCutPoint包含一个空单元格。

SurrogateCutType

一个n-element单元格数组,指示在中的每个节点上代理拆分的类型,在那里n节点数在吗.为每个节点kSurrogateCutType {k}是一个单元格数组,其中包含此节点上的代理拆分变量的类型。变量按与最优预测因子关联的预测测度按降序排序,只有预测测度为正的变量被包括在内。每个节点上的代理拆分变量的顺序与其中变量的顺序相匹配SurrogateCutPredictor.此节点上的最佳分割变量不会出现。对于非分枝(叶)节点,SurrogateCutType包含一个空单元格。代理分离类型可以是其中之一“连续”如果切割是定义在形式Z<V为一个变量Z和减少点V“分类”如果切割是由是否Z接受一组类别中的值。

SurrogateCutPredictor

一个n中的每个节点中用于代理拆分的变量名称的-element单元格数组,在那里n节点数在吗.每个元素的SurrogateCutPredictor是一个单元格数组,其中包含此节点上的代理拆分变量的名称。变量按与最优预测因子关联的预测测度按降序排序,只有预测测度为正的变量被包括在内。此节点上的最佳分割变量不会出现。对于非分枝(叶)节点,SurrogateCutPredictor包含一个空单元格。

SurrogatePredictorAssociation

一个n中代理分裂的关联预测度量的-元素单元数组,在那里n节点数在吗.为每个节点kSurrogatePredictorAssociation {k}是一个数字向量。的长度SurrogatePredictorAssociation {k}等于在此节点上找到的代理预测器的数量。每个元素的SurrogatePredictorAssociation {k}给出了最佳分割和代理分割之间关联的预测度量。代理拆分变量在每个节点上的顺序与其中变量的顺序相同SurrogateCutPredictor.此节点上的最佳分割变量不会出现。对于非分枝(叶)节点,SurrogatePredictorAssociation包含一个空单元格。

对象的功能

compareHoldout 使用新数据比较两种分类模型的准确性
边缘 分类的优势
收集 收集的属性统计和机器学习工具箱对象从GPU
石灰 局部可解释模型不可知解释(LIME)
损失 分类错误
保证金 分类的利润率
nodeVariableRange 检索决策树节点的变量范围
partialDependence 计算部分依赖
plotPartialDependence 创建偏依赖图(PDP)和个体条件期望图(ICE)
预测 使用分类树预测标签
predictorImportance 预测因子对分类树重要性的估计
沙普利 沙普利值
surrogateAssociation 分类树中代理分叉关联的平均预测测度
更新 更新模型参数以生成代码
视图 视图分类树

复制语义

价值。要了解值类如何影响复制操作,请参见复制对象

例子

全部折叠

为Fisher虹膜数据构建一个紧凑的分类树。

负载fisheriris树= fitctree(量、种类);ctree =紧凑(树);

将结果树的大小与原始树的大小进行比较。

t =谁(“树”);% t.bytes =以字节为单位的树大小c =谁(“ctree”);% c.bytes = ctree的大小,单位为字节[c。字节t.bytes]
ans =1×25097 11762

紧凑型树比原始树小。

更多关于

全部展开

扩展功能

版本历史

介绍了R2011a

Baidu
map