两个常数的卷积为多少_卷积神经网络的卷积核大小、卷积层数、每层map个数都是如何确定下来的呢?...

深度调参是门手艺,仅回答下第一个问题 -- 卷积神经网络的卷积核大小?

答案 -- 是越小越好么?

本回答仅给出为何流行的DCNN通常采用小而深的卷积核。

请看下面俩页PPT,可以给出一点启发。

(出自海德堡大学HCI Prof. Ommer 人工智能lecture)

上左图:

假设卷积核(又叫filter,neuron)是3*3,第一层卷积核的中心pixel,可以“看到”(receptive field)输入图3*3的区域(这里把它理解成“连通性”),第二层卷积核作用在第一层之上,这个卷积核的中心pixel可以“看到”原图的区域扩大成5*5.

上右图:

把三个3*3的卷积核堆积起来,第三层中的一个pixel,可以“看到”原图的pixel个数,和一个7*7卷积核一样。

下左图:

但是计算复杂度,1个7*7卷积核的复杂度是49M(M是一个常数),三个3*3的复杂度是27M

下右图:

嫌3*3这个filter还不够小?那么再把它拆成俩个1*3的"向量”卷积核吧!

结果是复杂度从9降到了6!

结论:

几个小的卷积核(例如3*3)叠加(stack)在一起,相比一个大的卷积核(例如7*7),与原图的连通性不变,

但是却大大降低了参数的个数以及计算复杂度!!!

一个直观的例子:

上图是一个7*7的卷积核(神经元),它可以刻画(识别)右图中的曲线。(当输入图片出现右图中的模式时,这个神经元就会“放电”)

然而,由于空间太小,一个3*3的卷积核却表示不了。

搞三个3*3的叠加不就行了嘛!?(把叠加想象成拼图,于是右图可以由三小块拼成)

我们还可以搞个100*100的卷积核,它可以刻画几乎任何复杂的形状。

但是,复杂度太太太高。

或许搞20个3*3的叠加就可以复现上面的任何形状。

结论:

这就是深度学习

喜欢小而深,厌恶大而短。

这里指的是卷积核大小,和层数。

So, why not use smaller neurons, and deeper and deeper?

参考文献和博客:

更多人工智能、优化理论干货,尽在 @运筹OR帷幄:『运筹OR帷幄』大数据人工智能时代的运筹学​zhuanlan.zhihu.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值