自己符号化器と主成分分析による次元圧縮


はじめに
次元圧縮手法として自己符号化器と主成分分析を実装しました.
教科書として『深層学習』と『はじめてのパターン認識』を使いました.
本記事の構成
はじめに
自己符号化器
主成分分析
2つの手法の関係
pythonでの実装
auto encoder
PCA
結果
おわりに
自己符号化器
自己符号化器(auto encoder) とは,入力を訓練データとして使い,データをよく表す特徴を獲得するニューラルネットワークです.
教師データを使わない教師なし学習に分類され,ニューラルネットワークの事前学習や初期値の決定などの利用されます.
では,自己符号化器の説明に移ります.
以下の図に示すような3層のネットワークを考えます.活性化関数は恒等写像関数 $g(a) = a$ です.
中間層のユニットの値 $z_j$ および出力層のユニットの値 $y_k$ は,入力を順伝播させることで求められます.
begin{align}
& z_j = sum_i w_{ji} x_i \
& \
& y_k = sum_j tilde w_{kj} z_j
end{align}
中間層のユニットの値を並べたベクトルを $boldsymbol z$,出力層のユニットの値を並べたベクトルを $boldsymbol y$,
$w_{ji}$ を $( j, i )$ 成分に持つ行列を $boldsymbol W$ とすると以下のように表記できます.
begin{align}
& boldsymbol z = boldsymbol W boldsymbol x \
& \
& boldsymbol y = boldsymbol{tilde W} boldsymbol z
end{align}
中間層 $boldsymbol z$ への変換を 符号化,出力層 $boldsymbol y$ への変換を 復号化 と呼びます.
自己符号化器では,復号化された $boldsymbol y$ が,入力 $boldsymbol x$ に近くなるように学習を行います.
中間層のユニット数が入力次元よりも小さく,入力を再現できれば,次元を圧縮できたことになります.
詳細な学習方法については『pythonでニューラルネットワーク実装』を…この記事の続きを読む

AINOW
人工知能専門メディアAINOW(エーアイナウ)です。人工知能を知り・学び・役立てることができる国内最大級の人工知能専門メディアです。2016年7月に創設されました。取材のご依頼もどうぞ。https://form.run/@ainow-interview
サイト名: Qiita - Python

無料メールマガジン登録

週1回、注目のAIニュースやイベント情報を
編集部がピックアップしてお届けしています。

こちらの規約にご同意のうえチェックしてください。

規約に同意する


Leave a Reply

Your email address will not be published.