主要内容

预测

观察使用支持向量机(SVM)分类器进行分类万博1manbetx

描述

例子

标签=预测(SVMModel,X)返回一个矢量预测类标签的预测数据表或矩阵X基于训练支持向量机(SVM)分类模型万博1manbetxSVMModel。训练支持向量机模型可以完全或紧凑。

例子

(标签,分数)=预测(SVMModel,X)还返回一个得分矩阵(分数)显示一个标签的可能性来自于一个特定的类。SVM的可能措施分类的分数或类后验概率。为每一个观察X,预测类标签对应的最大成绩在所有类。

例子

全部折叠

加载电离层数据集。

负载<年代pan style="color:#A020F0">电离层rng (1);<年代pan style="color:#228B22">%的再现性

一个支持向量机分类器训练。指定一个抵抗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:);欧美= Y (testInds:);

CVSVMModel是一个ClassificationPartitionedModel分类器。它包含属性训练有素的,这是一个1×1单元阵列举行CompactClassificationSVM软件使用训练集训练分类器。

标签测试样本的观察。显示结果的前10的观察测试样品。

(标签,分数)=预测(CompactSVMModel XTest);表(欧美(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} {‘g’} -1.7175 2.0003 {‘g’} {b} {b} {‘g’} -9.6836 2.5616 {‘g’} {b} {b} {‘g’} -1.548 2.0983 {‘g’} {b} {b} -2.7016 {b} {b} -0.66331 {‘g’} {‘g’} 1.6047 {‘g’} {‘g’} 1.773

标签新观察使用一个支持向量机分类器。

加载电离层数据集。假设过去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">%样本外指数

一个支持向量机分类器训练。标准化的数据并指定‘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 1 x1 30482 classreg.learning.classif。137582 ClassificationSVM CompactClassificationSVM SVMModel 1 x1

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

估计最优score-to-posterior-probability转换函数。

CompactSVMModel = fitPosterior (CompactSVMModel,<年代pan style="color:#0000FF">…X (isInds:), Y (isInds))
CompactSVMModel = CompactClassificationSVM ResponseName:‘Y’CategoricalPredictors:[]类名:{b ' g '} ScoreTransform:“@ (S)乙状结肠(e + 00年代,-1.968433,3.121233 e-01)的α:[88 x1双]偏见:-0.2143 KernelParameters: [1 x1 struct]μ:[0.8886 0 0.6365 0.0457 0.5933 0.1200 0.5414……σ:[0.3151 0 0.5032 0.4476 0.5251 0.4668 0.4966…]S万博1manbetxupportVectors: [88 x34双]SupportVectorLabels: [88 x1双]属性,方法

最优分数转换函数(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’} {‘g’} 0.98419 0.95545 {‘g’} {‘g’} {‘g’} {‘g’} 0.67794 0.94448 {‘g’} {‘g’} {‘g’} {‘g’} 0.98745 0.92481 {‘g’} {‘g’} {‘g’} {‘g’} 0.9711 0.96986 {‘g’} {‘g’} {‘g’} 0.97803 {‘g’} {‘g’} 0.94361

PostProbs是一个10-by-2矩阵,第一列是负类的后验概率,第二列是积极类的后验概率对应的新观察。

输入参数

全部折叠

支持向量机分类模型,指定为一个ClassificationSVM模型对象或CompactClassificationSVM模型对象返回的fitcsvm紧凑的,分别。

预测数据分类,指定为一个数字矩阵或表。

每一行的X对应于一个观察,每一列对应一个变量。

  • 一个数字矩阵:

    • 变量的列X必须有相同的订单预测变量,训练吗SVMModel

    • 如果你训练SVMModel使用一个表(例如,资源描述),资源描述包含所有数值预测变量,然后X可以是一个数字矩阵。将数值预测资源描述分类在训练、识别分类预测使用CategoricalPredictors名称-值对的观点fitcsvm。如果资源描述包含了异构预测变量(例如,数字和分类数据类型)X是一个数字矩阵,然后呢预测抛出一个错误。

  • 一个表:

    • 预测不支持多列变量或细万博1manbetx胞数组以外的细胞阵列的特征向量。

    • 如果你训练SVMModel使用一个表(例如,资源描述),那么所有的预测变量X必须有相同的变量名和数据类型的培训SVMModel(存储在SVMModel.PredictorNames)。然而,列的顺序X不需要对应的列顺序资源描述。同时,资源描述X可以包含额外的变量(响应变量,观察体重、等等),但预测忽略了它们。

    • 如果你训练SVMModel使用一个数字矩阵,然后预测名称SVMModel.PredictorNames和相应的预测变量名称X必须相同。指定预测名称在训练,看到PredictorNames名称-值对的观点fitcsvm。所有的预测变量X必须是数值向量。X可以包含额外的变量(响应变量,观察体重、等等),但预测忽略了它们。

如果你设置“标准化”,真的fitcsvm训练SVMModel,那么软件标准化的列X使用相应的手段SVMModel.Mu和标准偏差SVMModel.Sigma

数据类型:||

输出参数

全部折叠

预测类标签,作为分类或字符数组,返回逻辑或者数值向量、数组或单元的特征向量。

标签具有相同的数据类型作为观察类标签(Y),训练SVMModel,它的长度等于中的行数X。<年代pan>(软件对字符串数组作为细胞阵列特征向量)。

预测函数将一个观察分为类收益率最高的分数。<年代pan>的观察与分数,该函数将观察分为多数类,占最大比例的训练标签。

看到下面成了学习,每个值标签造就了一个类在训练数据。使用分数识别异常。

预测类分数后验概率,返回一个数字或者数字矩阵列向量。

  • 看到下面成了学习,分数是一个列向量具有相同的行数的观察(X)。的元素分数是相应的观测异常分数。负分数值表明,相应的观测是离群值。你不能看到下面成了学习获得后验概率。

  • 对两种学习,分数是一个两列矩阵的行数一样吗X

    • 如果你符合最优score-to-posterior-probability转换函数使用fitPosteriorfitSVMPosterior,然后分数包含类的后验概率。也就是说,如果该值SVMModel.ScoreTransform不是没有一个,然后第一和第二列分数包含负类(SVMModel.ClassNames {1})和积极的类(SVMModel.ClassNames {2}分别)后验概率对应的观测。

    • 否则,第一列包含消极类分数和第二列包含积极类分数对应的观测。

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

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

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

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

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

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

更多关于

全部折叠

分类分

的支持向量机分类分分类观测x签署了距离x决定边界从-∞,+∞。积极的分数表明,对于一个类x预计这个类。否则负分数表示。

积极类分类得分<年代pan class="inlineequation"> f ( x ) 是训练SVM分类函数。<年代pan class="inlineequation"> f ( x ) 也是数值预测响应吗x,或者预测的分数x到积极的类。

f ( x ) = j = 1 n α j y j G ( x j , x ) + b ,

在哪里<年代pan class="inlineequation"> ( α 1 , , α n , b ) 是估计的支持向量机参数,<年代pan class="inlineequation"> G ( x j , x ) 是点积的预测值之间的空间吗x和支持向量,包括万博1manbetx训练集和观察。消极类分类评分x,或者预测的分数x进入负类,-f(x)。

如果G(x<年代ub>j,x)=x<年代ub>jx(线性内核),然后比分功能降低

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

年代是内核规模和β是安装的向量线性系数。

更多细节,请参阅了解支持向量机万博1manbetx

后验概率

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

支持向量机的后验概率是一个函数的分数P(年代),观察j是在课堂上k1 = {1,}。

  • 可分的类的后验概率是阶跃函数

    P ( 年代 j ) = { 0 ; 年代 < 马克斯 y k = 1 年代 k π ; 马克斯 y k = 1 年代 k 年代 j 最小值 y k = + 1 年代 k 1 ; 年代 j > 最小值 y k = + 1 年代 k ,

    地点:

    • 年代<年代ub>j分数的观察吗j

    • + 1和- 1表示积极和消极类,分别。

    • π先验概率是一个观察是在积极类。

  • 不可分割的类的后验概率是乙状结肠函数

    P ( 年代 j ) = 1 1 + 经验值 ( 一个 年代 j + B ) ,

    的参数一个B斜率和截距参数,分别。

先验概率

先验概率类的的假设相对频率观察类发生在一个人口。

提示

  • 如果您正在使用一个线性支持向量机分类模型和模型有许多支持向量,然后利用万博1manbetx预测预测方法可以是缓慢的。有效分类观察基于线性支持向量机模型,把模型对象通过使用支持向量万博1manbetxdiscard万博1manbetxSupportVectors

算法

  • 默认情况下,无论模型的核函数,MATLAB<年代up>®使用分数的双重表示函数分类基于训练支持向量机模型,观察

    f ^ ( x ) = j = 1 n α ^ j y j G ( x , x j ) + b ^

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

  • 默认情况下,软件使用普拉特的方法计算最优的后验概率[1]:

    1. 执行10倍交叉验证。

    2. 适合乙状结肠函数参数返回的分数交叉验证。

    3. 估计后验概率交叉验证的分数进入到安装乙状结肠函数。

  • 软件包含的先验概率支持向量机训练时的目标函数。

  • 支持向量机,预测resubPredict分类观察到类产生最大的分数(最大后验概率)。通过应用软件占误分类成本平均成本修正前训练分类器。也就是说,鉴于之前的类向量P,误分类代价矩阵C,观察权向量w软件定义了一个新的观察权重向量(W),这样

    W j = w j P j k = 1 K C j k

选择功能

万博1manbetx仿真软件块

将支持向量机分类模型的预测模型万博1manbetx<年代up>®,你可以使用ClassificationSVM预测块的统计和机器学习工具箱™库或MATLAB函数块预测函数。有关示例,请参见预测类标签使用ClassificationSVM预测块预测类标签使用MATLAB函数块

当决定使用哪种方法,考虑以下几点:

  • 如果你使用统计和机器学习工具库,您可以使用<年代trong class="tool">定点的工具(定点设计师)一个浮点模型转换为定点。

  • 万博1manbetx支持适应可变数组必须启用的MATLAB函数块预测函数。

  • 如果使用MATLAB功能块,您可以使用MATLAB函数之前或之后预处理或后处理预测在同一MATLAB功能块。

引用

[1]普拉特,j .“概率输出支持向量机和比较正规化方法的可能性。”万博1manbetx先进的分类器。麻省理工学院出版社,1999年,页61 - 74。

扩展功能

版本历史

介绍了R2014a

另请参阅

|<年代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">