基于此前对于CNN的介绍
就深层次 CNN 的结构进一步探讨归一化和残差网络。
批量归一化(BatchNormalization)
让网络训练归一化变得更加容易,本质是一种对数据的标准化处理
分类
- 对输入的标准化(浅层模型)
处理后的任意一个特征在数据集中所有样本上的均值为0、标准差为1。 标准化处理输入数据使各个特征的分布相近
- 批量归一化(深度模型)随着模型参数的迭代更新,靠近输出层的数据剧烈变化
利用小批量上的均值和标准差,不断调整神经网络中间输出,从而使整个神经网络在各层的中间输出的数值更稳定。
应用
- 对全连接层做批量归一化
位置:全连接层中的仿射变换和激活函数之间。
全连接:
x = W u + b o u t p u t = ϕ ( x ) \boldsymbol{x} = \boldsymbol{W\boldsymbol{u} + \boldsymbol{b}} \\ output =\phi(\boldsymbol{x}) x=Wu+boutput=ϕ(x)
输入是u,经过仿射变化得到x,经过激活函数得到output,size=(batch_size,输出神经元的个数)
批量归一化:
o u t p u t = ϕ ( BN ( x ) ) output=\phi(\text{BN}(\boldsymbol{x})) output=ϕ(BN(x))
y ( i ) = BN ( x ( i ) ) \boldsymbol{y}^{(i)} = \text{BN}(\boldsymbol{x}^{(i)}) y(i)=BN(x(i))
μ B ← 1 m ∑ i = 1 m x ( i ) , \boldsymbol{\mu}_\mathcal{B} \leftarrow \frac{1}{m}\sum_{i = 1}^{m} \boldsymbol{x}^{(i)}, μB←m1i=1∑mx(i),
σ B 2 ← 1 m ∑ i = 1 m ( x ( i ) − μ B ) 2 , \boldsymbol{\sigma}_\mathcal{B}^2 \leftarrow \frac{1}{m} \sum_{i=1}^{m}(\boldsymbol{x}^{(i)} - \boldsymbol{\mu}_\mathcal{B})^2, σB2←m1i=1∑m(x(i)−μB)2,
x ^ ( i ) ← x ( i ) − μ B σ B 2 + ϵ , \hat{\boldsymbol{x}}^{(i)} \leftarrow \frac{\boldsymbol{x}^{(i)} - \boldsymbol{\mu}_\mathcal{B}}{\sqrt{\boldsymbol{\sigma}_\mathcal{B}^2 + \epsilon}}, x^(i)←σB2+ϵx(i)−

本文深入探讨了深度学习中的关键概念和技术,包括批量归一化(Batch Normalization)、残差网络(ResNet)以及稠密连接网络(DenseNet)。详细讲解了批量归一化如何改善深度模型的训练,残差网络如何解决深度学习中的退化问题,以及DenseNet如何通过特征复用提升模型效率。
最低0.47元/天 解锁文章
2016

被折叠的 条评论
为什么被折叠?



