PyTorch 卷积“in_channels”和“out_channels”的含义?

Las*_*tK7 7 python deep-learning conv-neural-network pytorch

从Convolution 的PyTorch文档中,我看到该函数torch.nn.Conv1d需要用户传递参数in_channelsout_channels

我知道这些指的是“输入通道”和“输出通道”,但我不确定它们在卷积的上下文中意味着什么。我的猜测是,这in_channels相当于输入特征,也out_channels相当于输出特征,但我不确定。

有人可以解释一下这些论点指的是什么吗?

uke*_*emi 5

给定一个卷积:

  • 长度m
  • 通过N输入通道/信号/变量
  • 输出P通道/功能/过滤器

你会使用:

nn.Conv1d(in_channels=N, out_channels=P, kernel_size=m)
Run Code Online (Sandbox Code Playgroud)

下面在使用 PyTorch 进行深度学习中对 2d 图像进行了说明(其中内核的大小为 3x3xN(其中 RGB 图像的 N=3),并且对于所需的 5 个输出有 5 个这样的内核):

在此输入图像描述


Anu*_*ngh 2

in_Channels表示输入图像中的通道数,而out_channels表示卷积产生的通道数。就图像数据而言,最常见的情况是具有一个通道、黑色的灰度图像,或具有三个通道 \xe2\x80\x93 红色、绿色和蓝色的彩色图像。out_channels这是一个偏好问题,但有一些重要的事情需要注意。

\n\n
    \n
  • 首先,大量的out_channels允许该层潜在地学习有关输入数据的更多有用的特征,尽管这不是一个硬性规则。
  • \n
  • in_channels其次,CNN 的大小是网络每层/数量out_channels和层数的函数。
  • \n
\n