计算机视觉中的编码-解码器结构总结(持续更新)


编码器-解码器结构:编码器原始输入信号转化为中间格式,然后解码器将中间格式转化为目的信号。在NLP领域的机器翻译、摘要提取等部分,在视觉领域的目标检测、场景感知,在传统的机器学习中MLP等等都是Encoder-Decoder的结构。

NLP领域的编码解码器结构

直接用一个函数完成数据转化,可能会存在困难。例如对机器翻译来说输入和输出的长度是不固定的,二者还可能不相等,因此通过一个中间格式来完成输出与输入的转化。

对于NLP任务,Embedding是从语义空间到向量空间的映射,语义相近的两个词汇在向量空间的位置也比较接近,编码器-解码器网络是一个成功的翻译模型,接受一个序列作为输入,并将序列中的信息编码作为中间表示,解码器将中间表示解码为目标语言。
在这里插入图片描述
如上图所示,RNN中的Seq-to-Seq结构,处理机器翻译问题,将原始语言向量输入通过RNN编码为中间形式,后面通过Decoder解码为另一种语言向量序列。

机器学习中的编码器

自动编码器

最简单的,PCA在机器学习领域作为一种降维的工具,可以将样本投影在新的坐标系下,相当于一种新的中间表示形式,我们后面用线性回归或者SVM进行分类等任务,这时候机器学习模型扮演解码器的结构,这是一种非自动编码器,需要先人工干预编码,然后训练解码器。
在这里插入图片描述

如上图所示,自动编码器(Auto-Encoder,简称AE)是一种特殊的神经网络,用于特征提取和数据降维络。最简单的自动编码器由一个输入层,一个隐含层,一个输出层组成。隐含层的映射充当编码器,输出层的映射充当解码器。训练时编码器对输入向量进行映射,得到编码后的向量;解码器对编码向量进行映射,得到重构后的向量,它是对输入向量的近似。

编码器和解码器同时训练,训练的目标是最小化重构误差,即让重构向量与原始输入向量之间的误差最小化,这与PCA非常类似。因此样本x的标签值就是样本自身。训练完成之后,在预测时只使用编码器而不再需要解码器,编码器的输出结果被进一步使用,用于分类,回归等任务。

视觉领域中的编码解码器结构

  • Transfuser:多模态领域
    在这里插入图片描述
    如上图所示,模型将图像和雷达信息编码成512长度的一维向量,表示场景语义信息,后面用MLP组合RNN进行解码,预测车辆的行动轨迹。
    这种结构,其实就是将CNN产生的局部注意力图用作transformer计算全局注意力,从而达到快速收敛和稳定的效果

  • SRN-DeblurNet:高质量图像生成
    在这里插入图片描述
    对原图像(带有噪声、低分辨率)编码并解码生成高分辨率去噪图片。

  • DETR:目标检测
    在这里插入图片描述

利用CNN和Encoder作为编码器生成中间形式的查询向量,然后通过Decoder解码用来FFN预测目标信息。
利用CNN做预处理的优点是,虽然牺牲了浅层部分的全局注意力,但是CNN特征图可以带来有效的局部信息和较少的噪声(这里的噪声是指无关的像素),我认为是起到一种过滤器的效果。

  • 15
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

naca yu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值