主要内容

丢弃普罗斯韦普金宝app罗斯韦

丢弃支持向量金宝app

句法

mdlout = discard金宝appsupportVectors(MDL)

描述

mdlout.= Discard金宝appSupportVectors(MDL.返回训练,线性支持向量机(SVM)回归模型金宝appmdlout.,它类似于训练,线性SVM回归模型MDL., 除了:

  • Α金宝app支持监视器属性是空的([])。

  • 如果你展示mdlout.,软件列出了bet财产而不是Α财产。

输入参数

展开全部

训练有素的线性SVM回归模型,指定为a回归vm.或者compactregressionsvm.模型。

如果您使用不是线性的内核函数训练模型(即,如果是字段mdl.kernelfunction.是以外的东西'线性'),软件返回错误。您只能丢弃用于线性模型的支持向量。金宝app

输出参数

展开全部

训练有素的线性SVM回归模型,作为一个返回回归vm.或者compactregressionsvm.模型。mdlout.是与之相同的类型MDL.

丢弃支撑载体后,属性金宝appΑ金宝app支持监视器是空的([])。该软件列出了该属性bet在其显示中,并没有列出该属性Α。这预测重新预订方法使用存储在中的系数计算预测的响应bet财产。

例子

展开全部

该模型显示如何通过丢弃支持向量和其他相关参数来减少训练的线性SVM回归模型使用的磁盘空间。金宝app

加载Carsmall.数据集。指定马力重量作为预测变量(X), 和MPG.作为响应变量(y)。

加载Carsmall.x = [马力,重量];y = mpg;

培训线性SVM回归模型,标准化数据。显示支持向量的数量。金宝app

mdl = fitrsvm(x,y,'标准化',true)numsv = size(mdl.s金宝appupportVectors,1)
mdl = regressionsvm predictornames:{'x1''x2'} racancaltebame:'y'patporicalpricictors:[] responseetransform:'none'alpha:[77x1 double]偏置:22.9131内核参数:[1x1 struct] mu:[109.3441 2.9625E + 03] Sigma:[45.3545 805.9668] NumObServations:93 BoxConstraints:[93x1 Double] ConvergenceInfo:[1x1 struct] issupp金宝apportVector:[93x1逻辑]求解器:'SMO'属性,方法NumSv = 77

默认,Fitrsvm.训练线性SVM回归模型。软件列表Α在显示屏中。该模型具有77个支持向量。金宝app

请注意,预测器和响应变量包含几个价值观。训练模型时,Fitrsvm.将删除包含的行来自预测器和响应数据的值。结果,培训的模型仅使用样本数据中包含的100个总观察的93个。

丢弃支持向量和其他相关参金宝app数。

mdlout = discard金宝appsupportvectors(mdl)mdlout.alpha mdlout.supportVectors
mdlout = regressionsvm predictornames:{'x1'x2'} racitalebame:'y'patporicalpricictors:[] OrkingEtransform:'none'beta:[2x1 double]偏置:22.9131内核参数:[1x1 struct] mu:[109.3441 2.9625E + 03] Sigma:[45.3545 805.9668] NumObServations:93 BoxConstraints:[93x1 Double] ConvergenceInfo:[1x1 struct] issupp金宝apportVector:[93x1逻辑]求解器:'SMO'属性,方法ANS = [] ANS = []

软件列表bet在显示器而不是Α。这Α金宝app支持监视器属性是空的。

比较模型的大小。

vars = whos('mdl''mdlout');[vars(1).bytes,vars(2).bytes]
ans = 15004 13156

mdlout.消耗更少的记忆MDL.因为它不存储支持向量。金宝app

此示例通过对模型进行压缩并丢弃支持向量,如何降低完整训练的SVM回归模型的内存消耗。金宝app

加载Carsmall.样本数据。

加载Carsmall.RNG.默认重复性的%

使用Linear SVM回归模型使用重量作为预测变量和MPG.作为响应变量。标准化数据。

mdl = fitrsvm(重量,mpg,'标准化',真的);

注意MPG.包含几个价值观。训练模型时,Fitrsvm.将删除包含的行来自预测器和响应数据的值。结果,培训的模型仅使用样品数据中包含的100个总观察中的94个。

压缩回归模型,以丢弃培训数据和与培训过程有关的一些信息。

CompactMDL = Compact(MDL);

compactmdl.是A.compactregressionsvm.具有相同参数,支持向量和相关估计的模型金宝appMDL.,但不再存储培训数据。

丢弃压缩模型的支持向量和金宝app相关估计。

mdlout = discard金宝appsupportvectors(compactmdl);

mdlout.是A.compactregressionsvm.具有相同参数的模型MDL.compactmdl.,但不再存储支持向量和相关估计。金宝app

比较三个SVM回归模型的大小,compactmdl.MDL., 和mdlout.

vars = whos('compactmdl''mdl''mdlout');[vars(1).bytes,vars(2).bytes,vars(3).bytes]
ANS = 3601 13727 2305

压实的模型compactmdl.消耗3601字节的内存,而完整的模型MDL.消耗13727个字节的内存。该模型mdlout.,这也丢弃了支持向量,消耗了2305个字节的内存。金宝app

尖端

对于训练,线性SVM回归模型,金宝app支持监视器属性是ANNSV.-经过-P.矩阵。NSV.是支持向量的数量(在大多数训练样本金宝app大小)和P.是预测变量的数量。如果任何预测器都是分类的,那么P.包括考虑所有分类预测器级别所需的虚拟变量的数量。这Α属性是矢量NSV.元素。

金宝app支持监视器Α对于包含许多观察或示例的复杂数据集,属性很大。然而bet属性是矢量P.元素,可能相当较小。您可以使用训练的SVM回归模型来预测响应值,即使您丢弃支持向量,因为金宝app预测重新预订方法使用bet计算预测的响应。

如果训练有素的线性SVM回归模型有许多支持向量,使用金宝app丢弃普罗斯韦普金宝app罗斯韦要减少培训的线性SVM回归模型消耗的磁盘空间量。您可以通过输入显示支持向量矩阵的大小金宝app大小(mdlin.su金宝apppportVectors)

算法

预测重新预订使用公式估算响应值

F X = X S. β + β 0.

在哪里:

  • β是β值,存储为mdl.beta.

  • β0.是偏置值,存储为mdl.bias.

  • X是培训数据。

  • S.是内核比例值,存储为mdl.kernelparameters.scale.

通过这种方式,软件可以使用该值mdl.beta.即使在丢弃支持向量之后也要预测。金宝app

在R2015B中介绍