自编码器(Autoencoder,AE)

Autoencoders and their applications in machine learning: a survey

1、Autoencoder(自编码器,AE)

自编码器(Autoencoder)是一种无监督学习算法,主要用于数据的降维、特征提取和数据重建。自编码器由两个主要部分组成: 编码器(Encoder)解码器(Decoder) 。其基本思想是 将输入数据映射到一个低维的潜在空间,然后再从该潜在空间重建出原始数据,即提取输入输入数据特征,再利用特征还原数据,其中输入数据和输出数据存在差异,可称为有损压缩。

(1)Construction

一个典型的自编码器包括以下部分:

  • 编码器(Encoder):将输入数据压缩到一个低维的潜在空间表示。通常由若干层神经网络组成。
  • 潜在空间(Latent Space):编码器输出的低维表示,也称为编码(Code)或瓶颈(Bottleneck)。
  • 解码器(Decoder):将低维的潜在空间表示解码回原始数据的维度。通常也由若干层神经网络组成。

在这里插入图片描述

(2)Principle

自编码器通过两个阶段来训练和使用:

  1. train

    • 输入数据 x 通过编码器映射到潜在空间 z,表示为 z=f(x)。
    • 潜在空间表示 z 通过解码器重建出原始数据 x^ ,表示为 x^=g(z)=g(f(x))。
    • 训练目标是最小化重建误差,即 x 和 x^ 之间的差异,常用的损失函数为均方误差(MSE)。
  2. use

    • 训练完成后,编码器可以用于将新数据映射到低维潜在空间进行特征提取或降维。
    • 解码器可以用于从潜在空间表示生成数据,应用于生成模型等任务。

(2)Type

根据不同的应用和需求,自编码器有多种变体:

  1. 稀疏自编码器(Sparse Autoencoder):

    • 通过添加稀疏性约束,使得潜在空间表示中只有少数几个单元被激活,常用于特征提取。
  2. 去噪自编码器(Denoising Autoencoder):

    • 输入数据加入噪声,目标是从噪声数据中重建出原始的无噪声数据,常用于去噪和鲁棒性增强。
  3. 变分自编码器(Variational Autoencoder, VAE):

    • 在潜在空间中引入概率分布,学习数据的生成分布,可以用于生成新数据和数据增强。
  4. 卷积自编码器(Convolutional Autoencoder, CAE):

    • 使用卷积层替代全连接层,常用于图像数据的降维和特征提取。

【深度学习】 自编码器(AutoEncoder)

2、Denoising Autoencoder(去噪自编码器,DAE)

DAE 通过对输入数据加入噪声,目标是从噪声数据中重建出原始的无噪声数据,常用于去噪和鲁棒性增强。

在这里插入图片描述

3、Variational Autoencoder(变分自编码器,VAE)

VAE 在 AE 潜在空间中引入概率分布,学习数据的生成分布,可以用于生成新数据和数据增强。

在这里插入图片描述

在 AE 中,可以通过 encoder 从输入图像中学习到人脸表情、皮肤、头发颜色等特征,但是人脸的表情到底是微笑还是呲牙的笑,或者是哈哈大笑,在潜在空间是没办法表示的。

而在 VAE 中,通过在潜在空间中引入概率分布,可以在潜在空间中表示人脸的微笑程度,进而修改潜在空间的概率分布,可以生成与输入图像不同的新数据。

Variational autoencoders.

4、Application

自编码器(Autoencoder)具有广泛的应用场景,以下是一些主要的应用领域:

  1. 数据降维
    自编码器可以用于高维数据的降维,将数据压缩到低维空间,从而减少存储和计算的复杂性。这种方法在很多方面可以替代主成分分析(PCA),特别是在处理非线性数据时。

  2. 特征提取
    在无监督学习中,自编码器能够自动学习数据的潜在特征表示。通过训练自编码器模型,可以提取输入数据的有用特征,这些特征可以用于其他机器学习任务,例如分类和聚类。

  3. 图像去噪
    去噪自编码器(Denoising Autoencoders, DAE)被用来去除图像中的噪声。通过向输入图像添加噪声,并训练自编码器去重构原始的无噪声图像,可以有效地消除噪声。

  4. 数据生成
    变分自编码器(Variational Autoencoders, VAE)是一种生成模型,可以用来生成与训练数据分布相似的新数据。VAE在潜在空间中引入了随机性,使得生成的样本具有多样性。

  5. 异常检测
    自编码器可以用来检测数据中的异常点。通过训练自编码器重构正常数据,任何重构误差较大的数据点可能就是异常点。这个方法广泛应用于工业设备故障检测、网络入侵检测等领域。

  6. 图像和视频压缩
    自编码器可以用于图像和视频压缩,通过将图像和视频数据压缩到潜在空间,再从潜在空间重构,从而实现高效压缩。

  7. 自监督学习
    自编码器作为自监督学习的一个重要工具,可以在没有标签的数据上进行预训练,帮助提升有监督学习任务的效果。它在自然语言处理、图像识别等领域有重要应用。

  8. 数据填补
    自编码器可以用于数据缺失值的填补。通过训练自编码器重构完整数据,可以用潜在空间的表示来推断并填补缺失的数据。

[REFERENCE]
李宏毅2020机器学习深度学习(完整版)国语
(强推)李宏毅2021/2022春机器学习课程
李宏毅2024春《生成式人工智能导论》
【15分钟】了解变分自编码器
【全】一文带你了解自编码器(AutoEncoder)
【深度学习】 自编码器(AutoEncoder)
Variational autoencoders.

[COPY]
[深度学习] 自编码器Autoencoder

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值