ClassificationGAMgydF4y2Ba
二元分类的广义可加性模型(GAM)gydF4y2Ba
描述gydF4y2Ba
一个gydF4y2BaClassificationGAMgydF4y2Ba
对象是gydF4y2Ba广义加性模型gydF4y2Ba(GAM)对象用于二进制分类。这是一个可解释的模型,它使用单变量和双变量形状函数的和来解释类别分数(类别概率的logit)。gydF4y2Ba
方法对新观测结果进行分类gydF4y2Ba预测gydF4y2Ba
函数,并绘制每个形状函数对预测(类分数)的影响gydF4y2BaplotLocalEffectsgydF4y2Ba
函数。的对象函数的完整列表gydF4y2BaClassificationGAMgydF4y2Ba
,请参阅gydF4y2Ba对象的功能gydF4y2Ba.gydF4y2Ba
创建gydF4y2Ba
创建一个gydF4y2BaClassificationGAMgydF4y2Ba
对象,使用gydF4y2BafitcgamgydF4y2Ba
.您可以为预测器指定线性项和交互项,以便分别在训练的模型中包括单变量形状函数(预测树)和双变量形状函数(交互树)。gydF4y2Ba
您可以通过使用更新训练过的模型gydF4y2Ba重新开始gydF4y2Ba
或gydF4y2BaaddInteractionsgydF4y2Ba
.gydF4y2Ba
的gydF4y2Ba
重新开始gydF4y2Ba
函数恢复对模型中现有项的训练。gydF4y2Ba的gydF4y2Ba
addInteractionsgydF4y2Ba
函数将交互项添加到仅包含线性项的模型中。gydF4y2Ba
属性gydF4y2Ba
访问属性gydF4y2Ba
BinEdgesgydF4y2Ba
- - - - - -gydF4y2Ba数值预测器的Bin边gydF4y2Ba
数值向量的单元格数组gydF4y2Ba|gydF4y2Ba[]gydF4y2Ba
此属性是只读的。gydF4y2Ba
的单元格数组指定的数值预测器的Bin边gydF4y2BapgydF4y2Ba数字向量,其中gydF4y2BapgydF4y2Ba是预测因子的数量。每个向量都包含数值预测器的bin边。类别预测器的单元格数组中的元素为空,因为软件不收纳类别预测器。gydF4y2Ba
类型时,软件才会对数值预测器进行分类gydF4y2Ba“NumBins”gydF4y2Ba
在使用树学习器训练模型时,名称-值参数作为正整数标量。的gydF4y2BaBinEdgesgydF4y2Ba
属性为空gydF4y2Ba“NumBins”gydF4y2Ba
值为空(默认值)。gydF4y2Ba
您可以重新生成已归档的预测器数据gydF4y2BaXbinnedgydF4y2Ba
通过使用gydF4y2BaBinEdgesgydF4y2Ba
训练模型的属性gydF4y2BamdlgydF4y2Ba
.gydF4y2Ba
X = mdl.X;%预测数据Xbinned = 0(大小(X));edges = mdl.BinEdges;查找已分类预测符的索引。idxNumeric = find(~cellfun(@isempty,edges));if iscolumn(idxNumeric) idxNumeric = idxNumeric';end for j = idxNumeric x = x (:,j);如果x是一个表,则将x转换为数组。If stable(x) x = table2array(x);将x分组到箱子中gydF4y2Ba离散化gydF4y2Ba
函数。Xbinned =离散化(x,[-inf;边缘{};正]);Xbinned(:,j) = Xbinned;结束gydF4y2Ba
XbinnedgydF4y2Ba
包含数值预测器的容器索引,范围从1到容器数。gydF4y2BaXbinnedgydF4y2Ba
类别预测器的值为0。如果gydF4y2BaXgydF4y2Ba
包含gydF4y2Ba南gydF4y2Ba
S,然后是对应的gydF4y2BaXbinnedgydF4y2Ba
值是gydF4y2Ba南gydF4y2Ba
年代。gydF4y2Ba
数据类型:gydF4y2Ba细胞gydF4y2Ba
的相互作用gydF4y2Ba
- - - - - -gydF4y2Ba交互项指标gydF4y2Ba
正整数的两列矩阵gydF4y2Ba|gydF4y2Ba[]gydF4y2Ba
此属性是只读的。gydF4y2Ba
交互项索引,指定为gydF4y2BatgydF4y2Ba
-by-2矩阵的正整数,其中gydF4y2BatgydF4y2Ba
是模型中交互项的数量。矩阵的每一行表示一个交互项,并包含预测器数据的列索引gydF4y2BaXgydF4y2Ba
对于相互作用项。如果模型不包括交互项,则此属性为空(gydF4y2Ba[]gydF4y2Ba
).gydF4y2Ba
软件将交互术语按重要性的顺序添加到模型中gydF4y2BapgydF4y2Ba值。使用此属性检查添加到模型中的交互项的顺序。gydF4y2Ba
数据类型:gydF4y2Ba双gydF4y2Ba
拦截gydF4y2Ba
- - - - - -gydF4y2Ba模型截距项gydF4y2Ba
数字标量gydF4y2Ba
此属性是只读的。gydF4y2Ba
模型的截距(常数)项,它是预测树和交互树中截距项的和,指定为数值标量。gydF4y2Ba
数据类型:gydF4y2Ba单gydF4y2Ba
|gydF4y2Ba双gydF4y2Ba
ModelParametersgydF4y2Ba
- - - - - -gydF4y2Ba用于训练模型的参数gydF4y2Ba
模型参数对象gydF4y2Ba
此属性是只读的。gydF4y2Ba
用于训练模型的参数,指定为模型参数对象。gydF4y2BaModelParametersgydF4y2Ba
包含用于训练模型的名称-值参数的参数值。gydF4y2BaModelParametersgydF4y2Ba
不包含估计参数。gydF4y2Ba
访问字段gydF4y2BaModelParametersgydF4y2Ba
用点表示法。例如,通过使用访问每个交互树的最大决策分割数量gydF4y2BaMdl.ModelParameters.MaxNumSplitsPerInteractiongydF4y2Ba
.gydF4y2Ba
PairDetectionBinEdgesgydF4y2Ba
- - - - - -gydF4y2BaBin边用于交互项检测gydF4y2Ba
数值向量的单元格数组gydF4y2Ba
此属性是只读的。gydF4y2Ba
的单元格数组指定的数值预测器的交互项检测的Bin边gydF4y2BapgydF4y2Ba数字向量,其中gydF4y2BapgydF4y2Ba是预测因子的数量。每个向量都包含数值预测器的bin边。类别预测器的单元格数组中的元素为空,因为软件不收纳类别预测器。gydF4y2Ba
为了加快交互项检测过程,该软件将数值预测器最多分为8个等概率箱。如果预测器的唯一值少于8个,则箱子的数量可以小于8个。gydF4y2Ba
数据类型:gydF4y2Ba细胞gydF4y2Ba
ReasonForTerminationgydF4y2Ba
- - - - - -gydF4y2Ba停止训练的原因gydF4y2Ba
结构gydF4y2Ba
此属性是只读的。gydF4y2Ba
训练模型停止的原因,指定为具有两个字段的结构,gydF4y2BaPredictorTreesgydF4y2Ba
而且gydF4y2BaInteractionTreesgydF4y2Ba
.gydF4y2Ba
使用此属性检查模型是否包含每个线性项的指定数量的树(gydF4y2Ba“NumTreesPerPredictor”gydF4y2Ba
),对于每个交互项(gydF4y2Ba“NumTreesPerInteraction”gydF4y2Ba
).如果gydF4y2BafitcgamgydF4y2Ba
函数在添加指定数量的树之前终止训练,此属性包含终止的原因。gydF4y2Ba
数据类型:gydF4y2Ba结构体gydF4y2Ba
其他分类属性gydF4y2Ba
CategoricalPredictorsgydF4y2Ba
- - - - - -gydF4y2Ba分类预测指标gydF4y2Ba
正整数向量gydF4y2Ba|gydF4y2Ba[]gydF4y2Ba
此属性是只读的。gydF4y2Ba
分类预测指标,指定为正整数向量。gydF4y2BaCategoricalPredictorsgydF4y2Ba
包含指示相应预测符是分类的索引值。索引值在1和之间gydF4y2BapgydF4y2Ba
,在那里gydF4y2BapgydF4y2Ba
用于训练模型的预测器的数量。如果没有一个预测符是分类的,则此属性为空(gydF4y2Ba[]gydF4y2Ba
).gydF4y2Ba
数据类型:gydF4y2Ba双gydF4y2Ba
一会gydF4y2Ba
- - - - - -gydF4y2Ba唯一的类标签gydF4y2Ba
分类数组gydF4y2Ba|gydF4y2Ba字符数组gydF4y2Ba|gydF4y2Ba逻辑向量gydF4y2Ba|gydF4y2Ba数值向量gydF4y2Ba|gydF4y2Ba字符向量的单元格数组gydF4y2Ba
此属性是只读的。gydF4y2Ba
训练中使用的唯一类标签,指定为类别或字符数组、逻辑或数字向量或字符向量的单元格数组。gydF4y2Ba一会gydF4y2Ba
与类标签具有相同的数据类型gydF4y2BaYgydF4y2Ba
.gydF4y2Ba(该软件将字符串数组视为字符向量的单元格数组。)gydF4y2Ba一会gydF4y2Ba
也决定了类的顺序。gydF4y2Ba
数据类型:gydF4y2Ba单gydF4y2Ba
|gydF4y2Ba双gydF4y2Ba
|gydF4y2Ba逻辑gydF4y2Ba
|gydF4y2Ba字符gydF4y2Ba
|gydF4y2Ba细胞gydF4y2Ba
|gydF4y2Ba分类gydF4y2Ba
成本gydF4y2Ba
- - - - - -gydF4y2Ba误分类代价gydF4y2Ba
2乘2数值矩阵gydF4y2Ba
错误分类的代价,指定为2乘2的数字矩阵。gydF4y2Ba
成本(gydF4y2Ba
将一个点分类的成本是多少gydF4y2Ba我gydF4y2Ba
,gydF4y2BajgydF4y2Ba
)gydF4y2BajgydF4y2Ba
如果它真正的阶级是gydF4y2Ba我gydF4y2Ba
.的行和列的顺序gydF4y2Ba成本gydF4y2Ba
中类的顺序对应gydF4y2Ba一会gydF4y2Ba
.gydF4y2Ba
该软件使用gydF4y2Ba成本gydF4y2Ba
有预测价值,但没有训练价值。您可以使用点表示法来更改该值。gydF4y2Ba
例子:gydF4y2BaMdl。成本=C;
数据类型:gydF4y2Ba双gydF4y2Ba
ExpandedPredictorNamesgydF4y2Ba
- - - - - -gydF4y2Ba扩展的预测器名称gydF4y2Ba
字符向量的单元格数组gydF4y2Ba
此属性是只读的。gydF4y2Ba
扩展的预测器名称,指定为字符向量的单元格数组。gydF4y2Ba
ExpandedPredictorNamesgydF4y2Ba
和gydF4y2BaPredictorNamesgydF4y2Ba
对于广义加性模型。gydF4y2Ba
数据类型:gydF4y2Ba细胞gydF4y2Ba
NumObservationsgydF4y2Ba
- - - - - -gydF4y2Ba观察次数gydF4y2Ba
数字标量gydF4y2Ba
此属性是只读的。gydF4y2Ba
在训练数据中存储的观察数gydF4y2BaXgydF4y2Ba
而且gydF4y2BaYgydF4y2Ba
,指定为数值标量。gydF4y2Ba
数据类型:gydF4y2Ba双gydF4y2Ba
PredictorNamesgydF4y2Ba
- - - - - -gydF4y2Ba预测变量名称gydF4y2Ba
字符向量的单元格数组gydF4y2Ba
此属性是只读的。gydF4y2Ba
预测器变量名,指定为字符向量的单元格数组。元素的顺序gydF4y2BaPredictorNamesgydF4y2Ba
对应于预测器名称在训练数据中出现的顺序。gydF4y2Ba
数据类型:gydF4y2Ba细胞gydF4y2Ba
之前gydF4y2Ba
- - - - - -gydF4y2Ba先验类概率gydF4y2Ba
数值向量gydF4y2Ba
此属性是只读的。gydF4y2Ba
先验类概率,指定为具有两个元素的数字向量。元素的顺序对应于中元素的顺序gydF4y2Ba一会gydF4y2Ba
.gydF4y2Ba
数据类型:gydF4y2Ba双gydF4y2Ba
ResponseNamegydF4y2Ba
- - - - - -gydF4y2Ba响应变量名gydF4y2Ba
特征向量gydF4y2Ba
此属性是只读的。gydF4y2Ba
响应变量名,指定为字符向量。gydF4y2Ba
数据类型:gydF4y2Ba字符gydF4y2Ba
RowsUsedgydF4y2Ba
- - - - - -gydF4y2Ba拟合中使用的行gydF4y2Ba
[]gydF4y2Ba
|gydF4y2Ba逻辑向量gydF4y2Ba
此属性是只读的。gydF4y2Ba
用于拟合的原始训练数据行gydF4y2BaClassificationGAMgydF4y2Ba
模型,指定为逻辑向量。如果使用所有行,则此属性为空。gydF4y2Ba
数据类型:gydF4y2Ba逻辑gydF4y2Ba
ScoreTransformgydF4y2Ba
- - - - - -gydF4y2Ba分数转换gydF4y2Ba
特征向量gydF4y2Ba|gydF4y2Ba函数处理gydF4y2Ba
分数转换,指定为字符向量或函数句柄。gydF4y2BaScoreTransformgydF4y2Ba
表示用于转换预测分类分数的内置转换函数或函数句柄。gydF4y2Ba
将分数转换函数更改为gydF4y2Ba函数gydF4y2Ba
例如,使用点表示法。gydF4y2Ba
对于内置函数,请输入字符向量。gydF4y2Ba
Mdl。ScoreTransform = 'gydF4y2Ba函数gydF4y2Ba”;gydF4y2Ba
该表描述了可使用的内置函数。gydF4y2Ba
价值gydF4y2Ba 描述gydF4y2Ba “doublelogit”gydF4y2Ba
1 / (1 +gydF4y2BaegydF4y2Ba2gydF4y2BaxgydF4y2Ba)gydF4y2Ba “invlogit”gydF4y2Ba
日志(gydF4y2BaxgydF4y2Ba/ (1 -gydF4y2BaxgydF4y2Ba))gydF4y2Ba “ismax”gydF4y2Ba
将得分最大的类的得分设置为1,并将所有其他类的得分设置为0gydF4y2Ba 分对数的gydF4y2Ba
1 / (1 +gydF4y2BaegydF4y2Ba- - - - - -gydF4y2BaxgydF4y2Ba)gydF4y2Ba “没有”gydF4y2Ba
或gydF4y2Ba“身份”gydF4y2Ba
xgydF4y2Ba(转换)gydF4y2Ba “标志”gydF4y2Ba
1gydF4y2BaxgydF4y2Ba< 0gydF4y2Ba
为0gydF4y2BaxgydF4y2Ba= 0gydF4y2Ba
1gydF4y2BaxgydF4y2Ba> 0gydF4y2Ba“对称”gydF4y2Ba
2gydF4y2BaxgydF4y2Ba- 1gydF4y2Ba “symmetricismax”gydF4y2Ba
将得分最大的类的得分设置为1,并将所有其他类的得分设置为-1gydF4y2Ba “symmetriclogit”gydF4y2Ba
2 / (1 +gydF4y2BaegydF4y2Ba- - - - - -gydF4y2BaxgydF4y2Ba) - 1gydF4y2Ba 对于MATLABgydF4y2Ba®gydF4y2Ba函数或您定义的函数,输入其函数句柄。gydF4y2Ba
Mdl。ScoreTransform = @gydF4y2Ba函数gydF4y2Ba;gydF4y2Ba
函数gydF4y2Ba
必须接受一个矩阵(原始分数)并返回一个相同大小的矩阵(转换后的分数)。gydF4y2Ba
此属性确定对象函数的输出分数计算,例如gydF4y2Ba预测gydF4y2Ba
,gydF4y2Ba保证金gydF4y2Ba
,gydF4y2Ba边缘gydF4y2Ba
.使用gydF4y2Ba分对数的gydF4y2Ba
计算后验概率,并使用gydF4y2Ba“没有”gydF4y2Ba
计算后验概率的对数。gydF4y2Ba
数据类型:gydF4y2Ba字符gydF4y2Ba
|gydF4y2Bafunction_handlegydF4y2Ba
WgydF4y2Ba
- - - - - -gydF4y2Ba观察权重gydF4y2Ba
数值向量gydF4y2Ba
此属性是只读的。gydF4y2Ba
用于训练模型的观察权重,指定为gydF4y2BangydF4y2Ba-by-1数值向量。gydF4y2BangydF4y2Ba为观测数(gydF4y2BaNumObservationsgydF4y2Ba
).gydF4y2Ba
方法中指定的观测权值进行归一化gydF4y2Ba“重量”gydF4y2Ba
的元素gydF4y2BaWgydF4y2Ba
在一个特定的类别中求和等于该类别的先验概率。gydF4y2Ba
数据类型:gydF4y2Ba双gydF4y2Ba
XgydF4y2Ba
- - - - - -gydF4y2Ba预测gydF4y2Ba
数字矩阵gydF4y2Ba|gydF4y2Ba表格gydF4y2Ba
此属性是只读的。gydF4y2Ba
用于训练模型的预测器,指定为数值矩阵或表格。gydF4y2Ba
每行gydF4y2BaXgydF4y2Ba
对应一个观察结果,每一列对应一个变量。gydF4y2Ba
数据类型:gydF4y2Ba单gydF4y2Ba
|gydF4y2Ba双gydF4y2Ba
|gydF4y2Ba表格gydF4y2Ba
YgydF4y2Ba
- - - - - -gydF4y2Ba类标签gydF4y2Ba
分类数组gydF4y2Ba|gydF4y2Ba字符数组gydF4y2Ba|gydF4y2Ba逻辑向量gydF4y2Ba|gydF4y2Ba数值向量gydF4y2Ba|gydF4y2Ba字符向量的单元格数组gydF4y2Ba
此属性是只读的。gydF4y2Ba
用于训练模型的类标签,指定为类别或字符数组、逻辑或数字向量或字符向量的单元格数组。gydF4y2BaYgydF4y2Ba
具有与用于训练模型的响应变量相同的数据类型。gydF4y2Ba(该软件将字符串数组视为字符向量的单元格数组。)gydF4y2Ba
每行gydF4y2BaYgydF4y2Ba
的对应行所观察的分类gydF4y2BaXgydF4y2Ba
.gydF4y2Ba
数据类型:gydF4y2Ba单gydF4y2Ba
|gydF4y2Ba双gydF4y2Ba
|gydF4y2Ba逻辑gydF4y2Ba
|gydF4y2Ba字符gydF4y2Ba
|gydF4y2Ba细胞gydF4y2Ba
|gydF4y2Ba分类gydF4y2Ba
超参数优化属性gydF4y2Ba
HyperparameterOptimizationResultsgydF4y2Ba
- - - - - -gydF4y2Ba超参数的交叉验证优化描述gydF4y2Ba
BayesianOptimizationgydF4y2Ba
对象gydF4y2Ba|gydF4y2Ba表格gydF4y2Ba
此属性是只读的。gydF4y2Ba
超参数的交叉验证优化的描述,指定为gydF4y2BaBayesianOptimizationgydF4y2Ba
对象或超参数及相关值的表。属性时,此属性为非空gydF4y2Ba“OptimizeHyperparameters”gydF4y2Ba
的名称-值参数gydF4y2BafitcgamgydF4y2Ba
不是gydF4y2Ba“没有”gydF4y2Ba
(默认值)。的价值gydF4y2BaHyperparameterOptimizationResultsgydF4y2Ba
的设置gydF4y2Ba优化器gydF4y2Ba
在gydF4y2BaHyperparameterOptimizationOptionsgydF4y2Ba
的结构gydF4y2BafitcgamgydF4y2Ba
创建对象时。gydF4y2Ba
的价值gydF4y2Ba优化器gydF4y2Ba 场gydF4y2Ba |
的价值gydF4y2BaHyperparameterOptimizationResultsgydF4y2Ba |
---|---|
“bayesopt”gydF4y2Ba (默认)gydF4y2Ba |
类的对象gydF4y2BaBayesianOptimizationgydF4y2Ba |
“gridsearch”gydF4y2Ba 或gydF4y2Ba“randomsearch”gydF4y2Ba |
使用的超参数表,观察到的目标函数值(交叉验证损失),以及从最低(最好)到最高(最差)的观察值排序gydF4y2Ba |
对象的功能gydF4y2Ba
创建gydF4y2BaCompactClassificationGAMgydF4y2Ba
紧凑的gydF4y2Ba |
减小机器学习模型的尺寸gydF4y2Ba |
创建gydF4y2BaClassificationPartitionedGAMgydF4y2Ba
crossvalgydF4y2Ba |
交叉验证机器学习模型gydF4y2Ba |
更新联欢gydF4y2Ba
addInteractionsgydF4y2Ba |
在单变量广义可加性模型(GAM)中添加交互项gydF4y2Ba |
重新开始gydF4y2Ba |
广义加法模型(GAM)简历训练gydF4y2Ba |
解释预测gydF4y2Ba
石灰gydF4y2Ba |
局部可解释模型不可知解释(LIME)gydF4y2Ba |
partialDependencegydF4y2Ba |
计算部分依赖关系gydF4y2Ba |
plotLocalEffectsgydF4y2Ba |
广义可加性模型(GAM)中项的局部效应图gydF4y2Ba |
plotPartialDependencegydF4y2Ba |
创建部分依赖图(PDP)和个别条件期望图(ICE)gydF4y2Ba |
沙普利gydF4y2Ba |
沙普利值gydF4y2Ba |
评估新观测的预测性能gydF4y2Ba
预测gydF4y2Ba |
利用广义加性模型(GAM)对观测数据进行分类gydF4y2Ba |
损失gydF4y2Ba |
广义可加性模型的分类损失gydF4y2Ba |
保证金gydF4y2Ba |
广义可加性模型(GAM)的分类边界gydF4y2Ba |
边缘gydF4y2Ba |
广义可加性模型的分类边gydF4y2Ba |
根据训练数据评估预测表现gydF4y2Ba
resubPredictgydF4y2Ba |
使用训练过的分类器对训练数据进行分类gydF4y2Ba |
resubLossgydF4y2Ba |
再置换分类损失gydF4y2Ba |
resubMargingydF4y2Ba |
再置换分类边际gydF4y2Ba |
resubEdgegydF4y2Ba |
再置换分类边gydF4y2Ba |
比较精度gydF4y2Ba
compareHoldoutgydF4y2Ba |
比较使用新数据的两种分类模型的准确性gydF4y2Ba |
testckfoldgydF4y2Ba |
通过重复交叉验证比较两种分类模型的准确性gydF4y2Ba |
例子gydF4y2Ba
训练广义加性模型gydF4y2Ba
训练一个单变量广义可加性模型,其中包含预测变量的线性项。方法解释指定数据实例的预测gydF4y2BaplotLocalEffectsgydF4y2Ba
函数。gydF4y2Ba
加载gydF4y2Ba电离层gydF4y2Ba
数据集。该数据集有34个预测器和351个雷达返回的二进制响应,要么是坏的(gydF4y2Ba“b”gydF4y2Ba
)或好(gydF4y2Ba‘g’gydF4y2Ba
).gydF4y2Ba
负载gydF4y2Ba电离层gydF4y2Ba
训练一个单变量GAM,识别雷达返回是否不良(gydF4y2Ba“b”gydF4y2Ba
)或好(gydF4y2Ba‘g’gydF4y2Ba
).gydF4y2Ba
Mdl = fitccam (X,Y)gydF4y2Ba
Mdl = ClassificationGAM ResponseName: 'Y' CategoricalPredictors: [] ClassNames: {'b' 'g'} ScoreTransform: 'logit'拦截:2.2715 NumObservations: 351属性,方法gydF4y2Ba
MdlgydF4y2Ba
是一个gydF4y2BaClassificationGAMgydF4y2Ba
模型对象。模型显示显示模型属性的部分列表。若要查看完整的属性列表,请双击变量名gydF4y2BaMdlgydF4y2Ba
在工作区中。打开变量编辑器gydF4y2BaMdlgydF4y2Ba
.或者,您可以使用点表示法在命令窗口中显示属性。例如,显示的类顺序gydF4y2BaMdlgydF4y2Ba
.gydF4y2Ba
classOrder = Mdl。一会gydF4y2Ba
classOrder =gydF4y2Ba2 x1细胞gydF4y2Ba{b} {' g '}gydF4y2Ba
对第一次观察到的训练数据进行分类,并绘制训练数据中各项的局部效应gydF4y2BaMdlgydF4y2Ba
关于预测。gydF4y2Ba
label =预测(Mdl,X(1,:))gydF4y2Ba
标签=gydF4y2Ba1x1单元阵列gydF4y2Ba{' g '}gydF4y2Ba
: plotLocalEffects (Mdl X (1))gydF4y2Ba
的gydF4y2Ba预测gydF4y2Ba
函数对第一个观测值进行分类gydF4y2BaX (1:)gydF4y2Ba
作为gydF4y2Ba‘g’gydF4y2Ba
.的gydF4y2BaplotLocalEffectsgydF4y2Ba
函数创建了一个水平柱状图,显示了10个最重要的术语对预测的局部影响。每个局部效应值表示每个术语对分类分数的贡献gydF4y2Ba‘g’gydF4y2Ba
,即该分类的后验概率的logitgydF4y2Ba‘g’gydF4y2Ba
为了观察。gydF4y2Ba
用交互术语训练GAMgydF4y2Ba
用三种不同的方式训练一个包含预测因子线性和交互项的广义加法模型:gydF4y2Ba
属性指定交互术语gydF4y2Ba
公式gydF4y2Ba
输入参数。gydF4y2Ba指定gydF4y2Ba
“互动”gydF4y2Ba
名称-值参数。gydF4y2Ba方法先用线性项构建模型,并向模型中添加交互项gydF4y2Ba
addInteractionsgydF4y2Ba
函数。gydF4y2Ba
加载费雪的虹膜数据集。创建一个包含versicolor和virginica观察结果的表。gydF4y2Ba
负载gydF4y2BafisheririsgydF4y2BaInds = strcmp(物种,gydF4y2Ba“多色的”gydF4y2Ba) | strcmp(物种,gydF4y2Ba“virginica”gydF4y2Ba);TBL = array2table(meas(inds,:)),gydF4y2Ba“VariableNames”gydF4y2Ba, (gydF4y2Ba“x1”gydF4y2Ba,gydF4y2Ba“x2”gydF4y2Ba,gydF4y2Ba“x3”gydF4y2Ba,gydF4y2Ba“x4”gydF4y2Ba]);资源描述。Y=species(inds,:);
指定gydF4y2Ba公式gydF4y2Ba
训练包含四个线性项的GAM (gydF4y2Bax1gydF4y2Ba
,gydF4y2Bax2gydF4y2Ba
,gydF4y2Bax3gydF4y2Ba
,gydF4y2Bax4gydF4y2Ba
)和两个交互项(gydF4y2Bax1 * x2gydF4y2Ba
而且gydF4y2Bax2 * x3gydF4y2Ba
).使用表单中的公式指定术语gydF4y2Ba“Y ~项”gydF4y2Ba
.gydF4y2Ba
Mdl1 = fitccam (tbl,gydF4y2Ba'Y ~ x1 + x2 + x3 + x4 + x1:x2 + x2:x3'gydF4y2Ba);gydF4y2Ba
该函数按照重要性的顺序将交互项添加到模型中。您可以使用gydF4y2Ba的相互作用gydF4y2Ba
属性检查模型中的交互项及其顺序gydF4y2BafitcgamgydF4y2Ba
将它们添加到模型中。显示gydF4y2Ba的相互作用gydF4y2Ba
财产。gydF4y2Ba
Mdl1。的相互作用gydF4y2Ba
ans =gydF4y2Ba2×2gydF4y2Ba2 3 1 2gydF4y2Ba
每行gydF4y2Ba的相互作用gydF4y2Ba
表示一个交互项,并包含该交互项的预测变量的列索引。gydF4y2Ba
指定gydF4y2Ba“互动”gydF4y2Ba
传递培训数据(gydF4y2Ba资源描述gydF4y2Ba
)和响应变量的名称gydF4y2Ba资源描述gydF4y2Ba
来gydF4y2BafitcgamgydF4y2Ba
,使函数包含所有其他变量的线性项作为预测因子。指定gydF4y2Ba“互动”gydF4y2Ba
使用逻辑矩阵来包含两个交互项的名称-值参数,gydF4y2Bax1 * x2gydF4y2Ba
而且gydF4y2Bax2 * x3gydF4y2Ba
.gydF4y2Ba
Mdl2 = fitccam (tbl,gydF4y2Ba“Y”gydF4y2Ba,gydF4y2Ba“互动”gydF4y2Ba,逻辑([1 1 0 0;0 1 1 0]));Mdl2。的相互作用gydF4y2Ba
ans =gydF4y2Ba2×2gydF4y2Ba2 3 1 2gydF4y2Ba
你也可以指定gydF4y2Ba“互动”gydF4y2Ba
作为相互作用项的数量或gydF4y2Ba“所有”gydF4y2Ba
包括所有可用的交互术语。在指定的交互条件中,gydF4y2BafitcgamgydF4y2Ba
识别那些gydF4y2BapgydF4y2Ba-values不大于gydF4y2Ba“MaxPValue”gydF4y2Ba
值并将它们添加到模型中。默认的gydF4y2Ba“MaxPValue”gydF4y2Ba
为1,以便函数将所有指定的交互项添加到模型中。gydF4y2Ba
指定gydF4y2Ba“互动”、“所有”gydF4y2Ba
并设置gydF4y2Ba“MaxPValue”gydF4y2Ba
名称-值参数为0.01。gydF4y2Ba
(tbl;gydF4y2Ba“Y”gydF4y2Ba,gydF4y2Ba“互动”gydF4y2Ba,gydF4y2Ba“所有”gydF4y2Ba,gydF4y2Ba“MaxPValue”gydF4y2Ba, 0.01);Mdl3。的相互作用gydF4y2Ba
ans =gydF4y2Ba5×2gydF4y2Ba3 4 2 4 1 4 2 3 1 3gydF4y2Ba
Mdl3gydF4y2Ba
包括六对可用交互术语中的五对。gydF4y2Ba
使用gydF4y2BaaddInteractionsgydF4y2Ba
函数gydF4y2Ba
训练一个包含预测因子线性项的单变量GAM,然后使用gydF4y2BaaddInteractionsgydF4y2Ba
函数。指定的第二个输入参数gydF4y2BaaddInteractionsgydF4y2Ba
以同样的方式指定gydF4y2Ba“互动”gydF4y2Ba
的名称-值参数gydF4y2BafitcgamgydF4y2Ba
.您可以使用逻辑矩阵指定交互术语的列表、交互术语的数量或gydF4y2Ba“所有”gydF4y2Ba
.gydF4y2Ba
指定交互项的数量为5,将5个最重要的交互项添加到训练的模型中。gydF4y2Ba
Mdl4 = fitccam (tbl,gydF4y2Ba“Y”gydF4y2Ba);UpdatedMdl4 = addInteractions(Mdl4,5);UpdatedMdl4。的相互作用gydF4y2Ba
ans =gydF4y2Ba5×2gydF4y2Ba3 4 2 4 1 4 2 3 1 3gydF4y2Ba
Mdl4gydF4y2Ba
是单变量GAM,和gydF4y2BaUpdatedMdl4gydF4y2Ba
是一个更新的GAM,包含了所有的条款gydF4y2BaMdl4gydF4y2Ba
还有另外五个相互作用项。gydF4y2Ba
在GAM中恢复训练预测树gydF4y2Ba
训练一个单变量分类GAM(它只包含线性项)进行少量迭代。在对模型进行多次迭代训练后,比较再替换损失。gydF4y2Ba
加载gydF4y2Ba电离层gydF4y2Ba
数据集。该数据集有34个预测器和351个雷达返回的二进制响应,要么是坏的(gydF4y2Ba“b”gydF4y2Ba
)或好(gydF4y2Ba‘g’gydF4y2Ba
).gydF4y2Ba
负载gydF4y2Ba电离层gydF4y2Ba
训练一个单变量GAM,识别雷达返回是否不良(gydF4y2Ba“b”gydF4y2Ba
)或好(gydF4y2Ba‘g’gydF4y2Ba
).指定每个线性项的树数为2。gydF4y2BafitcgamgydF4y2Ba
为指定的迭代次数迭代增强算法。对于每次增强迭代,函数为每个线性项添加一个树。指定gydF4y2Ba“详细”gydF4y2Ba
As 2在每次迭代中显示诊断消息。gydF4y2Ba
Mdl = fitccam (X,Y,gydF4y2Ba“NumTreesPerPredictor”gydF4y2Ba2,gydF4y2Ba“详细”gydF4y2Ba2);gydF4y2Ba
|========================================================| | 类型| NumTrees |异常| RelTol | LearnRate | |========================================================| | 1 d | 0 | 486.59 | - | - | | 1 d | 1 | 166.71 |正| 1 | | 1 d | 2 | 78.336 | 0.58205 | 1 |gydF4y2Ba
检查是否gydF4y2BafitcgamgydF4y2Ba
火车指定数量的树,显示gydF4y2BaReasonForTerminationgydF4y2Ba
属性,并查看显示的消息。gydF4y2Ba
Mdl。ReasonForTerminationgydF4y2Ba
ans =gydF4y2Ba带字段的结构:gydF4y2BaPredictorTrees: '在训练了要求数量的树后终止。'InteractionTrees:“gydF4y2Ba
计算训练数据的分类损失。gydF4y2Ba
resubLoss (Mdl)gydF4y2Ba
Ans = 0.0142gydF4y2Ba
恢复对模型的训练,再进行100次迭代。因为gydF4y2BaMdlgydF4y2Ba
只包含线性项,则gydF4y2Ba重新开始gydF4y2Ba
函数恢复线性项的训练,并为它们添加更多的树(预测树)。指定gydF4y2Ba“详细”gydF4y2Ba
而且gydF4y2Ba“NumPrint”gydF4y2Ba
每10次迭代显示一次诊断消息。gydF4y2Ba
UpdatedMdl = resume(Mdl,100,gydF4y2Ba“详细”gydF4y2Ba,1,gydF4y2Ba“NumPrint”gydF4y2Ba10);gydF4y2Ba
|========================================================| | 类型| NumTrees |异常| RelTol | LearnRate | |========================================================| | 1 d | 0 | 78.336 | - | - | | 1 d | 1 | 38.364 | 0.17429 | 1 | | 1 d | 10 | 0.16311 | 0.011894 | 1 | | 1 d | 20 | 0.00035693 | 0.0025178 | 1 | | 1 30 d | | 8.1191 e-07 | 0.0011006 | 1 | | 1 d e-09 40 | | 1.7978 | 0.00074607 | 1 | | 1 d e-12 50 | | 3.6113 | 0.00034404 | 1 | | 1 d 60 e-13 | 1.7497 | 0.00016541 | | 1 |gydF4y2Ba
UpdatedMdl。ReasonForTerminationgydF4y2Ba
ans =gydF4y2Ba带字段的结构:gydF4y2BaPredictorTrees:“无法改善模型拟合。”InteractionTrees:“gydF4y2Ba
重新开始gydF4y2Ba
当添加更多的树时终止训练并不能改善模型拟合的偏差。gydF4y2Ba
使用更新后的模型计算分类损失。gydF4y2Ba
resubLoss (UpdatedMdl)gydF4y2Ba
Ans = 0gydF4y2Ba
之后分类损失减小gydF4y2Ba重新开始gydF4y2Ba
用更多的迭代更新模型。gydF4y2Ba
更多关于gydF4y2Ba
二元分类的广义可加性模型gydF4y2Ba
广义加法模型(GAM)是一种可解释的模型,它使用预测因子的单变量和双变量形状函数的和来解释类别得分(类别概率的logit)。gydF4y2Ba
fitcgamgydF4y2Ba
使用增强树作为每个预测器的形状函数,并可选地,每对预测器;因此,该函数可以捕获预测器和响应变量之间的非线性关系。由于单个形状函数对预测(分类评分)的贡献被很好地分离,因此模型易于解释。gydF4y2Ba
标准的GAM为每个预测器使用一个单变量形状函数。gydF4y2Ba
在哪里gydF4y2BaygydF4y2Ba是一个响应变量,它遵循成功概率(正类概率)的二项分布。gydF4y2BaμgydF4y2Ba在gydF4y2BangydF4y2Ba观察。gydF4y2BaggydF4y2Ba(gydF4y2BaμgydF4y2Ba)gydF4y2Ba是logit链接函数,和gydF4y2BacgydF4y2Ba是一个截距(常数)项。gydF4y2BafgydF4y2Ba我gydF4y2Ba(gydF4y2BaxgydF4y2Ba我gydF4y2Ba的单变量形状函数gydF4y2Ba我gydF4y2Ba预测器,它是预测器线性项的增强树(预测器树)。gydF4y2Ba
通过向模型中添加重要交互项的二元形状函数,可以在模型中包含预测因子之间的交互。gydF4y2Ba
在哪里gydF4y2BafgydF4y2BaijgydF4y2Ba(gydF4y2BaxgydF4y2Ba我gydF4y2BaxgydF4y2BajgydF4y2Ba的二元形状函数gydF4y2Ba我gydF4y2Bath和gydF4y2BajgydF4y2Ba预测器,这是预测器的交互项的增强树(交互树)。gydF4y2Ba
fitcgamgydF4y2Ba
的基础上查找重要的交互项gydF4y2BapgydF4y2Ba值的gydF4y2BaFgydF4y2Ba测试。详细信息请参见gydF4y2Ba交互项检测gydF4y2Ba.gydF4y2Ba
参考文献gydF4y2Ba
卢、尹、里奇·卡鲁阿纳和约翰内斯·格尔克。分类与回归的可解模型gydF4y2Ba第18届ACM SIGKDD知识发现和数据挖掘国际会议论文集(KDD ' 12)。gydF4y2Ba中国北京:ACM出版社,2012,页150-158。gydF4y2Ba
Lou, Yin, Rich Caruana, Johannes Gehrke和Giles Hooker。“精确可解模型与成对交互。”gydF4y2Ba第19届ACM SIGKDD知识发现和数据挖掘国际会议论文集gydF4y2Ba芝加哥,伊利诺伊州,美国:ACM出版社,2013,pp. 623-631。gydF4y2Ba
版本历史gydF4y2Ba
R2021a中引入gydF4y2Ba
另请参阅gydF4y2Ba
CompactClassificationGAMgydF4y2Ba
|gydF4y2BaClassificationPartitionedGAMgydF4y2Ba
|gydF4y2BafitcgamgydF4y2Ba
|gydF4y2Ba重新开始gydF4y2Ba
|gydF4y2BaaddInteractionsgydF4y2Ba
主题gydF4y2Ba
Abrir比如gydF4y2Ba
Tiene una versión modificada de este ejemplo。¿Desea abrir este ejemplo con sus modificaciones?gydF4y2Ba
MATLAB突击队gydF4y2Ba
Ha hecho clic en unenlace que对应一个este commando de MATLAB:gydF4y2Ba
弹射突击队introduciéndolo en la ventana de commandos de MATLAB。Los navegadores web no permission comandos de MATLAB。gydF4y2Ba
选择网站gydF4y2Ba
选择一个网站,在可用的地方获得翻译的内容,并查看当地的活动和优惠。根据您所在的位置,我们建议您选择:gydF4y2Ba.gydF4y2Ba
您也可以从以下列表中选择一个网站:gydF4y2Ba
如何获得最佳的网站性能gydF4y2Ba
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。gydF4y2Ba
美洲gydF4y2Ba
- 美国拉丁gydF4y2Ba(西班牙语)gydF4y2Ba
- 加拿大gydF4y2Ba(英语)gydF4y2Ba
- 美国gydF4y2Ba(英语)gydF4y2Ba
欧洲gydF4y2Ba
- 比利时gydF4y2Ba(英语)gydF4y2Ba
- 丹麦gydF4y2Ba(英语)gydF4y2Ba
- 德国gydF4y2Ba(德语)gydF4y2Ba
- 西班牙gydF4y2Ba(西班牙语)gydF4y2Ba
- 芬兰gydF4y2Ba(英语)gydF4y2Ba
- 法国gydF4y2Ba(法语)gydF4y2Ba
- 爱尔兰gydF4y2Ba(英语)gydF4y2Ba
- 意大利gydF4y2Ba(意大利语)gydF4y2Ba
- 卢森堡gydF4y2Ba(英语)gydF4y2Ba
- 荷兰gydF4y2Ba(英语)gydF4y2Ba
- 挪威gydF4y2Ba(英语)gydF4y2Ba
- 奥地利gydF4y2Ba(德语)gydF4y2Ba
- 葡萄牙gydF4y2Ba(英语)gydF4y2Ba
- 瑞典gydF4y2Ba(英语)gydF4y2Ba
- 瑞士gydF4y2Ba
- 联合王国gydF4y2Ba(英语)gydF4y2Ba
亚太地区gydF4y2Ba
- 澳大利亚gydF4y2Ba(英语)gydF4y2Ba
- 印度gydF4y2Ba(英语)gydF4y2Ba
- 新西兰gydF4y2Ba(英语)gydF4y2Ba
- 中国gydF4y2Ba
- 日本gydF4y2Ba(日本語)gydF4y2Ba
- 한국gydF4y2Ba(한국어)gydF4y2Ba