作为一个苦逼的大四学生,做毕业设计是大学生涯的最后一击,这一击要如何声声有力呢?答案就是努力耕耘!
因为以后可能要从事神经网络、机器学习方面的研究,导师就给了一个极端学习机(ELM)的课题给我。一开始当然是一头雾水,一大堆参考文档,每篇要看好几遍才有头绪,而一个寒假放回来,导师说进度太慢了,要马上运行一下代码,然后就开始做现有数据的分析了。所以这几天一直在弄libsvm的运行和安装。以下是遇到的问题:
1、用mex -setup时找不到C++的编译器
原因:安装的是matlab 7.0、
Microsoft Visual Studio 2010,matlab的版本太低了,找不到相应的C++编译器,所以后来再安装matlabR2011b,再用mex
-setup就可以找到相应的编译器
2、make的时候提醒...svm.cppcan't
found
原因:libsvm的文件夹下还有一个matlab的文件夹,要把Current
Folder设置为matlab文件夹,这时就可以make成功了
3、在load heart_scale时,出现error,提示如下:
Error using load Number of columns on line 2 of ASCII file D:\Matlab2011b\bin\libsvm\heart_scale must be the same as previous lines。
原因:上网查了一下,在《Rachel Zhang的专栏》中找到解决办法,原来是有两个数据集,一个是C++的,一个是matlab的,libsvm要加载的是C++数据库,而我下载的libsvm
-3.16并没有heart_scale.mat这个格式文件,解决方法如下:
法1、下载matlab数据集(http://download.csdn.net/detail/abcjennifer/4215779)
法2、用libsvmread而非load,就是这里
libsvmread('heart_scale');
当workspace出现新的变量heart_scale_inst和heart_scale_label就成功了。