术语表

自动编码器

了解自动编码器如何利用先进的人工智能技术压缩数据、降低噪音并实现异常检测、特征提取等功能。

使用Ultralytics HUB 对YOLO 模型进行简单培训

了解更多

自编码器是一种人工神经网络(NN),主要用于无监督学习任务,特别是降维特征提取。它的基本目标是学习输入数据的压缩表示(编码),通常是通过训练网络来重建自己的输入。它由两个主要部分组成:一个是将输入数据映射到低维潜在空间的编码器,另一个是根据压缩表示重建原始数据的解码器。这一过程迫使自动编码器捕捉训练数据中最显著的特征。

自动编码器的工作原理

自动编码器的运行包括两个阶段:编码和解码。

  1. 编码器:这部分采用输入数据(如图像或矢量),并将其压缩为一种称为潜空间或瓶颈的低维表示。这种压缩迫使网络学习有意义的模式,摒弃噪音或冗余。编码器通常由几层组成,通常使用ReLUSigmoid激活函数
  2. 瓶颈:这是自动编码器的中心层,是输入数据的压缩低维表示所在。它是捕捉基本信息的 "代码"。这一层的维度是一个关键的超参数。
  3. 解码器:解码器:这部分从瓶颈处获取压缩表示,并尝试尽可能精确地重建原始输入数据。它反映了编码器的结构,但却是反向的,将数据上采样回原来的尺寸。

训练包括向网络输入输入数据,并使用损失函数将输出(重建数据)与原始输入数据进行比较,如连续数据的平均平方误差 (MSE)或二进制数据的二进制交叉熵。使用反向传播优化算法(如AdamSGD)调整网络权重,使重建误差最小化。

自动编码器的类型

基本的自动编码器结构有几种变体,每种都是为特定任务而设计的:

  • 去噪自动编码器:经过训练,可以重建被噪声破坏的输入的干净版本。这使得它们在图像去噪等任务中表现强劲。了解有关去噪自编码器的更多信息
  • 稀疏自动编码器:在瓶颈层上引入稀疏性惩罚(一种正则化),迫使网络学习每次只有少数节点处于活动状态的表征。
  • 变异自动编码器(VAE):一种生成式人工智能模型,可学习潜在空间的概率映射,从而生成与训练数据类似的新数据样本。阅读 VAE 论文
  • 收缩式自动编码器:在损失函数中添加惩罚项,鼓励编码器学习对输入的微小变化具有鲁棒性的表示。

实际应用

自动编码器是用于各种机器学习(ML)应用的多功能工具:

  • 异常检测:通过学习数据中的正常模式,自动编码器可以识别异常值或异常现象。如果某个特定数据点的重构误差很大,则表明输入数据与训练数据有很大差异,有可能表明存在异常情况,如金融领域的欺诈交易或制造业的故障设备。进一步了解异常检测
  • 图像压缩和去噪:自动编码器可以学习图像的紧凑表示,从而有效地进行压缩。去噪自动编码器专门用于去除图像中的噪点,这在医学图像分析(如增强核磁共振成像或 CT 扫描)或修复老照片中非常有价值。参见医学成像解决方案
  • 降维:主成分分析(PCA)类似,自动编码器也能降低数据维度,但却能捕捉 PCA 无法捕捉的复杂非线性关系。这对于数据可视化和作为其他 ML 模型的预处理步骤非常有用。
  • 特征学习:编码器部分可用作图像分类物体检测等下游任务的特征提取器,通常能提供比原始数据更强大的特征。虽然像 Ultralytics YOLO等模型使用专门的骨架,而自动编码器的原理则为表征学习提供了参考。

自动编码器与相关概念

  • PCA:虽然两者都能降低维度,但PCA只限于线性变换。而自动编码器作为一种神经网络,可以学习复杂的非线性映射,通常能为复杂的数据集提供更好的表征。
  • 生成对抗网络 生成对抗网络(GAN)主要用于生成高度逼真的新数据。虽然 VAE(自动编码器的一种)也能生成数据,但它们的重点通常是学习结构良好的潜在空间,而 GAN 擅长输出保真度,有时会以潜在空间的可解释性为代价。
  • CNN 和变换器:自动编码器定义了一种架构模式(编码器-解码器)。它们通常利用其他网络类型,如用于图像数据的卷积神经网络(CNN)或用于顺序数据的变换器,作为编码器和解码器的构建模块。

工具和实施

自动编码器可以使用流行的深度学习(DL)框架来实现:

Ultralytics HUB等平台为包括数据管理和模型训练在内的整个 ML 工作流程提供了便利,不过它们主要侧重于检测和分割等有监督任务,而非无监督自动编码器训练。

阅读全部