卷积神经网络卷积核参数优化推导

文章介绍了如何通过将大卷积核转换为多层小卷积核来优化卷积神经网络的参数量,详细推导了一层大卷积核变为两层、三层、四层小卷积核的过程,并给出了转换层数的规律。例如,7*7的大卷积核可以替换为3层3*3的小卷积核,步长为1。这为计算机视觉领域的研究提供了思路。
摘要由CSDN通过智能技术生成

现在常见的卷积神经网络中卷积核的大小很大程度影响着整个神经网络的参数量。现就这个问题给出一种优化办法,具体数学推导过程如下:

说卷积神经网络卷积核的优化之前先简单的介绍一下卷积核的运算过程:

设一张图片的像素x*x,卷积核是k*k,步长为s

那么经过一层卷积网络后得到图像的像素为\frac{x-k}{s}+1,一个7*7的图像经过一个7*7的卷积核提取后的就变成一个1*1像素的图片。那么训练这个模型需要更新49个参数。 当变成3*3的卷积核经过3层,优化的便是27个参数。

本文将给出具体的推到过程怎么从已知的较大的卷积核转换成较小的卷积核,不涉及padding项的计算。

介绍之前先给出几个参数的意义:大卷积核为x*x,卷积核是k*k,步长为s

先介绍由一层大卷积核变成两层卷积的小卷积核的推导过程:

\frac{x-k}{s}=k\rightarrow x =s(k-1)+k

一层大卷积核变成三层卷积的小卷积核的推导过程

\frac{x-k}{s}=s(k-1)+k\rightarrow x =s^{2}(k-1)+s(k-1)+k

一层大卷积核变成四层卷积的小卷积核的推导过程

\frac{x-k}{s}=s^{2}(k-1)+s(k-1)+k\rightarrow x =s^{3}(k-1)+s^{2}(k-1)+s(k-1)+k

由上面的推导不难发现当一个大卷积核想换成多层小卷积核是有规律可循的即:

x = \sum_{i=1}^{n}s^{i}(k-1)+k

这个公式出现新参数n代表的是大卷积核转换成小卷积后,为达到和大卷积核一样的结果小卷积核需要的层数。

假如大卷积核是7*7步长为1的,可以换成3层3*3步长为1的小卷积核。

本人不是专门做计算机算法的,只是最近看了一下计算机视觉的东西,突然看到这个地方,但是详细讲解的却没有,自己无聊就推导了。希望能给做计算机视觉的朋友一点点帮助。如果有什么不对的地方希望大佬留言指正。

  • 11
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值