SVM支持向量机+libsvm用法

2024-03-11 22:08
文章标签 用法 支持 libsvm 向量 svm

本文主要是介绍SVM支持向量机+libsvm用法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

SVM是一种无监督学习算法(其它无监督学习算法有kNN,SOM等),可用于模式识别或回归时。但其用到大量的数学运算,需要一定的数学基础。但是如果使用libsvm,则可以不必关心svm实现细节,直接专注问题与建模。 libsvm是台湾大学林智仁(Lin Chih-Jen)副教授等开发设计的一个简单、易于使用和快速有效的SVM模式识别与回归的软件包,提供源代码和可执行文件。 使用方法: 1.下载软件包 libsvm http://www.csie.ntu.edu.tw/~cjlin/cgi-bin/libsvm.cgi?+http://www.csie.ntu.edu.tw/~cjlin/libsvm+zip 将libsvm解压缩到任意文件夹下,如E:/libsvm 2. 使用svm-toy进行测试,双击libsvm/windows/svm-toy.exe 点击Change按钮改变颜色,用鼠标点击在画布上画出如左图所示的点集,然后点Run按钮产生如右图的图像。 可以看出分类效果相当不错。 然后点Save按钮保存为tdata,供下一步使用。 SVM支持向量机+libsvm用法 - hankjin - 云水居 SVM支持向量机+libsvm用法 - hankjin - 云水居 3. 使用svm-train等进行测试 3.1下载gnuplot ftp://ftp.gnuplot.info/pub/gnuplot/gp400win32.zip, 解压缩到C:/tmp目录下 3.2安装python 3.3将第2步生成的数据 3.4将libsvm/tools文件夹下的grid.py复制到libsvm/windows文件夹下。然后在命令行下进入libsvm/windows目录 ,执行 python grid.py tdata 会看到一堆数据和一个图在迅速变化,运行结束后,最后一行有参数,例如 ... [local] 13 -3 100.0 (best c=128.0, g=0.5, rate=100.0) 128.0 0.5 100.0 前两个分别是c和g,用这两个参数进行训练 svm-train.exe -c 128.0 -g 0.5 tdata 可以得到tdata.model,然后用这个tdata.model对tdata进行预测 svmp-redict.exe tdata tdata.model tdata.out Accuracy = 100% (53/53) (classification) 这个数据比较规范,所以结果是100% 转载于http://hankjin.blog.163.com/blog/static/33731937201082103012777/ 参考文档 http://www.cmlab.csie.ntu.edu.tw/~cyy/learning/tutorials/libsvm.pdf http://www.csie.ntu.edu.tw/~piaip/svm/svm_cjlin_dm.pdf http://www.csie.ntu.edu.tw/~cjlin/libsvm/

这篇关于SVM支持向量机+libsvm用法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/799228

相关文章

【Prometheus】PromQL向量匹配实现不同标签的向量数据进行运算

✨✨ 欢迎大家来到景天科技苑✨✨ 🎈🎈 养成好习惯,先赞后看哦~🎈🎈 🏆 作者简介:景天科技苑 🏆《头衔》:大厂架构师,华为云开发者社区专家博主,阿里云开发者社区专家博主,CSDN全栈领域优质创作者,掘金优秀博主,51CTO博客专家等。 🏆《博客》:Python全栈,前后端开发,小程序开发,人工智能,js逆向,App逆向,网络系统安全,数据分析,Django,fastapi

bytes.split的用法和注意事项

当然,我很乐意详细介绍 bytes.Split 的用法和注意事项。这个函数是 Go 标准库中 bytes 包的一个重要组成部分,用于分割字节切片。 基本用法 bytes.Split 的函数签名如下: func Split(s, sep []byte) [][]byte s 是要分割的字节切片sep 是用作分隔符的字节切片返回值是一个二维字节切片,包含分割后的结果 基本使用示例: pa

Vector3 三维向量

Vector3 三维向量 Struct Representation of 3D vectors and points. 表示3D的向量和点。 This structure is used throughout Unity to pass 3D positions and directions around. It also contains functions for doin

UVM:callback机制的意义和用法

1. 作用         Callback机制在UVM验证平台,最大用处就是为了提高验证平台的可重用性。在不创建复杂的OOP层次结构前提下,针对组件中的某些行为,在其之前后之后,内置一些函数,增加或者修改UVM组件的操作,增加新的功能,从而实现一个环境多个用例。此外还可以通过Callback机制构建异常的测试用例。 2. 使用步骤         (1)在UVM组件中内嵌callback函

这些ES6用法你都会吗?

一 关于取值 取值在程序中非常常见,比如从对象obj中取值 const obj = {a:1b:2c:3d:4} 吐槽: const a = obj.a;const b = obj.b;const c = obj.c;//或者const f = obj.a + obj.b;const g = obj.c + obj.d; 改进:用ES6解构赋值

8. 自然语言处理中的深度学习:从词向量到BERT

引言 深度学习在自然语言处理(NLP)领域的应用极大地推动了语言理解和生成技术的发展。通过从词向量到预训练模型(如BERT)的演进,NLP技术在机器翻译、情感分析、问答系统等任务中取得了显著成果。本篇博文将探讨深度学习在NLP中的核心技术,包括词向量、序列模型(如RNN、LSTM),以及BERT等预训练模型的崛起及其实际应用。 1. 词向量的生成与应用 词向量(Word Embedding)

Golang支持平滑升级的HTTP服务

前段时间用Golang在做一个HTTP的接口,因编译型语言的特性,修改了代码需要重新编译可执行文件,关闭正在运行的老程序,并启动新程序。对于访问量较大的面向用户的产品,关闭、重启的过程中势必会出现无法访问的情况,从而影响用户体验。 使用Golang的系统包开发HTTP服务,是无法支持平滑升级(优雅重启)的,本文将探讨如何解决该问题。 一、平滑升级(优雅重启)的一般思路 一般情况下,要实现平滑

sqlite不支持中文排序,采用java排序

方式一 不支持含有重复字段进行排序 /*** sqlite不支持中文排序,改用java排序* 根据指定的对象属性字段,排序对象集合,顺序* @param list* @param field* @return*/public static List sortListByField(List<?> list,String field){List temp = new ArrayList(

一款支持同一个屏幕界面同时播放多个视频的视频播放软件

GridPlayer 是一款基于 VLC 的免费开源跨平台多视频同步播放工具,支持在一块屏幕上同时播放多个视频。其主要功能包括: 多视频播放:用户可以在一个窗口中同时播放任意数量的视频,数量仅受硬件性能限制。支持多种格式和流媒体:GridPlayer 支持所有由 VLC 支持的视频格式以及流媒体 URL(如 m3u8 链接)。自定义网格布局:用户可以配置播放器的网格布局,以适应不同的观看需求。硬

Science Robotics 首尔国立大学研究团队推出BBEX外骨骼,实现多维力量支持!

重复性举起物体可能会对脊柱和背部肌肉造成损伤,由此引发的腰椎损伤是工业环境等工作场所中一个普遍且令人关注的问题。为了减轻这类伤害,有研究人员已经研发出在举起任务中为工人提供辅助的背部支撑装置。然而,现有的这类装置通常无法在非对称性的举重过程中提供多维度的力量支持。此外,针对整个人体脊柱的设备安全性验证也一直是一个缺失的环节。 据探索前沿科技边界,传递前沿科技成果的X-robot投稿,来自首尔国立