一、问题描述
任务是利用已有分类方法,如SVM和Ridge Regression对MIRFlickr-25000数据集进行分类实验。具体要求:
二、安装
1.在Windows下安装caffe: http://blog.csdn.net/happynear/article/details/45372231可以参考以及文件下载(https://github.com/niuzhiheng/caffe)
2.libsvm的安装:http://www.matlabsky.com/thread-11925-1-1.html另外常见的错误解决办法(http://blog.csdn.net/kobesdu/article/details/8936499)
3.如果libsvm安装不成功,可以直接下载文件:http://pan.baidu.com/s/1o6pECxs 将该文件夹作为matlab的主目录,然后运行read_data.m文件,若出现
* optimization finished, #iter = 162 nu = 0.431029 obj = -100.877288, rho = 0.424462 nSV = 132, nBSV = 107 Total nSV = 132 Accuracy = 86.6667% (234/270) (classification)则表示libsvm已经成功安装
三、测试
利用caffe生成的数据进行测试
% 利用libsvm函数对caffe生成的图片数据进行模型训练并对训练的模型进行测试 % 这里使用的是L2范数归一化数据 % 使用的只是分别对每个label进行预测,也可以将所有的label放在一起之后来判断准确性,但准确性会降低 % 函数处理时间为10 - 20 分钟 close all clear all clc load('y') %载入数据 load('data_L2_train') load('data_label_train') %% traindata = data_L2_train; testdata = data_L2; for i = 1:24 %共有24个label trainlabel = y(1:5000,i); testlabel = y(5001:end,1i); model = libsvmtrain(trainlabel,traindata,'-s 0 -t 0 -c 1.2 -g 2.8'); %训练模型 [predict_label,accuracy] = libsvmpredict(trainlabel,traindata,model); %测试 end已经将caffe所生成的数据文件以及matlab的libsvm代码放入文件夹中( http://pan.baidu.com/s/1bn4UnJD),如果是测试的话,直接将所有的文件全部下载然后将前面的libsvm函数加入matlab目录中,再运行SVM_predict.m文件即可.如果只是需要数据的话,就下载mat文件即可(mat文件只是前5000个测试文件的数据),y.mat是全部图片(25000个)label.