我对libsvm中的多类分类的概率估计存在问题。 我有5个标签,从0到4,svmpredict返回一个矩阵'prob_estimates'985x10,其中985是测试集的数量,10应该是标签的数量。我认为有一个错误,因为我有5个标签,但我不明白为什么以及我能做些什么来解决这个问题。
代码是这样的:
model = svmtrain(train_label,train,[ - -c'num2str(best_C)' - g'num2str(best_gamma)' - b 1']); [predict_label,accuracy,prob_estimates] = svmpredict(test_label,test,model);
“test_label”是矩阵985x1,数字从0到4 “test”是一个特征矩阵985x1987。
有人能帮助我吗? 谢谢。
答案 0 :(得分:0)
问题解决了:
我更改了以下代码:
model = svmtrain(train_label,train,[' -c' num2str(best_C)' -g' num2str(best_gamma)' -b 1' ]); [predict_label,accuracy,prob_estimates] = svmpredict(test_label,test,model,' -b 1 -q');
我在svmpredict中添加了以下参数:' -b 1 -q'。