自己符号化器(オートエンコーダー)は、入力データを一度圧縮し、それを元のデータに復元するように訓練するニューラルネットワークです。教師なし学習の一種であり、データの次元削減や特徴量抽出、ノイズ除去などに広く用いられます。中間層の「潜在変数」と呼ばれる低次元表現を通じて、データの本質的なパターンを捉えることができます。
自己符号化器とは
自己符号化器は、入力されたデータを一時的に低次元の特徴空間に圧縮したのち、そこから元のデータを再構成するように学習するニューラルネットワークの一種です。
詳しく解説
自己符号化器は、入力データを圧縮する「エンコーダー(符号化器)」と、圧縮されたデータから元の入力を復元する「デコーダー(復号化器)」の2つの部分から構成されます。この中間にある、最もデータ次元が小さくなった部分をボトルネックと呼び、ここで得られるデータを潜在変数と呼びます。正解ラベルを必要としない教師なし学習によって、入力と出力が可能な限り同じになるように重みを最適化します。これにより、データに含まれる冗長な情報が削ぎ落とされ、本質的な特徴だけを抽出する次元削減が実現します。深層学習の発展期には、積層自己符号化器による事前学習が精度向上に大きく貢献しました。
具体例・使われ方
具体的な利用例としては、画像や音声の「ノイズ除去」があります。ノイズの混ざった入力を自己符号化器に通すことで、本質的な特徴のみを再構成し、ノイズが消えた綺麗なデータを出力できます。また、正常なデータのみを学習させることで、そこから大きく外れた復元誤差を持つデータを検出する「異常検知」や、高次元のデータを可視化・分析しやすくするための次元削減にも活用されます。
似た用語との違い
自己符号化器と混同されやすい代表的な手法に主成分分析があります。主成分分析は線形な次元削減を行うのに対し、自己符号化器は活性化関数を用いることで非線形な次元削減が可能です。これにより、主成分分析では捉えきれない複雑なデータの幾何学的構造や相関関係を、ニューラルネットワークの柔軟性によって表現することができます。
注意点
自己符号化器の注意点として、中間層(潜在変数)の次元が大きすぎると、データを単にそのままコピーして出力するだけの「恒等写像」を学習してしまい、有効な特徴抽出ができなくなる点があります。また、学習データに偏りがある場合、未知のデータに対して適切に復元できなくなる過学習のリスクも存在します。