buto > /dev/null

だいたい急に挑戦してゴールにたどり着かずに飽きる日々です

機械学習 損失関数を理解してみる

損失関数とはなんだ?

Kerasでニューラルネットワークモデルを作成して学習・予測したときに lossっていう単語が出てくる lossを損失関数と言う

青点が実績値、赤線が予測値の線(関数) 実績と予測の差は誤差となる 損失関数はこの誤差を小さくするために使う関数のこと

f:id:butorisa:20201020142516j:plain

適切な損失関数を使うとより実績値に近づいた予測ができる

損失関数には「誤差を計算する方法」によって種類がある 私が理解できた2種類はこちら

平均二乗誤差(MSE)

平均二乗誤差 MSE:Mean Square Errorが楽々わかる!回帰モデルの性能評価 実績値と予測値の距離(誤差)を二乗して平均の誤差を算出する損失関数 誤差は+の場合、-の場合どちらもあるので、二乗して絶対値的な誤差を求める 画像の黄色の正方形の面積を求めるイメージ

f:id:butorisa:20201020142531j:plain

平均絶対誤差(MAE)

実績値と予測値の距離(誤差)を平均する損失関数 誤差の絶対値の平均(誤差絶対値合計/実績件数)を求める(こちらの方がシンプル) 平均二乗誤差より誤差が強調されない(外れ値を重視しない)

f:id:butorisa:20201020142545j:plain

損失関数とはを調べると理解できない数式がでてくる… 数学分かりたい…