添加SVM工具箱:
-
下载libSVM工具箱:
SVM工具箱:种类很多,公认的最好用的是libsvm by 林智仁[台大] Chih-Chung Chang and Chih-Jen Lin, LIBSVM : a library for support vector machines下载地址
https://www.csie.ntu.edu.tw/~cjlin/libsvm/#download
https://github.com/cjlin1/libsvm -
将libsvm3.2.4解压到matlab/toolbox目录下,(也可以解压到自己定义的文件目录下,但这里建议放到MATLAB的工具箱目录,这样便于查找,毕竟这本来就属于一种工具箱)
-
添加libSVM工具箱:在主页(home)的设置路径(set path)中添加libsvm
-
在主页(home)的预设中更新工具箱缓存。
安装编译器:
- 将当前路径设置到libsvm 3.2.2/matlab 后,在命令行窗口运行 mex -setup,显示无法找到编译器。
因为libSVM 是采用C语言进行编译的,虽然之后编译了MATLAB、Python等版本,但都需要安装编译器讲C转换为MATLAB语言。在这里可以安装VC++ 6.0以上版本,也可以根据MATLAB的提示,安装MinGW-w64。
什么是 MinGW-w64 ?
-
MinGW 的全称是:Minimalist GNU on Windows 。它实际上是将经典的开源 C语言 编译器 GCC 移植到了Windows 平台下,并且包含了 Win32API ,因此可以将源代码编译为可在 Windows 中运行的可执行程序。而且还可以使用一些Windows 不具备的,Linux平台下的开发工具。一句话来概括:MinGW 就是 GCC 的 Windows 版本 。
-
MinGW-w64 与 MinGW 的区别在于 MinGW 只能编译生成32位可执行程序,而 MinGW-w64 则可以编译生成 64位或32位 可执行程序。 正因为如此,MinGW 现已被 MinGW-w64 所取代,且 MinGW 也早已停止了更新,内置的 GCC停滞在了4.8.1 版本。
这里推荐三种可以用的编译器
- VC6.0及以上版本;
- tdm-gcc下载编译器:https://sourceforge.net/projects/tdm-gcc/
http://tdm-gcc.tdragon.net - MinGW-w64 下载地址:
http://mingw-w64.org
也可以通过MATLAB附件功能模块进行添加,这种方法可以自动下载安装,十分便捷
直接搜索MinGW-w64点击安装
查看编译器是否安装好
运行 mex -setup,选择C++
命令行窗口运行 make。
make之前,一定要将工作目录设置为工具箱文件的所在目录,在make时会出现如下报错:
make如果报错:需要打开libsvm3.2.2/matlab目录下的make.m,将其中所的CFLAGS替换为COMPFLAGS(替换运用CTRL+F即可),替换后执行make则可以编译成功。
修改make.m时,如果显示没有权限,需要关掉matlab,重新以管理员身份打开。
最后,LibSVM工具箱就成功安装好了。