我已经下载了libsvm-3.17包。提取文件。我转到'tools'文件夹尝试使用grid.py来查找包中提供的数据集的合适的c和g,即heart_scale。 但是,以下是我得到的
追踪(最近一次通话): 在运行中文件“C:... \ Documents \ libsvm-3.17 \ tools \ grid.py”,第266行 如果rate为None:引发RuntimeError('get no rate') RuntimeError:没有率 工人当地退出。
有人可以帮我弄清楚如何解决这个问题。 非常感谢你。
答案 0 :(得分:1)
您可能需要提前缩放数据。我得到了同样的问题,并在我缩放数据后整理出来。希望这有帮助。
答案 1 :(得分:0)
首先,如果您是libsvm的新手,我建议您尝试使用easy.py而不是grid.py.其次,在执行任何必须编译libsvm的任何内容之前,要编译README文件中给出的跟随指令(你必须确保nmake.exe,cl.exe,link.exe在系统路径中),这就是它所说的:
Windows二进制文件位于“windows”目录中。通过构建它们 Visual C ++,使用以下步骤:
打开DOS命令框(或Visual Studio命令提示符)并切换到libsvm目录。如果VC ++的环境变量没有 已设置,键入
“C:\ Program Files \ Microsoft Visual Studio 10.0 \ VC \ bin \ vcvars32.bat”
您可能必须根据哪个版本修改上述命令 VC ++或安装位置。
类型
nmake -f Makefile.win清除所有
- 醇>
(可选)要构建共享库libsvm.dll,请键入
nmake -f Makefile.win lib
另一种方法是从Visual C ++环境构建它们。查看详细信息 在libsvm FAQ。
安装完成后,即可开始使用easy.py和grid.py.
答案 2 :(得分:0)
这是我在64位和32位机器上尝试的,grid.py工作正常。 我添加了默认安装目录,如果您的安装目录不同,则相应地进行修改。
打开命令提示符并键入
64位系统的 C:\Program Files (x86)\Microsoft Visual Studio xx\VC\bin\amd64\vcvars64.bat
OR C:\Program Files (x86)\Microsoft Visual Studio xx\VC\bin\vcvars32.bat
。
在同一命令提示符中导航到libsvm目录并运行
64位系统的C:\Program Files (x86)\Microsoft Visual Studio xx\VC\bin\amd64\nmake.exe -f Makefile.win
OR C:\Program Files (x86)\Microsoft Visual Studio xx\VC\bin\nmake.exe -f Makefile.win
应该在libsvm-3.xx \ windows文件夹中成功构建二进制文件
使用您的选项
运行grid.py.在grid.py中,gnuplot.exe通常设置为tmp,这对我来说无效,所以我将grid.py中的gnuplot可执行路径更改为以下内容:
self.gnuplot_pathname = r'C:\\Program Files (x86)\\gnuplot\\bin\\pgnuplot.exe'
答案 3 :(得分:0)
如果您使用-log2p
选项运行grid.py
,则会获得输出get no rate
。使用grid.py
,您无法使用 - log2p
选项。(在-log2p
中搜索grid.py
无匹配)
您可以在gridregression.py
中使用-log2p
选项。