LibSvm介绍---调用方法及参数介绍

   

libsvm是著名的SVM开源组件,目前有JAVA.C/C++,.NET 等多个版本,本人使用的是2.82

libsvm命名空间下主要使用类:

svm_model 为模型类,通过训练或加载训练好的模型文件获得

svm_parameter 为参数类,主要为支持向量机设定参数,具体参数如下:

svm_parameter.svm_type
svm类型:SVM设置类型(默认svm_parameter.C_SVC)
svm_parameter.C_SVC -- C-SVC
svm_parameter.NU_SVC -- ν-SVC
svm_parameter.ONE_CLASS – 一类SVM
svm_parameter.EPSILON_SVR -- ε -SVR
svm_parameter.NU_SVR -- ν-SVR

svm_parameter.kernel_type
核函数类型:核函数设置类型(svm_parameter.LINEAR)
svm_parameter.LINEAR – 线性:u‘×v
svm_parameter.POLY– 多项式:(γ×u‘×v + coef0)^degree
svm_parameter.RBF – RBF函数:exp(-γ×|u-v|^2)
svm_parameter.SIGMOID – sigmoid:tanh(γ×u‘×v + coef0)

svm_parameter.degree
核函数中的degree设置(默认3)

svm_parameter.coef0
核函数中的coef0设置(默认0)

svm_parameter.shrinking
是否使用启发式,0或1(默认1)

svm_parameter.nu
设置ν-SVC,一类SVM和ν- SVR的参数(默认0.5)

svm_parameter.C
设置C-SVC,ε -SVR和ν-SVR的参数(默认1)

svm_parameter.cache_size
设置cache内存大小,以MB为单位(默认40)

svm_problem 相当于训练集合,可讲需要训练的数据加入该类传递给训练器

svm_node 内部使用的数据结构,主要用于保存待训练数据

svm 主调用程序中我们一般使用以下几个方法:

svm.svm_train(svm_problem,svm_parameter) 该方法返回一个训练好的svm_model

svm.svm_load_model(文件名); 该方法返回一个训练好的svm_model

svm.svm_save_model(文件名,svm_model); 该方法将svm_model保存到文件中

svm.svm_predict_values(svm_model,svm_node,double); 该方法返回doule类值,svm_node对svm_model测试,返回值确定了svm_node在模型中的定位

时间: 2024-12-30 22:16:06

LibSvm介绍---调用方法及参数介绍的相关文章

JS动态调用方法名示例介绍

先看看JS的一个函数  JavaScript eval() 函数 定义和用法 eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码. 语法 eval(string) 参数 描述  string 必需.要计算的字符串,其中含有要计算的 JavaScript 表达式或要执行的语句. 返回值  通过计算 string 得到的值(如果有的话). 说明  该方法只接受原始字符串作为参数,如果 string 参数不是原始字符串,那么该方法将不作任何改变地返回.因此请不要为 eval

C#通过反射获取类中的方法和参数个数,反射调用方法带参数

using System; using System.Reflection; namespace ConsoleApp2 { class Program { static void Main(string[] args) { //反射获取 命名空间+类名 string className = "ConsoleApp2.ClassSample"; string methodName = "test1"; //传递参数 Object[] paras = new Obje

设置调用方法的超时时间

在工作中,遇到这样一个需求,我要做一个业务,要验证一下现有的数据是否正确,但这个验证又不是必须的,只是说如果这里验证不通过,后面流程就可以不走了,但是如果这里没有验证到,后面也会有验证.也就是说不影响主流程,算得上是一个优化吧.比如我要查询一个东西,但是这个时间不能超过1秒. 在网上查了一下,基本上都是异步执行,有两个线程来做.我查到有两种方法. 第一种 独立成一个类 代码如下: (1).FuncTimeOut类 /// <summary> /// 超时设置类 /// </summary

通过反射获取及调用方法(Method)

1.获取方法使用反射获取某一个类中的方法,步骤:①找到获取方法所在类的字节码对象②找到需要被获取的方法 Class类中常用方法: public Method[] getMethods():获取包括自身和继承过来的所有的public方法 public Method[] getDeclaredMethods():获取自身所有的方法(不包括继承的,和访问权限无关) public Method getMethod(String methodName,Class<?>...parameterTypes)

WebService服务调用方法介绍

1 背景概述 由于在项目中需要多次调用webservice服务,本文主要总结了一下java调用WebService常见的6种方式,即:四种框架的五种调用方法以及使用AEAI ESB进行调用的方法. 2 预期读者 数通畅联内部员工 广大计算机爱好者 3 名词解释 Web Service也叫XML Web Service: WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术.是通过SOAP在Web上提供的软件服务,使用WSDL

PHPCMS新闻内容调用方法介绍

{template "content","header"} ---------- 调用根目录下phpcms\template\content\header文件 {CHARSET} -------------------------------------字符集 (gbk或者utf-8) {if isset($SEO['title']) && !empty($SEO['title'])} {$SEO['title']}{/if} {$SEO['site

python+selenium之中类/函数/模块的简单介绍和方法调用

1 # coding=utf-8 2 3 class ClassA (object): 4 string1 = "这是一个字符串." 5 6 def instancefunc(self): 7 print ('这是一个实例方法.') 8 print ('selef的值为:', self) 9 10 @classmethod 11 def classfunc(cls): 12 print ('这是一个类方法.') 13 print ('cls的值为:',cls) 14 15 @stati

JVM -XX: 参数介绍

功能开关: 参数 默认值或限制 说明 参数 默认值 功能 -XX:-AllowUserSignalHandlers 限于Linux和Solaris,默认不启用 允许为java进程安装信号处理器,信号处理参见类:sun.misc.Signal, sun.misc.SignalHandler -XX:+DisableExplicitGC 默认启用 禁止在运行期显式地调用System.gc() -XX:+FailOverToOldVerifier Java6新引入选项,默认启用 如果新的Class校验

Bootstrap Paginator 分页插件参数介绍及使用

Bootstrap Paginator是一款基于Bootstrap的js分页插件,功能很丰富,个人觉得这款插件已经无可挑剔了.它提供了一系列的参数用来支持用户的定制,提供了公共的方法可随时获得插件状态的改变,以及事件来监听用户的动作.目前经过测试的浏览器包括: Firefox 5+, Chrome 14+, Safari 5+, Opera 11.6+ and IE 7+. GitHub 官网地址:https://github.com/lyonlai/bootstrap-paginator 参数