如何在MATLAB上开始SVM训练

我已经获取了一组面部特征,并希望使用SVM进行分类。我打算使用libsvm包,并通过MATLAB进行训练。我已经通过观看斯坦福大学的讲座了解了SVM的相关知识。但是我不知道如何使用libsvm开始训练…需要一些指导…


回答:

在MATLAB中,你可以将你的MATLAB代码与用C语言实现的一些程序链接。这被称为mex文件

然而,你需要编译它们才能使其工作。

你可以阅读自述文件来了解如何编译它们:

安装

在Unix系统上,我们推荐使用GNU g++作为编译器,并输入’make’来构建’svmtrain.mexglx’和’svmpredict.mexglx’。请注意,我们假设你的MATLAB安装在’/usr/local/matlab’,如果不是,请在Makefile中更改MATLABDIR。

示例:linux> make

要使用Octave,请输入’make octave’:

示例:linux> make octave

在Windows系统上,预构建的二进制文件已经在`..\windows’目录中,因此无需进行安装。现在我们同时包含了32位和64位的二进制文件,但在未来的版本中,我们将仅为Windows上的64位MATLAB提供二进制文件。如果你修改了源代码并希望重新构建包,请在MATLAB中输入’mex -setup’首先选择一个mex编译器。然后输入’make’开始安装。

示例:

    matlab> mex -setup

(提示:MATLAB将显示以下消息来设置默认编译器。)请选择用于构建外部接口(MEX)文件的编译器:你希望mex查找已安装的编译器吗[y]/n?y 选择一个编译器:1 Microsoft Visual C/C++ 7.1版本在C:\Program Files\Microsoft Visual Studio [0] 无 编译器:1 请验证你的选择:编译器:Microsoft Visual C/C++ 7.1 位置:C:\Program Files\Microsoft Visual Studio 这些正确吗?([y]/n):y

    matlab> make

有关MATLAB支持/兼容的编译器列表,请查看以下页面:

http://www.mathworks.com/support/compilers/current_release/

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注