热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

matlab开发笔记:使用svmlib工具包进行机器学习

虽然网络上已经有了很多的类似的东西了吧。但是呢,我自己还是要写一写的。 安装:对于libsvm工具包,我

虽然网络上已经有了很多的类似的东西了吧。但是呢,我自己还是要写一写的。

 

安装:

对于 libsvm工具包,我们可以去官方网站下载,网址为:http://www.csie.ntu.edu.tw/~cjlin/libsvm/,这上面有很好的介绍。

我下载的版本为 libsvm-3.22。下载完了以后,可以查看到文件夹里面的内容。(其中,的一个heart_scale的matlab格式的文件是我自己在网上下载的)

技术分享

里面的 matlab文件夹里的内容就是我们要用到的内容(里面有的文件我已经编译好了,即 .mexw64的相关文件)。里面有一个README 的文件,可以读读,作出了相关的介绍。

技术分享

虽然在windows文件夹下有给出了 .mexw64的文件,但是我偿试过,没有办法用,所以呢,对于用c++下的 svmtrain.c、svmpredict、libsvmread.c、libsvmwrite.c(这四个文件是主要的)文件我们要把它编译成matlab可以使用的以.mexw64的文件。。(注意,在64位下是以.mexw64结尾,在32位下应该是以.mexw32结尾).

 

以上简单说了一下 文件夹内的东西,现在正式说说安装过程吧。

1. 下载工具包;(可以在官网下载,我同时也提供了我下载的并且我编译过的工具包,http://pan.baidu.com/s/1hsmR1li)

2. 我们把工具包里的 matlab 文件夹下的的.c文件编译为matlab软件可以使用的.mexw64文件.   

我们要做的是在matlab里编译c++文件,我们要配置matlab的编译器,matlab自身好像自代了一个 lcc的编译器,不过我的没有。如果你的电脑安装了其它的编译器,我们就可以使用它。(注意一点,matlab支持的编译器必须低于当前的matlab的版本,例如我的matlab为2012b版本,它就不支持vs2012版本,我又安装了vs2010版本,它就支持了,通过https://cn.mathworks.com/support/sysreq/previous_releases.html可以自己查看下自己的版本以及支持的编译器)。如何配置:

1)在matlab中输入:

mex –setup

再选择 y, 会出现这样的:

技术分享

然后选择一个默认的编译器就可以了,我这里只有 visual c++ 2010,也只能选择它了。

2)配置完默认的编译器,我们就编译我们的在matlab文件夹下的 .c 文件吧。。让我们把当前目录切换到 matlab文件夹下,里面有一个 make.m 的文件,里面的内容就是编译的指令,我们直接运行它就可以(你可以选中文件右击选择run,也可以在命令窗口直接输入make 回车)。运行完了以后呢,就生成了 .mexw64的文件了。

3. 对于要不要设置matlab的搜索路经的问题,可以设置,也可以直接把matlab文件夹作用当前目录使用 svmtrain等函数。 我使用的后者。(另外注意一点,在matlab的自代工具箱里面也有一个svmtrain的函数,如果你设置了路经,记得把我们下载的工具箱的路经设在第一位置了,要不会调用错的)

4. 验证一下能否使用。

在下载的工具箱文件夹里面有一个 heart_scale的文件,这个是c++能打开的文件,我们直接使用load搞不定的。把这个文件复制到matlab文件夹下,使用 libsvmread 载入;方法为:

[label_vector, instance_matrix] = libsvmread(filename)

另个有我的文件包里面也包含了 heart_scale.mat文件,可以直接用load 载入的,下图为直接load 载入:

技术分享

有了数据集,我们就那建立模型,用于分类预测:

model = svmtrain(heart_scale_label, heart_scale_inst);

[predict_label]
= svmpredict(heart_scale_label, heart_scale_inst, model);

下图为输出:

技术分享

5 ,搞定。

 

工具箱的简单使用:

http://blog.csdn.net/bryan__/article/details/51506801


推荐阅读
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • 本文记录了作者对x265开源代码的实现与框架进行学习与探索的过程,包括x265的下载地址与参考资料,以及在Win7 32 bit PC、VS2010平台上的安装与配置步骤。 ... [详细]
  • YOLOv7基于自己的数据集从零构建模型完整训练、推理计算超详细教程
    本文介绍了关于人工智能、神经网络和深度学习的知识点,并提供了YOLOv7基于自己的数据集从零构建模型完整训练、推理计算的详细教程。文章还提到了郑州最低生活保障的话题。对于从事目标检测任务的人来说,YOLO是一个熟悉的模型。文章还提到了yolov4和yolov6的相关内容,以及选择模型的优化思路。 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 本文讨论了在数据库打开和关闭状态下,重新命名或移动数据文件和日志文件的情况。针对性能和维护原因,需要将数据库文件移动到不同的磁盘上或重新分配到新的磁盘上的情况,以及在操作系统级别移动或重命名数据文件但未在数据库层进行重命名导致报错的情况。通过三个方面进行讨论。 ... [详细]
  • C++字符字符串处理及字符集编码方案
    本文介绍了C++中字符字符串处理的问题,并详细解释了字符集编码方案,包括UNICODE、Windows apps采用的UTF-16编码、ASCII、SBCS和DBCS编码方案。同时说明了ANSI C标准和Windows中的字符/字符串数据类型实现。文章还提到了在编译时需要定义UNICODE宏以支持unicode编码,否则将使用windows code page编译。最后,给出了相关的头文件和数据类型定义。 ... [详细]
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
  • svnWebUI:一款现代化的svn服务端管理软件
    svnWebUI是一款图形化管理服务端Subversion的配置工具,适用于非程序员使用。它解决了svn用户和权限配置繁琐且不便的问题,提供了现代化的web界面,让svn服务端管理变得轻松。演示地址:http://svn.nginxwebui.cn:6060。 ... [详细]
  • Activiti7流程定义开发笔记
    本文介绍了Activiti7流程定义的开发笔记,包括流程定义的概念、使用activiti-explorer和activiti-eclipse-designer进行建模的方式,以及生成流程图的方法。还介绍了流程定义部署的概念和步骤,包括将bpmn和png文件添加部署到activiti数据库中的方法,以及使用ZIP包进行部署的方式。同时还提到了activiti.cfg.xml文件的作用。 ... [详细]
  • 本文分析了Wince程序内存和存储内存的分布及作用。Wince内存包括系统内存、对象存储和程序内存,其中系统内存占用了一部分SDRAM,而剩下的30M为程序内存和存储内存。对象存储是嵌入式wince操作系统中的一个新概念,常用于消费电子设备中。此外,文章还介绍了主电源和后备电池在操作系统中的作用。 ... [详细]
  • Carve库在Visual Studio2015中的编译方法及注意事项
    本文介绍了在Visual Studio2015中编译Carve库的方法及注意事项。首先下载Carve库,并使用Visual Studio2015打开,生成后在bin目录下会生成.lib文件。同时,本文还指出了之前在Visual Studio2017中编译的问题,并提醒需要根据对应的平台进行编译,否则会出现报错。详细的步骤和注意事项请参考原文链接。 ... [详细]
  • 本文介绍了使用Rust语言编写、保存和编译程序的简单步骤。首先,打开记事本文件并编写程序代码,然后将代码保存到一个以.rs为扩展名的文件中。接下来,使用rustc命令来编译运行程序。最后,通过命令行运行编译后的程序,得到输出结果。如果遇到编译错误,可以下载Build Tools for Visual Studio 2017来解决。 ... [详细]
  • Introduction(简介)Forbeingapowerfulobject-orientedprogramminglanguage,Cisuseda ... [详细]
author-avatar
怕疼不怕死
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有