「進化計算と深層学習」まとめノート 3
第2章 ニューラルネット ー 多層パーセプトロン ー
多層パーセプトロンは、パーセプトロンの収束定理では得られなかった学習、例えば線形分離不可能なXOR関数の学習を行える。
問題設定
入力ベクトル x を第1層めとして、第 n 層における脳細胞に対応する出力値を x_n, それぞれの出力にかかる重みベクトルを w_n として、最終層の出力 y をニューラルネットの予想とする。
ディープラーニングの最終目的はディープラーニングの予想 y と教師データ d の差を最小化するパラメーターを求めることである。差を測る関数は色々ある。
問題の再設定
最小化するといっても、いま最小値を取ったというためには、凸関数だとかメタな知識がない限り無限時間待つことになるので、傾きが0になるパラメーターを求めることで満足しておく。これにより最急降下法という古典的手法が使えて、重みパラメーターの傾きに沿って滑り降りるようなアルゴリズムで更新すれば良いことになる。
ノードの関数の設定
隠れ層
出力層
分類問題の場合:softmax 関数(出力を確率として扱えるので)
ただし、指数計算はマシンパワーを食うので実装しないことも
回帰問題の場合:恒等関数
誤差の測り方
- 2乗和誤差
-
クロスエントロピー関数
出典:
2. ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装