Towards Data Science

A Gentle Introduction to Autoencoders & Latent Space

8.5内容质量

TL;DR · AI 摘要

自编码器通过编码-解码结构实现数据压缩,其瓶颈层的潜在表示是关键。文章详解了其工作原理与训练逻辑。

核心要点

  • 自编码器由编码器、瓶颈层和解码器组成,用于数据压缩与特征提取
  • 训练过程无需标签数据,通过重构输入图像优化潜在表示
  • 瓶颈层维度决定压缩程度,需平衡信息保留与表示效率

结构提纲

按章节快速跳转。

  1. 介绍自编码器在处理高维数据时的计算效率问题及解决方案

  2. 解析编码器-瓶颈层-解码器的三段式网络架构及其功能

  3. 说明无监督训练中重构损失如何驱动潜在表示优化

  4. 指出图像以外的多模态数据适用性及工程实践价值

思维导图

用一张图看清主题之间的关系。

查看大纲文本(无障碍 / 无 JS 友好)
  • 自编码器与潜在空间
    • 核心结构
      • 编码器
      • 瓶颈层
      • 解码器
    • 训练机制
      • 重构损失函数
      • 无监督学习
    • 应用场景
      • 图像压缩
      • 特征提取

金句 / Highlights

值得收藏与分享的关键句。

#Autoencoder#机器学习#神经网络#数据压缩
打开原文

自编码器与潜在空间简介 | Towards Data Science

机器学习

自编码器与潜在空间简介

学习如何将高维输入转换为紧凑表示

Vyacheslav Efimov

2026年7月14日

6分钟阅读

分享

引言

计算量大是当前各种机器学习算法中的一个众所周知的问题,尤其是在将生成式AI应用于文本、图像和其他非结构化数据时。

缓解这一问题的主要方法之一是将输入数据压缩为低维表示,同时保留主要上下文。有许多方法可以实现这一目标,包括我们将在本文中讨论的自编码器。

为简单起见,本文将重点介绍基于图像的自编码器,但请记住,它们也可以应用于其他数据类型。

核心思想

自编码器是一种用于无监督学习的神经网络。其架构由三个主要组件组成:

  • 编码器。神经网络的第一部分,接收输入数据并通过其各层逐步降低其维度,最终达到瓶颈层。
  • 瓶颈层。维度最小的网络层,包含输入数据的潜在表示。
  • 解码器。连接到瓶颈层输出的网络部分,逐步扩展数据的维度。最终,在其最后一层,它会返回与最初传递给编码器的数据大小相同的数据。

自编码器架构

对于图像,编码器和解码器通常表示为卷积神经网络。

在自编码器的训练过程中,我们的最终目标是让网络在瓶颈层将输入数据转换为更紧凑的表示,同时不过度丢失信息。在推理阶段,我们可以将数据传递给编码器,从瓶颈层提取生成的嵌入表示,然后将其用于其他目的。

让我们了解自编码器的训练过程。

训练过程

自编码器的一大优势是它们不需要任何标记数据!让我们看看它们是如何工作的。

如前所述,输入图像被传递到网络中,被压缩到更小的尺寸,然后重建为原始维度。我们需要自问的问题是:我们希望解码器输出什么?

正如你可能猜到的那样,解码器可以尝试从瓶颈层的压缩表示中重建原始图像。为什么要这样做?

背后的思路很简单:

  • 如果瓶颈层的压缩表示能够很好地捕捉编码器输入的主要特征,那么解码器使用这些信息重建原始图像应该相对容易。
  • 如果瓶颈层未能捕捉到主要特征,解码器将无法可靠地重建原始图像。因此,模型会因为压缩表示不佳而受到惩罚。

通过要求解码器重建原始图像,我们隐式地迫使编码器生成丰富但压缩的潜在表示,从而帮助解码器高效完成任务。

输入数据在瓶颈层被投影到的空间称为潜在空间

重建损失

给定原始图像和解码器生成的重建图像,比较生成图像质量的最简单方法是什么?显然的答案是使用均方误差(MSE)损失,逐像素比较两幅图像,这在自编码器的上下文中被称为重建损失。

重建损失:MSE 是相对于输入图像和解码器生成的图像进行计算的。

计算得到的损失值随后用于反向传播,以更新模型的权重。

潜在空间维度

潜在空间维度是一个重要的超参数,会直接影响解码器的性能。

一方面,潜在空间维度需要足够大,以有效编码关键输入特征;另一方面,它不应过大,以保持较高的压缩率。

一个著名的例子是 Stable Diffusion。它使用自编码器将包含 786,432 个值的 512 x 512 x 3 输入图像转换为包含 16,384 个值的 64 x 64 x 4 图像,压缩比达到 48 倍。

自编码器的其他应用

训练自编码器的一个技巧是让它们学习从图像中去除噪声。这个想法很简单:由于自编码器擅长重建原始图像,我们可以向输入图像添加轻微噪声,然后要求它们重建原始图像。

这种方法的一个优点是,训练时只需原始图像,然后向其添加噪声即可。

去噪自编码器的核心思想是对输入图像添加随机噪声,将其输入模型,然后要求模型重建原始图像。

自编码器的另一个有趣应用是图像修复(image inpainting),即将带有遮罩区域的图像输入模型,使其能够去除遮罩并填补缺失的部分。

同样,自编码器也可以被训练用于从图像中移除特定对象。这对于去除水印尤其有用。

图像修复和图像对象移除是自编码器的其他应用示例。

模糊性问题

实际上,尽管 MSE 损失简单,但它并不完美,尤其在自编码器中。使用它的一个常见问题是解码器倾向于生成模糊像素的图像。

例如,我们可以想象一幅 512 x 512 的图像,包含两个垂直且不重叠的黑白区域。然后我们取该图像中的一行像素,其值如下:

[… 0 0 255 255 255 …]

模型对图像结构没有先验知识,它只试图最小化 MSE 损失。即使模型对该图像的预测是 [… 0 0 0 255 255 …],这仍然非常不错,因为区域仅偏移了一个像素,但此时的 MSE 损失会比以下情况更高,而模型可能更倾向于后者:

[… 0 0 127 255 255 …]

使用 MSE 损失的劣势示例。虽然生成图像 B 的 MSE 更低,但视觉效果不如图像 A。

在后一种情况下,尽管 MSE 更低,但中间像素代表一个模糊的边缘,视觉效果不佳。

这个问题在更先进的自编码器变体中通过调整损失函数得到解决。

总结

如我们所见,自编码器是一种简单却强大的概念。通过训练解码器从压缩数据中重建原始图像,我们逐步调整编码器以生成更具信息量的特征,这些特征可用于后续任务。

除了数据压缩之外,我们还了解到自编码器有其他应用,例如图像去噪、图像修复以及从图像中移除物体。

除非另有说明,所有图片均由作者创作

作者信息

查看 Vyacheslav Efimov 的所有文章

人工智能

,

自编码器

嵌入

图像压缩

分享本文

  • 在 Facebook 上分享
  • 在 LinkedIn 上分享
  • 在 X 上分享

Towards Data Science 是一份社区出版物。提交您的见解以触达全球受众,并通过 TDS 作者支付计划获得报酬。

将 href 更新为您的实际投稿链接

为 TDS 撰写文章

✦ end CTA ✦