CNN在3d图像上的反向传播

时间:2019-11-30 17:38:13

标签: python tensorflow conv-neural-network backpropagation

因此,我正在尝试使用CIFAR-10数据集为CNN编写自己的代码。我已经完成了前馈算法,并从反向传播开始。我可以毫无问题地传播通过完全连接的层以及进行分池。我现在停留在通过卷积层传播的后面。我的图像输入大小是(32,32,3)rgb输入。 到目前为止,这是我的网络。

Conv Layer + Relu-> Maxpool-> Conv Layer + Relu-> Maxpool-> Dense + Relu-> Dense + Softmax

在向前传播时,我采用了(3,3,3)内核并对图像进行卷积。我使用了12个这样的过滤器,这给了我(32,32,12)张量作为输出。 Maxpool设定了尺寸(16、16、12),然后将其与(3、3、12)卷积,得到8个不同的滤镜,得出(16、16、8)。

在向后传播时,我已经到达了这一部分。我有一个(16、16、8)张量,使用它必须为8个不同的滤镜更新一个(3、3、12)滤镜矩阵。另外,我还必须传播错误,以计算尺寸为(16、16、12)的上一层输入的变化。

我了解1通道图像的工作原理,但是当涉及到3个通道时,我感到困惑。 我也知道通过卷积层进行反向传播也是一种卷积,但是我被困在这里。怎么做请帮忙。

0 个答案:

没有答案