自己符号化器と主成分分析の関係について解説!

前書き

解説というか参考になる記事をかき集めただけの備忘録です。

自己符号化器(Auto Encoder)とは

f:id:electric-city:20200925225244j:plain
出典:https://deepage.net/deep_learning/2016/10/09/deeplearning_autoencoder.html


教師データを持たない入力のみの訓練データの特徴を抽出します。
入力データを符号化・復号化をして、出力が入力を忠実に再現する自己符号化器を求めます。

lionbridge.ai

以下の線形変換が存在するとき、
zはxによって決定する符号となります。
入力xに対して、出力zは符号化(Encode)と呼びます。

z=f(Wx+b)

入力zに対して、出力x'は復号化(Decode)と呼びます。

x'=f'(W'z+b')

入力の段階では4次元で存在していたのを、一旦2次元に落としてから、
また4次元に復号させています。

符号化(Encoder)部分では以下のような線形写像となっていて、
入力層のユニット数>中間層のユニット数が一般的です。

z=f_1(W_{(1)}x+b_{(1)})

W_{(1)} → W_{2×4}

b_{(1)} → b_{1×2}

ここで入力層→中間層にかけて次元削減(データの次元数を減らす)をしている事がわかりますね。

qiita.com

上記の記事は次元削減と主成分分析の関係性に詳しく書かれています!

主成分分析(Principal component analysis)との関連性

主成分分析(PCA)を一言で言うと、多数の変数を統合し、少数の項目で表現できるようにまとめます。

多数の変数を強く表現するベクトル軸を生み出し、少数のベクトル軸で表現します。

以下の記事では主成分分析を一通り簡単に理解できます。

次元削減とはの解説
→PCAの概要をわかりやすく
→PCAのアルゴリズム(共分散・固有値固有ベクトルの理解必須)
→多数の変数を強く表現するベクトル軸への射影
→どこまでの次元削減を良しとするかの検定

bdm.change-jp.comqiita.com


数学的理解を深めたいけどわかりやすく習得したい方へ

www.hellocybernetics.tech

そこで重要になる固有値の概念

以下のサイトの具体例の章では、固有値ってなんだけを感覚的に理解できます。

oguemon.com