台大机器学习基石 Lecture 14 - Regularization

本文探讨了通过正则化解决机器学习中的过拟合问题。介绍了正则化的概念及其在多项式拟合中的应用,包括Sparse Hypothesis Set、Regularized Hypothesis Set的概念,以及L1和L2正则化的特点与区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本次Lecture主要讲解了解决overfitting问题的方法——Regularization正则化

Regularized Hypothesis Set

我们在上节课知道,当用一个高次的多项式对target function进行拟合的时候,就会出现E_{in}小而E_{out}大的情况,这就是过拟合(overfitting)。而当用较低次的多项式进行拟合的时候,就能够得到左边这样比较良好的效果。

于是,这种获得regularized fit的方法就是试着将高次的多项式退化到低次多项式。根据之前所学,多项式拟合这种假设空间,是nested hypothesis,也就是H_{2}是包含在H_{10}中的,如下图——

所以,我们可以对H_{10}添加一些限制条件(constraints)退化成H_{2}

H_{10}H_{2}分别可以表示为:

H_{10}=w_0+w_1x+w_2x^2+w_3x^3+\cdots+w_{10}x^{10}

H_2=w_0+w_1x+w_2x^2

那么只要有w_3=w_4=\cdots=w_{10}=0就能得到H_{10} = H_{2},也就是将高阶项的系数限制为0,这样高阶就转化为了低阶,图形更加平滑了。但是,这种条件比较严格,等价于转化为二阶多项式了。

现在提出一种宽松一点的限制条件,限定了w\neq 0的个数,并不限定必须是高阶的w。这个Looser Constraint的方程写为:

\sum_{q=0}^{10}[w_q\neq0]\leq3(这里[ ]表示布尔计数)

这种hypothesis记为{H_2}',称为sparse hypothesis set。它与H_{2}H_{10}的关系为:H_2\subset H_2'\subset H_{10}

最优化问题就转化为求解\underset{w\in\mathbb{R}^{10+1}}{min}E_{in}(w)\;\;\;\;\;\text{s.t.}\sum_{q=0}^{10}[w_q\neq0]\leq3,这被证明是NP-hard,求解非常困难。

于是,我们就u一种更容易求解的宽松的限定条件Softer Constraint,即:

H(C) \equiv \{ w \in \mathbb{R}^{10 + 1} \;\text{while}\; ||w||^2\leq C\}

最优化问题转化为\underset{w\in\mathbb{R}^{10+1}}{min}E_{in}(w)\;\;\;\;\;\text{s.t.}\sum_{q=0}^{10}w_q^2\leq C

H(C){H_{2}}'之间有重叠的部分,但是没有完全包含的关系,也不一定相等。对应的H(C)中C值越大,限定的范围越大,即越宽松平滑:

H(0)\subset H(1.126)\subset \cdots \subset H(1126)\subset \cdots \subset H(\infty)=H_{10}

H(C)被称为regularized hypothesis set,这种条件下的w是可解的,我们将取得满足条件的最优解时的w记作w_{REG}

那么接下来就讨论如何求解w_{REG}

Weight Decay Regularization

我们知道,E_{in}(w) = \frac{1}{N}\sum_{n = 1}^{N}(w^Tz_n-y_n)^2,并且有\sum (\cdots)^2 = (\cdots)^T(\cdots),于是H(C)就可以转化为:

\underset{​{\color{Purple}w}\in\mathbb{R}^{10+1}}{min}{\color{Blue}E_{in}({\color{Purple}w}) } = \frac{1}{N}(Z{\color{Purple}w}-y)^T(Z{\color{Purple}w}-y) \;\;\;\;\;\text{s.t.}{\color{Red}w^Tw \leq C}

这个限定条件从几何角度上的意思是,权重{\color{Purple}w}被限定在半径为的球内,而球外的{\color{Purple}w}都不符合要求,即它是靠近{\color{Blue}E_{in}({\color{Purple}w})} = 0{\color{Purple}w}

 从几何的角度来辅助解释求解最小{\color{Blue}E_{in}({\color{Purple}w})}的过程:

  • 红圈表示限制条件的边界,蓝圈表示{\color{Blue}E_{in}({\color{Purple}w})}是当前{\color{Purple}w}下的取值
  • 假设在空间内有一点{\color{Purple}w}(当然它是满足限制条件{\color{Red}w^Tw \leq C}的),根据梯度下降算法,{\color{Blue} -\nabla E_{in}}是当前{\color{Purple}w}下的移动方向(图中蓝色箭头)
  • (我们之前学过)在没有约束条件的时候,随着{\color{Blue} -\nabla E_{in}}的不断变化,最终{\color{Purple}w}会使{\color{Blue}E_{in}({\color{Purple}w})}到达“谷底”,也就是{\color{Purple}w} = w_{LIN}
  • 现在加上了约束条件,{\color{Purple}w}被限制在红色的球内,不会达到w_{LIN}的位置,最大只可能在红圈的边缘沿着切线方向移动(图中绿色箭头),而不可能沿着法线方向移动(图中红色箭头)。当然,这个法线的方向其实就是{\color{Purple}w}的方向,这是由原点指向{\color{Purple}w}的。
  • 于是{\color{Blue} -\nabla E_{in}}在切线方向产生投影{\color{Green} (-\nabla E_{in})_{\perp }},在投影向量的作用下{\color{Purple}w}不断移动,直到{\color{Green} (-\nabla E_{in})_{\perp }} = 0为止
  • 也就是说,移动的终止条件是{\color{Blue} -\nabla E_{in}({\color{Purple}w_{REG}})}\propto {\color{Purple}w_{REG}}

于是,取得最优解就要满足条件{\color{Blue} \nabla E_{in}({\color{Purple} w_{REG}})}+{\color{Orange} \frac{2\lambda}{N}}{\color{Purple} w_{REG}}=0,其中{\color{Orange} \lambda >0}被称为拉格朗日乘子(Lagrange multiplier),于是我们只要求解方程中的{\color{Purple}w_{REG}}即可。

》》如果{\color{Blue} \nabla E_{in}}线性的,我们将{\color{Blue}E_{in}({\color{Purple}w}) } = \frac{1}{N}(Z{\color{Purple}w}-y)^T(Z{\color{Purple}w}-y)代入得\frac2N(Z^TZ{\color{Purple} w_{REG}}-Z^Ty)+\frac{2\lambda}N{\color{Purple} w_{REG}}=0,因为Z^TZ是半正定矩阵,如果{\color{Orange} \lambda > 0 },那么Z^TZ+{\color{Orange} \lambda }I一定是正定矩阵,即一定可逆。

于是有最优解:{\color{Purple} w_{REG}} \leftarrow (Z^TZ+{\color{Orange} \lambda} I)^{-1}Z^Ty

统计学上把这叫做ridge regression,可以看成是linear regression的进阶版。

》》对于更一般的情况,{\color{Blue} \nabla E_{in}}非线性的,{\color{Purple}w_{REG}}就不能用之前的方法求解。所以从另一个角度来看平行方程——

已知{\color{Blue} \nabla E_{in}}{\color{Blue} E_{in}}{\color{Purple}w_{REG}}的导数,而\frac{2{\color{Orange} \lambda}}{N}{\color{Purple} w_{REG}}也可以看成是\frac{​{\color{Orange} \lambda}}N{\color{Purple} w_{REG}}^2的导数。那么等式左边可以看成一个函数的导数,导数为零,即求该函数的最小值。

于是方程转换为取函数{\color{Blue} E_{aug}({\color{Purple} w})}={\color{Blue} E_{in}({\color{Purple} w})}+\frac{​{\color{Orange} \lambda}}N{\color{Purple} w}^T{\color{Purple} w}的最小值,这个函数被称为augmented error,其中第二项就是限定条件regularizer,也称为weight-decay regularization。

用一个例子来体现不同的{\color{Orange} \lambda }的作用效果:

我们可以把{\color{Orange} \lambda }看成是一种penalty,即对hypothesis复杂度的惩罚。

  • {\color{Orange} \lambda }越大,{\color{Purple}w}就越小,对应于C值越小,即这种惩罚越大,拟合曲线就会越平滑,高阶项就会削弱,容易发生欠拟合。
  • {\color{Orange} \lambda }一般取比较小的值就能达到良好的拟合效果,过大过小都有问题,但究竟取什么值,要根据具体训练数据和模型进行分析与调试。

我们目前讨论的多项式是形如x,x^2,x^3,\cdots,x^Q的形式,若x \in [-1,1],那么可能导致x^Q相对于低阶的值要小得多,则其对应的{\color{Purple}w_q}非常大,相当于要给高阶项设置很大的惩罚。

为了避免出现这种数据大小差别很大的情况,可以使用Legendre Polynomials代替x,x^2,x^3,\cdots,x^Q这种形式,Legendre Polynomials各项之间是正交的,用它进行多项式拟合的效果更好。

Legendre Polynomials这里不做详细介绍,感兴趣的同学可以看维基百科

至此,我们将一个有限制的最优化转化为了无限制的最优化。

Regularization and VC Theory

下面研究一下Regularization与VC Theory之间的关系——

  • Augmented Error表达式:{\color{Purple} E_{aug}({\color{Purple} w})}={\color{Blue} E_{in}({\color{Purple} w})}+\frac{​{\color{Orange} \lambda}}N{\color{Purple} w}^T{\color{Purple} w}
  • VC Bound表达式:E_{out}(w)\leq E_{in}(w)+\Omega(H)

我们可以从另一个角度来看待Augmented error

  • {\color{Purple} w}^T{\color{Purple} w}可以被视作单个的假设{\color{Purple}w}有多复杂;而VC中的\Omega (H)则是假设集的复杂程度。将两者相类比,可以将{\color{Purple} w}^T{\color{Purple} w}记作\Omega ({\color{Purple}w})
  • 而根据两者的表达式,\Omega ({\color{Purple}w})被包含在\Omega (H),也就是\frac{​{\color{Orange} \lambda}}N{\color{Purple} w}^T{\color{Purple} w}能够很好地表现\Omega (H)
  • 从而可以用{\color{Purple} E_{aug}}来代理E_{out},相比之前用E_{in}来得到的E_{out}更好。

由于“代理人”{\color{Purple} E_{aug}}的存在,我们就能够对整个假设集H有一个评判,{\color{Purple} E_{aug}}知道哪个{\color{Purple}w}比较好,可以自由选择。

根据VC Dimension理论,整个hypothesis set的模型复杂度d_{VC}=\hat{d}+1,这是因为在最小化的过程中考虑了所有的{\color{Purple}w},没有任何限制条件。

但是实际上,并不是将所有{\color{Purple}w}都考虑,实际上只要考虑H({\color{Orange} C})就可以,于是就有d_{VC}(H(C))=d_{EFF}(H,{\color{Orange} A}),也就是综合了假设集和学习算法综合的复杂度,{\color{Orange} \lambda >0}时总有d_{EFF}(H,{\color{Orange} A})\leq d_{VC} = \hat{d}+1

学习算法{\color{Orange} A}中包含了regularized的过程,也就像给算法加上了“踩刹车”的功能(记不得这个功能可以复习以下上一讲的内容),减少了模型复杂度,也避免了过拟合的可能。

General Regularizers

那么在一般的时候,Regularizers\Omega (w)应该如何选取呢?(也就是这些条件如何选取呢?)当然我们在做机器学习的时候往往不知道target function,所以一般都是在限制内朝着target function的方向来选取。

主要有三种方式:

  • target-dependent:比如我们需要一个偶函数的结果,那我们只要给奇次方系数加上权重,让他们变小就好了。
  • plausible:选择一些可以说服我们自己的条件,让我们相信能得到更平滑更简单的结果就可以减少噪声了。(下一页的L1 Regularizer就是这样)
  • friendly:找到一个容易优化的regularizer,就像之前介绍的weight-decay regularizer就是这样。

那万一选到一个不好的regularizer怎么办?这个大可以放心,因为我们对regularizer有系数{\color{Orange} \lambda }来限制,不理想的时候把它调小甚至为0就可以,最差就是不用罢了。

Regularizer的选取方式跟error measure的选取原则相似的原则,error measure是user-dependent, plausible, or friendly。

我们在第二节的时候已经看过了一种weight-decay的regularizer,被称为L2 regularizer(下图左)。这种形式的regularizer计算的是{\color{Purple}w}的平方和,是凸函数,比较平滑,易于微分,容易进行最优化计算。

我们再看L1 Regularizer的表达式:\Omega(w)=\sum_{q=0}^Q|w_q|=||w||_1。这是对{\color{Purple}w}求绝对值之和,也就是长度之和,也是凸函数,但并不是圆形而是正方形,也就不是处处可微的了。(上图右)

L1的解是稀疏的(sparse)。这是因为:根据之前的推导,我们知道{\color{Blue} -\nabla E_{in}}与垂直于平面(红线)的方向平行才会达到最优,而在边上是很难的,在靠近顶点的位置才会达到(有一些w是0)。

于是,在需要一些稀疏解的时候,L1就比较有用。

关于这两个regularizer更多讲解可以看这篇帖子:机器学习中的范数规则化之(一)L0、L1与L2范数

接下来的问题是,{\color{Orange} \lambda }应该怎么选择比较好?

我们看到, stochastic和deterministic两种噪声越大的时候,{\color{Orange} \lambda }就越大。我们可以理解为,路面越不平整的时候,刹车踩得就越多。那么很多时候我们并不知道noise的情况,这种时候如何来设置{\color{Orange} \lambda }呢?下次课继续讲解。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值