深度学习:转置卷积

什么是转置卷积(Transposed Convolution)

转置卷积,又称反卷积(Deconvolution)或上采样卷积(Upsampling Convolution),是一种卷积操作,通常用于生成式模型或图像处理任务中,以增加特征图的空间分辨率。转置卷积的目的是将低分辨率的特征图还原到较高分辨率,即进行空间上采样。

正常卷积操作回顾

在标准卷积操作中,卷积核在输入特征图上滑动,计算局部区域的加权和,从而生成输出特征图。假设我们有以下参数:

  • 输入特征图大小: ( H × W ) (H \times W ) (H×W)
  • 卷积核大小: ( K × K ) ( K \times K ) (K×K)
  • 步幅:( S )
  • 填充:( P )
输出特征图的大小为:

H o u t = H − K + 2 P S + 1 \] \[ H{out} = \\frac{H - K + 2P}{S} + 1 \] \[Hout=SH−K+2P+1

W o u t = W − K + 2 P S + 1 \] \[ W{out} = \\frac{W - K + 2P}{S} + 1 \] \[Wout=SW−K+2P+1

转置卷积的基本原理

转置卷积的操作可以被视为卷积的逆过程。其目的是将小的输入特征图扩展为更大的输出特征图。转置卷积通过插入零元素并使用卷积核计算来实现这一点。

转置卷积的计算步骤:

  • 插入零元素(Zero-Insertions):

    在输入特征图的元素之间插入零元素,增加特征图的尺寸。例如,假设步幅为 ( S ),在每个元素之间插入 ( S-1 ) 个零。

  • 填充(Padding):

    适当填充输入特征图,确保输出特征图具有预期的大小。通常填充策略与卷积核的大小和步幅相关。

  • 卷积操作:

    使用标准卷积操作在填充后的特征图上应用卷积核,生成输出特征图。

假设我们有以下参数:
  • 输入特征图大小: ( H i n × W i n ) ( H{in} \times W{in} ) (Hin×Win)
  • 卷积核大小: ( K × K ) ( K \times K ) (K×K)
  • 步幅:( S )
  • 填充:( P )

输出特征图的大小为:

H o u t = ( H i n − 1 ) × S − 2 P + K \] \[ H{out} = (H{in} - 1) \\times S - 2P + K \] \[Hout=(Hin−1)×S−2P+K

W o u t = ( W i n − 1 ) × S − 2 P + K \] \[ W{out} = (W{in} - 1) \\times S - 2P + K \] \[Wout=(Win−1)×S−2P+K

应用场景

转置卷积广泛应用于以下场景:

  • 生成对抗网络(GANs):在生成器中使用转置卷积将低维噪声向量转换为高维图像。
  • 图像超分辨率:从低分辨率图像重建高分辨率图像。
  • 语义分割:将特征图还原为输入图像的尺寸以生成像素级别的分类图。
通过转置卷积,我们可以有效地对图像进行空间上采样,实现不同的图像生成和重建任务。
相关推荐
ting94520003 小时前
Humalike X Hermes 深度技术剖析:单指令注入群聊社交智能的底层架构、算法与跨 IM 平台实现
人工智能·算法·架构
涤生大数据3 小时前
一次“没有运行日志”的DolphinScheduler任务失败排查
大数据·数据库·人工智能·状态模式
东风破_4 小时前
Vibe Coding 上头之后,我开始用 SDD 给 AI 编程加一张“施工图”
人工智能·程序员
weixin_403810134 小时前
AI智能体写安卓自动化脚本教程:Cursor/Trae+CLI 实战,自然语言生成代码
android·人工智能·自动化·跨境电商·安卓自动化脚本·多账户运营
深圳雨林凯AI4 小时前
雨林凯AI四方连图介质适配原理:像素密度、纱线纹理与颜色管理怎么协调
人工智能
ZGIAI5 小时前
ZGI 混合检索:汇集候选并统一重排
人工智能·架构
ZGIAI5 小时前
ZGI 运行日志:还原任务与节点状态
人工智能·架构
Scott9999HH5 小时前
2026 中小企业如何破局 AI 搜索?轻量化 GEO 优化系统架构设计与 Python 实战落地
人工智能
玩转单片机与嵌入式5 小时前
深入浅出TinyML 16:FFT、频带能量和MFCC分别适合什么任务?
stm32·深度学习·tinyml
甲维斯5 小时前
opencode的“恶果”来了,吃掉100G空间!
人工智能