我在SVC中训练了一个分类模型,为了可视化训练过程,我将verbose设置为True。以下是我得到的结果:
optimazation finished,#iter = 200obj = -315.082675, rho = 3.537407nSV = 232, nBSV = 199
iter表示达到收敛所需的迭代次数。在这种情况下,obj和rho分别代表什么意思?
回答:
scikit-learn的SVC
实现基于libsvm
。你试图解决的是ν-支持向量分类问题,该问题被定义这里为以下二次规划问题(原始问题):
其中对应的对偶问题是
ν-SVC是软边界最优超平面的变体,使用ν-参数化。标准正则化参数C被参数ν ∈ [0, 1]替代,该参数分别是支持向量的数量以及位于超平面错误一侧的例子的数量的下限和上限,如这里所述。
变量ρ也被优化。请注意,当ξ = 0时,两个类别由边界2ρ/||w||分隔。此处的rho指的是在收敛时ρ的最优值。而obj是在收敛时目标函数(被最小化)的最优值。