CNN的具体卷积过程

参考地址:https://blog.csdn.net/caicaiatnbu/article/details/72792684?locationNum=7&fps=1
由上面的博客可以得出,二维卷积过程就是:比如输入通道数为3,每个图像的大小为7*7,那么当卷积核的数目为2个的时候,卷积核的大小为3*3时。

具体的卷积过程就是用一个3*3大小的卷积核分别和这3个通道的7*7图像做对位相乘,然后把这三个数相加(如果有bias,再加上bias),然后得到最终输出中的一个数。

一维卷积参考地址:https://blog.csdn.net/momaojia/article/details/65641430

相同的一维卷积其实也是用二维卷积实现的(点金之笔:一维卷积是在相邻帧之间提取信息),所以图上面的博客把长度为3的卷积核来进行一维卷积时,他说等价于用3*32的二维卷积进行卷积运算(32是输入10*32中的32,表示的是10个32维向量,也就是说脑海中的一个长度为3的卷积核是竖着往前走的,所以可以等价为一个二维卷积过程3*32对其进行卷积,也要注意其中参数数量的计算方式)。

实战例子:
这里写图片描述
这个是处理ubuntu数据中的一个cnn模型中的参数数量,这一层的输入是(None,10,20,200),用一个TimeDistributed(Conv1D(filters_num = 200, fliters_size = 3));所以这一层的输出是(None, 10,28,200).
那么具体的模型参数数量的计算方式是:先计算一个卷积核中的参数数量(包括权重和偏差),由于kernel_size = 3,且这一层的输入中的要提取的特征的维度为(20,200),所以可以理解为用一个(3,200)的时间窗口去提取(20,200)中的特征。(注意(3,200)中的200是由输入的特征的维度决定的),所以一个卷积核的参数数量为:num1 = 3*200 +1; 所以最终200个卷积核的总的参数数量为(3*200 + 1)*200=120200

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值