最小二乘支持向量机的自编代码和安装SVM工具箱方法.doc_第1页
最小二乘支持向量机的自编代码和安装SVM工具箱方法.doc_第2页
最小二乘支持向量机的自编代码和安装SVM工具箱方法.doc_第3页
最小二乘支持向量机的自编代码和安装SVM工具箱方法.doc_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

最小二乘支持向量机的自编代码clear all;clc;N=35; %样本个数NN1=4; %预测样本数%*随机选择初始训练样本及确定预测样本*x=;y=;index=randperm(N); %随机排序N个序列index=sort(index);gama=23.411; %正则化参数deita=0.0698; %核参数值%thita=; %核参数值%*构造感知机核函数* %for i=1:N % x1=x(:,index(i); % for j=1:N % x2=x(:,index(j); % K(i,j)=tanh(deita*(x1*x2)+thita); % end %end%*构造径向基核函数* for i=1:N x1=x(:,index(i); for j=1:N x2=x(:,index(j); x12=x1-x2; K(i,j)=exp(-(x12*x12)/2/(deita*deita); end end %*构造多项式核函数* %for i=1:N % x1=x(:,index(i); % for j=1:N % x2=x(:,index(j); % K(i,j)=(1+x1*x2)(deita); % end %end %*构造核矩阵* for i=1:N-NN1 for j=1:N-NN1 omeiga1(i,j)=K(i,j); end end omeiga2=omeiga1; omeiga=omeiga2+(1/gama)*eye(N-NN1); A12=ones(1,N-NN1); A21=A12; A=0 A12;A21 omeiga; %* for i=1:N-NN1 B21(i,:)=y(index(i); end B=0;B21; %*LS-SVM模型的解* C=AB; %* b=C(1); %模型参数 for i=1:N-NN1 aipha(i)=C(i+1); %模型参数,行向量 end%* for i=1:N %预测模型 aifx(i)=b+(aipha)*K(1:N-NN1,i); end%*aifx index从网上搜到,还没试,不知那个可以成功,先收藏下方法一:Matlab大部分函数都放在了toolbox这个文件夹下面。可以试着把需要的函数和工具箱放进去看看能不能用。象matlab升级以后功能会更强大,包含的工具箱也越多,所占用的硬盘空间也变得很大。建议你安装的时候选择自定义安装,只装自己需要的几个工具箱,看你需要是用在什么专业,它里面有很多比如财务工具箱,航空工具箱,生物技术工具箱对与我专业就没有用,就可以不安装。这样就省了空间了。结一下matlab添加工具箱的方法:第一种:如果是安装光盘上的工具箱,重新执行安装程序,选中即可。如果是单独下载的工具箱,一般情况下仅需要把新的工具箱解压到某个目录,然后用pathtool添加工具箱的路径。在命令窗口中敲入pathtool,会出现一个setpath的窗口,点addfolder或者addwithsubfolders按钮,选中你的工具箱。保存既可。任选工具箱中的一个命令,然后help一下看看是否好使。举例:我下载了支持向量基工具箱,解压后,里边有一个目录svm我的matlab安装在D:MATLAB6p5将svm目录拷贝至D:MATLAB6p5toolbox然后运行matlab,在命令窗口输入addpathD:MATLAB6p5toolboxsvm回车,来添加路径。然后在svm目录下,任意找一个m文件,以svcinfo.m为例在命令窗口中输入whichsvcinfo.m如果显示出该文件路径,如D:MATLAB6p5toolboxsvmsvcinfo.m则安装成功方法二:在libsvm的网站上下载libsvm-mat-2.83-1.zip文件,解压后放在任意目录下(比如c:libsvm-mat-2.83-1下)打开matlab,切换到c:libsvm-mat-2.83-1目录下,键入以下命令:mex-setupMatlab会询问你是否需要locateinstalledcompiler,选择y,然后根据需要选择一个编译器即可。确认时选择y即可。然后键入make就会生成svmtrain.dll,svmpredict.dll和read_sparse.dll这三个文件(对于Matlab7.1及以上版本,生成的对应文件为svmtrain.mexw32,svmpredict.mexw32和read_sparse.mexw32)然后可以在matlab的菜单File-SetPath-AddFolder里,把c:libsvm-mat-2.83-1目录添加进去,这样以后在任何目录下都可以调用libsvm的函数了。为了检验libsvm和matlab之间的接口是否已经配置完成,可以在matlab下执行以下命令:loadheart_scale.matmodel=svmtrain(heart_scale_label,heart_scale_inst,-c1-g2);如果运行正常并生成了model这个结构体(其中保存了所有的支持向量及其系数),那么说明libsvm和matlab之间的接口已经完全配置成功。附:SVM的历史基于数据的机器学习是现代智能技术中的重要方面,研究从观测数据(样本)出发寻找规律,利用这些规律对未来数据或无法观测的数据进行预测.包括模式识别、神经网络等在内,现有机器学习方法共同的重要理论基础之一是统计学.传统统计学研究的是样本数目趋于无穷大时的渐近理论,现有学习方法也多是基于此假设.但在实际问题中,样本数往往是有限的,因此一些理论上很优秀的学习方法实际中表现却可能不尽人意.与传统统计学相比,统计学习理论(StatisticalLearningTheory或SLT)是一种专门研究小样本情况下机器学习规律的理论.V.Vapnik等人从六、七十年代开始致力于此方面研究,到九十年代中期,随着其理论的不断发展和成熟,也由于神经网络等学习方法在理论上缺乏实质性进展,统计学习理论开始受到越来越广泛的重视.统计学习理论是建立在一套较坚实的理论基础之上的,为解决有限样本学习问题提供了一个统一的框架.它能将很多现有方法纳入其中,有望帮助解决许多原来难以解决的问题(比如神经网络结构选择问题、局部极小点问题等);同时,在这一理论基础上发展了一种新的通用学习方法支持向量机(SupportVecto

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论