オートエンコーダの仕組み
入力を低次元の表現に圧縮するエンコーダと、そこから入力を復元するデコーダで構成され、出力が入力と一致するように学習します。正解ラベルを必要としない教師なし学習で、隠れ層の表現は入力の本質的な情報を保った次元削減として使えます。ノイズ除去や異常検知にも応用されます。
積層オートエンコーダと事前学習
深いネットワークの学習が困難だった2000年代後半、ヒントンらは入力層に近い層から1層ずつオートエンコーダとして教師なしで学習して重みの初期値を決め、最後に出力層を付けて全体を教師ありで微調整する方法を提案しました。これが積層オートエンコーダによる事前学習で、ディープラーニングの実現に貢献しました。現在はReLUやバッチ正規化などにより、事前学習なしで深いネットワークを学習できます。
変分オートエンコーダ(VAE)
潜在変数を1点ではなく確率分布(平均と分散)として学習し、その分布が標準正規分布に近づくようにKL情報量の項を加えて学習します。潜在空間が滑らかに整うため、分布からサンプリングした点をデコーダに通して新しいデータを生成できる生成モデルです。
派生モデルとして、潜在変数を離散化するVQ-VAE、潜在変数と入力の相互情報量を考慮するinfo VAE、KL項の重みを調整して潜在変数の各次元を解釈しやすくするβ-VAEがあります。
試験で問われる観点
- オートエンコーダは教師なしで入力を再現、次元削減
- 積層オートエンコーダの事前学習の手順
- VAEは潜在変数を分布として学習し生成に使える
- VQ-VAE(離散化)、β-VAE(KL項の重み)