预测

使用支持向量机分类观测(SVM)分类万博1manbetx

描述

标签=预测(SVMModelX返回预测类别标签的向量为表或矩阵的预测数据X基于经训练的支持向量机(SVM)分类模型万博1manbetxSVMModel。经过训练的SVM模型可以是全部或紧凑。

[标签得分] =预测(SVMModelX也返回分数的矩阵(得分)表示的标签来自特定类的可能性。对于SVM,可能的措施或者是分类评分或类后验概率。对于每个观测X,预测类标签对应的最高得分各阶层中。

例子

全部收缩

加载电离层数据集。

加载<小号pan style="color:#A020F0">电离层RNG(1);<小号pan style="color:#228B22">%用于重现

训练SVM分类器。指定15%的保留样本用于测试,规范的数据,并指定'G'是正课。

CVSVMModel = fitcsvm(X,Y,<小号pan style="color:#A020F0">'坚持',0.15,<小号pan style="color:#A020F0">“类名”{<小号pan style="color:#A020F0">'B',<小号pan style="color:#A020F0">'G'},<小号pan style="color:#0000FF">...“标准化”,真正);CompactSVMModel = CVSVMModel.Trained {1};<小号pan style="color:#228B22">%提取物训练有素的,紧凑的分类testInds =试验(CVSVMModel.Partition);<小号pan style="color:#228B22">%提取测试指标XTEST = X(testInds,:);YTest = Y(testInds,:);

CVSVMModelClassificationPartitionedModel分类。它包含属性熟练,这是一个1×1单元阵列保持CompactClassificationSVM分类,该软件使用训练集训练。

标记测试样品观察结果。显示用于在测试样品中的前10个观察结果。

[标号,得分=预测(CompactSVMModel,XTEST);表(YTest(1:10),标签(1:10),分(1:10,2),<小号pan style="color:#A020F0">'VariableNames',<小号pan style="color:#0000FF">...{<小号pan style="color:#A020F0">'TrueLabel',<小号pan style="color:#A020F0">'PredictedLabel',<小号pan style="color:#A020F0">'得分'})
ANS =<小号pan class="emphasis">10×3的表TrueLabel PredictedLabel分数_________ ______________ ________ { 'B'} { 'B'} {-1.7175 'G'} { 'G'} 2.0001 { 'B'} { 'B'} {-9.6841 'G'} { 'G'} {2.5614 'b'} { 'b'} {-1.5479 'G'} { 'G'} 2.0983 { 'b'} { 'b'} {-2.7013 'b'} { 'b'} {-0.66323'G'} { 'G'} 1.6048 { 'G'} { 'G'} 1.7731

标签中使用SVM分类新的观测。

加载电离层数据集。假设最后的10个观察你训练SVM分类后推出。

加载<小号pan style="color:#A020F0">电离层RNG(1);<小号pan style="color:#228B22">%用于重现N =尺寸(X,1);<小号pan style="color:#228B22">%训练样本大小isInds = 1:(N-10);<小号pan style="color:#228B22">%在样本指数oosInds =(N-9):N;<小号pan style="color:#228B22">%外的样本指数

训练SVM分类器。标准化的数据和指定'G'是正课。节省内存通过降低训练的SVM分类器的大小。

SVMModel = fitcsvm(X(isInds,:),Y(isInds),<小号pan style="color:#A020F0">“标准化”,真正,<小号pan style="color:#0000FF">...“类名”{<小号pan style="color:#A020F0">'B',<小号pan style="color:#A020F0">'G'});CompactSVMModel =紧凑(SVMModel);谁是(<小号pan style="color:#A020F0">'SVMModel',<小号pan style="color:#A020F0">'CompactSVMModel'
名称大小字节类属性CompactSVMModel的1x1 30314 classreg.learning.classif.CompactClassificationSVM SVMModel的1x1 137414 ClassificationSVM

CompactClassificationSVM分类(CompactSVMModel)使用比更小的空间ClassificationSVM分类(SVMModel),因为SVMModel存储数据。

估计的最佳成绩 - 后概率的转换功能。

CompactSVMModel = fitPosterior(CompactSVMModel,<小号pan style="color:#0000FF">...X(isInds,:),Y(isInds))
CompactSVMModel = classreg.learning.classif.CompactClassificationSVM ResponseName: 'Y' CategoricalPredictors:[]类名:{ 'B' 的 'g'} ScoreTransform:“@(S)S形(S,-1.968453e + 00,3.121375e-01)'阿尔法:[88x1双]偏压:-0.2143 KernelParameters:[1x1的结构]穆:[1x34双]西格玛:[1x34双] SupportVectors:[88x34双] SupportVectorL万博1manbetxabels:[88x1双]的属性,方法

最佳得分变换函数(CompactSVMModel.ScoreTransform)是双曲线函数,因为类是分不开的。

预测出的样本标签和正类的后验概率。因为真正的标签可用,比较它们与预测标签。

[标签,PostProbs] =预测(CompactSVMModel,X(oosInds,:));表(Y(oosInds),标签,PostProbs(:,2),<小号pan style="color:#A020F0">'VariableNames',<小号pan style="color:#0000FF">...{<小号pan style="color:#A020F0">'TrueLabels',<小号pan style="color:#A020F0">'PredictedLabels',<小号pan style="color:#A020F0">'PosClassPosterior'})
ANS =<小号pan class="emphasis">10×3的表TrueLabels PredictedLabels PosClassPosterior __________ _______________ _________________ { 'G'} { 'G'} 0.98419 { 'G'} { 'G'} 0.95545 { 'G'} { 'G'} 0.67794 { 'G'} { 'G'} 0.94447{ 'G'} { 'G'} 0.98744 { 'G'} { 'G'} 0.92481 { 'G'} { 'G'} 0.9711 { 'G'} { 'G'} 0.96986 { 'G'} {'G'} 0.97803 { 'G'} { 'G'} 0.94361

PostProbs是一个10×2矩阵,其中第一列是负类后验概率,而第二列是对应于新的观测的正类后验概率。

输入参数

全部收缩

SVM分类模型,指定为ClassificationSVM模型对象或CompactClassificationSVM模型对象通过返回fitcsvm要么紧凑, 分别。

预测器数据要被分类,指定为数字矩阵或表。

每行X对应于一个观测,并且每一列对应于一个变量。

  • 对于数字矩阵:

    • 在列变量X必须具有相同的顺序预测变量,经过训练,SVMModel

    • 如果你训练的SVMModel使用表(例如,TBL)和TBL包含所有的数字预测变量,然后X可以是数字矩阵。为了治疗在数字预测TBL培训期间分类,通过识别分类预测CategoricalPredictors的名称 - 值对参数fitcsvm。如果TBL含有异构预测变量(例如,数字和分类数据类型),并且X是一个数值矩阵,则预测抛出一个错误。

  • 对于表:

    • 预测不支持多变量和除字万博1manbetx符向量的单元阵列的其他单元阵列。

    • 如果你训练的SVMModel使用表(例如,TBL),那么所有的预测变量X必须具有相同的变量名和数据类型,那些训练有素SVMModel(存储在SVMModel.PredictorNames)。然而,列顺序X并不需要对应的列顺序TBL。也,TBLX可以包含额外的变量(响应变量,观测的权重,等等),但预测忽略它们。

    • 如果你训练的SVMModel使用数字矩阵,然后在预测名称SVMModel.PredictorNames和相应的预测器变量名中X必须是相同的。训练过程中指定的预测名称,请参阅PredictorNames的名称 - 值对参数fitcsvm。所有的预测变量中X必须为数字向量。X可以包含额外的变量(响应变量,观测的权重,等等),但预测忽略它们。

如果设置“标准化”,真fitcsvm培训SVMModel,那么软件标准化的列X利用在相应的装置SVMModel.Mu和标准偏差SVMModel.Sigma

数据类型:||

输出参数

全部收缩

预测类别标签,返回作为分类或字符阵列,逻辑或数字载体,或字符向量的单元阵列。

标签具有相同的数据类型作为观察类别标签(ÿ),经过训练,SVMModel的,其长度等于行的数量X。<小号pan>(该软件把字符串数组作为字符向量的单元阵列。)

对于一类学习,标签是在所观察到的类别标签所表示的一类。

预测类分数要么后验概率,返回作为数字列向量或数字矩阵。

  • 对于一类学习,得分是具有相同的行数作为观测的列向量(X)。的元素得分是对针对相应观测的正级得分。你不能获得一个一流的学习后验概率。

  • 对于两班学习,得分是具有相同的行数为两列的矩阵X

    • 如果您在使用适合的最佳成绩 - 后概率转换功能fitPosterior要么fitSVMPosterior, 然后得分包含一流的后验概率。也就是说,如果价值SVMModel.ScoreTransform不是没有,然后的第一和第二列得分包含负类(SVMModel.ClassNames {1})和阳性类(SVMModel.ClassNames {2})后验概率为相应的观察,分别。

    • 否则,第一列包含负级得分和第二列包含对应观测的正级得分。

如果SVMModel.KernelParameters.Function“线性”,则分类得分观察X

F X = X / 小号 β + b

SVMModel商店βb小号在属性Beta版偏压KernelParameters。规模, 分别。

手动估算分类的分数,你必须先申请任何转换到该训练过程中应用的预测数据。具体来说,如果您指定“标准化”,真当使用fitcsvm,则必须使用手动平均标准化预测数据SVMModel.Mu和标准偏差SVMModel.Sigma,然后由内核规模划分结果SVMModel.KernelParameters.Scale

所有的SVM功能,如resubPredict预测,估计之前应用任何所需的转换。

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

更多关于

全部收缩

分类评分

该SVM分类评分对于分类观察X从符号距离X在决策边界,从-∞到+∞。一类正分表明,X被预测为在该类中。负分另有指示。

正类分类评分<小号pan class="inlineequation"> F X 是训练的SVM分类功能。<小号pan class="inlineequation"> F X 也是数值,预测响应X或分数预测X进入正类。

F X = Σ Ĵ = 1 ñ α Ĵ ÿ Ĵ G X Ĵ X + b

哪里<小号pan class="inlineequation"> α 1 ... α ñ b 是所估计的SVM的参数,<小号pan class="inlineequation"> G X Ĵ X 介于两者之间的预测空间的点积X和支承载体,以及万博1manbetx总和包括在训练集的意见。负类分类评分X或分数预测X成阴性类,是 -FX)。

如果GX<小号ub>ĴX)=X<小号ub>ĴX(线性内核),则该得分函数简化为

F X = X / 小号 β + b

小号是内核和规模β是线性拟合系数的矢量。

有关详细信息,请参阅理解支持向量机万博1manbetx

后验概率

后验概率是,观察属于一个特定类,给定数据的概率。

对于SVM,后验概率是得分的函数P小号)是观察Ĵ在类ķ= {-1,1}。

  • 对于可分离类,后验概率是阶梯函数

    P 小号 Ĵ = { 0 ; 小号 < 最大 ÿ ķ = - 1 小号 ķ π ; 最大 ÿ ķ = - 1 小号 ķ 小号 Ĵ ÿ ķ = + 1 小号 ķ 1 ; 小号 Ĵ > ÿ ķ = + 1 小号 ķ

    哪里:

    • 小号<小号ub>Ĵ是观察得分Ĵ

    • +1和-1表示正和负的类,分别。

    • π是先验概率的观察是在正类。

  • 对于不可分割类,后验概率是S形函数

    P 小号 Ĵ = 1 1 + EXP 一个 小号 Ĵ +

    其中参数一个是斜率和截距参数,分别。

先验概率

先验概率一类是与从该类观测发生在一个群体中的信相对频率。

提示

  • 如果您使用的分类线性SVM模型和模型有很多支持向量,然后使用万博1manbetx预测对于预测方法可能是缓慢的。为了基于线性SVM模型有效地分类观察,通过使用删除模型对象支持向量万博1manbetxdiscard万博1manbetxSupportVectors

算法

  • 默认情况下,也不论模型核函数,MATLAB<小号up>®使用得分函数基于训练的SVM模型分类意见的双重代表性,特别是

    F ^ X = Σ Ĵ = 1 ñ α ^ Ĵ ÿ Ĵ G X X Ĵ + b ^

    该预测方法需要训练支持向量和万博1manbetxα系数(见万博1manbetxSupportVectorsΑ在SVM模型的属性)。

  • 默认情况下,软件将计算最佳的使用普氏法的后验概率[1]

    1. 执行10倍交叉验证。

    2. 符合双曲线函数参数,从交叉验证返回的分数。

    3. 通过输入交叉验证分数入拟合S形函数估计的后验概率。

  • 软件培训期间包含在SVM目标函数先验概率。

  • 对于SVM,预测resubPredict分类观测到类得到最大得分(最大后验概率)。该软件占误分类成本由训练分类之前以平均成本修正。也就是说,给定类之前矢量P,误判成本矩阵C,和观察权重向量w ^时,软件定义观察权重的新载体(w ^),使得

    w ^ Ĵ = w ^ Ĵ P Ĵ Σ ķ = 1 ķ C Ĵ ķ

参考

[1]普拉特,J。“概率输出用于支持向量机和比较,以正则似然方法”。万博1manbetx在大间隔分类进展。麻省理工学院出版社,1999年,61-74页。

扩展功能

也可以看看

|<小号pan itemscope itemtype="//www.tianjin-qmedu.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<小号pan itemscope itemtype="//www.tianjin-qmedu.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<小号pan itemscope itemtype="//www.tianjin-qmedu.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<小号pan itemscope itemtype="//www.tianjin-qmedu.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">|<小号pan itemscope itemtype="//www.tianjin-qmedu.com/help/schema/MathWorksDocPage/SeeAlso" itemprop="seealso">

介绍了在R2014a