主要内容

利润

广义添加剂模型(GAM)的分类边距

    描述

    m=边距(MDL,,,,TBL,,,,响应varname返回分类保证金((m)对于广义添加剂模型MDL使用预测数据中的数据TBL以及真正的类标签tbl.ResponseVarname

    m作为一个n-b-1数字列向量,其中n是预测数据数据中的观察数。

    m=边距(MDL,,,,TBL,,,,y在表中使用预测数据数据TBL以及真正的类标签y

    例子

    m=边距(MDL,,,,X,,,,y在矩阵中使用预测数据X以及真正的类标签y

    例子

    m=边距(___,“包括Internactions”,包括Internactions指定是否在计算中包括交互项。您可以指定包括Internactions除了以前的语法中的任何输入参数组合。

    例子

    全部收缩

    估计广义添加剂模型的测试样品分类边缘和边缘。测试样品边缘是观察到的真实类得分减去错误类得分,而测试样品边缘是边缘的平均值。

    加载渔业数据集。创造X作为一个数字矩阵,包含两个versicolor和virginica虹膜的两个萼片和两个花瓣测量。创造y作为包含相应虹膜物种的字符矢量的细胞阵列。

    加载渔业inds = strcmp(物种,“ versicolor”)StrcMP(物种,'Virginica');x = meas(inds,:);y =物种(inds,:);

    使用类信息,将随机分区观测到训练集和带有分层的测试集中y。指定用于测试的30%保留样本。

    rng('默认'%可再现性cv = cvpartition(y,'坚持',0.30);

    提取培训和测试指数。

    traininds =训练(CV);testinds = test(CV);

    指定培训和测试数据集。

    Xtrain = X(traininds,:);ytrain = y(traininds);Xtest = x(testinds,:);ytest = y(testinds);

    使用预测变量训练游戏Xtrain和类标签ytrain。推荐的做法是指定类名。

    mdl = fitcgam(xtrain,ytrain,'classNames',{“ versicolor”,,,,'Virginica'});

    MDL是一个分类员模型对象。

    估计测试样品分类边缘和边缘。

    m = margin(mdl,xtest,ytest);e = edge(mdl,xtest,ytest)
    E = 0.8000

    显示测试样品分类边距的直方图。

    直方图(M,长度(唯一(M)),'正常化',,,,'可能性')xlabel(“测试样品边缘”)ylabel('可能性') 标题(“测试样品边缘的概率分布”

    图包含一个轴。带有标题概率分布的轴测试样品边缘包含类型直方图的对象。

    通过检查测试样品边缘和边缘,将具有线性术语的GAM与具有线性和交互项的GAM进行比较。仅基于此比较,最高边缘和边缘的分类器是最佳模型。

    加载电离层数据集。该数据集有34个预测指标和351个二进制响应,用于雷达回报,要么不好(要么'b')或好('G')。

    加载电离层

    使用类信息,将随机分区观测到训练集和带有分层的测试集中y。指定用于测试的30%保留样本。

    rng('默认'%可再现性cv = cvpartition(y,'坚持',0.30);

    提取培训和测试指数。

    traininds =训练(CV);testinds = test(CV);

    指定培训和测试数据集。

    Xtrain = X(traininds,:);ytrain = y(traininds);Xtest = x(testinds,:);ytest = y(testinds);

    训练一个包含线性和相互作用项的预测因子的游戏。指定包含所有可用的交互条款p- 价值不大于0.05。

    mdl = fitcgam(xtrain,ytrain,“互动”,,,,'全部',,,,“ maxpvalue”,0.05)
    mdl = classificationgam响应名称:'y'分类predictors:[] classNames:{'b''g'} scoretransform:'logit'截距:3.0398互动:[561x2 double] numobservations:246属性,方法,方法,方法,方法,方法

    MDL是一个分类员模型对象。MDL包括所有可用的互动条款。

    估计测试样品边缘和边缘MDL

    m = margin(mdl,xtest,ytest);e = edge(mdl,xtest,ytest)
    E = 0.7848

    估计测试样品边缘和边缘MDL不包括交互条款。

    m_nointeractions = margin(mdl,xtest,ytest,“包括Internactions”,错误的);e_nointeractions = edge(mdl,xtest,ytest,“包括Internactions”,错误的)
    e_no Interactions = 0.7871

    使用框图显示边缘的分布。

    BoxPlot([M_NO Interactions],'标签',{“线性和互动术语”,,,,“仅线性术语”}) 标题(“测试样品边缘的盒子图”

    图包含一个轴。带有标题框图样品余量的轴图包含14个类型线对象。

    边缘mm_no互动具有相似的分布,但是只有线性项的分类器的测试样品边缘更大。首选产生相对较大边缘的分类器。

    输入参数

    全部收缩

    广义加性模型,指定为分类员或者紧凑型驾驶员模型对象。

    • 如果您训练有素MDL使用表中包含的示例数据,然后使用利润也必须在表中(TBL)。

    • 如果您训练有素MDL使用矩阵中包含的示例数据,然后使用利润也必须在矩阵中X)。

    示例数据,指定为表。每一行TBL对应于一个观测值,每列对应于一个预测变量。不允许使用字符矢量的单元格数以外的多彩色变量和细胞阵列。

    TBL必须包含用于训练的所有预测因素MDL。可选TBL可以包含用于响应变量的列和观察权重的列。

    • 响应变量必须具有与mdl.y(该软件将字符串阵列视为字符向量的单元格数组。)如果响应变量在TBL具有与用于训练的响应变量相同的名称MDL,那么您无需指定响应varname

    • 权重值必须是数字向量。您必须指定观察权重TBL通过使用“重量”

    如果您训练有素MDL使用表中包含的示例数据,然后使用利润也必须在桌子中。

    数据类型:桌子

    响应变量名称,指定为字符向量或字符串标量,包含响应变量的名称TBL。例如,如果响应变量y存储在中tbl.y,然后将其指定为'y'

    数据类型:char|细绳

    类标签,指定为分类,字符或字符串数​​组,逻辑或数字向量或字符向量的单元格数组。每一行y表示相应行的分类X或者TBL

    y必须具有与mdl.y(该软件将字符串阵列视为字符向量的单元格数组。)

    数据类型:单身的|双倍的|分类|逻辑|char|细绳|细胞

    预测数据,指定为数字矩阵。每一行X对应于一个观测值,每列对应于一个预测变量。

    如果您训练有素MDL使用矩阵中包含的示例数据,然后使用利润也必须在矩阵中。

    数据类型:单身的|双倍的

    标志以包括模型的交互项,指定为真的或者错误的

    默认值包括Internactions值是真的如果MDL包含互动术语。值必须是错误的如果模型不包含交互项。

    数据类型:逻辑

    更多关于

    全部收缩

    分类保证金

    分类保证金对于二进制分类,对于每个观察结果,是真实类的分类得分与错误类的分类分数之间的差异。

    如果边缘在相同的尺度上(即分数值基于相同的分数转换),则它们是分类置信度度量。在多个分类器中,那些产生更大利润的分类器会更好。

    在R2021a中引入