支持向量机中的正则化参数调整

支持向量机(Support Vector Machines, SVM)分类中,关注风险最小化问题,其方程如下:

C * Σ (i=1 to n) L(f(x_i), y_i) + Ω(w)

其中,C用于设置正则化的程度,L是样本的损失函数,Ω是模型参数的惩罚函数。如果将损失函数视为每个样本的个体误差,则随着样本数量的增加,数据拟合项或每个样本误差之和会增加。然而,惩罚项不会增加。

在使用交叉验证来设置C时,主问题和交叉验证折叠内较小问题之间的样本数量会有所不同。由于损失函数依赖于样本数量,后者会影响所选的C值。这就引出了一个问题:“如何最优地调整C以适应不同数量的训练样本?”

数据生成

在这个例子中,研究了重新参数化正则化参数C以适应样本数量的效果,无论是使用L1还是L2惩罚。为此,创建了一个具有大量特征的合成数据集,其中只有少数特征是信息性的。因此,期望正则化将系数缩小到零(L2惩罚)或完全为零(L1惩罚)。

在L1情况下,理论指出,如果正则化很强,估计器无法像知道真实分布的模型那样预测得好(即使在样本大小增长到无穷大的极限情况下),因为它可能将一些本来具有预测性的特征的权重设置为零,这引入了偏差。然而,通过调整C,确实可以找到正确的非零参数集及其符号。

可以对L2惩罚进行类似的实验。在这种情况下,理论指出,为了实现预测一致性,随着样本数量的增长,惩罚参数应该保持不变。

对于L2惩罚案例,重新参数化似乎对正则化最优值的稳定性影响较小。从过拟合区域的过渡发生在更广泛的范围内,并且直到偶然水平,准确性似乎没有降低。

可以尝试将n_splits的值增加到1000以获得更好的L2案例结果,但由于文档构建器的限制,这里没有显示。

脚本总运行时间

  • 逻辑回归中的L1惩罚和稀疏性
  • 绘制分类概率
  • L2正则化下的岭系数作为函数
  • L1逻辑回归的正则化路径
沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485