主要内容

CompactClassificationSVM

紧凑的支持向量机金宝app(SVM)看到下面成了和二进制分类

描述

CompactClassificationSVM是一个紧凑版本的支持向量机(SVM)分类器。金宝app紧凑的分类器不包括数据用于训练SVM分类器。因此,您不能执行一些任务,比如交叉验证,使用紧凑的分类器。使用一个紧凑的SVM分类器预测新数据的标签等任务。

创建

创建一个CompactClassificationSVM模型从一个完整的训练ClassificationSVM分类器通过使用紧凑的

属性

全部展开

支持向量机性能

这个属性是只读的。

训练分类器系数,作为指定年代1数字向量。年代支持向量的个数在训练分类器,金宝app总和(Mdl.IsS金宝appupportVector)

α从对偶问题包含了训练分类器系数,也就是说,估计拉格朗日乘数法。如果你删除重复使用RemoveDuplicates名称-值对的观点fitcsvm,那么对于一个给定的重复观测的支持向量,金宝appα包含一个系数对应于整个集。也就是说,MATLAB®属性的非零系数,观察组副本和一个系数0所有其他的重复观测。

数据类型:|

这个属性是只读的。

线性预测系数,指定为一个数值向量。的长度β等于预测用于训练模型的数量。

MATLAB使用完整的虚拟扩展分类变量的预测数据编码。即MATLAB为每个级别创建一个虚拟变量的每个类别变量。β存储一个值为每个预测变量,包括虚拟变量。例如,如果有三个因素,其中一个是类别变量有三个水平,β是一个数值向量包含五个值。

如果KernelParameters.Function“线性”观察,然后分类评分x

f ( x ) = ( x / 年代 ) β + b

Mdl商店β,b,年代在属性β,偏见,KernelParameters.Scale,分别。

手动来估计分类的分数,你必须首先应用任何转换过程中使用预测数据训练。具体地说,如果你指定“标准化”,真的当使用fitcsvm,那么你必须手动规范预测数据使用的意思Mdl.Mu和标准偏差Mdl.Sigma,然后将结果除以内核规模Mdl.KernelParameters.Scale

所有支持向量机功能,如resubPredict预测估计之前,应用所需的转换。

如果KernelParameters.Function不是“线性”,然后β是空的([])。

数据类型:|

这个属性是只读的。

偏见,指定为一个标量。

数据类型:|

这个属性是只读的。

内核参数,指定为一个结构数组。内核参数属性包含这个表中列出的字段。

描述
函数

核函数用于计算的元素格拉姆矩阵。有关详细信息,请参见“KernelFunction”

规模

内核尺度参数用于规模预测数据的所有元素的模型是训练有素的。有关详细信息,请参见“KernelScale”

显示的值KernelParameters,使用点符号。例如,Mdl.KernelParameters.Scale显示内核参数值。

软件接受KernelParameters作为输入,不修改它们。

数据类型:结构体

这个属性是只读的。

金宝app支持向量类的标签,作为一个指定年代1数字向量。年代支持向量的个数在训练分类器,金宝app总和(Mdl.IsS金宝appupportVector)

的值+ 1金宝appSupportVectorLabels表明积极的相应的支持向量类(金宝app一会{2})。的值1显示相应的支持向量是负类(金宝app一会{1})。

如果你删除重复使用RemoveDuplicates名称-值对的观点fitcsvm,那么对于一个给定的重复观测的支持向量,金宝app金宝appSupportVectorLabels包含一个独特的支持向量的标签。金宝app

数据类型:|

这个属性是只读的。

金宝app支持向量分类器训练,指定为一个年代——- - - - - -p数字矩阵。年代支持向量的个数在训练分类器,金宝app总和(Mdl.IsS金宝appupportVector),p是预测变量预测的数据的数量。

金宝appSupportVectors包含行数据的预测XMATLAB认为支持向量。金宝app如果您指定“标准化”,真的当训练SVM分类器使用fitcsvm,然后金宝appSupportVectors包含标准化的行X

如果你删除重复使用RemoveDuplicates名称-值对的观点fitcsvm,那么对于一个给定的重复观测的支持向量,金宝app金宝appSupportVectors包含一个独特的支持向量。金宝app

数据类型:|

其他分类属性

这个属性是只读的。

分类预测指标,指定为一个向量的正整数。CategoricalPredictors包含索引值表明相应的预测分类。索引值介于1和p,在那里p预测的数量被用来训练模型。如果所有的预测都直言,那么这个属性是空的([])。

数据类型:

这个属性是只读的。

独特的类标签用于培训,指定为一个类别或字符数组,逻辑或数值向量,或单元阵列的特征向量。一会具有相同的数据类型的类标签吗Y(软件对字符串数组作为细胞阵列特征向量)。一会也决定了课堂秩序。

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

这个属性是只读的。

误分类代价,指定为一个数字方阵。

  • 两种学习的成本属性存储指定的误分类代价矩阵成本名称-值参数的拟合函数。行对应于真实的类和列对应预测类。也就是说,成本(i, j)是一个指向类分类的成本j如果它真正的类。的行和列的顺序成本对应于类的顺序一会

  • 看到下面成了学习,成本= 0

数据类型:

这个属性是只读的。

扩展预测名称,指定为一个单元阵列的特征向量。

如果模型使用哑变量编码为分类变量ExpandedPredictorNames包括名称,描述变量扩展。否则,ExpandedPredictorNames是一样的PredictorNames

数据类型:细胞

这个属性是只读的。

预测方法,指定为一个数值向量。如果您指定“标准化”,1“标准化”,真的当你训练一个支持向量机分类器使用fitcsvm,然后的长度μ等于预测的数量。

MATLAB使用完整的虚拟扩展分类变量的预测数据编码。即MATLAB为每个级别创建一个虚拟变量的每个类别变量。μ存储一个值为每个预测变量,包括虚拟变量。然而,MATLAB并不规范的列包含分类变量。

如果你设置“标准化”,假的当你训练SVM分类器使用fitcsvm,然后μ是一个空向量([])。

数据类型:|

这个属性是只读的。

预测变量名称,指定为一个单元阵列的特征向量。元素的顺序PredictorNames对应的顺序预测的名字出现在训练数据。

数据类型:细胞

这个属性是只读的。

先验概率为每个类,指定为一个数值向量。

两种学习,如果你指定一个成本矩阵,那么软件更新的先验概率将描述的惩罚成本矩阵。

  • 两种学习,软件可实现指定的先验概率之前名称-值参数的拟合函数,这样的概率之和为1。的之前属性存储规范化的先验概率。元素的顺序之前对应的元素Mdl.ClassNames

  • 看到下面成了学习,之前= 1

数据类型:|

分数变换,指定为一个特征向量或函数句柄。ScoreTransform代表一个内置的函数或一个函数处理转换分类预测分数。

改变分数转换函数函数例如,使用点符号。

  • 对于一个内置的函数,输入一个特征向量。

    Mdl。ScoreTransform = '函数”;

    此表描述了可用的内置函数。

    价值 描述
    “doublelogit” 1 / (1 +e2x)
    “invlogit” 日志(x/ (1 -x))
    “ismax” 集类的分数最大的分数为1,并设置所有其他类的分数为0
    分对数的 1 / (1 +e- - - - - -x)
    “没有”“身份” x(转换)
    “标志” 1x< 0
    为0x= 0
    1x> 0
    “对称” 2x- 1
    “symmetricismax” 集合类的分数最大的分数为1,和所有其他类的分数设置为1
    “symmetriclogit” 2 / (1 +e- - - - - -x)- 1

  • MATLAB函数或你定义一个函数,输入函数处理。

    Mdl。ScoreTransform = @函数;

    函数必须接受一个矩阵(原始分数)并返回一个相同大小的矩阵(转换后的分数)。

数据类型:字符|function_handle

这个属性是只读的。

预测标准差,指定为一个数值向量。

如果您指定“标准化”,真的当你训练SVM分类器使用fitcsvm,然后的长度σ=数量的预测变量。

MATLAB使用完整的虚拟扩展分类变量的预测数据编码。即MATLAB为每个级别创建一个虚拟变量的每个类别变量。σ存储一个值为每个预测变量,包括虚拟变量。然而,MATLAB并不规范的列包含分类变量。

如果你设置“标准化”,假的当你训练SVM分类器使用fitcsvm,然后σ是一个空向量([])。

数据类型:|

对象的功能

compareHoldout 比较两种分类模型使用新数据的精度
discard金宝appSupportVectors 放弃支持向量线性金宝app支持向量机(SVM)分类器
边缘 找到分类支持向量机(SVM)分类器的边缘金宝app
fitPosterior 合适的后验概率为紧凑的支持向量机(SVM)分类器金宝app
incrementalLearner 转换成二进制分类支持向量机(SVM)模型增量学习金宝app
石灰 本地可model-agnostic解释(石灰)
损失 找到分类错误的支持向量机(SVM)分类器金宝app
保证金 找到分类利润支持向量机(SVM)分类器金宝app
partialDependence 计算部分依赖
plotPartialDependence 创建部分依赖图(PDP)和个人条件期望(ICE)情节
预测 观察使用支持向量机(SVM)分类器进行分类金宝app
沙普利 沙普利值
更新 更新模型参数代码生成

例子

全部折叠

减少大小的一个完整的支持向量机(SVM)分类器的训练金宝app数据。完整的SVM分类器(即ClassificationSVM分类器)训练数据。要提高效率,使用一个较小的分类器。

加载电离层数据集。

负载电离层

一个支持向量机分类器训练。规范预测数据和指定类的顺序。

SVMModel = fitcsvm (X, Y,“标准化”,真的,“类名”,{“b”,‘g’})
SVMModel = ClassificationSVM ResponseName:‘Y’CategoricalPredictors:[]类名:{b ' g '} ScoreTransform:“没有一个”NumObservations: 351α:[90 x1双]偏见:-0.1343 KernelParameters: [1 x1 struct]μ:[0.8917 0 0.6413 0.0444 0.6011 0.1159 0.5501……σ:[0.3112 0 0.4977 0.4414 0.5199 0.4608 0.4927…]BoxConstraints: x1双[351]ConvergenceInfo: [1 x1 struct] IsSupport金宝appVector: x1逻辑[351]解算器:SMO的属性,方法

SVMModel是一个ClassificationSVM分类器。

减少支持向量机分类器的大小。

CompactSVMModel =紧凑(SVMModel)
CompactSVMModel = CompactClassificationSVM ResponseName:‘Y’CategoricalPredictors:[]类名:{b ' g '} ScoreTransform:‘没有’α:[90 x1双]偏见:-0.1343 KernelParameters: [1 x1 struct]μ:[0.8917 0 0.6413 0.0444 0.6011 0.1159 0.5501……σ:[0.3112 0 0.4977 0.4414 0.5199 0.4608 0.4927…]S金宝appupportVectors: [90 x34双]SupportVectorLabels: [90 x1双]属性,方法

CompactSVMModel是一个CompactClassificationSVM分类器。

显示每个分类器所使用的内存数量。

谁(“SVMModel”,“CompactSVMModel”)
类属性名称大小字节CompactSVMModel 1 x1 31058 classreg.learning.classif。141148 ClassificationSVM CompactClassificationSVM SVMModel 1 x1

完整的SVM分类器(SVMModel)超过四倍紧凑的SVM分类器(CompactSVMModel)。

标签新观测效率,您可以删除SVMModel从MATLAB®工作区,然后通过CompactSVMModel和新的值来预测指标预测

为了进一步减少紧凑的SVM分类器的大小,使用discard金宝appSupportVectors函数丢弃支持向量。金宝app

加载电离层数据集。

负载电离层

训练,旨在支持向量机分类器。规范预测数据和指定类的顺序。

rng (1);%的再现性CVSVMModel = fitcsvm (X, Y,“标准化”,真的,“类名”,{“b”,‘g’},“CrossVal”,“上”)
CVSVMModel = ClassificationPartitionedModel CrossValidatedModel:“支持向量机”PredictorNames: {1} x34细胞ResponseName:“Y”NumObservations: 351 KFold: 10个分区:[1 x1 cvpartition]类名:{b ' g '} ScoreTransform:“没有一个”属性,方法

CVSVMModel是一个ClassificationPartitionedModel旨在支持向量机分类器。默认情况下,软件实现了10倍交叉验证。

或者,您可以旨在训练ClassificationSVM分类器通过它crossval

检查的一个训练有素的折叠使用点符号。

CVSVMModel.Trained {1}
ans = CompactClassificationSVM ResponseName:‘Y’CategoricalPredictors:[]类名:{b ' g '} ScoreTransform:‘没有’α:[78 x1双]偏见:-0.2209 KernelParameters: [1 x1 struct]μ:[0.8888 0 0.6320 0.0406 0.5931 0.1205 0.5361……σ:[0.3149 0 0.5033 0.4441 0.5255 0.4663 0.4987…]S金宝appupportVectors: [78 x34双]SupportVectorLabels: [78 x1双]属性,方法

每一个褶皱都是CompactClassificationSVM分类器训练数据的90%。

估计泛化误差。

genError = kfoldLoss (CVSVMModel)
genError = 0.1168

泛化误差平均为12%左右。

引用

[1]Hastie, T。,R. Tibshirani, and J. Friedman.统计学习的元素,第二版。纽约:施普林格出版社,2008年。

[2]Scholkopf B。,J. C. Platt, J. C. Shawe-Taylor, A. J. Smola, and R. C. Williamson. “Estimating the Support of a High-Dimensional Distribution.”神经计算。第7卷。13日,2001年,页1443 - 1471。

[3]Christianini, N。,J. C. Shawe-Taylor.介绍支持向量机和其他基于学习的方法金宝app。英国剑桥:剑桥大学出版社,2000年。

[4]Scholkopf B。答:Smola。学习与内核:支持向量机,正则化优化,自适应计算金宝app和机器学习。剑桥,麻州:麻省理工学院出版社,2002年。

扩展功能

版本历史

介绍了R2014a

全部展开

行为改变R2022a