はじめに
この記事はゼロから作るディープラーニング 5章ニューラルネットワークの学習を自分なりに理解して分かりやすくアウトプットしたものです。
文系の自分でも理解することが出来たので、気持ちを楽にして読んでいただけたら幸いです。
また、本書を学習する際に参考にしていただけたらもっと嬉しいです。
交差エントロピー誤差とは
分類問題を解くためのニューラルネットワークの損失関数として使われる関数です。
実際に行われている処理を軽く説明すると、出力層のsoftmax関数から出力された値をネイビア数で指数計算したものに正解データを掛け、それの総和にマイナスをつけます。
言葉で説明するのは理解しにくいので図と数式で表してみます。

tが正解データ zが予測データ

では実際にpythonで実装してみます。
# 交差エントロピー誤差 tが正解データ yが予測データ
def cross_entropy_error(t,y):
delta = 1e-7
return -(t * np.log(y + delta)).sum()
cross_entropy_error(t,y)
0.3566748010815999
予測データに1e-7を足してあげる事で予測データが0の時にエラーが起きてしまうのを防ぐことができます。