欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

卷积核个数和输入输出通道数的关系

发布时间:2025/4/5 编程问答 41 豆豆
生活随笔 收集整理的这篇文章主要介绍了 卷积核个数和输入输出通道数的关系 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

思考的开始

为什么突然想起来这个了?卷积大家都太熟系,感觉不用多说了都,我也是这么觉得的。但是,今天发现一个问题,就是卷积操作完成从c1通道到c2通道的过程中,到底是需要多少卷积核?又是到底怎么卷的?

问题解决

回答下面的问题就可以顺利解决。

1.为什么卷积的效率高?

因为卷积的卷积核是可以进行复用的,所以就不需要训练很多参数,训练的参数少,可以加速拟合。所以,训练效率很高。可以节省很多计算量

2.输入的每个通道是否要每个指定一个卷积核?

既然是复用可以节省计算量,我们是否可以对所有的输入通道都复用一种卷积核?这个显然不行,因为这样在生成的所有内容当中,每个通道的贡献度都是一样的,可以理解成将其简单加和之后再乘上一个系数。那么这时候如果你在下一层又生成了一个多通道,那么结果将是,这些通道的之间的区别就是乘上了不同的系数而已,这些生成的通道相当于没有任何意义。
所以对于输入的不同意通道需要使用不同的卷积核。

3.输出是怎么输出的?

之前,我们已经说过了输入的通道,每个配一个卷积核,这样我们就会得到输入通道个数的输出。那么我们输出什么,直接将这些输出每个还作为独立的通道输出吗?这显然不对劲啊。这样相当于输出还是只考虑了一个输入的通道。所以还得将这些得到的通道融合起来。

4.所以怎么融合起来?

乘上一个可训练的系数加和吗?其实完全没有必要,因为一开始乘上的卷积和直接就能取代这个系数的作用,并且是针对各个元素的,比这个直接乘上一个针对卷积核大小范围内所有元素的,显然效果更好。

5.融合之后如何扩展到多通道?

显然之前我们使用加和操作进行融合,得到的结果就只剩下一个通道了,想要扩充成多通道,简单乘上一个系数显然没有意义。So we must use the output-channel kernel-groups which has the input-channel kernels per group。这个东西好像英文表述清楚一点。

结论

所以需要input-channel×output-channel个数的卷积核。

总结

以上是生活随笔为你收集整理的卷积核个数和输入输出通道数的关系的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。