我是matlab和libsvm的新手。我有8个不同对象大小为8 * 1000的单词包。我培训了他们每个人:
buildingStruct = libsvm_svmtrain(bow,[1;0;0;0;0;0;0;0],'-b 1')
之后,我想用bow(1,:)来测试它,它是buildingStruct的训练数据。即:
[predict_label, accuracy, prob_values] = libsvm_svmpredict(testLabel, bow(1,:), buildingStruct, '-b 1');
从这个意义上说;我不明白我应该给testLabel。而且如果我以testLabel 1为例,我得到的prob_values的大小为5.为什么它是5,为什么它们不接近100,因为我测试了火车数据?准确性也像[0; 9; NaN]。这是什么意思?
由于
答案 0 :(得分:1)
您应该更改参数的顺序,使其变为:
buildingStruct = libsvm_svmtrain([1;0;0;0;0;0;0;0],bow,'-b 1')
然后它会给你1.00概率。如果您不知道测试标签,只需将随机数作为参数。 准确度:是包含准确度(用于分类),平均值的向量 平方误差和平方相关系数(用于回归)。