视频链接:第八节 2021 - 自编码器 (Auto-encoder) (上) – 基本概念_哔哩哔哩_bilibili
参考博客:【机器学习】李宏毅——AE自编码器(Auto-encoder)_FavoriteStar的博客-CSDN博客
自监督学习
- 自监督学习需要采用大量未标注的信息去训练一个模型
- 我们需要发现一些不需要标注的任务来进行学习,这个不用标注的任务叫做self-supervised Learning 或者Pre-trainning。Auto-encoder也是其中的一种古老的任务。
- 我们可以将模型进行微调用到下游的任务中。
与encoder-decoder的区别
auto-encoder本身是个固定的方法,但是他提供了一种编码-解码的思路,世人可以沿用这个思路和框架去研究新的方法。
encoder-decoder是一个框架,框架中有很多模块,可以引入attention机制作为一个模块形成一中方法。其中encoder是用来特征编码,decoder是将特征解码出我们需要的输出,中间为了提升性能可以增加各种模块。
Auto-encoder
Auto-encoder 具有两个神经网络 ,分别为 Encoder和Decoder。
- encoder将原始的数据转换为一个向量(又可以称为编码,embedding)
- decoder将向量还原成原始的数据
编码就是将输入的序列转换成一个固定长度的向量,解码是将之前生成的向量转换为输出序列。
我们希望输出的图像和输出的图片两者越接近越好。
由于图片的变化是有限的,不是所有的变化都是图片。如果encoder能找到复杂输入中所有有限的变化,我们就能将原始问题简化。在下游任务中也能用较少的训练资料获得更好的结果。
De-noising Auto-encoder 和 Bert之间的关系
- De-noising Auto-encoder中的 Encoder的输入并不是原始的图像,而是将图像加上一定的噪声之后再作为Encoder的输入,而在输出的时候是要求Decoder输出能够与未加噪声之前的图像越接近越好。
- Bert如图所示也采用了Mask方法,所以两者有相似之处。
应用可以看参考博客。
对encoder-decoder不了解的可以参考博客Encoder-Decoder 模型架构详解__Summer tree的博客-CSDN博客