赞
踩
今天在星巴克呆了一天,复习了一下学习的内容,翻到了研一期间旁听人工智能的课程设计,第一个完全写的一个基于SVM的图像分类任务,记得当时我是实验室第一个独立完成课程设计的,其他小伙伴还是参考我的代码,现在工业界,已经被漫天的深度学习覆盖,难道忘记了曾经万能的SVM了吗?
还是写一遍小文,整理一下笔记,万一有初学者想要参考一下呢,也督促自己熟悉曾经做过的工作。
当时还在CSDN上写过一篇文章,原因是用matlab配置libsvm总是配置不好(当时Win8.1是最新版的系统,libsvm还是最流行的svm工具包,当时是2013年),博客地址在http://blog.csdn.net/qust_waiwai/article/details/17189787 ,只是写了个草稿,没想到,却成了评论最多的文章。
那就先把这个草稿整理完。
在LibSVM的网站上下载压缩包,然后解压。会发现有一些文件夹还有一些代码文件,其中一个MATLAB
的的文件夹,里面就是提供的matlab接口(这些都在根目录的README文件里面介绍了,还有其他接口的安装与使用说明)。
在MATLAB这个目录下也有一个README文件,这个文件详细的描述了如何使用LibSVM的MATLAB接口,其中介绍了64位系统提供了 预编译好的二进制可执行文件。
On Windows systems, pre-built binary files are already in the
directory '..\windows', so no need to conduct installation. Now we
provide binary files only for 64bit MATLAB on Windows. If you would
like to re-build the package, please rely on the following steps.
至于为什么编译不好,先不浪费时间在这上面了,应该是编译器版本的原因,现在Win10要比Win8.1稳定了,应该就没有这个问题了。
将根目录中的windows目录拷贝到MATLAB的安装目录中的toolboxs中,里面全是各种包,不用自己在维护一个文件夹了,然后在MATLAB中Set Path
,把这Windows目录添加进去,在MATLAB中就可以使用了。
输入 svmtrain 测试一下,会输出基本的用法:
>> svmtrain
Usage: model = svmtrain(training_label_vector, training_instance_matrix, 'libsvm_options');
libsvm_options:
-s svm_type : set type of SVM (default 0)
0 -- C-SVC (multi-class classification)
1 -- nu-SVC (multi-class classification)
2 -- one-class SVM
3 -- epsilon-SVR (regression)
4 -- nu-SVR (regression)
-t kernel_type :
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。