オートエンコーダーとは
オートエンコーダー(Autoencoder)は、入力データを低次元の潜在表現に圧縮し、その潜在表現から元のデータを再構成するように学習するニューラルネットワークです。エンコーダー(符号化器)とデコーダー(復号器)で構成され、教師なし学習の代表的な手法の一つです。データの次元削減や特徴抽出に広く使用されています。
オートエンコーダーの種類
基本的なオートエンコーダーの他に、スパースオートエンコーダー(潜在表現にスパース性を課す)、デノイジングオートエンコーダー(ノイズを加えた入力から元のデータを復元)、コントラクティブオートエンコーダー(潜在表現の安定性を重視)など、さまざまな変種があります。これらはそれぞれ異なる正則化を導入することで、より有意義な潜在表現の学習を促進します。
ボトルネック構造
オートエンコーダーの核心はボトルネック層(潜在層)にあり、入力よりも低い次元に圧縮することで、データの本質的な特徴のみを保持するように学習が促されます。このボトルネックがなければ、ネットワークは恒等写像を学習するだけで有意義な特徴抽出が行われません。適切なボトルネックの次元数の選択が、性能に大きく影響します。
現代における位置づけ
オートエンコーダーは異常検知(正常データで訓練し、再構成誤差の大きいデータを異常とみなす)、データの前処理、画像のノイズ除去など、実用的な応用が多くあります。VAEへの発展により生成モデルとしての能力も獲得し、Latent Diffusion Modelの一部としても活用されています。最近ではMasked Autoencoderが自己教師あり学習の手法として注目を集めています。