论文笔记:GoogLenet

论文原文链接:https://arxiv.org/abs/1409.4842

摘要

本文提出了一种叫做Inception的深度卷积神经网络结构,并在ILSVRC14比赛中的分类和检测任务中取得了最好的成绩。这种结构的主要特点是能够更好地利用网络中的计算资源。通过仔细地设计,我们在增加网络深度和宽度的同时仍然保证了计算成本不变。为了优化性能,这个结构是建立在Hebbian定理和多线程处理之上的。我们提交给ILSVRC14比赛的模型是一种叫GoogLenet的结构,它是一个22层的网络,我们在文中的分类和检测部分对其性能进行了评估。

动机

更深更宽的网络在提高模型性能的同时也会带来两个主要问题:(1)产生巨大参数,极易导致过拟合;(2)计算量变大,消耗更多的计算资源。解决这两个矛盾的一个方法是将全连接甚至卷积转化为稀疏连接(这个观点有文献支撑),但是现在的计算机软硬件对非均匀稀疏数据的计算效率很差,因而文中提出这么一个问题:能否设计出一种网络结构,使它既能保持网络的稀疏性,又能利用密集矩阵的高计算性能?GoogLenet利用Inception结构将稀疏矩阵聚类成较密集的子矩阵来提高计算性能。

结构

Inception


Inception

上图中(a)是原始的Inception结构,上一层特征图分别经1*1,3*3,5*5的卷积和3*3的最大池化操作后再堆叠在一起。为了保证拼接是尺度的统一,需要加上相应的padding,比如输入特征图为224*224*3,当stride=1时,padding分别取0,1,2,1,经卷积活池化后的输出大小分别为:(224+2*0-1)/1+1=224,(224+2*1-3)/1+1= 224,(224+2*2-5)/1+1=224,(224+2*1-3)/+1=224,即四个输出的大小相同,可以堆叠在一起。
但文中指出,这样的结构存在一定的问题:当层数越来越深时,网络中提取的卷积核越来越抽象,需要更大的感知野来提取特征,相应的3*3和5*5的卷积核比例需要增加,但是更多的5*5的卷积核会带来庞大的计算量,因此需要某种降维方法来减少计算。这就引出了图(b)中改进后的Inception。
可以发现,(b)于(a)的不同之处在于多了3个1*1的卷积核。带来的好处就是维度降低和非线性的提升。
举个例子,假设输入特征图的维度(N,W,H,C)=100*224*224*3,即100个3通道大小为224*224的特征图,直接通过50个3*3的卷积核的训练参数有:100*3*3*50=45,000,若在前面事先加50个1*1的卷积核,则训练参数的总数=100*1*1*50+50*3*3*50=27500,并且1*1的卷积核相当于把所有特征图统一位置的信息融合在了一起,并不影响原有的特征图位置信息。此外,1*1的卷积核后面也会接一个激活函数(比如ReLU),这相当于提升了原有模型的非线性能力。

GoogLenet

GoogLenet中用了很多Inception结构,具体如下表所示:


GoogLenet

整个网络一共有22层,在ImageNet比赛中Top-5错误率只有6.66%比AlexNet和VGGn都要低。同时它的参数总量和在caffe中训练的模型大小都小于AlexNet和VGG,具体如下表:

ModelLayersTop-5 error(%)Parameters(M)Caffemodel size
AlexNet816.0460244
VGG197.33138>600
GoogLenet226.66750

参考文献

  1. Going deeper with convolutions
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值