赞
踩
卷积层和汇聚层通常会减少下采样输入图像的空间维度(高和宽)
语义分割的问题在于需要对输入进行像素级别的输出,但是卷积通过不断地减小高宽,不利于像素级别的输出,所以需要另外一种卷积能够将高宽变大
工作原理
转置卷积和卷积的异同
1、工作原理
2、输入输出
3、填充
4、步幅
5、多通道
为什么称之为“转置”
对于卷积 Y = X * W
转置卷积同样可以对 W 构造一个 V ,则等价于 Y‘ = VTX'
所以如果卷积将输入从(h,w)变成了(h',w'),则同样超参数(kernel size, stride, padding)的转置卷积则从(h',w')变成(h,w)
总结
1、与通过卷积核减少输入元素的常规卷积相反,转置卷积通过卷积核广播输入元素,从而产生形状大于输入的输出
2、如果我们将 X 输入卷积层 f 来获得输出 Y = f(X) 并创造一个与 f 有相同的超参数、但输出通道数是 X 中通道数的转置卷积层 g ,那么 g(Y) 的形状将与 X 相同。
3、可以使用矩阵乘法来实现卷积。转置卷积层能够交换卷积层的正向传播函数和反向传播函数
代码:
- import torch
- from torch import nn
- from d2l import torch as d2l
-
- # 实现基本的转置卷积运算
- def trans_conv(X, K):
- h, w = K.shape # 卷积核的宽、高
- Y = torch.zeros((X.shape[0] + h -1, X.shape[1] + w - 1)) # 正常的卷积后尺寸为(X.shape[0] - h + 1, X.shape[1] - w + 1)
- for i in range(X.shape[0]):
- for j in range(X.shape[1]):
- Y[i:i + h, j:j + w] += X[i, j] * K # 按元素乘法,加回到自己矩阵
- return Y
-
- # 验证上述实现输出
- X = torch.tensor([[0.0,1.0],[2.0,3.0]])
- K = torch.tensor([[0.0,1.0],[2.0,3.0]])
- trans_conv(X,K)
-
- # 使用高级API获得相同的结果
- X, K = X.reshape(1,1,2,2), K.reshape(1,1,2,2)
- tconv = nn.ConvTranspose2d(1,1,kernel_size=2,bias=False) # 输入通道数为1,输出通道数为1
- tconv.weight.data = K
- tconv(X)
-
- # 填充、步幅和多通道
-
- # 填充在输出上,padding=1,之前输出3x3,现在上下左右都填充了1,那就剩下中心那个元素了
- # 填充为1,就是把输出最外面的一圈当作填充
- tconv = nn.ConvTranspose2d(1,1,kernel_size=2,padding=1,bias=False)
- tconv.weight.data = K
- tconv(X)
-
- tconv = nn.ConvTranspose2d(1,1,kernel_size=2,stride=2,bias=False)
- tconv.weight.data = K
- tconv(X)
-
- # 多通道
- X = torch.rand(size=(1,10,16,16))
- conv = nn.Conv2d(10,20,kernel_size=5,padding=2,stride=3)
- tconv = nn.ConvTranspose2d(20,10,kernel_size=5,padding=2,stride=3)
- tconv(conv(X)).shape == X.shape

- tensor([[ 0., 0., 1.],
- [ 0., 4., 6.],
- [ 4., 12., 9.]])
-
- tensor([[[[ 0., 0., 1.],
- [ 0., 4., 6.],
- [ 4., 12., 9.]]]], grad_fn=<SlowConvTranspose2DBackward0>)
-
-
- tensor([[[[4.]]]], grad_fn=<SlowConvTranspose2DBackward0>)
-
- tensor([[[[0., 0., 0., 1.],
- [0., 0., 2., 3.],
- [0., 2., 0., 3.],
- [4., 6., 6., 9.]]]], grad_fn=<SlowConvTranspose2DBackward0>)
-
- True

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。