ImageVerifierCode 换一换
格式:DOCX , 页数:31 ,大小:501.70KB ,
资源ID:10791507      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10791507.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(LSSVM matlab.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

LSSVM matlab.docx

1、LSSVM matlab最小二乘支持向量机对于以前的版本1.5版的工具箱和更新现有的一些命令我们增加了新功能。由于许多读者都是熟悉的版本1.5布局,我们试图尽可能少地改变它。主要的区别加速了一些方法的实现。Chapter/solver/functionWhats newWhats new2. LS-SVMLab toolbox examplesLS - SVM的路线图;增添更多的回归和分类的例子;界面更容易,多级分类; 改变执行了健全ls-svm。3. Matlab functions回归或分类的可能性只使用一条命令即可,功能验证已经被删除,更快(强劲)训练和(强大)模型选择标准被提供给用户,

2、以防万一,稳健回归不同的函数必须要和与迭代重加权LS SVM一起使用。4. LS-SVM solver所有CMEX和/或C文件已被删除。求解线该性系统通过使用MATLAB命令“反斜杠”()第一章 引言在解决非线性分类,函数估计和密度估计问题中,支持向量机是一个很强大的方法,支持向量机也致使了其核心的新动向,最新发展事基于一般学习方法的。支持向量机应经被引入统计学习理论和结构风险最小化之中。这些方法中,凸优化问题,解决了一个典型的二次规划问题。LS-SVM是标准SVM的改进,这样就可以解决线性kkt系统的问题了。最小二乘支持向量机与正规化网络和高斯过程密切相关,但更加重视和利用原始对偶的规范条款

3、解释。经典的模式识别算法的内核版本如判别分析的内核Fisher,以非监督学习、循环式网络扩展和控制之间的链接是可用的。健全性、稀疏性、权重可以被应用到LS-SVM上,并具有三个层次的推理贝叶斯框架已经制定。LS SVM像原始对偶那样配方给予核PCA,核CCA和PLS。对于非常大的规模问题和在线学习,一个固定大小的LS - SVM方法被提出,它基于Nystrom在原始空间中支持向量的积极选择和估计的近似值。原始对偶申述的方法被开发为核心谱聚类,数据可视化,降维和生存分析。目前LS- SVMlab工具箱用户指南包含了大量MATALAB中LS - SVM算法的实现,其中涉及分类,回归,时间序列预测和

4、无监督学习。所有的功能都已经用Matlab从R2008a,R2008b,R2009a测试,工具箱中参考命令都以打印字体书写。LS SVMlab主页:http:/www.esat.kuleuven.be/sista/lssvmlab/第二章LS-SVMlab 该工具箱主要用于商业用Matlab软件包使用。Matlab的工具箱已经在不同的计算机体系结构编译和测试,包括Linux和Windows。大部分函数可以处理的数据集可高达20,000或更多点的数据。LS- SVMlab对Matlab接口包括一个适合初学者的基本版本,以及一个多类编码技术和贝叶斯框架的更先进的版本。未来版本将逐步加入新成果的和额

5、外的功能。大量功能受到最小二乘-支持向量机的限制(其中包括“最小二乘支持向量机在函数中”的扩展名),其余的都是一般使用。大量的演示说明如何使用工具箱中的不同功能。Matlab的函数接口以两种方式组织:例如在网络实验室人们可以根据自己的选择将函数既可以按照功能性方式调用又可以按照面向对象的结构方式调用。2.1分类和优化调用函数:trainlssvm, simlssvm, plotlssvm, prelssvm, postlssvm;演示:Subsections demofun, democlass.Matlab的工具箱是围绕一个快速LS - SVM的训练和模拟算法而建立的。相应的函数调用可用于分

6、类以及函数估计。函数plotlssvm显示该模型在培训点区域模拟结果。通过执行Matlab中灵活和简单代码(lssvmMATLAB.m)来求解线性系统,它基于Matlab矩阵分解(反斜杠命令为准)。对单个和多个输出回归和分类的函数都可以使用。训练和模拟可以做到为每个输出分别通过传递不同的核函数,内核和/或作为列向量正规化参数。执行工具箱中其他核函数也是简单的。一个模型的性能依赖于输入数据和输出数据的缩放。一个适当的算法检测,适当的重新调整重设比例,分类和二进制变量。2.1.1分类扩展调用函数:codelssvm, code, deltablssvm, roc, latentlssvm演示:Su

7、bsection, democlass 大量附加功能的文件是可用于分类工作的。对于模拟分类模型的潜变量是通过模拟得到的连续的结果,这个结果最终是离散的。受试者工作特征曲线(ROC)可以用来衡量一个分类器的性能。多类分类问题分解成多个二元分类任务。几种编码方案可以用在了这一点:最小输出,一比一,一对多和纠错编码方案。可以用海明距离,损失函数距离和贝叶斯损解码来解码一个给定的结果。一个偏差期限校正是可以做,然而对于小数据集是特别有趣的。2.1.2调谐,稀疏,完整性调用函数:tunelssvm, crossvalidatelssvm, leaveoneoutlssvm, robustlssvm,sp

8、arselssvm;演示:Subsections , demofun, democlass, demomodel 估算训练模式的泛化性能的很多方法都包括在内。对于分类,可以用错误分类率(misclass)来表述。对重复培训和验证为基础的估计都是通过crossvalidatelssvm和leaveoneoutlssvm来实现的。一个强大的crossvalidation(关于迭代重加权LS - SVM的)分数由rcrossvalidatelssvm函数被调用。这些绩效措施,可用于确定调整参数(如正规化和内核参数的LS - SVM的(tunelssvm)。减少一个LS - SVM的模型的复杂性可以通

9、过反复修剪较重要支持值(sparselssvm). 在数据中的异常值的情况下,支持数值的更正将改进模型(robustlssvm).2.1.3贝叶斯框架调用函数:bay_lssvm, bay_optimize, bay_lssvmARD, bay_errorbar, bay_modoutClass,kpca, eign演示:Subsections计算模型的后验概率和不同层次的推理中超参数的函数是可以用的。通过考虑模型和超参数的不确定性得到误差线。进行分类,一类可以估算后概率(这也被称为主持输出)(bay_modoutClass)。在贝叶斯框架中使用特征值分解核矩阵。矩阵的大小会随着数据点的数量而

10、增长。因此,人们需要逼近技术处理大型数据集。众所周知,主要特征值和相应的特征向量是相关的。因此,迭代逼近方法,如作为Nystrom方法包括在内,这也是高斯过程中经常使用。输入选择可以通过自动关联的测定(bay_lssvmARD)。对于一个落后的变量的选择,贝叶斯框架推断的第三个层次对这个问题来说最合适的运用。2.2 NARX模型及预测调用函数:predict, windowize;演示: Subsection对非线性NARX时间序列应用系统可以扩散。一个NARX模型能够建立基于非线性回归量,这是通过对过去数据的输出(或输入)的测量来估计下一次迭代输出的值。使一个数据集通过窗口和NARX窗口转变

11、为一个新的输入(过去测量的)和输出集(未来的输出),这两个窗口分别为时间序列事件和一般的外部输入NARX事件。迭代预测(在递归方法中)下一个输出,该输出是基于先前的预测,及初始值都是由预测来工作。2.3非监督学习调用函数:kpca, denoise_kpca, preimage_rbf;演示: Subsection非监督学习可以基于主成分分析(kpca)所描述的内核进行工作,为此,一种对最小二乘支持向量机的原始双重的解释得到屈服,这也将进一步扩展到内核典型相关分析和内核偏最小二乘法。 2.4通过固定大小的最小二乘支持矢量机解决大型规模问题调用函数:demo_fixedsize, AFEm, k

12、entropy;演示:Subsection , demo_fixedsize, demo_fixedclass例如喜欢基于最小二乘支持向量机算法的典型内核通常具有记忆功能和算法复杂度为O(N 2)的计算要求。为绕过这个瓶颈,对大规模的工作方法提出了解决方案。对于大型数据集,将有利于在原始权空间解决最小二乘问题,这是由于当时未知数向量大小是与特征向量大小是成比例的,而不是数据点的数量。但是,该特征空间映射是由内核诱导的,而内核又需要获得非线性,因此,提出了一种固定大小的最小二乘支持向量机的方法。首先,Nystrom方法能够用来估计特征空间的映射。Nystrom近似值,内核主成分分析和密度估计之间

13、的联系已被讨论。在固定大小的最小二乘支持向量机中,聘请了明确的原始对偶LS-SVM的解释,将它们联系起来。根据二次Renyi熵准则选择支持向量机。最后一步,在原始空间中完成回归,原始空间为求解大规模非线性函数估计和分类问题提供了适当的方法。而固定大小的最小二乘支持向量机的方法正适合处理非常大的数据集。另一个选择子集的标准由41 and 24提出,并与之有很紧密的联系。它衡量特征空间和由子集引起的空间逼近的质量(视为自动特征提取或AFEm)。该子集被认为是从数据(子样本)提取的随机子样本。第三章LS-SVMlab工具箱举例3.1 LS SVM布局在这节中,我们简单地概括一下如何获得的LS - S

14、VM模型(用于分类和回归有效),见图3.11. 面向功能或面向对象接口(initlssvm)之间进行选择,见图A.3.152. 寻找合适的优化参数(tunelssvm搜索),见图A.3.353. 训练原先确定优化参数的给定模型(trainlssvm),见图A.3.344a. 例如模拟模型测试数据(simlssvm),见图A.3.324b.必要的时候将结果可视化(plotlssvm),见图A.3.243.2分类首先,对工具箱中进行任务分类的可能性说明。3.2.1 hello world一个简单的例子说明如何开始使用工具箱中的分类任务。我们首先我们按照正确的格式构建一个简单的数据集示例。数据表示为

15、矩阵,每个矩阵包含一个数据点行: X = 2.*rand(100,2)-1; Y = sign(sin(X(:,1)+X(:,2); XX =0.9003 -0.9695-0.5377 0.49360.2137 -0.1098- 0.0280 0.86360.7826 -0.06800.5242 -0.1627. .-0.4556 0.7073-0.6024 0.1871 YY =-1-11111.1-1 为了建立一个LS - SVM模型(带有高斯RBF核)我们需要两个调整参数:(GAM)的是正则参数,它取决与训练误差最小化和平滑程度之间的权衡程度。通常情况下在高斯RBF核中,2(sig2)是

16、平方带宽: gam = 10; sig2 = 0.4; type = classification; alpha,b = trainlssvm(X,Y,type,gam,sig2,RBF_kernel); 参数和与LS - SVM相关的变量是通过为一个单元联系起来。此单元允许LS - SVM的参数和相关参数的默认处理句法分类一致。这个定义应该由整个统一使用该LS - SVM的模型使用。相应的LS- SVMlab面向对象接口导致短函数调用(见demomodel)。默认情况下,数据是由适用于原始数据预处理功能的函数prelssvm和对模型进行预测的函数postlssvm来处理的。此选项在调用中可以

17、进行显式切换: alpha,b = trainlssvm(X,Y,type,gam,sig2,RBF_kernel,original);or be switched on (by default): alpha,b = trainlssvm(X,Y,type,gam,sig2,RBF_kernel,preprocess);一定要始终使用相同的选项在所有连续调用中。为了评估这个模型中新的点,需要使用函数simlssvm。 Xt = 2.*rand(10,2)-1; Ytest = simlssvm(X,Y,type,gam,sig2,RBF_kernel,alpha,b,Xt);如果输入数据的维

18、数是2,LS - SVM的结果就可以显示。 plotlssvm(X,Y,type,gam,sig2,RBF_kernel,alpha,b);所有的绘制是通过这个简单的命令。它查找结果中显示的最佳方式(见图 3.2)3.2.2示例著名的里普利数据集的问题包括两个类,在每个类中的数据是由两个混合正态分布生成的(见图3.3a)首先,我们基于某数据集建立一个LS SVM模型并确定合适的优化参数。在这种情况下,调整参数,例如10-3,105和带宽20.01,3平方内核。 % load dataset . type = classification; L_fold = 10; % L-fold cross

19、validation gam,sig2 = tunelssvm(X,Y,type,RBF_kernel,1e-3 1e5 0.01 3,.crossvalidatelssvm,L_fold,misclass); alpha,b = trainlssvm(X,Y,type,gam,sig2,RBF_kernel); plotlssvm(X,Y,type,gam,sig2,RBF_kernel,alpha,b);默认情况下,为优化参数的最低和最高值都设置为0.05,148和带宽20.08,12平方内核。 gam,sig2 = tunelssvm(X,Y,type,RBF_kernel,.cross

20、validatelssvm,L_fold,misclass);受试者工作特征(ROC)曲线提供了有关的质量信息分类: alpha,b = trainlssvm(X,Y,type,gam,sig2,RBF_kernel); % latent variables are needed to make the ROC curve Y_latent = latentlssvm(X,Y,type,gam,sig2,RBF_kernel,alpha,b,X); area,se,thresholds,oneMinusSpec,Sens=roc(Y_latent,Y); thresholds oneMinus

21、Spec Sensans =-2.1915 1.0000 1.0000-1.1915 0.9920 1.0000-1.1268 0.9840 1.0000-1.0823 0.9760 1.0000. . .-0.2699 0.1840 0.9360-0.2554 0.1760 0.9360-0.2277 0.1760 0.9280-0.1811 0.1680 0.9280. . .1.1184 0 0.00801.1220 0 02.1220 0 0相应的ROC曲线如图3.3b所示。图3.3 ROC曲线的里普利分类任务(一)原LS - SVM的分类器(二)接收器工作特性曲线3.2.3使用面向对

22、象的接口:初始化最小二乘支持向量机(initlssvm)另一种可能获得相同的结果是使用面向对象接口。如下所示: % load dataset . % gateway to the object oriented interface model = initlssvm(X,Y,type,RBF_kernel); model = tunelssvm(model,1e-3 1e5 0.01 3,crossvalidatelssvm,L_fold,misclass); model = trainlssvm(model); plotlssvm(model); % latent variables are

23、 needed to make the ROC curve Y_latent = latentlssvm(model,X); area,se,thresholds,oneMinusSpec,Sens=roc(Y_latent,Y);3.2.4最小二乘支持向量机的分类:只有一个命令行用简单的方法获得一个最小二乘支持向量机模型如下(二进制分类问题和一对一多类编码) % load dataset . type = classification; Yp = lssvm(X,Y,type);该最小二乘支持向量机命令通过十倍交叉验证(简称CV)或留出一个依赖于样本大小的交叉验证来自动调整参数。此功能将自动

24、的解决(如有可能)问题。默认情况下,高斯RBF将会被采用。更多信息,请参见图A.3.23。3.2.5贝叶斯推理的分类 针对3.2.2节的结果,本节将做进一步的分析。贝叶斯框架被用来调整优化参数,以获得适当的输出。最优正规化参自由亚齐运动的参数和内核参数sig2可分别通过优化成本推理的第二层和第三层获得。建议采用合适的初始值来初始化模型: gam, sig2 = bay_initlssvm(X,Y,type,gam,sig2,RBF_kernel);Optimization on the second level leads to an optimal regularization parame

25、ter: model, gam_opt = bay_optimize(X,Y,type,gam,sig2,RBF_kernel,2);Optimization on the third level leads to an optimal kernel parameter: cost_L3,sig2_opt = bay_optimize(X,Y,type,gam_opt,sig2,RBF_kernel,3);Theposteriorclassprobabiliesarefoundbyincorporatingtheuncertaintyofthemodelparameters: gam = 10

26、; sig2 = 1; Ymodout = bay_modoutClass(X,Y,type,10,1,RBF_kernel,figure);One can specify a prior class probability in the moderated output in order to compensate foran unbalanced number of training data points in the two classes. When the training set contains+ -N positive instances and N negative one

27、s, the moderated output is calculated as:+Nprior =+ -N +N Np = 10; Nn = 50; prior = Np / (Nn + Np); Posterior_class_P = bay_modoutClass(X,Y,type,10,1,RBF_kernel,.figure, prior);The results are shown in Figure 3.4.结果如图3.4所示图3.4(a)展示的是基于里普利数据LS - SVM的分类器输出设置。该颜色表示的概率属于某一个类。(b)这个例子说明了一个不平衡的里普利数据子集主持输出。

28、人们可以弥补在主持输出数据计算不平衡。需要注意到在用阳性标本的蓝区面积增加补偿而红色区相应缩小。3.2.6 多级编码下面的示例将演示如何使用多级编码方案的问题。编码和解码分别被视为一个单独的和独立的预处理和后处理步骤(图 3.5(a) and 3.5(b).一个名为demomulticlass的演示文件包含在工具箱中。 % load multiclass data . Ycode, codebook, old_codebook = code(Y,code_MOC); alpha,b = trainlssvm(X,Ycode,classifier,gam,sig2); Yhc = simlssv

29、m(X,Ycode,classifier,gam,sig2,alpha,b,Xtest); Yhc = code(Yh,old_codebook,codebook,codedist_hamming);在多类分类问题,它是最容易使用的面向对象接口集其中集成了LS SVM训练和模拟调用的编码: % load multiclass data . model = initlssvm(X,Y,classifier,RBF_kernel); model = tunelssvm(model,1e-3 1e5 0.01 15,.leaveoneoutlssvm,misclass,code_OneVsOne);

30、 model = trainlssvm(model); plotlssvm(model);该tunelssvm例行的最后一个参数可以设置: code_OneVsOne:一对一编码 code_MOC: 最小输出编码 code_ECOC: 纠错输出码 code_OneVsAll:一对多编码图3.5 LS - SVM的多类的例子:(a)一对一编码(b)纠错输出码(c)最小输出编码(d)一对多编码3.3回归3.3.1 一个简单的例子 这是一个简单的演示,使用ls - SVMlab解决一个简单的回归任务。以正确的格式构建数据集。这些数据被表示为矩阵的每一行包含的一个数据点。 X = linspace(-1,1,50); Y = (15*(X.2-1).2.*X.4).*exp(-X)+normrnd(0,0.1,length(X),1); XX =-1.0000-0.9592-0.9184-0.8776

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1