libsvm 安装过程中的一些错误和处理方式

作者:林子木

一、路径不对的各种问题,这个不细说了没什么意义

    第一:设置matlab的path

      方法file->set path->set sub path为什么要sub path因为只有这样才能将你要加的文件目录的子文件都加进去,否则只是加了你所要加的那个目录。如图

libsvm 安装过程中的一些错误和处理方式_第1张图片

    第二:设置当前路径

    这个matlab中一个current folder(当前目录)设置为相应目录下的matlab子目录(依照3.11版本)如下


二、在make的时候不成功
    操作,必须保证第一门设置目录正确的前提下

   step1: 输入>>mex -setup

   step2:

   Please choose your compiler for building external interface (MEX) files: 
   Would you like mex to locate installed compilers [y]/n?        是否让matlab自动检测编译器 可以选y

   step3:

     Select a compiler: 
     [1] Lcc-win32 C 2.4.1 in E:\PROGRA~1\MATLAB\R2010a\sys\lcc 
     [2] Microsoft Visual C++ 2008 SP1 in e:\Program Files\Microsoft Visual Studio 9.0
     [3] Microsoft Visual C++ 6.0 in E:\Program Files\Microsoft Visual Studio 
     [0] None

     [1]matlab 自带的不能用 其他的如果有的话 就相应的选择就行 

     我选择了 【2】

    step4:

     Compiler: Microsoft Visual C++ 2008 SP1  
      Location: e:\Program Files\Microsoft Visual Studio 9.0 
      Are these correct [y]/n?  路径是否正确 是的就选y

      如果没有自动检测出来依次的话step2就选【n】就可以,再顺着提示下来。

三、设置好VC编译器之那么就开始 编译了

       >>make

libsvm 安装过程中的一些错误和处理方式_第2张图片

生成上图中的几个文件

 

四、那就是开始测试数据了

 

如果你手头有heart_scale.mat那就直接 >>load heart_scale.mat就好了 会生成生成下面两个矩阵

如果你没有 heart_scale.mat(官方现在都不给了,给的都是VC++下的格式 所以load 会报错:heart_scale must be same as previous lines)
所以必须使用给的一个函数,转化数据此函数为libsvmread()

使用如下: [label_vector, instance_matrix] = libsvmread('filename');

此处为了跟官方统一名称可以[heart_scale_label,heart_scale_inst] = libsvmread('heart_scale');

注意:由于heart_scale在libsvm-3.11目录下,不是在matlab下,所以直接用libsvmread命令会报错,要买改变当前路径,或者使用[heart_scale_label,heart_scale_inst] = libsvmread('../heart_scale');../代表返回上层路径。

结果跟前面的.mat的结果一样

其他的测试程序就不写了,那些不会是问题的!

你可能感兴趣的:(Microsoft,matlab,Path,compiler,Matrix,编译器)