grid.py对数据集没有任何速率

时间:2013-04-29 06:06:10

标签: python gnuplot libsvm

我正在尝试使用一些数据集在libsvm-3.17上运行grid.py.我正在使用命令

python grid.py -log2c -5,12,1 -log2v -12,5,1 -v 5 -m 300 <dataset>

Instructions在这里。但控制台说

RuntimeError: get no rate
worker local quit.

它死了。什么缺失的线索?

我使用的数据集是UCI上的德国信用数据集。

3 个答案:

答案 0 :(得分:2)

我对libsvm 3.17有同样的问题。不知何故,即使运行grid.py而没有其他选项,也会弹出此错误。但是,当通过easy.py调用grid.py时,脚本的执行不会停止,您可以获得要使用的任何内核的最佳参数。

在easy.py中,更改

cmd = '{0} -svmtrain "{1}" -gnuplot "{2}" "{3}"'.format(grid_py, svmtrain_exe, gnuplot_exe, scaled_file)

cmd = '{0} -log2c -5,12,1 -log2g -12,5,1 -v 5 -m 300 -svmtrain "{1}" -gnuplot "{2}" "{3}"'.format(grid_py, svmtrain_exe, gnuplot_exe, scaled_file)

并运行easy.py而不是grid.py。您将直接获得具有最佳参数的预测模型。

希望有所帮助。

答案 1 :(得分:1)

就我而言,当我的数据索引出现故障时,我看到了这个错误。例如,我的数据中的一行看起来像:

-1 1:10 4:4 2:1

当需要看起来像

-1 1:10 2:1 4:4

您是否有某种方法可以获得损坏的数据集?可以通过多种方式发生此特定错误消息。

答案 2 :(得分:0)

您可能需要在调用grid.py之前缩放数据。我得到了同样的问题,并在我缩放数据后整理出来。希望这有帮助。