regularization 正则化

机器学习笔记 - 吴恩达 - 目录


笔记

描述

正则化是什么?
正则化是通过对假设函数附加一项正则化参数,来减小该项的拟合程度。

为什么要有正则化?
有的时候,为了更好的拟合数据的情况,我们会在训练时,添加高阶项。但这会引发新的问题,如果训练的足够多,那会产生过拟合现象,这时候很难对测试数据有更好的泛化性。如果训练的不够,又会导致欠拟合情况,连训练集都无法准确预测。

线性回归_欠拟合_过拟合

逻辑回归_欠拟合_过拟合

如何正则化?
为了不过拟合,我们想要保持高阶项的系数足够小(又不想直接去除该项,因为高阶项或多或少有一定影响),引入一个惩罚项,称为正则化项,使得模型相对简单。
引入正则化项惩罚特征

为何正则化能减小某一项的影响?
我们通过设置正则化参数 λ \lambda λ,该值设得越大,就对其特征 θ j \theta_j θj惩罚程度越大,使其特征 θ j \theta_j θj的影响越小。
(这是由于,训练时有正则化项,预测时没有,所以 θ j \theta_j θj的值小了,影响小了)
:惩罚过大,可能出现拟合


关键点

(我们不对j=0对应的 θ 0 \theta_0 θ0作惩罚,因为 θ 0 \theta_0 θ0项的 x 0 = 1 x_0 = 1 x0=1,没有必要惩罚)

线性回归的正则化:
代价函数:
J ( θ ) = 1 2 m [ ∑ i = 1 m ( h θ ( x ( i ) ) − y i ) 2 + λ ∑ j = 1 n θ j 2 ] J(\theta) = \frac{1}{2m} [ \sum_{i=1}^{m} (h_\theta (x^{(i)}) - y^{i})^2 + \lambda \sum_{j=1}^{n} \theta_j^2] J(θ)=2m1[i=1m(hθ(x(i))yi)2+λj=1nθj2]
更新系数:
θ 0 : = θ 0 − α 1 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) x j ( i )       ( j = 0 ) θ j : = θ j − α [ 1 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) x j ( i ) + λ m θ j ] : = θ j ( 1 − λ λ m ) − α 1 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) x j ( i )       ( j = 1 , 2 , . . . , n ) \theta_0 := \theta_0 - \alpha \frac{1}{m} \sum_{i=1}^{m} (h_\theta (x^{(i)}) - y^{(i)}) x_j^{(i)} \ \ \ \ \ (j = 0) \\ \theta_j := \theta_j - \alpha [ \frac{1}{m} \sum_{i=1}^{m} (h_\theta (x^{(i)}) - y^{(i)}) x_j^{(i)} + \frac{\lambda}{m} \theta_j ] \\ := \theta_j (1 - \lambda \frac{\lambda}{m}) - \alpha \frac{1}{m} \sum_{i=1}^{m} (h_\theta (x^{(i)}) - y^{(i)}) x_j^{(i)} \ \ \ \ \ (j = 1, 2, ... , n) θ0:=θ0αm1i=1m(hθ(x(i))y(i))xj(i)     (j=0)θj:=θjα[m1i=1m(hθ(x(i))y(i))xj(i)+mλθj]:=θj(1λmλ)αm1i=1m(hθ(x(i))y(i))xj(i)     (j=1,2,...,n)
(其中, λ ∑ j = 1 n θ j 2 \lambda \sum_{j=1}^{n} \theta_j^2 λj=1nθj2就是正则化参数regularization parameter)

逻辑回归的正则化:
代价函数:
J ( θ ) = − [ 1 m ∑ i = 1 m y i l o g h θ ( x ( i ) ) + ( 1 − y i ) l o g ( 1 − h θ ( x i ) ) ] + λ 2 m ∑ j = 1 n θ j 2 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 J(θ)=[m1i=1myiloghθ(x(i))+(1yi)log(1hθ(xi))]+2mλj=1nθj2
更新系数:
θ 0 : = θ 0 − α 1 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) x j ( i )       ( j = 0 ) θ j : = θ j − α [ 1 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) x j ( i ) + λ m θ j ]       ( j = 1 , 2 , 3 , . . . , n ) \theta_0 := \theta_0 - \alpha \frac{1}{m} \sum_{i=1}^{m} (h_\theta (x^{(i)}) - y^{(i)}) x_j^{(i)} \ \ \ \ \ (j = 0) \\ \theta_j := \theta_j - \alpha [\frac{1}{m} \sum_{i=1}^{m} (h_\theta (x^{(i)}) - y^{(i)}) x_j^{(i)} + \frac{\lambda}{m} \theta_j ] \ \ \ \ \ (j = 1, 2, 3, ... , n) θ0:=θ0αm1i=1m(hθ(x(i))y(i))xj(i)     (j=0)θj:=θjα[m1i=1m(hθ(x(i))y(i))xj(i)+mλθj]     (j=1,2,3,...,n)
(其中, 1 2 m λ ∑ j = 1 n θ j 2 \frac{1}{2m} \lambda \sum_{j=1}^{n} \theta_j^2 2m1λj=1nθj2就是正则化参数regularization parameter)


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值