二维卷积运算tf.conv2d介绍

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二维卷积运算tf.conv2d介绍相关的知识,希望对你有一定的参考价值。

参考技术A 除去 name 参数用以指定该操作的name,与方法有关的一共五个参数:

结果返回一个Tensor,这个输出,就是我们常说的feature map,shape仍然是 [batch, height, width, channels] 这种形式

深度神经网络中的卷积

卷积单元

本文给出了四维张量卷积的表达式,卷积输出大小的表达式,以及Matlab和PyTorch下卷积实例。

直观地理解卷积

经典卷积运算

经典二维卷积

设有 N i N_i Ni 个二维卷积输入 I ∈ R N i × C i × H i × W i {\\bm I} \\in {\\mathbb R}^{N_i × C_i \\times H_i \\times W_i} IRNi×Ci×Hi×Wi, C k × C i C_k \\times C_i Ck×Ci 个二维卷积核 K ∈ R C k × C i × H k × W k {\\bm K} \\in {\\mathbb R}^{C_k \\times C_i \\times H_k \\times W_k} KRCk×Ci×Hk×Wk, N o N_o No 个卷积输出记为 O ∈ R N o × C o × H o × W o {\\bm O} \\in {\\mathbb R}^{N_o × C_o \\times H_o \\times W_o} ORNo×Co×Ho×Wo, 在经典卷积神经网络中, 有 C k = C o , N o = N i C_k = C_o, N_o = N_i Ck=Co,No=Ni, K {\\bm K} K I \\bm I I 间的二维卷积运算可以表示为

O n o , c o , : , : = ∑ c i = 0 C i − 1 I n o , c i , : , : ∗ K c o , c i , : , : = ∑ c i = 0 C i − 1 Z n o , c o , c i , : , : \\begin{aligned} {\\bm O}_{n_o, c_o, :, :} &= \\sum_{c_i=0}^{C_i-1} {\\bm I}_{n_o, c_i, :,:} * {\\bm K}_{c_o, c_i, :,:} \\\\ &= \\sum_{c_i=0}^{C_i-1}{\\bm Z}_{n_o, c_o, c_i, :, :} \\end{aligned} Ono,co,:,:=ci=0Ci1Ino,ci,:,:Kco,ci,:,:=ci=0Ci1Zno,co,ci,:,:
其中, ∗ * 表示经典二维卷积运算, 卷积核 K c o , c i , : , : {\\bm K}_{c_o, c_i, :,:} Kco,ci,:,: 与输入 I n o , c i , : , : {\\bm I}_{n_o, c_i, :,:} Ino,ci,:,: 的卷积结果记为 Z n o , c o , c i , : , : ∈ R H o × W o {\\bm Z}_{n_o, c_o, c_i, :, :}\\in {\\mathbb R}^{H_o \\times W_o} Zno,co,ci,:,:RHo×Wo, 则

Z n o , c o , c i , h o , w o = ∑ h = 0 H k − 1 ∑ w = 0 W k − 1 I n o , c i , h o + h − 1 , w o + w − 1 ⋅ K c o , c i , h , w . {\\bm Z}_{n_o, c_o, c_i, h_o, w_o} = \\sum_{h=0}^{H_k-1}\\sum_{w=0}^{W_k-1} {\\bm I}_{n_o, c_i, h_o + h - 1, w_o + w - 1} \\cdot {\\bm K}_{c_o, c_i, h, w}. Zno,co,ci,ho,wo=h=0Hk1w=0Wk深度神经网络中的卷积

二维卷积运算工作原理剖析(转载)

卷积神经网络

Task 05 打卡

PyTorch笔记 - Convolution卷积运算的原理

PyTorch笔记 - Convolution卷积运算的原理