亲测可用。以前自己在用svm支持向量机时,对于libsvm工具箱不会用。尤其是其引用格式,所以找来些介绍分享给大家。

转载自:http://bbs.sciencenet.cn/blog-348249-272606.html

libsvm-mat-加强工具箱介绍 by faruto

最终版本号:

libsvm-mat-2.89-3[farutoUltimateVersion2.0]

=====================================

libsvm-mat-加强工具箱介绍

由于libsvm的matlab版本的工具箱libsvm-mat并没有给出寻参的函数模块,而无论利用libsvm工具箱进行分类还是回归,参数的选取是十分重要的,鉴于此libsvm-mat-加强工具箱在libsvm-mat-2.89-3的基础上给出相应的辅助函数插件,方便用户来选取最佳的参数,该加强工具箱可以在MATLAB中文论坛上下载,现对该加强工具箱里主要的辅助函数插件的接口进行介绍,所有的源代码可以到MATLAB中文论坛下载并查看。

归一化函数:scaleForSVM

[train_scale,test_scale,ps]= scaleForSVM(train_data,test_data,ymin,ymax)

输入:

train_data:训练集,格式要求与svmtrain相同。

test_data:测试集,格式要求与svmtrain相同。

ymin,ymax:归一化的范围,即将训练集和测试都归一化到[ymin,ymax],这两个参数可不输入,默认值为ymin=0,ymax=1,即默认将训练集和测试都归一化到[0,1]。

输出:

train_scale:归一化后的训练集。

test_scale:归一化后的测试集。

ps:归一化过程中的映射(方便反归一化使用)。

pca降维预处理函数:pcaForSVM

[train_pca,test_pca] = pcaForSVM(train_data,test_data,threshold)

输入:

train_data:训练集,格式要求与svmtrain相同。

test_data:测试集,格式要求与svmtrain相同。

threshold:对原始变量的解释程度([0,100]之间的一个数),通过该阈值可以选取出主成分,该参数可以不输入,默认为90,即选取的主成分默认可以达到对原始变量达到90%的解释程度。

输出:

train_pca:进行pca降维预处理后的训练集。

test_pca:进行pca降维预处理后的测试集。

网格参数寻优函数(分类问题):SVMcgForClass

[bestCVaccuracy,bestc,bestg]=

SVMcgForClass(train_label,train,

cmin,cmax,gmin,gmax,v,cstep,gstep,accstep)

输入:

train_label:训练集的标签,格式要求与svmtrain相同。

train:训练集,格式要求与svmtrain相同。

cmin,cmax:惩罚参数c的变化范围,即在[2^cmin,2^cmax]范围内寻找最佳的参数c,默认值为cmin=-8,cmax=8,即默认惩罚参数c的范围是[2^(-8),2^8]。

gmin,gmax:RBF核参数g的变化范围,即在[2^gmin,2^gmax]范围内寻找最佳的RBF核参数g,默认值为gmin=-8,gmax=8,即默认RBF核参数g的范围是[2^(-8),2^8]。

v:进行Cross Validation过程中的参数,即对训练集进行v-fold Cross Validation,默认为3,即默认进行3折CV过程。

cstep,gstep:进行参数寻优是c和g的步进大小,即c的取值为2^cmin,2^(cmin+cstep),…,2^cmax,,g的取值为2^gmin,2^(gmin+gstep),…,2^gmax,默认取值为cstep=1,gstep=1。

accstep:最后参数选择结果图中准确率离散化显示的步进间隔大小([0,100]之间的一个数),默认为4.5。

输出:

bestCVaccuracy:最终CV意义下的最佳分类准确率。

bestc:最佳的参数c。

bestg:最佳的参数g。

网格参数寻优函数(回归问题):SVMcgForRegress

[bestCVmse,bestc,bestg]=

SVMcgForRegress(train_label,train,

cmin,cmax,gmin,gmax,v,cstep,gstep,msestep)

其输入输出与SVMcgForClass类似,这里不再赘述。

利用PSO参数寻优函数(分类问题):psoSVMcgForClass

[bestCVaccuracy,bestc,bestg,pso_option]=

psoSVMcgForClass(train_label,train,pso_option)

输入:

train_label:训练集的标签,格式要求与svmtrain相同。

train:训练集,格式要求与svmtrain相同。

pso_option:PSO中的一些参数设置,可不输入,有默认值,详细请看代码的帮助说明。

输出:

bestCVaccuracy:最终CV意义下的最佳分类准确率。

bestc:最佳的参数c。

bestg:最佳的参数g。

pso_option:记录PSO中的一些参数。

利用PSO参数寻优函数(回归问题):psoSVMcgForRegress

[bestCVmse,bestc,bestg,pso_option]=

psoSVMcgForRegress(train_label,train,pso_option)

其输入输出与psoSVMcgForClass类似,这里不再赘述。

利用GA参数寻优函数(分类问题):gaSVMcgForClass

[bestCVaccuracy,bestc,bestg,ga_option]=

gaSVMcgForClass(train_label,train,ga_option)

输入:

train_label:训练集的标签,格式要求与svmtrain相同。

train:训练集,格式要求与svmtrain相同。

ga_option:GA中的一些参数设置,可不输入,有默认值,详细请看代码的帮助说明。

输出:

bestCVaccuracy:最终CV意义下的最佳分类准确率。

bestc:最佳的参数c。

bestg:最佳的参数g。

ga_option:记录GA中的一些参数。

利用GA参数寻优函数(回归问题):gaSVMcgForRegress

[bestCVmse,bestc,bestg,ga_option]=

gaSVMcgForRegress(train_label,train,ga_option)

其输入输出与gaSVMcgForClass类似,这里不再赘述。

libsvm2.89在matlab,libsvm-mat-2.89-3工具箱,方便实用相关推荐

  1. MATLAB读写mat文件

    1. 保存mat文件: save               %将工作区间中所有的变量都储存为MATLAB.mat文件中 save  filename     %将工作区间中所有的变量都储存为file ...

  2. 开源Math.NET基础数学类库使用(03)C#解析Matlab的mat格式

    开源Math.NET基础数学类库使用(03)C#解析Matlab的mat格式 原文:[原创]开源Math.NET基础数学类库使用(03)C#解析Matlab的mat格式 开源Math.NET基础数学类 ...

  3. 【Matlab】Matlab将mat文件保存为txt文件

    Matlab将mat文件保存为txt文件 1. 使用dlmwrite函数实现 将矩阵 M 写入文件 'myFile.txt',用制表位字符分隔并使用 3 位数精度. dlmwrite('myFile. ...

  4. matlab显示.mat格式多光谱图像

    matlab显示.mat格式多光谱图像 一个简单的MATLAB代码示例,用于加载包含多光谱图像数据的.mat文件并显示它: %加载.mat文件 load('your_file_name.mat');% ...

  5. 使用matlab的MAT.H(c读取mat文件)

    使用matlab的MAT.H(c读取mat文件) 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页.如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Mark ...

  6. matlab 将mat格式的数据另存为Excel数据(xls,xlsx)

    (1)将matlab中mat格式的数据保存为 xls 文件,命令为: xlswrite('训练_42.xlsx',sounds_y2);%其中"训练_42.xlsx"为另存为文件的 ...

  7. 利用matlab将.mat格式文件转换成wav文件

    利用matlab将.mat格式文件转换成wav文件 clc; clear all; clear all;filenames = dir('f16.mat') n = numel(filenames)f ...

  8. matlab读取.mat格式文件

    matlab读取.mat格式文件 13.1 数据基本操作 本节介绍基本的数据操作,包括工作区的保存.导入和文件打开. 13.1.1 文件的存储 MATLAB支持工作区的保存.用户可以将工作区或工作区中 ...

  9. Matlab:MAT 文件版本

    Matlab:MAT 文件版本 MAT 文件版本概述 保存为非默认 MAT 文件版本 数据压缩 加快 7.3 版本的 MAT 文件的保存和加载操作的速度 MAT 文件版本概述 MAT 文件是二进制 M ...

  10. matlab 存mat文件,matlab中mat文件简单存/取

    >>abc=[,,,,,]; >>save data save file_name:命令可以将当前项目中变量的值保存到file_name中去,这里的data文件就是mat文件. ...

最新文章

  1. ​常用的连续概率分布汇总
  2. 关于arm处理器 内存编址模式 与 字节对齐方式 (转)
  3. Spring IOC 注入方式
  4. oracle record 类型,Oracle记录类型(record)和%rowtype
  5. ultraEdit-32 PHP/HTML智能提示
  6. BZOJ1018 | SHOI2008-堵塞的交通traffic——线段树维护区间连通性+细节
  7. GitHub上有哪些比较好的计算机视觉/机器视觉的项目?
  8. 大家觉得创业需要些什么
  9. 关于@Mapper注解的几个问题
  10. Python精确指南——第四章-部署和技巧
  11. 融合非负矩阵分解和图全变分的歌曲推荐算法
  12. Ubuntu 安装gcc/g++
  13. IP地址中,A、B、C三类地址的区别
  14. [Java反序列化]AspectJWeaver反序列化
  15. 利用Matlab进行图像处理
  16. 不是吧,还有人不会做国庆头像小程序(可开通流量主,赚零花钱)
  17. IJCAI 2022 | 量化交易相关论文(附论文链接)
  18. 投资黄金,当然选贸易场行员平台真宝金业,安全有保障,返佣高,平仓返。
  19. 集中式和分布式版本控制系统的区别
  20. u盘插上计算机未响应,插U盘没反应的一种情况与解决

热门文章

  1. linux输入influxdb密码,influxdb开启身份验证
  2. python实现装饰器_python装饰器的实现
  3. json解析对应的value为null_解决golang json解析出现值为空的问题
  4. setcellvalue 格式_Java Cell.setCellValue方法代码示例
  5. gephi生成网络关系图_用 NetworkX + Gephi + Nebula Graph 分析lt;权力的游戏gt;人物关系(上)
  6. java输出目录节点_节点如果不存在,如何创建目录?
  7. 排序函数c语言流程图,各种排序的流程图 大家帮忙弄一下
  8. jquery 查找表格里的input_jquery获取input表单值的代码
  9. hue集成mysql报错_hue集成hive访问报database is locked
  10. sqlalchemy 查询