我在Python中使用LibSVM。在构建分类器之前,我想绘制d
和C
不同值的交叉验证的平均误差,以找到平均精度方面的最佳(d, C)
组合。我编写了一个Python脚本来对特定的d, C
值进行交叉验证,并且我的交叉验证的十次迭代的每一次的输出都出现在屏幕上。我现在有两个问题:
如何编写一个Python脚本,将d
和C
值的变量作为svm_parameter
函数中的参数。svm_parameter('-d dval')
给出错误:
ValueError : invalid literal for int() with base 10:dval
如何记录输出数据-除非我从UNIX屏幕上手动复制,否则我无法找到保存每个分类的准确性的方法。有没有方法可以访问和保存输出文件?
谢谢。我是Python新手。在
我强烈建议为您的任务使用优秀的sklearn库。它还有一个LibSVM的包装器(请参见svm.SVC),但除此之外,还提供了cross-validation所需的所有工具,用grid-search找到最佳的d和C,使用metrics模块测量精度的简单方法,以及大量其他有用的工具。在
关于valueerror,python尝试将字符串dval转换为整数。如果
dval
是保存d
值的变量,则可能需要执行类似svm_parameter('-d %s' % dval)
的操作。在相关问题 更多 >
编程相关推荐