[ディープラーニング] 損失関数

About

ニューラルネットワークの表現能力を利用して回帰問題、クラス分類問題など多くの問題を解くことができます。

キーワード

  • 訓練データ (training data)
  • テストデータ (test data)
  • 誤差関数 (error function) /損失関数 (loss function)

ニューラルネットワークの表現能力

ニューラルネットワークは重み及びバイアスの係数によって特徴づけられる関数です。
すべての係数を順番に並べたベクトルを \(\mathbf{w}\) とし、ニューラルネットワークが表現する関数をパラメータ \(\mathbf{w}\) によって特徴づけられることを強調して \(f(\mathbf{x};\mathbf{w})\) と表します。
係数 \(\mathbf{w}\) 次第でニューラルネットワークは様々な関数を表現することができます。

目標関数と損失関数

ニューラルネットワークで表現したい関数を目標関数 (object function)といいます。
学習とは、ニューラルネットワークの表現する関数を目標関数に近づけることです

\[f(\mathbf{x};\mathbf{w}) \approx f^*(\mathbf{x})\]

そのためには現在の関数が目標関数とどのくらい乖離しているかを図る誤差関数 (error function) または損失関数 (loss function) が必要となります。
この損失関数は問題によって異なりますが、目標関数とピッタリ一致すれば \(0\) となり、目標関数から離れているほど大きな値になる関数が望ましいです。
そして、学習の過程で、損失関数の値が小さくなるように係数 \(\mathbf{w}\) を調整していきます。

参考文献

  • 岡谷貴之、深層学習 (機械学習プロフェッショナルシリーズ)、講談社、2015、P10 (2.4 出力層の設計と誤差関数)
  • 斎藤康毅、ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装、オライリー・ジャパン、2015、P83 (4 ニューラルネットワークの学習)
  • 岡谷貴之、深層学習 Deep Learning (監修:人工知能学会)、近代科学社、2015、P142 (4.5 活性化関数)

Web上の資料

コメントを残す

メールアドレスが公開されることはありません。