1. matlab2014a中有自带的libsvm工具箱吗
R是更像是一个统计软件。而且因为免费开源,这几年发展表较快。 我目前个人感觉是,Matlab能干的,R全能干,而且没感觉麻烦太多。
2. 安装Libsvm工具箱出现问题E:\MATLAB7\BIN\WIN32\MEX.PL: Error: 'CFLAGS=\$CFLAGS -std=c99' not found.
必须在libsvm文件夹下运行,加入到路径不起作用的。
3. 求在MATLAB下编译好(可以直接使用)的libsvm工具箱
以下两种方法,我已经亲测可用
方法1:可以在其他朋友的电脑上进行编译,编译完后直接把libsvmread.mexw64、libsvmwrite.mexw64、svmpredict.mexw64、svmtrain.mexw64复制到你自己的程序中即可运行。这种方法的弊端是不同的算法程序中均需要复制一次。
方法2:把编译完后的libsvmread.mexw64、libsvmwrite.mexw64、svmpredict.mexw64、svmtrain.mexw64这几个文件添加到F:\MATLAB 2015a anzhuang\toolbox\libsvm-3.22\matlab下,即可
4. 如何在MATLAB中添加SVM函数工具箱
你可以参照http://jingyan..com/article/a501d80cf764c3ec630f5ef5.html的步骤进行安装,然后重启Matlab就可以调用SVM函数工版具箱了。权
5. matlab r2014a怎样安装libsvm工具箱
1.设置路径:用Add with Subfolders添加目录(将工具箱所在文件夹的子目录也添加到MATLAB工作搜索目录)
2.选择编回译器答:mex -setup(mex后面有空格)
3.编译:make(要把MATLAB当前目录调整到libsvm工具箱所在文件夹)双击make.m文件
PS:运行help train得到的是MATLAB自带的svmtrain函数的帮助文件
运行help svmpredict会有报错:svmpredict not found
工具箱中的README稳健可以算是帮助文件
table键对函数进行补全!
6. libsvm提供的数据集下载
猜测。
既然是libsvm组件, 那数据格式应该默认就是Libsvm格式
label id:weighti id:weight...
label id:weighti id:weight...
这种
7. libsvm-mat-加强工具箱从哪里可以下载
http://www.ilovematlab.cn/thread-65333-1-1.html
这个里面有 我用过
如果你没有账号,我版可以发权给你
8. matlab安装libsvm工具箱
遇到了同样的问题 测试也没有问题 调用的时候出现上面两个报错
9. 请问Matlab的libsvm工具箱如何进行多元回归
这个问题其实非常地简单。
1、在Matlab里面先做这样一小段处理:
data = [
0.5 2 12 26 2 0.0476890000000000
0.5 3 14 28 4 0.0792965000000000
0.5 4 16 30 6 0.106723000000000
0.5 5 18 32 8 0.112500000000000
1 2 14 30 8 0.487650000000000
1 3 12 32 6 0.0955300000000000
1 4 18 26 4 0.336150000000000
1 5 16 28 2 0.202830000000000
1.5 2 16 32 4 1.18260000000000
1.5 3 12 30 2 0.273390000000000
1.5 4 18 28 8 0.784670200000000
1.5 5 14 26 6 0.487695000000000
2 2 18 28 6 1.41230000000000
2 3 16 26 8 0.934150000000000
2 4 14 32 2 0.181100000000000
2 5 12 30 4 1.08280000000000
];
x = data(:,1:end-1);
y = data(:,end);
% 上述处理即是将最后一列作为输出,前n-1列全部作为输入
2. 将 x, y 分别作为输入和输出放入svmtrain函数中训练
3. 再在svmpredict函数中输入x即可得出各个x对应的预测值y
注:这里的原理其实十分简单,在libsvm中其实也是将所有变量都默认为了向量(或矩阵),所以你只管输入的数据结构即可。
10. 如何在matlab里安装libsvm包
1.下载好libsvm包
下载libsvm-3.21到随意一个地方,比如到安装路径下的 toolbox下——D:\MATLAB\R2014A\toolbox\下,并解压。
打开matlab,将libsvm-3.21\matlab 添加到路径,比如将:\MATLAB\R2014A\toolbox\libsvm-3.21\matlab 添加到路径。
2.setup 第一次尝试
若提示没有C++编译器,则根据提示的网址去下载 winsdk_web.exe,然后 双击运行winsdk_web.exe,安装到最后若提示失败,则去卸载自带的visual studio 和 .netframework 4,然后再运行 winsdk_web.exe,提示缺少 .netframework 4,则自行下载安装,反复运行 winsdk_web.exe。
直到运行 winsdk_web.exe 时出现如下图所示情况,说明距成功更近一步了,
选择 Change,下一步,
勾选上 visual C++ compilers 和 microsoft visual C++ 2010,下一步,
最后提示成功安装。
2. setup
打开Matlab中,进入LIBSVM根目录下的matlab目录(如D:\MATLAB\R2014A\toolbox\libsvm-3.21),在命令窗口的输入mex -setup 输出为:
>>mex –setup
MEX 配置为使用 'Microsoft Windows SDK 7.1 (C)' 以进行 C 语言编译。
Warning: The MATLAB C and Fortran API has changed to support MATLAB
variables with more than 2^32-1 elements. In the near future
you will be required to update your code to utilize the
new API. You can find more information about this at:
http://www.mathworks.com/help/matlab/matlab_external/upgrading-mex-files-to-use-64-bit-api.html.
要选择不同的语言,请从以下选项中选择一种命令:
mex -setup C++
mex -setup FORTRAN
继续:
>> mex -setup C++
MEX 配置为使用 'Microsoft Windows SDK 7.1 (C++)' 以进行 C++ 语言编译。
Warning: The MATLAB C and Fortran API has changed to support MATLAB
variables with more than 2^32-1 elements. In the near future
you will be required to update your code to utilize the
new API. You can find more information about this at:
http://www.mathworks.com/help/matlab/matlab_external/upgrading-mex-files-to-use-64-bit-api.html.
3.编译
执行 make,输出如下:
>> make
使用 'Microsoft Windows SDK 7.1 (C)' 编译。
MEX 已成功完成。
使用 'Microsoft Windows SDK 7.1 (C)' 编译。
MEX 已成功完成。
使用 'Microsoft Windows SDK 7.1 (C++)' 编译。
找不到 D:\MATLAB\R2014A\toolbox\libsvm-3.21\matlab\svmtrain.exp
找不到 D:\MATLAB\R2014A\toolbox\libsvm-3.21\matlab\svmtrain.exp
MEX 已成功完成。
使用 'Microsoft Windows SDK 7.1 (C++)' 编译。
找不到 D:\MATLAB\R2014A\toolbox\libsvm-3.21\matlab\svmpredict.exp
找不到 D:\MATLAB\R2014A\toolbox\libsvm-3.21\matlab\svmpredict.exp
MEX 已成功完成。
>>
4.重命名
忽略错误(找不到……),继续,编译完成后,在当前目录下(libsvm-3.21/matlab下)会出现svmtrain.mexw64、svmpredict.mexw64 或者svmtrain.mexw32、svmpredict.mexw32 ,把文件名svmtrain和svmpredict 相应改成 libsvmtrain 和 libsvmpredict。
这是因为Matlab中自带有SVM的工具箱,其函数名字就是svmtrain和svmpredict,和 libsvm 默认的名字一样.
5.测试是否安装成功libsvm
libsvm 软件包中自带有测试数据,即软件包根目录下的 heart_scale 文件。
在matlab运行代码,输出如下:
>> [heart_scale_label, heart_scale_inst] = libsvmread('heart_scale');
>> model = libsvmtrain(heart_scale_label, heart_scale_inst, '-c 1 -g 0.07');
*
optimization finished, #iter = 134
nu = 0.433785
obj = -101.855060, rho = 0.426412
nSV = 130, nBSV = 107
Total nSV = 130
>> [predict_label, accuracy, dec_values] = libsvmpredict(heart_scale_label, heart_scale_inst, model);
Accuracy = 86.6667% (234/270) (classification)
>>
OK ,perfect ! Congratulations to you!
如果遇到:
>> [heart_scale_label, heart_scale_inst] = libsvmread('heart_scale');
Invalid MEX-file 'C:\Users\jiao\Documents\MATLAB\libsvm-3.20\matlab\libsvmread.mexw64': 找不到指定的模块。
则把 D:\MATLAB\R2014A\toolbox\libsvm-3.21\matlab 文件夹添加到路径就可以了。