卷积神经网络(CNN)的细节问题(滤波器的大小选择)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lanchunhui/article/details/60886027

0. 滤波器的大小选择

  • 大部分卷积神经网络都会采用逐层递增(1⇒ 3 ⇒ 5 ⇒ 7)的方式。
  • 每经过一次池化层,卷积层过滤器的深度都会乘以 2;

1. 权值共享:减轻过拟合 & 降低计算量

一个卷积层(Wx+b ⇒ ReLU ⇒ maxpooling)可以有多个不同的卷积核,而每一个卷积核都对应一个滤波后映射出的新图像,同一个新图像中的每一个像素都来自完全相同的卷积核,这就是卷积核的权值共享。

那么为什么要共享卷积核的权值参数呢?

  • 降低模型复杂度以减轻过拟合;
  • 降低计算量;

2. 待求参数数目的量化分析

考虑 103×103 的输入图像:

  • 全连接,隐层神经元的数目为 106 时,则每一个输入像素与每一个隐层神经元之间都是待学习的参数,
    • 数目为 106×106=1012
  • 卷积,卷积核的大小为 10×10 时,
    • 步长为 10,103×10310×10×(10×10)103×10310×10表示的是输入图像可划分的块数,也即经卷机作用后的输出图像;
    • 步长为 1,(10310+1)×(10310+1)(10×10)
    • 在不考虑步长的前提下,可近似将待学习的参数的数目视为 (103×103)(10×10)

3. CNN 的卷积与信号与系统中的卷积

CNN 的卷积并没有执行“翻转”操作,而是与输入图像做滑动窗口“相关”计算;

如果 K 个输入通道(Xk,0k<K)的输入经若干卷积核的作用之后得到 L 个通道的输出(Y,0<L),需要的卷积核的数目为 L×K

Y(m,n)==Xk(m,n)Hk(m,n)k=0K1i=0I1j=0J1Xk(m+i,n+j)Hk(i,j)

Hk(i,j) 表示的是第 列,第 k 行二维卷积核,卷积核的大小为 IJ

4. 时间复杂度

  • N×N 大小的图像,FK×K 的 filters ⇒ 计算复杂度 O(N2×K2×F)
    • 要知道 F 的值一般是很大的,比如 256;

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试

关闭