matlab SVM分类预测 参数的维度不一致

我将《MATLAB 神经网络30个案例分析》【案例12】SVM神经网络的数据分类预测-葡萄酒种类识别”进行修改,下载了UCI zoo.mat的数据集,替换掉wine的数据,自己建了zoo_labels.mat,训练集和测试集是自己随便分的。出现了这个错误怎么解决?是要修改参数吗?小白刚接触不懂
??? Error using ==> vertcat
CAT arguments dimensions are not consistent.

第1个回答  2011-12-30
这个首先的保证你的训练集和测试集的每个样本的维度要相同,这点我相信你在构建zoo_labels.mat数据的时候应该也注意到了的。那么现在你的问题就是在SVM中的有个参数的问题。因为SVM是有监督的预测,所以你在训练和识别的时候都对样本的类别进行标记,其中是用1,2,3等数据来标注类别的。 如下是我的实验中的类别标注。
x1 = [1*ones(1,50),2*ones(1,50),3*ones(1,50),4*ones(1,50),5*ones(1,50),6*ones(1,50)];
这里就是有6类,分别用1,2,3,4,5,6标注,每类50个样本。所以你的代码要修改的就是类别数和每类的样本数。
我猜测你的可能是这个问题,希望对你有帮助。其实想想,维度对这个影响照理说应该不是很大的,具体我没有测试哈。
第2个回答  2011-12-21
维数不一致追问

请问具体要怎么解决呢?

追答

一般是你的数据跟原来的数据维度不相符啊,当然没法用了。
可能是你自己的训练数据和测试数据维度不一致吧。看看数据

本回答被提问者和网友采纳