Inception Module

googlenet的Inception Module

Idea 1: Use 1x1, 3x3, and 5x5 convolutions in parallel to capture a variety of structures Also add a parallel max pooling path

The problem: Computational Expense quickly balloons

理念1:通过用平行的1*1,3*3,5*5的卷积来捕捉多样性的图片结构(包括使用一个最大池化)

缺点:计算量激增。

Idea 2:Use 1x1 convolutional layers for dimensional reduction. - Limits computational blow up from increasing parameters - The 1x1 convolutions also use ReLUs, so provide an added element of non-linearity

理念2:通过1*1的卷积减少维度。=》效果为,减少了计算量,通过relus激活函数的使用增加了非线性元素,(应该是有利于反向传播计算梯度)

参考

https://staff.fnwi.uva.nl/t.e.j.mensink/rdg/slides/4deepdeep.pdf

 

1*1 convolution  1*1卷积的作用:

1*1的卷积核并不会降低长宽的维度,所以输入的128*128像素的图片还是128*128,但是可以在channel,或者说feature 第三维上来减少维度。

feature是我们提取的特征,比如说对一个128*128的图片做卷积3*3的卷积,步幅为1,padding我们使用same padding我们设定64个提取的特征,也就是最终输出的数据为128*128(对图片做一次处理)*64(次)。做1*1的卷积后,图片的长宽不变还是128*128,但是我们可以重新选定输出的特征,我们可以在此基础上选定特征为32,也就是在原先的基础上提取32个特征,那么参数就是
1*1*64*32.然后做3*3的卷积,特征选取为32,则参数为3*3*32*32.
如果我们不通过1*1的中间层,直接对128*128*64做3*3卷积,那么参数为3*3*64*32>1*1*64*32+3*3*32*32.
 

参考

http://blog.csdn.net/visionfans/article/details/48270327

https://groups.google.com/forum/#!topic/caffe-users/ElVispDaYSE

https://www.zhihu.com/question/27393324

 

posted on 2016-05-08 11:58  一天两天三天  阅读(683)  评论(1编辑  收藏  举报