gpt4 book ai didi

java - 如何在java中对libsvm的svm_predict()输出进行排名?

转载 作者:行者123 更新时间:2023-12-02 07:02:48 24 4
gpt4 key购买 nike

我正在使用 JAVA 中的 LIBSVM 执行分类任务(-1 和 +1)。在 LIBSVM 中,我使用 kernel_type=RBF 和 svm_type=C_SVC,所有其他参数值均为默认值。

如何在 java 中对 svm_predict() 的输出进行排名?

svm_predict() 生成此文件:

 labels 1 -1
-1.0 0.019641780896603997 0.9803582191033958
-1.0 0.021318683904391962 0.9786813160956079
-1.0 0.01977828600663557 0.9802217139933644
-1.0 0.0282631732179981 0.9717368267820019
-1.0 5.286175141886943E-7 0.9999994713824858
-1.0 0.004980730957033338 0.9950192690429667
-1.0 0.004500990037742634 0.9954990099622574
-1.0 0.013496219124888747 0.9865037808751113
-1.0 0.0033941767601432665 0.9966058232398568
-1.0 0.004436071705624729 0.9955639282943753
-1.0 2.425758250037033E-10 0.9999999997574243
-1.0 5.4261670963815676E-8 0.999999945738329
-1.0 4.736895864616017E-9 0.9999999952631042
-1.0 1.3239231249757209E-5 0.9999867607687501
-1.0 2.3084949252003764E-7 0.9999997691505075
<小时/>

我按照以下步骤进行排名:

d=Math.abs( label(1) - label(-1) ) 

(例如 0.96071=0.01964 - 0.98035)

rank=d/2 

(例如排名=0.4803)

最佳答案

svm_predict() 为您提供每个图像为正的概率(在第二列中)。只需按照该概率的顺序对图像进行排名即可。

您的计算相当于rank=Math.abs( label(1) - 0.5 )。很难看出这有什么用处,因为接近零的概率最终比高于 0.5 的概率更大

关于java - 如何在java中对libsvm的svm_predict()输出进行排名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16440028/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com