margin
分类间隔
语法
mar = margin(B,TBLnew,Ynew)
mar = margin(B,Xnew,Ynew)
mar = margin(B,TBLnew,Ynew,'param1',val1,'param2',val2,...)
mar = margin(B,Xnew,Ynew,'param1',val1,'param2',val2,...)
说明
在给定真实响应 Ynew
的情况下,mar = margin(B,TBLnew,Ynew)
计算表 TBLnew
中包含的预测变量的分类间隔。如果 TBLnew
包含响应变量,则可以省略 Ynew
。如果您使用表中包含的样本数据对 B
进行了训练,则此方法的输入数据也必须在表中。
在给定真实响应 Ynew
的情况下,mar = margin(B,Xnew,Ynew)
计算矩阵 Xnew
中包含的预测变量的分类间隔。
Ynew
可以是数值向量、字符矩阵、字符串数组、字符向量元胞数组、分类向量或逻辑向量。mar
是大小为 Nobs
×NTrees
的数值数组,其中 Nobs
是 TBLnew
和 Ynew
的行数,NTrees
是集成模型 B
中的树数。对于观测值 I
和树 J
,mar(I,J)
是实际类的分数和其他类的最大分数之间的差。此方法仅适用于分类集成模型。
mar = margin(B,TBLnew,Ynew,'param1',val1,'param2',val2,...)
或 mar = margin(B,Xnew,Ynew,'param1',val1,'param2',val2,...)
指定可选的参数名称-值对组:
'Mode' | 该方法如何计算误差。如果设置为 'cumulative' (默认值),则 margin 计算累积误差且 mar 是 Nobs ×NTrees 矩阵,其中第一列给出来自 trees(1) 的误差,第二列给出来自 trees(1:2) 等的误差,最高可达 trees(1:NTrees) 。如果设置为 'individual' ,则 mar 是 Nobs ×NTrees 矩阵,其中每个元素是来自集成模型中每个树的一个误差。如果设置为 'ensemble' ,则 mar 是长度为 Nobs 的单列,显示整个集成模型的累积间隔。 |
'Trees' | 指示在此计算中要包括哪些树的索引向量。默认情况下,此参量设置为 'all' ,并且方法使用所有树。如果 'Trees' 是数值向量,则方法为 'cumulative' 和 'individual' 模式返回一个长度为 NTrees 的向量,其中 NTrees 是输入向量中的元素数,为 'ensemble' 模式返回一个标量。例如,在 'cumulative' 模式中,第一个元素给出来自 trees(1) 的误差,第二个元素给出来自 trees(1:2) 的误差等。 |
'TreeWeights' | 树权重的向量。此向量的长度必须与 'Trees' 向量的长度相同。方法使用这些权重来组合来自指定树的输出,它采用加权平均而不是简单的非加权多数投票算法您不能在 'individual' 模式下使用此参量。 |
'UseInstanceForTree' | 大小为 Nobs ×NTrees 的逻辑矩阵,指示应使用哪些树来对每个观测值进行预测。默认情况下,该方法对所有观测值使用所有树。 |