VGG网络的结构:
输入为224×224 ×3的图像
- 首先引入了卷积组,卷积-卷积-池化-卷积-卷积-池化,两个卷积一个池化就是一组,这个组连续出现了两次,两个组核的通道数不一样,卷积从头到尾都是3×3的小卷积。
- 然后是卷积-卷积-卷积-池化-卷积-卷积-卷积-池化,连续出现两次三个卷积一个池化
- 最后是两个全连接层,输出层1000个即至少可以识别1000类的物体。
VGG网络的特点: - 层组化,规律性很强,分为多组的卷积
- 使用都是3×3的小卷积
- 通道数是增加的
小卷积增加网络深度,多方位获得特征。层次增加必然会使速度增加,但准确率是逐年上升的。
GeogleNet网络结构
GeogleNet使用了一种网中网的结构,即原来的节点也是一个网络,采用了Inception之后整个网络架构的宽度和深度都可扩大,能够带来性能的极大提升。
-
层次更深
-
模块化,整个网络由许多类似的模块组成,即Inception块。
-
首先将上一层的输出作为输入,通过两个1×1的小卷积,一个3×3的最大池化得到三个特征图
-
在将上述得到的三个特征图依次经过3×3的卷积,5×5 的卷积核1×1的卷积再得到是三个新的特征图
-
同时,输入直接通过一个1×1的小卷积得到一个特征图
-
最后将四个特征图做连接操作得到通道合并层
1×1的小卷积的作用: -
可以大大减少权重的数量,卷积核越小,相邻两层之间卷积需要优化的权重越少,可以降低网络计算的复杂度,
混合卷积: -
一次直接1×1卷积信息损失得少,两次连续卷积操作相比一次直接卷积损失较多,如果一直做卷积信息会损失的越来越多,那么这里直接的1×1的卷积就相当于是对损失的补偿,最后将得到的四个特征图连起来,通道数更多那么将来获得的特征也更多。
-
中间有可以由分类输出
如果不需要有那么多的模块,在中间就可以加两个全连接层映射做分类,即我可以让GeogleNet的层次可多可少,即中间的Inception块的数量可以多一些就到最后了,少一些的话就到前面中间环节直接接全连接层做映射,这样可以在不同的级别做
分类模型,相当于集成模型,在不同的阶段做分类,相当于做集成学习
通道合并层相当于过滤器的级联,模块与模块之间一级接着一级,每一级的结构是一样的,但是特征提取越来越精细。 -
在保证网络性能的情况下极大幅度的节约计算成本
深度残差网络ResNet
深度残差网络使得更深的网络能够得到很好地训练,原理是第N层的网络有N-1层的网络经过H变换得到,并在此基础上直接连接诶到上一层的网络使得梯度可以得到更好的传播,残差网路欧式用残差来重构网络的映射,用于解决继续增加层数后训练误差变得更大的问题,核心在于把上一层的输入通过旁路再次引入到结果中,相当于给一个补偿,整个网络是由多组残差块级联而成,激活函数使用的是Relu或者Leaked relu
深度残差网络DenseNet
- DenseNet是ResNet的升级,它的旁路更丰富,每一层的输出都来自它前面每一层的作为补偿
深度残差网络的性能怎么才能不比浅层网络的性能差呢? - 引入了大量identity恒等映射(偏导数为1),可以把网络的loss传递给浅层,减少了梯度消失。
- 使用了残差结构,因为倒数包含了恒等项,仍然能够有效的反向传播。