ResNet(残差神经网络)
残差思想:主要目的是为了解决深度神经网络训练过程中的梯度消失和梯度爆炸问题,同时帮助网络更好地学习到特征表示,突出微小的变化,提高网络的性能和泛化能力。从而突出微小的变化
可以被用来训练非常深的网络
亮点
超深的网络结构
提出residual模块
使用Batch Normalization加速训练(丢弃dropout)
Residual结构
-
将原本的输入和经过卷积后的输出相加,要注意主分支与shortcut的输出特征矩阵shape必须相同
-
残差结构分为好几种,一种为不改变矩阵的长和宽,只改变深度;另外一种为改变矩阵的长和宽,也改变深度。对于不改变矩阵长宽和深度的,只需要直接把输入和输出相加就可以,如果改变了,则输入也要经过卷积后为同样形状方可加减。
Batch Normalization(数据标准化)
BN层的目的是使我们的一批feature map满足均值为0,方差为1的分布规律,从而可以加速收敛
- 原本我们在输入数据的时候,比如图片处理像素特征,我们会对他进行归一化,使其满足某一分布规律,但经过层层的卷积后,feature map就不一定满足某一分布规律了,而数据标准化(BN)层的目的就是使输入的一批(batch)数据的 feature map满足均值为0,方差为1的分布规律 <