人工智能相关问题总结

正则化项只是在损失函数后面加了一项,为什么可以降低VC维?

0. VC维与打散 (Shattering)

VC(全称 Vapnik-Chervonenkis Dimension)是机器学习理论(特别是统计学习理论)中一个非常核心的概念。简单来说,它是衡量一个模型(函数集)复杂度“学习能力”的指标。

VC维越高,模型越复杂,能拟合的数据模式越多样,但过拟合(Overfitting)的风险也越大;VC维越低,模型越简单,容易欠拟合(Underfitting)。

要理解VC维,首先必须理解“打散”(Shattering)这个概念。

想象有一组数据点,我们要用一个模型(比如一条直线)把它们分成两类(正类和负类,即二分类问题)。

  • 如果有 N 个点,这 N 个点理论上共有 2N 种可能的标签组合(比如全正、全负、一正一负等)。
  • 如果对于这 N 个点的任何一种标签组合,模型都能找到一种参数设定,把它们完美地分开(训练误差为0),我们就说这个模型能打散N 个点。

所以,VC维就是一个假设集合(模型)能够“打散”的样本点的最大数量。

  • 记作: VC(H)
  • 含义:
    • 如果存在至少一组 N 个点能被模型打散,且不存在任何一组 N + 1 个点能被模型打散,那么该模型的VC维就是 N
    • 注意: 只要找到“任意一组” N 个点能被打散即可,不需要所有的 N 个点组合都能被打散。但在 N + 1 时,必须是“所有”组合都无法被打散。

1. 几何直觉:从“全空间”“受限空间”

想象你在训练一个线性回归模型 y = w1x1 + w2x2

  • 没有正则化时: 参数 w1, w2 可以是任意实数。你的搜索空间是整个二维平面。在这个巨大的空间里,模型可以拟合幅度极大的变化,这对应着很高的复杂度(高 h)。
  • 加上 L2 正则化 (w12 + w22 ≤ C): 虽然你是在 loss 后面加了 λ||w||2,但这在数学上等价于告诉模型:“你只能在半径为 的圆圈内找参数”。
    • 结果: 你的搜索空间从“无限大的平面”缩小到了“一个小圆圈”。
    • 结论: 一个只能在圆圈里取值的模型,显然比一个可以在全宇宙取值的模型“弱”。这种人为变弱,就是降低 VC 维的过程。

2. 数学解释:权重衰减 (Weight Decay) 与平滑度

VC 维的一个核心来源是模型对数据微小变化的敏感度。

  • 高 VC 维的表现: 模型参数 w 很大。当输入 x 稍微变化一点点,输出 y = w ⋅ x 就会剧烈波动。这种“剧烈波动”的能力让模型可以强行穿过每一个噪声点(过拟合)。
  • 正则化的作用: 正则化项(如 λ||w||2)强迫参数 w 保持很小。
    • w 很小时,函数变得非常平滑
    • 平滑的函数无法像心电图一样上下乱窜去拟合噪声。
    • 丧失了“乱窜”的能力 = 丧失了拟合任意复杂数据的能力 = 降低了 VC 维。

3. 本质:软约束 vs 硬约束

“VC 维定义不是看参数个数吗?加了正则化,参数个数没变啊?”

  • 理论 VC 维 (Theoretical VC dim): 确实通常由参数数量决定(比如 d + 1)。
  • 有效 VC 维 (Effective VC dim): 实际上模型能表现出的复杂度。

正则化并没有改变参数的个数,但它极大地限制了参数的取值范围(也就是参数的“自由度”)。

正则化项虽然是“加”在 Loss 上的,但它的作用是惩罚复杂度Losstotal = Lossdata + λ ⋅ Complexity 通过最小化这个总 Loss,模型被迫在“拟合数据”“保持简单”之间做妥协。这种妥协剔除了假设空间中那些“参数值巨大、极其崎岖复杂”的函数,只留下了平滑、简单的函数。假设空间变小了,VC 维自然就降低了。

L1 和 L2 正则化在几何图像上有什么区别?

要理解为什么 L1 (Lasso) 能把参数变成 0(稀疏解),而 L2 (Ridge) 只能把参数变小,我们必须通过几何图像来看。

想象我们在一个二维平面上,只有两个参数 w1w2

1. 两股力量的对抗

我们的目标是最小化总损失:Losstotal = Lossdata + λ ⋅ Regularization。这在数学上等价于:在限制正则化项不超过某个值 C 的情况下,尽可能最小化数据误差。

这就变成了两股力量的“接触”游戏:

  1. 数据误差(Loss):它的等高线通常是一圈圈的椭圆。椭圆的中心是误差最小的完美点,越往外误差越大。模型拼命想往圆心钻。
  2. 正则化项(Constraint):它是围绕原点 (0, 0) 的一个限制区域。模型参数 w 被锁在这个区域里,不能跑出去。

最优解(最佳参数)就在“误差等高线”“正则化限制区域”的切点(接触点)上。

2. L2 正则化:圆形的“平滑”接触

  • 正则项形状: w12 + w22 ≤ C。这是一个(在高维是球体)。
  • 接触过程:
    • 误差椭圆慢慢扩大,去触碰原点周围的这个圆。
    • 关键点: 圆是非常光滑的,它没有“棱角”。
    • 椭圆和圆的切点,通常会落在圆周的任意位置。
  • 结果: 切点的坐标 (w1, w2) 通常两个都不是 0(比如 w1 = 0.2, w2 = −0.5)。
  • 结论: L2 只是限制参数不要离原点太远(变小),但很难让它们恰好落在坐标轴上(变 0)。

3. L1 正则化:菱形的“尖角”接触

  • 正则项形状: |w1|+|w2| ≤ C。这是一个菱形(或者说是旋转了 45 度的正方形)。
  • 接触过程:
    • 这个菱形有 4 个非常突出的尖角(Corners),这些尖角刚好就在坐标轴上(比如 (C, 0)(0, C))。
    • 当误差椭圆扩大去触碰这个菱形时,由于尖角向外突出,椭圆极大概率会先碰到尖角,而不是碰到平滑的边。
  • 结果: 一旦切点落在尖角上,你可以看看坐标——在这个例子中,切点是 (w1, 0) 或者 (0, w2)
  • 结论: 这就产生了 0! 某个参数变成了 0,意味着对应的特征被“删掉”了。这就是稀疏性(Sparsity)的来源。
特性 L2 正则化 (Ridge) L1 正则化 (Lasso)
几何形状 圆 / 球体 (平滑) 菱形 / 多面体 (有尖角)
触碰点 通常在圆弧边缘 极大概率在尖角(顶点)
参数变化 整体变小,接近 0 很多参数直接变为 0
主要功能 防止过拟合,处理共线性 特征选择 (自动去掉无用特征)
数学性质 处处可导 在 0 点处不可导 (所以产生了稀疏解)

人工智能相关问题总结
https://striver98.github.io/2026/01/07/人工智能相关问题总结/
作者
Wang Zhixuan
发布于
202617
许可协议