主要内容

RegressionTree类

超类:CompactRegressionTree

回归树

描述

用于回归的二叉决策树。类的对象RegressionTree可以预测对新数据的反应预测方法。该对象包含用于训练的数据,因此可以计算重新替换预测。

建设

创建一个RegressionTree通过使用fitrtree

属性

毕业生

的单元格数组指定为数值预测器的Bin边p数值向量,p是预测器的数量。每个向量包括一个数字预测器的箱边。用于分类预测器的单元格数组中的元素为空,因为软件没有将分类预测器存储在存储单元中。

只有当您指定“NumBins”当使用树学习器训练模型时,将名称-值参数作为正整数标量。的毕业生属性为空“NumBins”值为空(默认)。

您可以复制被分类的预测器数据Xbinned通过使用毕业生培训模型的财产mdl

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中离散化函数。xbinned =离散化(x,[无穷;边缘{};正]);Xbinned (:, j) = Xbinned;结束
Xbinned包含用于数字预测器的容器索引,范围从1到容器数量。Xbinned对于分类预测器,值为0。如果X包含S,然后对应的Xbinned值是年代。

分类预测器

分类预测指标,指定为一个正整数向量。分类预测器包含指示对应的预测器是分类的索引值。索引值在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,则选择左子结点x <割点(我)选择正确的子结点,如果x > =割点(我)割点对于基于分类预测器和叶节点的分支节点。

CutType

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

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

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

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

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

CutPredictor

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

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

CutPredictorIndex

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

ExpandedPredictorNames.

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

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

HyperparameterOptimizationResults

超参数的交叉验证优化描述,存储为BayesianOptimization对象或包含超参数和关联值的表。非空的时OptimizeHyperparameters名称-值对在创建时是非空的。的设置HyperparameterOptimizationOptions创建时的名称-值对:

  • “bayesopt”(默认)-类的对象BayesianOptimization

  • “gridsearch”“randomsearch”-使用的超参数表,观测到的目标函数值(交叉验证损失),以及观测值从最低(最好)到最高(最差)的排序

IsBranchNode

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

ModelParameters

对象的参数

NumObservations

训练数据中的观测数,数值标量。NumObservations是否可以小于输入数据的行数X当在X或响应Y

NodeError

一个n元向量e节点的误差,在那里n为节点数。e(我)是节点的平均平方误差

寡码

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

NodeProbability

一个n元向量p节点的概率,在那里n为节点数。节点的概率是根据原始数据中满足节点条件的观测值所占的比例来计算的。

NodeRisk

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

节点化

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

NumNodes

节点数n

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

预测

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

PruneAlpha

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

PruneList

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

ResponseName

指定响应变量名称的字符向量(Y)。

ResponseTransform

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

添加或更改ResponseTransform使用点表示法的功能:

tree.responsetransform = @函数

RowsUsed

一个n元素逻辑向量,指示原始预测器数据的哪些行(X)用于装配。如果软件使用的所有行X,然后RowsUsed为空数组([])。

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。在每个节点上分割的代理变量的顺序与返回的变量的顺序匹配SurrCutPredictor.这个节点上的最优分割变量不会出现。对于非分支(叶)节点,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包含一个空单元格。

W

的比例权重,长度的矢量n,行的数量X

X

预测值的矩阵或表每一列的X表示一个变量,每一行表示一个观察。

Y

具有相同行数的数字列向量X.中的每个条目Y对数据的响应是否在相应的行中X

对象的功能

袖珍的 紧凑的回归树
crossval 旨在决策树
cvloss 交叉验证的回归误差
收集 收集的属性统计和机器学习工具箱对象从GPU
酸橙 局部可解释的模型不可知解释(LIME)
损失 回归误差
partialDependence 计算部分依赖
plotPartialDependence 创建部分依赖图(PDP)和个人条件期望图(ICE)
预测 使用回归树预测响应
predictorImportance 对回归树预测的重要性估计
修剪 通过修剪产生回归子树的序列
resubLoss 再代换的回归误差
resubPredict 预测树木的再替代反应
沙普利 沙普利值
surrogateAssociation 回归树中代理分割关联的平均预测度量
视图 视图回归树

复制语义

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

例子

全部折叠

加载示例数据。

负载carsmall

使用样本数据构建回归树。响应变量是每加仑英里数,MPG。

[重量,气缸],MPG,...“CategoricalPredictors”2,“MinParentSize”, 20岁,...“PredictorNames”,{' W '“C”})
Tree = RegressionTree Predictornames:{'W'C'} ResponseName:'y'类分类:2 responsefransform:'none'numobservations:94属性,方法

预测4,000磅汽车的里程,有4,6和8个气缸。

MPG4Kpred =预测(树,[4000 4;4000 6;4000 8])
MPG4Kpred =3×119.2778 19.2778 14.3889

参考

[1] Breiman, L., J. Friedman, R. Olshen, C. Stone。分类与回归树.佛罗里达州博卡拉顿:CRC出版社,1984。

扩展功能

介绍了R2011a