读取LIBSVM的数据
起因是在svm学习网站看到奇怪格式的数据,难以读取。后来发现解读此类文件需要利用工具包内的libsvmread函数进行读取。因此,基于Matlab做了此网站数据的读取教程。
下载工具包
首先必要的部分是下载工具包(下载网址),我们选择zip文件:
随后选择一个合适的位置解压文件,可以看到,内部是含有诸多语言的工具包供学习者使用的。这里我们使用matlab文件夹内的函数。
配置环境
我们需要配置环境后才能在不同的文件路径下使用工具包。具体步骤如下:
1.首先进入环境配置:
2.点击添加文件夹,选择matlab版本的工具包路径,最后保存:
3.编译
将路径切换至matlab版本的工具包下
输入指令
mex -setup
如果没有报错,那么输入下面指令:
make
如果安装visual studio的朋友一定会非常顺利。但由于作者使用的是vscode,因此在第一步便报错了。解决办法如下(没有问题的朋友可以跳过此处):
首先我们依照提示进入"附加功能":
搜索"MINGW",并下载。
比较迷惑的时作者安装了mingw64用来写c++代码的,但此处matlab没有找到,我们按照指示步骤走就行。
且按作者对mingw的安装印象,matlab提供的安装是比较方便的。
下载完成后我们再次输入指令:
mex -setup
选择c++版本的编译器
输入指令
make
安装完成后便会有四个后缀为".mexw64"的文件:
测试
我们从数据网站下载一个数据集(网址见文章首部),这里选用“satimage.scale”,将四个数据集存放在txt文件内。
将路径转移到数据集下,尝试性地输入如下图的指令,发现作者已经在matlab的工具箱做了提示:
因此我们输入:
[label_vector, instance_matrix] = libsvmread('satimage.scale.txt');
可以发现,其中一个向量是标签,另外一个则是比较特殊的结构,作者猜测是一种类似三元组的结构:
具体的工具包使用,等作者探索完毕再更新......
标签:读取,Libsvm,工具包,----,matlab,输入,数据,下载 From: https://www.cnblogs.com/feoandcode/p/16797156.html