【问题标题】:How to solve the NaN value in SVM classifier?如何解决 SVM 分类器中的 NaN 值?
【发布时间】:2016-12-20 05:20:43
【问题描述】:

我使用 libsvm 工具箱对多类数据集进行分类。就我而言, 我有9节课。以下是我的代码:

model = ovrtrainBot(trainLabel, trainData, type);

[predict_label, accuracy, decis_values] = ovrpredictBot(testLabel, testData, model);

我将内核类型设置为"1",这是多项式,因为我发现 这将提供最佳的分类精度。但问题是 参数accuracy 在其第三行给出所有NaN 值。这 参数"accuracy"如下:

63.63%  92.56% 92.56%  92.56%  92.56%  92.56%   92.56%   92.56%   92.56%
0.3636  0.0744  0.0744 0.0744  0.0744  0.0744   0.0744   0.0744   0.0744
NaN      NaN      NaN     NaN     NaN     NaN     NaN      NaN    NaN 

如果我用内核t = 0(linear),第三行准确率都会有值,但是分类准确率比我用kernel t=1低很多。

谁能帮我解决这个问题?

【问题讨论】:

  • @Hoki,你能回答这个问题吗?真的很感激!
  • 很抱歉,我完全不了解该主题。第三行应该是什么意思? ...在某些情况下将它们设置为NaN 可能是正常的...或者至少不用担心,如果最终的准确性更好。

标签: matlab svm libsvm


【解决方案1】:

这是与分类问题无关的平方相关系数 (http://www.openpr.org.cn/files/help/rn01re18.html)

【讨论】:

  • 你的意思是即使是 NaN 也可以吗?没关系?
  • 是的,您应该可以放心地忽略它
猜你喜欢
  • 1970-01-01
  • 2015-07-14
  • 2016-11-28
  • 2017-03-02
  • 2017-08-23
  • 2012-04-02
  • 2020-08-15
  • 1970-01-01
相关资源
最近更新 更多