【问题标题】:LIBSVM svmpredict: why is testLabel needed for?LIBSVM svmpredict:为什么需要 testLabel?
【发布时间】:2016-04-04 23:46:59
【问题描述】:

我是 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]。这是什么意思?

谢谢

【问题讨论】:

    标签: matlab svm probability libsvm


    【解决方案1】:

    你应该改变参数的顺序,让它变成这样:

    buildingStruct = libsvm_svmtrain([1;0;0;0;0;0;0;0],bow,'-b 1')
    

    然后它会给你 1.00 概率作为结果。如果您不知道测试标签,只需将随机数作为参数。 For accuracy:是一个向量,包括accuracy(用于分类),mean 平方误差和平方相关系数(用于回归)。

    【讨论】:

      猜你喜欢
      • 2012-04-19
      • 1970-01-01
      • 2013-04-08
      • 2012-12-17
      • 2019-06-09
      • 2012-02-13
      • 2015-07-30
      • 2020-05-03
      • 2020-03-22
      相关资源
      最近更新 更多