【发布时间】:2013-04-01 13:07:31
【问题描述】:
我想在我的数据特征上使用 svm、knn、adaboost 分类器。我构建了代码,在其中计算了帧差异并计算了特征(eigenvalues,应变能,势能)......构建了一个[帧数,特征]的数组。我尝试将 svm 用作:
Features = data; % Features array [40, 5]
class = ones(numFrames-1, 1); % numFrames=41
class(1:(fix(numFrames/2))) = -1;
SVMstruct = svmtrain(Features, class, 'Kernel_Function', 'rbf');
newclass = svmclassify(SVMstruct, [40 5]); %Test data
我遇到了一个错误:
TEST 和训练数据中的列数必须相等。
%classperf(cp,newclass); cp'`给出的类的%性能
这个错误的原因是什么?以及如何使用具有此功能集的更多分类器?
【问题讨论】:
-
能否提供特征矩阵的大小?
-
特征矩阵为[40,5]
-
澄清一下,是
Features=[40, 5]还是size(Features) = [40,5]? -
我建立了一个大小为 [ 40 5] 的数组......在其中我计算了特定帧的 5 组特征......我在 40 帧上运行视频并计算特征每个帧....然后我必须对其应用 svm 方法....我 jst 在“newclass”行中发现了错误 ....在 mathworks 论坛中 svmclassify 应该具有与训练数据相同的样本数据列...因此在示例数据中,我将只放置 [40 5] 的数组....需要澄清示例数据
标签: matlab