作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 libsvm 的 java 绑定(bind),它会完成所有训练并为我的分类的大多数测试实例提供正确的标签,但是当我尝试使用 svm_predict_probability() 方法来获取概率以及预测的标签,它给我的概率数组全为零。 (尽管在大多数情况下预测/返回值仍然是正确的!)。这是我的代码调用该方法的部分:
double[] prob_estimates= new double[26];
double label=svm.svm_predict_probability(model, nodes, prob_estimates);
for(int i=0;i<prob_estimates.length;i++)
System.out.print("\t"+i+":"+prob_estimates[i]);
输出为:0:0.0 1:0.0 2:0.0 ... 25:0.0谁能告诉我这有什么问题以及如何获得概率?
最佳答案
我发现为了使用 svm_predict_probability 你应该在训练之前将模型中的“概率”属性值设置为 1。 (模型.参数.概率=1)。这将在模型中生成 probA 和 probB,它们将在 svm_predict_probability 中使用。如果模型中没有 probA 和 probB,那么 svm_predict_probability 将简单地调用 svm_predict,它不会为您提供概率估计!
关于java - svm_predict_probability 返回零数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27219709/
我是一名优秀的程序员,十分优秀!