ゼロから作るDeepLearning第四章 前半

画像

内容

ニューラルネットワーク

ニューラルネットワークはたくさんのデータを駆動に機能する。

機械学習は特徴量を人間が選ぶ必要があるが、ニューラルネットワークはそれごとすべて完全にNNにやらせてしまう。
こわいね。
よって、ブラックボックス(こわい

損失関数

ニューラルネットワークの学習には$2$通りの目的関数を使う。

1つ目は二乗和誤差。
2つ目は交差エントロピー関数。

交差エントロピー関数は、二条和誤差とことなり、ラベルのところだけを利用する。
そして、二条和誤差と異なり、より強調して異なるときはエラー値が大きくなる。

数値微分

損失関数の微分を使って、その微分値にマイナスをつけたもので
パラメータを更新する。

ただし、プログラミング上だと実際に微分することはできないので
数値微分をする。

$(f(x+h)-f(x)) / 2h$で計算できる。
(hは0.0001ぐらいにするのがベストらしい)

偏微分

入力は、基本的には多次元になっている。
よって、各次元ごとに少しずつ変化させて重みパラメータ$W$を更新していく。
このとき、変化させる以外の入力$x$は固定し、変化させる部分だけ変えるようにしよう
(関係ないものは定数と考えるのが偏微分なので)