在深度学习的算法学习中,都会提到 channels 这个概念。在一般的深度学习框架的 conv2d 中,如 tensorflow 、mxnet ,channels 都是必填的一个参数。

channels 该如何理解?先看一看不同框架中的解释文档。

首先,是 tensorflow 中给出的,对于输入样本中 channels 的含义。一般的RGB图片,channels 数量是 3 (红、绿、蓝);而monochrome图片,channels 数量是 1 。

channels : Number of color channels in the example images. For color images, the number of channels is 3 (red, green, blue). For monochrome images, there is just 1 channel (black). ——tensorflow

其次,mxnet 中提到的,一般 channels 的含义是,每个卷积层中卷积核的数量

channels (int) : The dimensionality of the output space, i.e. the number of output channels (filters) in the convolution. ——mxnet

为了更直观的理解,下面举个例子,图片使用自 吴恩达老师的深度学习课程 。

如下图,假设现有一个为 6×6×36×6×36\times6\times3 的图片样本,使用 3×3×33×3×33\times3\times3 的卷积核(filter)进行卷积操作。此时输入图片的 channels 为 333 ,而卷积核中in_channels 与 需要进行卷积操作的数据的 channels 一致(这里就是图片样本,为3)。

接下来,进行卷积操作,卷积核中的27个数字与分别与样本对应相乘后,再进行求和,得到第一个结果。依次进行,最终得到 4×4" role="presentation">4×44×44\times4 的结果。

上面步骤完成后,由于只有一个卷积核,所以最终得到的结果为 4×4×14×4×14\times4\times1 , out_channels 为 111 。

在实际应用中,都会使用多个卷积核。这里如果再加一个卷积核,就会得到 4×4×2" role="presentation">4×4×24×4×24\times4\times2 的结果。

总结一下,我偏好把上面提到的 channels 分为三种:

  1. 最初输入的图片样本的 channels ,取决于图片类型,比如RGB;
  2. 卷积操作完成后输出的 out_channels ,取决于卷积核的数量。此时的 out_channels 也会作为下一次卷积时的卷积核的 in_channels
  3. 卷积核中的 in_channels ,刚刚2中已经说了,就是上一次卷积的 out_channels ,如果是第一次做卷积,就是1中样本图片的 channels

说到这里,相信已经把 channels 讲的很清楚了。在CNN中,想搞清楚每一层的传递关系,主要就是 height,width 的变化情况,和 channels 的变化情况。

最后再看看 tensorflow 中 tf.nn.conv2dinputfilter 这两个参数。
input : [batch, in_height, in_width, in_channels]
filter : [filter_height, filter_width, in_channels, out_channels]

里面的含义是不是很清楚了?

【CNN】理解卷积神经网络中的通道 channel相关推荐

  1. 如何理解卷积神经网络中的通道(channel)

    在卷积神经网络中我们通常需要输入 in_channels 和 out_channels ,即输入通道数和输出通道数,它们代表什么意思呢?本文将给出一个形象的理解. 对于通道的理解可以参考下面的这篇文章 ...

  2. xml文件 卷积神经网络_理解卷积神经网络中的输入与输出形状(Keras实现)

    即使我们从理论上理解了卷积神经网络,在实际进行将数据拟合到网络时,很多人仍然对其网络的输入和输出形状(shape)感到困惑.本文章将帮助你理解卷积神经网络的输入和输出形状. 让我们看看一个例子.CNN ...

  3. 卷积网络中的通道(Channel)理解

    卷积网络中的通道(Channel)理解 卷积网络中有一个很重要的概念,通道(Channel),也有叫特征图(feature map)的. 卷积网络中主要有两个操作,一个是卷积(Convolution) ...

  4. 卷积网络中的通道(channel)和特征图(feature map)

    卷积网络中的通道(Channel)和特征图 转载自:https://www.jianshu.com/p/bf8749e15566 今天介绍卷积网络中一个很重要的概念,通道(Channel),也有叫特征 ...

  5. 【TensorFlow】TensorFlow从浅入深系列之十二 -- 教你深入理解卷积神经网络中的池化层

    本文是<TensorFlow从浅入深>系列之第12篇 TensorFlow从浅入深系列之一 -- 教你如何设置学习率(指数衰减法) TensorFlow从浅入深系列之二 -- 教你通过思维 ...

  6. 理解卷积神经网络中的输入与输出形状 | 视觉入门

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 译者|VK 来源|Towards Data Science 即使我 ...

  7. 卷积网络中的通道(Channel)和特征图

    卷积网络中有一个很重要的概念,通道(Channel),也有叫特征图(feature map)的. 首先,卷积网络中主要有两个操作,一个是卷积(Convolution),一个是池化(Pooling). ...

  8. (转)卷积网络中的通道(Channel)和特征图

    今天介绍卷积网络中一个很重要的概念,通道(Channel),也有叫特征图(feature map)的. 首先,之前的文章也提到过了,卷积网络中主要有两个操作,一个是卷积(Convolution),一个 ...

  9. 【TensorFlow】TensorFlow从浅入深系列之十一 -- 教你深入理解卷积神经网络中的卷积层

    本文是<TensorFlow从浅入深>系列之第11篇 TensorFlow从浅入深系列之一 -- 教你如何设置学习率(指数衰减法) TensorFlow从浅入深系列之二 -- 教你通过思维 ...

最新文章

  1. unity 继承了 获取_Unity游戏开发——设计模式概述
  2. Lintcode--3(366)--斐波那契数列
  3. 10个开源免费的电子商务平台(转自伯乐在线)
  4. 深度学习——行数据的分拆及如何“喂”给训练过程
  5. chrome谷歌浏览器截图
  6. 计算机基础(十):git仓库管理命令小结
  7. 聊聊jQuery is not defined
  8. EDIUS插件如何安装?
  9. mysql version 50713_MySQL 5.6 升级为 MySQL 5.7
  10. python输出个数、给定一个n*n的矩阵m_简述Numpy
  11. 苹果谷歌微软薪酬大揭秘,最高320万元!
  12. 人工神经网络——神经元模型介绍
  13. 全球首个中文PaaS支撑平台----天翎myApps快速开发平台
  14. 电脑误删分区如何恢复?图文详解
  15. 如何搞懂html+php实现个人博客网站?【附代码详解】毕业设计 大作业项目
  16. 七段LED数码管显示译码器设计
  17. Kafka知识体系总结【附大厂高频面试题】
  18. 计算机系统结构专业考研科目,计算机系统结构考研考哪些科目呢?
  19. 1wifi 简介(框架)2系统启动后的 wifi加载 过程-图解 3系统启动后的 wifi 加载过程
  20. 文件夹右键卡死解决方法

热门文章

  1. [2020牛客多校第一场]Coda的题解集
  2. 地级市各产业从业人数数据集(1999-2018年)
  3. 黑马程序员:PHP为何能成最抢手后端语言?
  4. 使用ffmpeg实现单线程异步的视频播放器
  5. 易拉罐被证实能增强WiFi信号 笔记本手机适用
  6. Android学习之运用多媒体
  7. 中国移动清退3G进行时
  8. (python)小最的电脑上安装了一个机器翻译软件,他经常用这个软件来翻译英语文章这个翻译软件的原理很简单,它只是从头到尾,依次将每个英文单词用对应的中文含义来替换。对于每个英文单词,软件会先在内存中
  9. 大流量滤芯保安过滤器
  10. Prolific PL2303 usb 转串口Win8 Win8.1驱动