特征提取之自动编码器

自动编码器(Autoencoder, AE)一种人工神经网络,主要用于无监督学习,目标是学习输入数据的高效表示(编码)。其核心思想是通过尝试重构(reconstruct)原始输入数据来实现自我学习

1. 基本结构与原理

自动编码器由两部分组成:编码器(Encoder)解码器(Decoder)
  1. 编码器(Encoder):将高维度的输入数据𝑋压缩成一个低维度的潜在表示(latent representation,也称编码隐藏变量)𝑍。这个过程可以看作是特征提取或数据压缩。
  2. 瓶颈层Bottleneck Layer / Latent Space): 这是网络的中间层,维度通常远小于输入数据的维度。由于空间有限,编码器被迫只保留对重构原始数据最关键的特征。这个压缩后的表示𝑍就是我们提取的特征。
  3. 解码器(Decoder):将潜在表示𝑍解压缩或重构回原始输入的维度,得到输出数据𝑋′。
训练目标是使重构后的输出𝑋′尽可能接近原始输入𝑋。通过最小化重构误差(reconstruction error,例如均方误差),网络被迫学习数据中最关键、最有代表性的特征,并将这些特征压缩到潜在空间中。

2. 主要用途和应用

自动编码器有多种应用,尤其擅长处理无标签数据:
  • 降维:通过获取编码器生成的低维潜在表示,可以将复杂数据投影到更易于分析或可视化的低维空间。
  • 特征学习:自动编码器可以从原始数据中自动提取抽象且有用的特征,用于后续的机器学习任务(如分类)。
  • 异常检测:由于模型主要学习正常数据的模式,对于异常数据,其重构误差通常会很高。可以通过设定阈值来识别这些异常值。
  • 去噪:通过训练去噪自动编码器(Denoising Autoencoder),可以从受损或有噪声的输入数据中恢复原始的干净数据。
  • 生成模型:变分自动编码器(Variational Autoencoder, VAE)是一种重要的变体,不仅能压缩数据,还能生成与训练样本相似的新数据。
变体
除了基本的自动编码器,还有许多高级变体,例如:
  • 稀疏自动编码器(Sparse Autoencoder):在隐藏层引入稀疏性约束。
  • 堆叠自动编码器(Stacked Autoencoder):将多个自动编码器堆叠起来形成更深层次的网络结构。
  • 卷积自动编码器(Convolutional Autoencoder):使用卷积层处理图像等网格数据。

参考:

1. 机器学习

2.机器学习之决策树

 

posted @ 2025-11-03 11:14  PKICA  阅读(6)  评论(0)    收藏  举报