主要内容

CompactRegressionTree

包:classreg.learning.regr

紧凑的回归树

描述

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

建设

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

输入参数

全部展开

完整的,经过训练的回归树,指定为RegressionTree对象由fitrtree

属性

CategoricalPredictors

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

CategoricalSplit

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

孩子们

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

CutCategories

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

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

割点

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

CutType

一个n中每个节点的切割类型,在那里n为节点数。为每个节点CutType{我}是:

  • “连续”-如果切割是在形式中定义的x < v为一个变量x和减少点v

  • “分类”—如果cut是由变量定义的x接受一组类别中的值。

  • ——如果是一个叶节点。

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

CutPredictor

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

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

CutPredictorIndex

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

ExpandedPredictorNames

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

如果模型对分类变量使用编码,那么ExpandedPredictorNames包括描述扩展变量的名称。否则,ExpandedPredictorNames是一样的PredictorNames

IsBranchNode

一个n元逻辑向量ib这是真正的对于每个分支节点和的每个叶节点

NodeError

一个n元向量e节点的误差,在那里n为节点数。e(我)节点的误分类概率是多少

NodeMean

一个n的每个节点的平均值的元素数值数组,在那里n为树中的节点数。每一个元素NodeMean平均值是真实的吗Y节点中所有观察值的值。

NodeProbability

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

NodeRisk

一个n-树中节点风险的元素向量,其中n为节点数。每个节点的风险是由节点概率加权的节点误差。

NodeSize

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

NumNodes

节点数n

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

PredictorNames

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

PruneAlpha

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

PruneList

一个n的每个节点中具有修剪级别的元素数值向量,在那里n为节点数。修剪级别从0(不修剪)到,在那里为最深处的叶子与根节点之间的距离。

ResponseName

响应变量的名称Y,字符向量。

ResponseTransform

用于转换原始响应值(均方误差)的函数句柄。函数句柄必须接受响应值的矩阵,并返回相同大小的矩阵。默认的“没有”意味着@ x (x),或者不变换。

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

ctree。ResponseTransform = @函数

SurrogateCutCategories

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

SurrogateCutFlip

一个n用于代理拆分的数字切割赋值的单元格数组,在那里n节点数在吗.为每个节点kSurrogateCutFlip {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<CSurrogateCutFlip对于这个代理,分割为+1,如果ZCSurrogateCutFlip对于这个代理拆分为-1。类似地,如果ZCSurrogateCutFlip对于这个代理,分割为+1,如果Z<CSurrogateCutFlip对于这个代理拆分为-1。在每个节点上分割的代理变量的顺序与返回的变量的顺序匹配SurrogateCutVar.这个节点上的最优分割变量不会出现。对于非分支(叶)节点,SurrogateCutPoint包含一个空单元格。

SurrogateCutType

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

SurrogateCutPredictor

一个n中每个节点中用于代理分割的变量名的单元格数组,在那里n节点数在吗.每个元素的SurrogateCutPredictor是一个单元格数组,其中包含此节点上的代理项拆分变量的名称。变量按照与最优预测器关联的预测量降序排序,只包含具有正向预测量的变量。这个节点上的最优分割变量不会出现。对于非分支(叶)节点,SurrogateCutPredictor包含一个空单元格。

SurrogatePredictorAssociation

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

对象的功能

收集 收集的属性统计和机器学习工具箱对象从GPU
石灰 局部可解释的模型不可知解释(LIME)
损失 回归误差
partialDependence 计算部分依赖
plotPartialDependence 创建部分依赖图(PDP)和个人条件期望图(ICE)
预测 使用回归树预测响应
predictorImportance 对回归树预测因子重要性的估计
沙普利 沙普利值
surrogateAssociation 回归树中代理分割关联的平均预测度量
更新 更新代码生成的模型参数
视图 视图回归树

复制语义

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

例子

全部折叠

加载示例数据。

负载carsmall

为样本数据构建一个回归树。

[重量,气缸],MPG,...“MinParentSize”, 20岁,...“PredictorNames”, {' W '“C”});

制作一个紧凑版本的树。

ctree =紧凑(树);

比较紧凑树和完整树的大小。

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

紧凑的树比完整的树要小。

扩展功能

介绍了R2011a