我正在尝试使用一些数据集在 libsvm-3.17 上运行 grid.py。我正在使用命令
python grid.py -log2c -5,12,1 -log2v -12,5,1 -v 5 -m 300 <dataset>
说明在这里。但是控制台说
RuntimeError: get no rate
worker local quit.
它死了。任何线索缺少什么?
我使用的数据集是 UCI 上的德国信用数据集。
我对 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
. 您将直接获得具有最佳参数的预测模型。
希望有帮助。
In my case, I saw this error when the indices of my data were out of order. For example, a line in my data looked like:
-1 1:10 4:4 2:1
when it needed to look like
-1 1:10 2:1 4:4
Is there some way you could have gotten a corrupted dataset? There are quite a few ways this particular error message can occur.
您可能需要在调用 grid.py 之前缩放数据。我遇到了同样的问题,并且在我缩放数据后解决了。希望这有帮助。