• 大小: 3KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-17
  • 语言: Matlab
  • 标签: LSSVM  

资源简介

现有的LSSVM工具箱,自带PSO优化,参数无需调整,Matlab编写的人工蜂群算法代码,含详细注释和测试函数,简短易懂,执行顺畅。可用于解决无约束优化问题。

资源截图

代码片段和文件信息

%% LS-SVM分类测试程序代码模板
  %by tangxb
  %e-mail:tangxb200@126.com QQ:444646122
  %http://blog.sina.com.cn/lssvm
%% 清空变量空间
  clc;clear;close all
  format compact
%% 程序代码计时开始
  tic;
%% 数据导入
 X0=load(‘C:\Documents and Settings\Administrator\桌面\训练数据\数据\trainone.txt‘);
 Y0=load(‘C:\Documents and Settings\Administrator\桌面\训练数据\数据\testone.txt‘);
 trainset=X0(:4:end);
 trainset_label=X0(:1);
 testset=Y0(:4:end);
 testset_label=Y0(:1);
%% 样本集各维度可视化
 featuredisplay(trainsettrainset_labeltestsettestset_label1);
%% 计数样本类别数
 labelnum=countlabelnum(testset_label);
%%  原始数据可视化
 figure;
 boxplot(trainset‘orientation‘‘horizontal‘);
 grid on;
 title(‘Visualization for original data‘);
%% 数据预处理
 %归一化处理
  [trainsettestsetps] = scaleForLSSVM(trainsettestset01);
% %% 归一化后可视化
%  figure;
%  boxplot(trainset‘orientation‘‘horizontal‘);
%  grid on;
%  title(‘Visualization for scale data‘);
% %% 样本集归一化后各维度可视化
%  featuredisplay(trainsettrainset_labeltestsettestset_label1);
%% 降维处理
  %1.pca处理
   [trainsettestset] = pcaForLSSVM(trainsettestset);
%   %2.ica处理
%    [trainsettestset] = fasticaForLSSVM(trainsettestset);
%   %3.dct处理
%    [trainsettestset] = DCTforSVM(trainsettestset);
%% LS参数设置
 type = ‘c‘;
 kernel_type = ‘RBF_kernel‘;
 codefct = ‘code_MOC‘; 
 preprocess = ‘original‘;%‘preprocess‘或者‘original‘
 igam=0.1;
 isig2=0.1;
% %将“多类”转换成“两类”的编码方案
% 1. Minimum Output Coding (code_MOC) 
% 2. Error Correcting Output Code (code_ECOC)
% 3. One versus All Coding (code_OneVsAll)
% 4. One Versus One Coding (code_OneVsOne) 
 % 编码
 [Yccodebookold_codebook] = code(trainset_labelcodefct);
%% PSO验证优化参数
 [bestCVaccuarcybestcbestgpso_option] = psoLSSVMcgForClass(trainsettrainset_labelYc);
 % 训练生成模型
 [alphab]=trainlssvm({trainsetYctypebestcbestgkernel_typepreprocess});
 %编码分类结果
 Yd0 = simlssvm({trainsetYctypebestcbestgkernel_typepreprocess}{alphab}testset);
%  %新加的行,为了画ROC曲线
%  Zt=latentlssvm({trainsettrainset_labeltypegamsig2kernel_type}{alphab}testset);%X-训练样本集,Y-训练样本集类别号,XX-测试样本集
%  [areasethresholdsoneMinusSpecSens]=roclssvm(ZtYY);%作图用的最后两个输出oneMinusSpec(横轴),Sens(纵轴),YY-测试样本集类别号
 predict_label = code(Yd0old_codebook[]codebook);%解码分类结果
%% ROC曲线
 plotLSSVMroc(testset_labelpredict_labellabelnum);
%% 分类效果可视化、正确率
[rightpercenttestnumerrornumerrorindex]=classmeasures(testset_labelpredict_labelbestcbestg);
%% 程序运行计时
 toc

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       5831  2010-11-24 16:05  PSO优化LSSVM参数\psoLSSVMcgForClass.m

     文件       2686  2010-11-24 16:05  PSO优化LSSVM参数\a_template_flow_usingPSOLSSVM_class.m

     目录          0  2012-03-12 20:42  PSO优化LSSVM参数

----------- ---------  ---------- -----  ----

                 8517                    3


评论

共有 条评论