5 正则化
给参数增加惩罚项,达到简化假设函数,降低过拟合的目的
5.1 正则化线性回归
5.1.1 正则化代价函数
(5.1) J ( θ ) = 1 2 m [ ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) 2 + λ ∑ j = 1 n θ j 2 ] J(\theta)=\frac{1}{2 m}\left[\sum_{i=1}^{m}(h_{\theta}(x^{(i)})-y^{(i)})^{2}+\lambda \sum_{j=1}^{n} \theta_{j}^{2}\right]\tag{5.1} J(θ)=2m1[i=1∑m(hθ(x(i))−y(i))2+λj=1∑nθj2](5.1)
右边加的项称为正则化项, λ \lambda λ称为正则化参数,有两个目标
- 更好地拟合训练集
- 保证1的同时尽量减小参数,保持假设模型简单避免出现过拟合情况
- 一般约定不对 θ 0 \theta_0 θ0进行正则化
- 若 λ \lambda λ设置过大,参数会接近于0,导致假设函数只有 θ 0 \theta_0 θ0项,即假设函数是一条水平直线,因此需要选择一个合适的正则化参数
5.1.2 正则化梯度下降
学习率 α \alpha α很小,样本量m很大,因此正则化即每次将参数向0方向缩小一点
5.1.3 正则化正规方程
(5.2) θ = ( X T X + λ [ 0 1 1 ⋱ 1 ] ) − 1 X T y \theta=\left(X^{T} X+\lambda\left[\begin{array}{cccc}{0} \\ {} & {1} \\ {} & {} & {1} \\ {} & {} & {} & {\ddots} \\ {} & {} & {} & {1}\end{array}\right]\right)^{-1} X^{T} y\tag{5.2} θ=⎝⎜⎜⎜⎜⎛XTX+λ⎣⎢⎢⎢⎢⎡011⋱1⎦⎥⎥⎥⎥⎤⎠⎟⎟⎟⎟⎞−1XTy(5.2)
其中加入的矩阵为(n+1)×(n+1)维
- 如果样本量m小于特征变量个数n,则 X T X X^TX XTX不可逆,为奇异矩阵,但只要 λ > 0 \lambda>0 λ>0,可确保矩阵和非奇异
5.2 正则化逻辑回归
5.2.1 正则化代价函数
(5.3) J ( θ ) = − [ 1 m ∑ i = 1 m y ( i ) log h θ ( x ( i ) ) + ( 1 − y ( i ) ) log ( 1 − h θ ( x ( i ) ) ) ] + λ 2 m ∑ j = 1 n θ j 2 \begin{aligned} J(\theta)=-[\frac{1}{m}\sum_{i=1}^{m} y^{(i)} \log h_{\theta}(x^{(i)})+(1-y^{(i)}) \log (1-h_{\theta}(x^{(i)}))]+\frac{\lambda}{2m}\sum_{j=1}^{n}\theta_j^2 \end{aligned}\tag{5.3} J(θ)=−[m1i=1∑my(i)loghθ(x(i))+(1−y(i))log(1−hθ(x(i)))]+2mλj=1∑nθj2(5.3)
- 计算后一项记得从j=1开始,因为不正则化 θ 0 \theta_0 θ0
5.2.2 正则化梯度下降
5.2.3 正则化高级算法
5.3 正则化与偏差方差的关系
λ \lambda λ越大,训练集和验证集的偏差越大, λ \lambda λ越小,训练集的误差越小,验证集的方差越大