主要内容

kfoldMargin

训练中未使用的观察值的分类裕度

描述

例子

= kfoldMargin (CVMdl返回交叉验证的分类的利润率通过交叉验证,二元,线性分类模型得到CVMdl.也就是说,对于每一次折叠,kfoldMargin估计它在使用所有其他观测值训练时所持有的观测值的分类裕度。

包含线性分类模型中每个正则化强度的分类裕度CVMdl

输入参数

全部展开

交叉验证,二元,线性分类模型,指定为ClassificationPartitionedLinear模型对象。您可以创建ClassificationPartitionedLinear模型使用fitclinear并指定任何一个交叉验证,名值对参数,例如,CrossVal

为了获得估计,kfoldMargin应用用于交叉验证线性分类模型的相同数据(X而且Y).

输出参数

全部展开

旨在分类的利润率,作为数字向量或矩阵返回。

n——- - - - - -l,在那里n所创建的数据中的观察数是多少CVMdl(见X而且Y),l正则化强度的数量在吗CVMdl(即,元素个数(CVMdl.Trained {1} .Lambda)).

米(j交叉验证的分类是否有观察范围采用正则化强度较高的线性分类模型CVMdl.Trained {1} .Lambda (j

数据类型:|

例子

全部展开

加载NLP数据集。

负载nlpdata

X是一个稀疏矩阵的预测数据,和Y是类标签的分类向量。数据中有两个以上的类。

这些模型应该识别网页中的字数是否来自统计和机器学习工具箱™文档。因此,确定与统计和机器学习工具箱™文档网页对应的标签。

Ystats = Y ==“统计数据”

交叉验证二进制线性分类模型,该模型可以识别文档网页中的字数是否来自统计和机器学习工具箱™文档。

rng (1);%用于再现性CVMdl = fitclinear(X,Ystats,“CrossVal”“上”);

CVMdl是一个ClassificationPartitionedLinear模型。默认情况下,该软件实现10倍交叉验证。控件可以更改折叠数“KFold”名称-值对参数。

估计交叉验证的裕度。

m = kfoldMargin(CVMdl);尺寸(米)
ans =1×231572年1

是一个31572 × 1向量。米(j)折页外边距的平均值是否为观察值j

画出k-使用箱形图折叠边缘。

图;箱线图(m);H = gca;h.YLim = [-5 30];标题(“交叉验证边际的分布”

图中包含一个轴对象。标题为Distribution of Cross-Validated margin的axes对象包含7个类型为line的对象。

执行特征选择的一种方法是比较k-从多个模型折边距。仅根据这一标准,边界较大的分类器是更好的分类器。

加载NLP数据集。预处理数据,如估计k-Fold交叉验证裕度

负载nlpdataYstats = Y ==“统计数据”;X = X';

创建以下两个数据集:

  • fullX包含所有预测符。

  • partX包含随机选择的预测因子的1/2。

rng (1);%用于再现性p = size(X,1);%预测因子的数量halfPredIdx = randsample(p,ceil(0.5*p));fullX = X;partX = X(halfPredIdx,:);

交叉验证两个二元线性分类模型:一个使用所有预测因子,一个使用一半预测因子。利用SpaRSA对目标函数进行优化,表明观测值与列相对应。

CVMdl = fitclinear(fullX,Ystats,“CrossVal”“上”“规划求解”“sparsa”...“ObservationsIn”“列”);PCVMdl = fitclinear(partX,Ystats,“CrossVal”“上”“规划求解”“sparsa”...“ObservationsIn”“列”);

CVMdl而且PCVMdlClassificationPartitionedLinear模型。

估计k-每个分类器的褶边距。的分布图k-fold边框设置使用箱形图。

fullmargin = kfoldMargin(CVMdl);partmargin = kfoldMargin(PCVMdl);图;箱线图([fullMargins partMargins),“标签”...“所有预测”《一半的预测者》});H = gca;h.YLim = [-30 60];标题(“交叉验证边际的分布”

图中包含一个轴对象。标题为Distribution of Cross-Validated margin的axes对象包含14个类型为line的对象。

这两个分类器的边缘分布是相似的。

为了确定一个良好的套索惩罚强度的线性分类模型,使用逻辑回归学习器,比较分布k倍的利润。

加载NLP数据集。预处理数据,如估计k-Fold交叉验证裕度

负载nlpdataYstats = Y ==“统计数据”;X = X';

创建一组11个对数间隔的正则化强度 1 0 - 8 通过 1 0 1

Lambda = logspace(-8,1,11);

使用5次交叉验证交叉验证二元线性分类模型,并使用每种正则化强度。利用SpaRSA对目标函数进行优化。将目标函数的梯度公差降低到1 e-8

rng (10);%用于再现性CVMdl = fitclinear(X,Ystats,“ObservationsIn”“列”“KFold”5,...“学习者”“物流”“规划求解”“sparsa”“正规化”“套索”...“λ”λ,“GradientTolerance”1 e-8)
CVMdl = ClassificationPartitionedLinear CrossValidatedModel: 'Linear' ResponseName: 'Y' NumObservations: 31572 KFold: 5 Partition: [1x1 cvpartition] ClassNames: [0 1] ScoreTransform: 'none'属性,方法

CVMdl是一个ClassificationPartitionedLinear模型。因为fitclinear实现5倍交叉验证,CVMdl包含5ClassificationLinear软件在每次折叠上训练的模型。

估计k-每个正则化强度的折叠边缘。

m = kfoldMargin(CVMdl);尺寸(米)
ans =1×231572年11

是每个观察值的交叉验证边界的31572 × 11矩阵。列对应于正则化强度。

画出k-每个正则化强度的折叠边缘。因为逻辑回归得分在[0,1],所以边际在[-1,1]。重新调整裕度,以帮助确定使网格上的裕度最大化的正则化强度。

图箱线图(10000.^m)“指数化测试样本边际”)包含(“λ指数”

图中包含一个轴对象。axis对象包含77个line类型的对象。

的几个值λ收益率k-在10000点附近压缩的折叠边际分布。较高的lambda值导致预测变量稀疏性,这是分类器的一个良好品质。

的中心之前的正则化强度k-fold边际分布开始减少。

LambdaFinal = Lambda(5);

使用整个数据集训练线性分类模型,并指定所需的正则化强度。

MdlFinal = fitclinear(X,Ystats,“ObservationsIn”“列”...“学习者”“物流”“规划求解”“sparsa”“正规化”“套索”...“λ”, LambdaFinal);

要估计新观测值的标签,请通过MdlFinal新的数据预测

更多关于

全部展开

版本历史

在R2016a中引入