主要内容

丢弃支持向量万博1manbetx

丢弃线性支持向量万博1manbetx机(SVM)分类器的支持向量

描述

实例

Mdl=丢弃支持向量(万博1manbetxMdlSV)返回经过训练的线性支持向量机(SVM)模型万博1manbetxMdl. 二者都Mdl以及经过训练的线性支持向量机模型MdlSV是相同类型的对象。也就是说,它们都是ClassificationSVM对象或CompactClassificationSVM物体。然而MdlMdlSV不同之处在于:

例子

全部崩溃

创建一个线性SVM模型,通过丢弃支持向量和其他相关参数来提高内存效率。万博1manbetx

加载电离层数据集。

负载电离层

使用整个数据集训练一个线性支持向量机模型。

MdlSV=fitcsvm(X,Y)
MdlSV=ClassificationSVM ResponseName:'Y'分类预测值:[]类名:{'b''g'}ScoreTransform:'none'numobervations:351 Alpha:[103x1 double]偏差:-3.8827内核参数:[1x1结构]框约束:[351x1 double]收敛信息:[1x1结构]IsupportVector:[351x1逻辑]解算器:“SMO”属性、方法万博1manbetx

在中显示支持向量的数量万博1manbetxMdlSV

numSV =大小(MdlSV.Sup万博1manbetxportVectors, 1)
numSV=103

在中显示预测器变量的数量X

p=尺寸(X,2)
p=34

默认情况下,fitcsvm训练线性支持向量机模型进行两类学习。软件列出阿尔法在显示。该模型包括103个支持向量和34个预测因子。万博1manbetx如果丢弃支持向量,得到的模型会消耗更少万博1manbetx的内存。

丢弃支持向量和其他相关参万博1manbetx数。

Mdl=丢弃支持向量(Md万博1manbetxlSV)
Mdl=ClassificationSVM ResponseName:'Y'分类预测值:[]类名:{b''g'}ScoreTransform:'none'NumObservations:351 Beta:[34x1 double]偏差:-3.8827内核参数:[1x1结构]框约束:[351x1 double]收敛信息:[1x1结构]IsupportVector:[351x1逻辑]解算器:'SMO'属性,方法万博1manbetx

显示的系数Mdl

Mdl.Alpha
ans=[]

在中显示支持向量万博1manbetxMdl

支持向量万博1manbetx
ans=[]

中显示支持向量类标签万博1manbetxMdl

Mdl。万博1manbetxSupportVectorLabels
ans=[]

软件列出贝塔在显示而不是阿尔法.这个阿尔法,万博1manbetx支持向量,万博1manbetxSupportVectorLabels属性是空的。

比较模型的大小。

vars=谁(“MdlSV”,“Mdl”);100*(1-vars(1.bytes/vars(2.bytes)
ans=20.5503

Mdl大约比它小20%MdlSV

去除MdlSV从工作区。

清晰的MdlSV

通过丢弃存储的支持向量和其他相关估计来压缩SVM模型。使用压缩模型预测一行训练数据的标签。万博1manbetx

加载电离层数据集。

负载电离层rng (1);%的再现性

使用默认选项训练支持向量机模型。

MdlSV = fitcsvm (X, Y);

MdlSV是一个ClassificationSVM包含其属性的非空值的模型阿尔法,万博1manbetx支持向量,万博1manbetxSupportVectorLabels属性。

通过丢弃训练数据、支持向量和相关估计来减小SVM模型的大小。万博1manbetx

CMdlSV=紧凑型(MdlSV);%丢弃训练数据CMdl=丢弃支持向量(CM万博1manbetxdlSV);%丢弃支持向量万博1manbetx

CMdl是一个CompactClassificationSVM模型

比较支持向量机模型的大小MdlSVCMdl

vars=谁(“MdlSV”,“CMdl”);100*(1-vars(1.bytes/vars(2.bytes)
ans = 96.8174

压缩模型CMdl消耗的内存比完整模型少得多。

使用下面的方法预测训练数据的随机行的标签CMdl.这个预测函数接受压缩的SVM模型,并且,对于线性SVM模型,不需要阿尔法,万博1manbetx支持向量,万博1manbetxSupportVectorLabels属性来预测新观测的标签。

idx=随机样本(大小(X,1),1)
idx=147
predictedLabel=Predicted(CMdl,X(idx,:))
预测标签=1 x1单元阵列{'b'}
trueLabel = Y (idx)
trueLabel=1 x1单元阵列{'b'}

输入参数

全部崩溃

经过训练的线性SVM模型,指定为ClassificationSVMCompactClassificationSVM模型

如果场地MdlSV.KernelParameters.Function不是“线性”(即,MdlSV不是线性SVM模型),软件返回错误。

提示

  • 对于经过训练的线性SVM模型万博1manbetx支持向量财产是一种财富Nsv——- - - - - -P矩阵Nsv支持向量的数量(最多为训练样本量)万博1manbetx和P是预测因素或特征的数量。这个阿尔法万博1manbetxSupportVectorLabels属性是带有Nsv元素。对于包含许多观察值或示例的复杂数据集,这些属性可能很大。这个贝塔属性是具有P元素。

  • 如果训练的支持向量机模型有许多支持向量,则使用万博1manbetx丢弃支持向量万博1manbetx减少经过训练的线性SVM模型占用的空间量。您可以通过输入来显示支持向量矩阵的大小万博1manbetx大小(MdlSV.Su万博1manbetxpportVectors)

算法

预测再预测估计支持向量机得分F(x),然后使用

F ( x ) = x β + B

βMdl。βB偏误,即贝塔偏见的属性Mdl,分别。有关详细信息,请参见万博1manbetx二值分类的支持向量机

介绍了R2015a