2014年,GoogLeNet获得了第一名、VGG获得了第二名。
GoogLeNet是一种基于 Inception 架构的卷积神经网络。它利用 Inception
模块,允许网络在每个块中的多个卷积滤波器大小之间进行选择。Inception 网络将这些模块堆叠在一起,偶尔会使用最大池化层,步幅为2,以将网格的分辨率减半。
inception结构涉及了大量的数学推导和原理
首先,神经网络的权重矩阵是稀疏的,如果能将图1中左边的稀疏矩阵和2*2的矩阵卷积转换成右边2个子矩阵和2*2矩阵做卷积的方式则会大大降低计算量。

那么,同样的道理,应用在降低卷积神经网络的计算量上就产生了如图2所示的inception结构。

这个结构是将256个均匀分布在3*3尺度的特征转换成多个不同尺度的聚类,如96个1*1、96个3*3和64个5*5分别聚在一起,这样可以使计算更有效,收敛更快。
图1 矩阵转换方式 但是,图2所示的结构仍然有较大的计算量,具体如表3所示。

由表 3可以看出,对于最简单的inception结构而言,一个28*28*256的输入最终需要的计算量约为854M。
为了进一步减小计算量,Szegedy等人引入了小尺寸kernel对inception结构进行降维,如图2所示。
通过降维,原来一个28*28*256的输入计算量能够降低到约358M。 图2 简单的inception结构 表8-3 简单inception结构对应计算量 图2 降维的inception结构及计算量推导。
除了inception结构,GoogLeNet的另外一个特点是主干网络部分全部使用卷积网络,仅仅在最终分类部分使用全 连接层。

图5 GoogLeNet网络结构图
网友评论