深度学习基础总结

一、神经网络图解、前向传播、反向传播(推导)

推荐阅读:https://blog.csdn.net/u010089444/article/details/52555567

二、激活函数

参考自:https://www.cnblogs.com/makefile/p/activation-function.html,https://blog.csdn.net/edogawachia/article/details/80043673,https://zhuanlan.zhihu.com/p/32610035

激活函数 表达式 图示 输出值范围 优缺点 TensorFlow对应的代码
无激活函数(线性)       缺点:不能加入非线性因素、不能充分组合特征  
Sigmoid \sigma \left ( x \right ) = \frac{1}{ 1+e^{-x} } 深度学习基础总结_第1张图片 (0,1)

1.会软饱和:在大的正数和负数作为输入的时候,梯度就会变成零,使得神经元基本不能更新。

2.非zero-centered。

tf.math.sigmoid

tf.nn.sigmoid

tf.sigmoid

softmax 深度学习基础总结_第2张图片 深度学习基础总结_第3张图片 (0,1) 多分类网络最后一层的激活函数,是sigmoid的扩展 tf.nn.softmax
tanh tanh\left ( x \right ) = \frac{ e^{x}-e^{-x} }{ e^{x}+e^{-x} } 深度学习基础总结_第4张图片

(-1,+1)

1.还是会软饱和

2.是zero-centered

tf.math.tanh

tf.nn.tanh

tf.tanh

softplus f\left ( x \right ) = log\left ( 1+e^{x} \right ) 深度学习基础总结_第5张图片 (0,+∞) 运算量大,不常用  
ReLU f\left ( x \right ) = max\left ( 0, x \right ) 深度学习基础总结_第6张图片 [0,+∞)

1.在正数不饱和,在负数硬饱和。

2.非zero-centered。

2.更省计算量,因为不用exp,因而收敛较快。

tf.nn.relu
LeakyReLU f\left ( x \right ) = max\left ( 0.01x, x \right ) 深度学习基础总结_第7张图片 (-∞,+∞)

1.为了解决ReLU中dead ReLU现象,让负数区域不在饱和死掉。  

2.斜率是确定的。

tf.nn.leaky_relu
pReLU f\left ( x \right ) = max\left ( ax, x \right ) 深度学习基础总结_第8张图片 (-∞,+∞) 与LeakyReLU不同的是,斜率不是固定的,是可学习的  
ELU f\left ( x \right ) = \left\{\begin{matrix} a\left ( e^{x}-1 \right ),~if~x\leq 0 \\ x,~if~x> 0 \end{matrix}\right. 深度学习基础总结_第9张图片 (-∞,+∞)

1.有负数饱和区域,从而对噪声有一些鲁棒性。

2.可以看做是介于relu和LeakyReLU之间的一个东西。

3.需要计算exp,计算量上大一些。

tf.nn.elu
SELU f\left ( x \right ) = \lambda \left\{\begin{matrix} a\left ( e^{x}-1 \right ),~if~x\leq 0 \\ x,~if~x> 0 \end{matrix}\right.     把激活函数换成SELU就能使得输入在经过一定层数之后变成固定的分布 tf.nn.selu
noise ReLU f\left ( x \right ) = max\left ( 0, x + Y\right ), Y\sim N\left ( 0,\sigma ^{2} \right )     在受限玻尔兹曼机解决计算机视觉任务中得到应用  
ReLU6 f\left ( x \right ) = min\left ( 6, max\left ( 0, x \right ) \right )   (-∞,+6] 对ReLU设置经验上界 tf.nn.relu6
Swish f\left ( x \right ) = x \cdot sigmoid\left ( \beta x \right ) 深度学习基础总结_第10张图片   无上界有下界、平滑非单调,在深层模型上的效果优于 ReLU

x*tf.sigmoid(beta*x)

maxout 深度学习基础总结_第11张图片 可拟合任意凸函数  

1、具有ReLU的所有优点,线性、不饱和性,且没有dead ReLU。

2.添加了一层神经元,参数数量激增

 

三、深度学习中的正则化方法

1.参数范数惩罚:L1正则化、L2正则化;

2.数据集增强;

3.噪声添加;

4.early stop;

5.Dropout。

四、深度模型中的优化

1.参数初始化策略

参考自:https://blog.csdn.net/mzpmzk/article/details/79839047,https://zhuanlan.zhihu.com/p/25931903

深度学习基础总结_第12张图片

2.优化算法(SGD、AdaGrad、RMSProp、Adam等)

推荐阅读:https://zhuanlan.zhihu.com/p/22252270,https://blog.csdn.net/qq_28031525/article/details/79535942

3.batch norm层

推荐阅读:https://zhuanlan.zhihu.com/p/34879333

4.layer norm层(LayerNorm / WeightNorm / CosineNorm是对batch norm层的改进)

推荐阅读:https://zhuanlan.zhihu.com/p/33173246

 

 

你可能感兴趣的:(Deep,learning,NLP,NLP,Deep,Learning)