kfoldMargin
训练中未使用的观察值的分类裕度
描述
输入参数
CVMdl
- - - - - -交叉验证,二元,线性分类模型
ClassificationPartitionedLinear
模型对象
交叉验证,二元,线性分类模型,指定为ClassificationPartitionedLinear
模型对象。您可以创建ClassificationPartitionedLinear
模型使用fitclinear
并指定任何一个交叉验证,名值对参数,例如,CrossVal
.
输出参数
例子
估计k-折叠交叉验证边距
加载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];标题(“交叉验证边际的分布”)
特征选择使用k倍的利润
执行特征选择的一种方法是比较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
而且PCVMdl
是ClassificationPartitionedLinear
模型。
估计k-每个分类器的褶边距。的分布图k-fold边框设置使用箱形图。
fullmargin = kfoldMargin(CVMdl);partmargin = kfoldMargin(PCVMdl);图;箱线图([fullMargins partMargins),“标签”,...{“所有预测”,《一半的预测者》});H = gca;h.YLim = [-30 60];标题(“交叉验证边际的分布”)
这两个分类器的边缘分布是相似的。
找到好的套索惩罚使用k倍的利润
为了确定一个良好的套索惩罚强度的线性分类模型,使用逻辑回归学习器,比较分布k倍的利润。
加载NLP数据集。预处理数据,如估计k-Fold交叉验证裕度.
负载nlpdataYstats = Y ==“统计数据”;X = X';
创建一组11个对数间隔的正则化强度 通过 .
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)“指数化测试样本边际”)包含(“λ指数”)
的几个值λ
收益率k-在10000点附近压缩的折叠边际分布。较高的lambda值导致预测变量稀疏性,这是分类器的一个良好品质。
的中心之前的正则化强度k-fold边际分布开始减少。
LambdaFinal = Lambda(5);
使用整个数据集训练线性分类模型,并指定所需的正则化强度。
MdlFinal = fitclinear(X,Ystats,“ObservationsIn”,“列”,...“学习者”,“物流”,“规划求解”,“sparsa”,“正规化”,“套索”,...“λ”, LambdaFinal);
要估计新观测值的标签,请通过MdlFinal
新的数据预测
.
更多关于
分类保证金
的分类保证金对于二元分类,对于每个观察,是真实类别的分类分数与虚假类别的分类分数之间的差值。
该软件将二进制分类的分类裕度定义为
x是一种观察。如果真标签的x那么,是阳性类吗y为1,否则为-1。f(x)为观察的正类分类分数x.分类裕度通常定义为米=yf(x).
如果边际在同一个尺度上,那么它们可以作为分类置信度的衡量标准。在多个分类器中,利润率更高的分类器更好。
分类分
对于线性分类模型,原始的分类分对观测进行分类x,一个行向量,转化为正类定义为
对于具有正则化强度的模型j,
估计的列向量的系数(模型属性β(:,j)
),
估计的标量偏差(模型属性偏见(j)
).
用于分类的原始分类分数x进入负类的是-f(x).该软件将观察结果分为产生正分的类别。
如果线性分类模型由逻辑回归学习器组成,则该软件应用分对数的
分数转换为原始分类分数(见ScoreTransform
).
版本历史
在R2016a中引入
Matlab명령
다음matlab명령에해당하는링크를클릭했습니다。
명령을실행하려면matlab명령창에입력하십시오。웹브라우저는matlab명령을지원하지않습니다。
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。