我正在使用libsvm-3.23
来训练数据集并使用默认设置生成模型而不使用任何参数,我也想了解此阶段的输出,但是我不知道如何解释我在这里得到什么...
...................
WARNING: using -h 0 may be faster
*.
WARNING: using -h 0 may be faster
*..
WARNING: using -h 0 may be faster
*.
WARNING: using -h 0 may be faster
*
optimization finished, #iter = 21791
nu = 0.550424
obj = -32123.272387, rho = -3.742414
nSV = 33351, nBSV = 33314
.........
WARNING: using -h 0 may be faster
*.
WARNING: using -h 0 may be faster
*.
WARNING: using -h 0 may be faster
*
optimization finished, #iter = 10486
nu = 0.434844
obj = -15950.193731, rho = -7.014801
nSV = 17162, nBSV = 17118
..............
WARNING: using -h 0 may be faster
*.
WARNING: using -h 0 may be faster
*.
WARNING: using -h 0 may be faster
*
optimization finished, #iter = 15241
nu = 0.431166
obj = -23998.956921, rho = -7.981013
nSV = 24883, nBSV = 24833
Total nSV = 51020
使用此命令:./svm-train acoustic_scale
数据集是(SensIT Vehicle (acoustic)
)。
培训生成了多个输出块,但是我不明白在那里实际发生的情况,例如,在使用数据集heart_scale
(libsvm
附带的轻量级数据集)时,{ {1}}仅生成一块输出,如下所示:
./svm-train
我使用的给出此输出的命令是*
optimization finished, #iter = 162
nu = 0.431029
obj = -100.877288, rho = 0.424462
nSV = 132, nBSV = 107
Total nSV = 132
您可以看到差异,./svm-train heart_scale
数据集会生成SensIT Vehicle (acoustic)
行3次,我不太了解这是如何发生的,以及什么会影响“块的数量“ 已生成...(按块,我的意思是一组与训练后的模型有关的信息,它们以"optimization finished, #iters = X"
行开始,以"optimization finished, #iters = Y"
结尾),更有趣的是,这些值"nSV = XX, nBSV = YY"
,#iters
,nu
等的每次都不同,对此有解释吗?