一些提升DL的performance的方法

作者:hooly
微信公号:一口袋星光


一些提升DL的performance的方法_第1张图片
image.png

首先我们需要确认,是在training data上的performance差还是在testing data上的 performance 差,从而选择合适的方法。

一些提升DL的performance的方法_第2张图片
image.png

在training data上的performance差怎么办?

New activation function

我们发现,在同一时刻,越靠后的网络层的学习速率越快,而越靠前的网络层的学习速率反而越慢!我们可以有一个直观的印象,error项在向后传播的过程中,逐渐变小,使得越靠前的网络层的学习速率越来越低,这种现象被称为vanishing gradient problem。

一些提升DL的performance的方法_第3张图片
image.png

解决这个问题,我们可以改变activation function

ReLU

一些提升DL的performance的方法_第4张图片
image.png

Maxout

一些提升DL的performance的方法_第5张图片
image.png

Adaptive Learning Rate

两种方法

RMSProp

一些提升DL的performance的方法_第6张图片
image.png

Momentum

一些提升DL的performance的方法_第7张图片
image.png

在testing data上的performance差怎么办?

Early Stopping

一些提升DL的performance的方法_第8张图片
image.png

我们想要的是 在testing data上的效果最好,也就是loss最小。如果在Validation set你的loss已经不再下降,你就应该停下来。

Regularization

一些提升DL的performance的方法_第9张图片
image.png

我们修改了loss function,希望我们的参数越小越好。

Dropout

一些提升DL的performance的方法_第10张图片
image.png
  1. testing的时候是不dropout的
  2. If the dropout rate at training is p%,all the weights times 1-p%
  3. Assume that the dropout rate is 50%.If a weight w = 1 by training, set = 0.5 for testing.

作者:hooly
微信公号:一口袋星光
我会在微信公号上持续更新我的文章,你来讨论我很欢迎。

你可能感兴趣的:(一些提升DL的performance的方法)