主要内容

保证金

类:ClassificationLinear

分类利润率为线性分类模型

描述

例子

=利润(Mdl,X,Y)返回分类的利润率二进制的线性分类模型Mdl使用预测数据X和相应的类标签Y包含每个正则化强度的分类的利润率Mdl

例子

=利润(Mdl,X,Y“ObservationsIn”,)指定了预测数据观察维度“行”(默认)或“列”。例如,指定“ObservationsIn”、“列”预测数据表明列对应于观测。

=利润(Mdl,资源描述,ResponseVarName)返回训练线性分类器的分类的利润率Mdl使用预测数据表资源描述和类标签Tbl.ResponseVarName

=利润(Mdl,资源描述,Y)返回分类器的分类的利润率Mdl使用预测数据表资源描述和类标签向量Y

输入参数

全部展开

二元线性分类模型,指定为ClassificationLinear模型对象。您可以创建一个ClassificationLinear模型对象使用fitclinear

预测数据,指定为一个n——- - - - - -p完整的或稀疏矩阵。这个方向的X表明行对应于个人观察,和列对应于个人预测变量。

请注意

如果你东方预测矩阵,以便观察并指定对应列“ObservationsIn”、“列”,那么你可能会经历显著减少计算时间。

的长度Y和观察的数量X必须是相等的。

数据类型:|

指定的类标签,分类,特点,或字符串数组;逻辑或数值向量;或细胞的特征向量。

  • 的数据类型Y的数据类型必须相同吗Mdl.ClassNames(软件对字符串数组作为细胞阵列特征向量)。

  • 的不同的类Y必须是一个子集的Mdl.ClassNames

  • 如果Y每个元素是一个字符数组,那么必须对应一个数组的行。

  • 的长度Y必须等于观测的数量X资源描述

数据类型:分类|字符|字符串|逻辑|||细胞

预测数据观察维度,指定为“列”“行”

请注意

如果你东方预测矩阵,以便观察并指定对应列“ObservationsIn”、“列”,那么你可能会经历显著减少优化执行时间。你不能指定“ObservationsIn”、“列”预测数据表。

样本数据用于训练模型,指定为一个表。每一行的资源描述对应于一个观察,每一列对应一个预测变量。可选地,资源描述响应变量可以包含额外的列和观察权重。资源描述必须包含所有的预测用于火车Mdl。多列变量和细胞数组以外的细胞阵列的特征向量是不允许的。

如果资源描述包含响应变量用于火车Mdl,那么你不需要指定ResponseVarNameY

如果你训练Mdl使用样本数据包含在一个表中,然后输入数据保证金也必须在一个表中。

响应变量名称,指定为一个变量的名字资源描述。如果资源描述包含响应变量用于火车Mdl,那么你不需要指定ResponseVarName

如果您指定ResponseVarName,那么你必须指定它作为特征向量或字符串标量。例如,如果响应变量是存储为Tbl.Y,然后指定ResponseVarName作为“Y”。否则,软件将所有列资源描述,包括Tbl.Y预测因子。

响应变量必须分类,字符,或字符串数组;一个逻辑或数值向量;或一个单元阵列的特征向量。如果响应变量是一个字符数组,数组的每个元素都必须对应一行。

数据类型:字符|字符串

输出参数

全部展开

分类的利润率,返回一个数值列向量或矩阵。

n——- - - - - -l,在那里n观察的数量吗Xl正规化的数量优势在吗Mdl(即,元素个数(Mdl.Lambda))。

米(,j)分类的观察吗使用线性分类模型正规化训练强度Mdl.Lambda (j)

例子

全部展开

加载NLP数据集。

负载nlpdata

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

模型应该确定是否这个词项在一个web页面的统计和机器学习工具箱™文档。所以,确定对应的标签统计和机器学习的工具箱™文档web页面。

Ystats = Y = =“统计数据”;

火车一个二进制,线性分类模型,该模型可以确定这个词项在文档web页面是否从统计和机器学习工具箱™文档。指定坚持30%的观察。使用SpaRSA优化目标函数。

rng (1);%的再现性Ystats CVMdl = fitclinear (X,“规划求解”,“sparsa”,“坚持”,0.30);CMdl = CVMdl.Trained {1};

CVMdl是一个ClassificationPartitionedLinear模型。它包含属性训练有素的,这是一个1×1单元阵列举行ClassificationLinear使用训练集模型的软件培训。

从分区中提取的训练和测试数据的定义。

trainIdx =培训(CVMdl.Partition);testIdx =测试(CVMdl.Partition);

训练和测试样本估计的利润。

mTrain =利润率(CMdl X (trainIdx:), Ystats (trainIdx));太=利润率(CMdl X (testIdx:), Ystats (testIdx));

因为有一个正规化的力量CMdl,mTrain列向量的长度等于数量的训练和测试观察,分别。

情节两组边缘使用盒子情节。

图;箱线图([mTrain;太]、[0(大小(mTrain, 1), 1);(大小(mt, 1), 1)),“标签”,{“训练集”,测试集的});甘氨胆酸h =;h。Yl我米=[-5 60]; title“训练和测试集利润”

图包含一个坐标轴对象。坐标轴对象标题训练和测试集的利润包含14线类型的对象。

分布之间的利润出现类似的训练集和测试集。

进行特征选择的方法之一是比较测试样本的利润率从多个模型。仅仅根据这一标准,分类器与更大的利润率是更好的分类器。

加载NLP的数据集,数据的预处理估计测试样本的利润率

负载nlpdataYstats = Y = =“统计数据”;X = X ';rng (1);%的再现性

创建一个数据分区拥有30%的观察测试。

分区= cvpartition (Ystats,“坚持”,0.30);testIdx =测试(分区);%测试集指数XTest = X (:, testIdx);欧美= Ystats (testIdx);

分区是一个cvpartition对象定义了数据集的分区。

随机选择10%的预测变量。

p =大小(X, 1);%的预测数量idxPart = randsample (p,装天花板(0.1 * p));

火车两个二进制线性分类模型:一个使用所有的预测和一个使用随机的10%。使用SpaRSA优化目标函数,并表明,观察对应列。

Ystats CVMdl = fitclinear (X,“CVPartition”分区,“规划求解”,“sparsa”,“ObservationsIn”,“列”);PCVMdl = fitclinear (X (idxPart:), Ystats,“CVPartition”分区,“规划求解”,“sparsa”,“ObservationsIn”,“列”);

CVMdlPCVMdlClassificationPartitionedLinear模型。

提取训练ClassificationLinear模型从旨在模型。

CMdl = CVMdl.Trained {1};PCMdl = PCVMdl.Trained {1};

估计每个分类器的测试样本的利润率。情节利润的分配集使用盒子情节。

fullMargins =利润率(CMdl XTest,欧美,“ObservationsIn”,“列”);partMargins =利润率(PCMdl XTest (idxPart:),欧美,“ObservationsIn”,“列”);图;箱线图([fullMargins partMargins),“标签”,{“所有预测”,“10%的预测”});甘氨胆酸h =;h。Yl我米=[-20 60]; title(测试样本的利润的)

图包含一个坐标轴对象。坐标轴对象与标题试样边缘包含14线类型的对象。

的边缘分布CMdl位于高于利润分配PCMdl

确定好lasso-penalty强度线性分类模型,使用逻辑回归的学习者,比较测试样本的分布的利润率。

加载NLP的数据集,数据的预处理估计测试样本的利润率

负载nlpdataYstats = Y = =“统计数据”;X = X ';分区= cvpartition (Ystats,“坚持”,0.30);testIdx =测试(分区);XTest = X (:, testIdx);欧美= Ystats (testIdx);

创建一组11对数间隔正则化的优势 1 0 - - - - - - 8 通过 1 0 1

λ= logspace (8 1 11);

火车二进制,线性分类模型,使用每一种正则化的优势。使用SpaRSA优化目标函数。降低目标函数的梯度的宽容1 e-8

rng (10);%的再现性Ystats CVMdl = fitclinear (X,“ObservationsIn”,“列”,“CVPartition”分区,“学习者”,“物流”,“规划求解”,“sparsa”,“正规化”,“套索”,“λ”λ,“GradientTolerance”1 e-8)
CVMdl = ClassificationPartitionedLinear CrossValidatedModel:“线性”ResponseName:“Y”NumObservations: 31572 KFold: 1分区:[1 x1 cvpartition]类名:[0 1]ScoreTransform:“没有一个”属性,方法

提取训练线性分类模型。

Mdl = CVMdl.Trained {1}
Mdl = ClassificationLinear ResponseName:“Y”类名:[0 1]ScoreTransform:分对数的β:[34023 x11双]偏见:[-11.5378 -11.5378 -11.5378 -11.5378 -11.5378……λ:[1.0000 5.0119 6.3096 7.9433 e-08 e-08 e-07 e-06……学习者:“物流”属性,方法

Mdl是一个ClassificationLinear模型对象。因为λ是一个序列的正则化的优势,你能想到什么Mdl11岁的模型,每个正规化的力量在一个λ

估计测试样本的利润率。

m =利润率(Mdl X (:, testIdx) Ystats (testIdx),“ObservationsIn”,“列”);尺寸(米)
ans =1×29471年11

因为有11个正规化的优势,有11列。

绘制每个正规化的试样边缘的力量。因为逻辑回归的分数是在[0,1],利润在[1]。重新调节利润来帮助确定正则化力量最大化利润的网格。

图;箱线图(10000 m ^) ylabel (“取幂试样边缘的)包含(“λ指数”)

图包含一个坐标轴对象。坐标轴对象包含77行类型的对象。

数的值λ压实附近产生边缘分布 1 0 0 0 0 1 。更高的λ值导致预测变量稀疏,这是一个很好的分类器的质量。

选择正则化强度发生在边缘分布的中心开始减少。

LambdaFinal =λ(5);

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

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

为新观测估计标签,通过MdlFinal和新数据预测

更多关于

全部展开

扩展功能

介绍了R2016a