0
点赞
收藏
分享

微信扫一扫

47 转置卷积 [动手学深度学习v2]

small_Sun 2022-01-20 阅读 68
  1. 转置卷积

    卷积不会增大输入的高宽,通常要么不变、要么减半;

    转置卷积则可以用来增大输入高宽。

    在这里插入图片描述

    Y [ i : i + h , j : j + w ] + = X [ i , j ] ⋅ K Y[i: i+h, j: j+w]+=X[i, j] \cdot K Y[i:i+h,j:j+w]+=X[i,j]K

  2. 如果卷积将输入从 ( h , w ) (h, w) (h,w)变成了 ( h ′ , w ′ ) (h', w') (h,w),同样超参数的转置卷积则从 ( h ′ , w ′ ) (h', w') (h,w)变成 ( h , w ) (h, w) (h,w)

  3. 代码实现

    import torch
    from torch import nn
    
    def trans_conv(X, K):
        h, w = K.shape
        Y = torch.zeros((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
    
举报

相关推荐

0 条评论