美文网首页
LeeML-tasko5

LeeML-tasko5

作者: 人工智能初学者Amber | 来源:发表于2021-08-25 22:15 被阅读0次

Task 05 网络结构设计

P5:Local minima 与saddle point

训练的时候,梯度无法下降,似乎到了 local minima,但从更高维度的空间看实际上并未到达minima:它可能卡在plateau、saddle point、local minima。从二维空间看是local minima,在高纬空间看是saddle point.

即,神经网络训练不起来,两个影响因素:1、局部最优解;2、出现鞍点;

为了判断是哪一种情况,引入泰勒级数展开式:

L(\theta) \approx L(\theta^{‘})+\frac{1}{2}(\theta-\theta^{'})^{T} H (\theta-\theta^{'})\approx L(\theta^{‘})+\frac{1}{2} v^{T}Hv

分情况讨论

  1. \frac{1}{2} v^{T}Hv > 0,则L(\theta) < L(\theta^{‘}) \rightarrowLocal minima 即局部最小值

  2. \frac{1}{2} v^{T}Hv < 0,则L(\theta) >L(\theta^{‘}) \rightarrow Local minima 即局部最大值

  3. 若存在\frac{1}{2} v^{T}Hv >0\frac{1}{2} v^{T}Hv <0 \rightarrowSaddle point 即鞍点

P6:Batch与 Momentum

分批处理(Batch),分批处理能够减少训练的时间。

  • Small Batch v.s. Lager Batch

batch size =N (full batch ) See all example

batch size =1 See only one example

分批次训练有时优于整批次训练,它可以快速地找到目标。

有GPU的加持(具有平行运行的能力,进行模型训练速度加持),Batch size 大需要的训练时间不一定比Batch size 小的长。(但如果数据集过来,batch size 小的时间还是会更短一些。

example——MINIST:手写数字识别分类

  • smaller batch size has better perfomance

  • 'noisy' update is better for training

Gradient Desent + Momentum

在物理世界,一个球从山顶滚落,到了saddle point 不会停下来,(由于惯性/动力)到了local minima也不一定会停下来。这种情况是否能够运用到gradient desent

Gradient Desent + Momentum

  • Starting at\theta^{0}

  • Movementm^{0}=0

  • Compute gradientg^{0}

  • Movement m^{1}=\lambda m^{0}-\eta g^{0}

  • Movement\theta^{1}=\theta^{0}+m^{1}

  • Compute gradientg^{1}

  • Movementm^{2}=\lambda m^{1}-\eta g^{1}

  • Movement \theta^{2}=\theta^{1}+m^{2}

m^{i}is wighted sum of all the previous gradient :g^{0} 、g^{1}、g^{2}

  • m^{0}=0

  • m^{1}=-\eta g^{0}

  • m^{2}=-\lambda \eta g^{0}-\eta g^{1}

gradient desent + Momentum,到了local minima 或 saddle point 梯度能够继续下降。

P7:自动调整学习率

不同的参数,不同的学习率。

当我们的loss在下降的时候,我们的critical point 真的很小么?答案是并不一定。

训练参数到非常接近critical point,用gredient decent一般是做不到的。

Training can be difficult even without critical point

This error surface is convex.

Learning rate can't be one-size-fits-all

不同的参数需要什么样的learning rate,learning rate 如何根据gradient调整呢?以某一参数为例:

\theta_{i}^{t+1}\leftarrow \theta_{i}^{t}-\eta g_{i}^{t}\\ g_{i}^{t}=\frac{\partial L}{\partial \theta_{i}} |_{\theta=\theta^{t}}\\ \theta_{i}^{t+1}\leftarrow \theta_{i}^{t}-\frac{\eta}{\sigma_{i}^{t}}g_{i}^{t}

Compute root mean square

\theta_{i}^{1}\leftarrow \theta_{i}^{0}-\eta g_{i}^{0} \sigma_{i}^{0}=\sqrt{(g_{i}^{0})^{2}}=\left| g_{i}^{0}\right|, 变化量为\eta

\theta_{i}^{2}\leftarrow \theta_{i}^{1}-\eta g_{i}^{1} $$\sigma_{i}^{1}=\sqrt{\frac{1}{2}[g_{i}^{0})^{2}+(g_{i}^{1})^{2}]}

……

\theta_{i}^{t+1}\leftarrow \theta_{i}^{t}-\frac{\eta}{\sigma_{i}^{t}}g_{i}^{t}

\theta_{i}^{t}=\sqrt{\frac{1}{t+1}\sum_{i=0}^{t}{(g_{i}^{t})^{2}}}

Used in adagrad.

RMSProp

Adam:RMSProp+Momentum

Without adaptive learning rate

Learning rate Scheduling

  • Learning Rate Decay

  • Warn up:在很多network里都被视为黑科技。

    at the beginning,the estimate of \theta_{i}^{t} has large variance(在最开始的时候,需要收集书籍)

summary of optimization

  • (Vanilla) gradient descent

  • Various improvements

P8:损失函数也可能有影响

Classification v.s. regression

Regression:

x \rightarrow Model \rightarrow y \leftarrow \rightarrow \hat{y}

在进行分类的时候,常见的做法是 用one-hot-vector 表示:

为什么要加softmax

Label\hat{y}中的值为0 or1,而 y 可以是任意值,用了softmax,限定y的值在0~1之间。

soft-max是如何运作的?

计算\hat{y} \leftarrow y^{'}

  • Mean square error(MSE)

  • Cross-entropy

P9:Batch Normalization(批次标准化)

changing landscape

Feature Normalization

  • Training

  • Testing

作用:可以使训练的时候 ,收敛地更快一些。

DL

µ and \sigma denpen on z^{I}

Comupting the moving average of µ and \sigma Of the batches during training。

每训练一批次都会有对应µ and \sigma

2 Internal covariate shift Internal covariate shift

相关文章

  • LeeML-tasko5

    Task 05 网络结构设计 P5:Local minima 与saddle point 训练的时候,梯度无法下降...

网友评论

      本文标题:LeeML-tasko5

      本文链接:https://www.haomeiwen.com/subject/tpneiltx.html