Task3-P5-8-Error & Gradient Descent

误差来源

无偏估计

E ( 1 N ∑ x n ) = 1 N ∑ n E x n = N N E x n = μ E(\frac{1}{N}\sum x^n)=\frac{1}{N}\sum_n Ex^n=\frac{N}{N}Ex^n=\mu E(N1xn)=N1nExn=NNExn=μ

V a r ( 1 N ∑ x n ) = σ 2 N Var(\frac{1}{N}\sum x^n)=\frac{\sigma ^2}{N} Var(N1xn)=Nσ2

有偏估计

S 2 = 1 N ∑ ( x n − 1 N ∑ x n ) 2 S^2=\frac{1}{N}\sum (x^n-\frac{1}{N}\sum x^n)^2 S2=N1(xnN1xn)2

E S 2 = N − 1 N ES^2=\frac{N-1}{N} ES2=NN1

过拟合和欠拟合

过拟合

  • 方差大。
  • 训练数据上误差小,但测试数据上误差大。
  • 解决方法:
    • 增加数据量:效率高,但往往不现实
    • 加入正则化

欠拟合

  • 偏差大。
  • 模型无法较好地拟合训练数据。
  • 解决方法:
    • 在设置模型时加入更多特征(变量);
    • 使模型更复杂,如提高变量次数。

模型选择

选择误差最小的模型。

在实际操作中,会有两组数据,一组是训练数据一组是测试数据。通常是:经训练数据训练后的模型,使用测试数据选出最好的模型,再交付使用。

但这样选出的模型在实际使用时有可能并不是最优的,对此有解决方法:

将训练数据分为训练子数据集和测试子数据集,用训练子数据集训练模型,测试子数据集选择模型,由此选择出来的模型在测试数据上的表现就与实际使用时的表现接近了。

N次交叉验证

将训练数据划分为N组,每次使用其中一组作为测试数据,其余作为训练数据。类似的操作会执行N次,训练出N个模型,计算各模型在测试数据上的平均误差,以此来选择模型。

梯度下降

θ ∗ = a r g   m i n θ L ( θ ) \theta^*=arg\ min_\theta L(\theta) θ=arg minθL(θ)

θ ′ = [ θ 1 1 , θ 2 1 ] T \theta^{\prime}=[\theta ^1_1, \theta^1_2]^T θ=[θ11,θ21]T

Steps

Step1

∇ L ( θ ′ ) = [ ∂ L ∂ θ 1 1 , ∂ L ∂ θ 2 1 ] \nabla L(\theta^{\prime})=[\frac{\partial L}{\partial \theta ^1_1},\frac{\partial L}{\partial \theta ^1_2} ] L(θ)=[θ11L,θ21L]

计算 ∂ L ∂ θ 1 1 \frac{\partial L}{\partial \theta ^1_1} θ11L ∂ L ∂ θ 2 1 \frac{\partial L}{\partial \theta ^1_2} θ21L

Step2

θ 1 2 = θ 1 1 − η ∂ L ∂ θ 1 1 \theta ^2_1 = \theta^1_1 -\eta \frac{\partial L}{\partial \theta ^1_1} θ12=θ11ηθ11L

θ 2 2 = θ 2 1 − η ∂ L ∂ θ 2 1 \theta ^2_2 = \theta^1_2 -\eta \frac{\partial L}{\partial \theta ^1_2} θ22=θ21ηθ21L

迭代过程以此类推

注意
  • 要小心地选择 η \eta η
    • 较小:步长过小,计算所需时间过长;
    • 较大:可能达不到最小值,会直接在步长内部跳过最小值处。
  • 解决方法:绘出迭代次数和 L ( θ ) L(\theta) L(θ)值的变化走势图
    在这里插入图片描述

自动调整 η \eta η

每次都减小一丢丢

所有参数共用一个学习率,并每次迭代减小学习率一丢丢,如:

η t = η t + 1 \eta ^t =\frac{\eta}{\sqrt{t+1}} ηt=t+1 η

每个参数各设置一个学习率,各自调整

如adagrad:

θ t + 1 = θ t − η t σ t g t \theta ^{t+1}=\theta ^t-\frac{\eta ^t}{\sigma ^t}g^t θt+1=θtσtηtgt 该式子可以简化为:

θ t + 1 = θ t − η t ∑ i = 0 t ( g t ) 2 g t \theta ^{t+1}=\theta ^t-\frac{\eta ^t}{\sqrt{\sum_{i=0}^t(g^t)^2}}g^t θt+1=θti=0t(gt)2 ηtgt

其中 g t = ∂ L ( θ t ) ∂ θ t g^t=\frac{\partial L(\theta ^t)}{\partial \theta ^t} gt=θtL(θt) σ t = 1 t + 1 ∑ i = 0 t ( g t ) 2 \sigma ^t=\sqrt{\frac{1}{t+1}\sum_{i=0}^t (g^t)^2} σt=t+11i=0t(gt)2 η t = η ( t + 1 ) \eta ^t =\frac{\eta}{\sqrt(t+1)} ηt=( t+1)η

  • 迭代过程中将每次的 g 0 g^0 g0~ g t g^t gt用列表存储起来,每次计算 σ t \sigma ^t σt时取用
  • 其中 σ t \sigma ^t σt用于模拟二次微分

随机梯度下降

随机选取某个 x n x^n xn,计算 L ( θ ) = [ ( ^ y ) n − ( b + ∑ i w i x i n ) ] 2 L(\theta)=[\hat(y)^n-(b+\sum_iw_ix_i^n)]^2 L(θ)=[(^y)n(b+iwixin)]2

计算 θ i = θ i − 1 − η ∇ L ( θ i − 1 ) \theta^i=\theta^{i-1}-\eta\nabla L(\theta^{i-1}) θi=θi1ηL(θi1),再计算 L ( θ i ) L(\theta^i) L(θi),以此类推…

即不用过完所有数据再更新参数,而是每使用一个数据就更新一次参数,比之前的方法下降得更快。

特征缩放Feature Scaling

在这里插入图片描述
计算一组数据的 m i = 1 R ∑ r = 1 R x i r m_i=\frac{1}{R}\sum_{r=1}^Rx_i^r mi=R1r=1Rxir σ i = 1 R ∑ r = 1 R ( x r − m i ) \sigma_i=\sqrt{\frac{1}{R}\sum_{r=1}^R(x^r-m_i)} σi=R1r=1R(xrmi) ,则缩放后:

x i r = x i r − m σ i x_i^r=\frac{x_i^r-m}{\sigma_i} xir=σixirm

  • 类似于正态分布的标准化

多变量泰勒展开式

h ( x , y ) = h ( x 0 , y 0 ) + ∂ h ( x 0 , y 0 ) ∂ x ( x − x 0 ) + ∂ h ( x 0 , y 0 ) ∂ y ( y − y 0 ) h(x,y)=h(x_0,y_0)+\frac{\partial h(x_0,y_0)}{\partial x}(x-x_0)+\frac{\partial h(x_0,y_0)}{\partial y}(y-y_0) h(x,y)=h(x0,y0)+xh(x0,y0)(xx0)+yh(x0,y0)(yy0)+二次式三次式

x → x 0 x\to x_0 xx0 y → t 0 y\to t_0 yt0时有:

h ( x , y ) = h ( x 0 , y 0 ) + ∂ h ( x 0 , y 0 ) ∂ x ( x − x 0 ) + ∂ h ( x 0 , y 0 ) ∂ y ( y − y 0 ) h(x,y)=h(x_0,y_0)+\frac{\partial h(x_0,y_0)}{\partial x}(x-x_0)+\frac{\partial h(x_0,y_0)}{\partial y}(y-y_0) h(x,y)=h(x0,y0)+xh(x0,y0)(xx0)+yh(x0,y0)(yy0)

梯度下降的局限性

  • 更新参数后 L ( θ ) L(\theta) L(θ)值不一定会减小
  • 可能会卡在局部最小,拐点或拐点附近(当梯度趋于0时容易认为已经在最小值附近而停止继续迭代)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值