損失関数とは?

Python で学ぶ線形分類器

Michael Gelbart

Instructor, The University of British Columbia

最小二乗法:二乗損失

  • scikit-learnのLinearRegressionは損失を最小化します: $$\sum_{i=1}^n (\text{true} \; i \text{th target value}-\text{predicted} \; i \text{th target value})^2$$
  • 最小化はモデルの係数(パラメータ)に関して行われます。
  • scikit-learnのmodel.score()は必ずしも損失関数ではありません。
Python で学ぶ線形分類器

分類エラー:0-1損失

  • 二乗損失は分類問題には適していません(詳細は後述)。
  • 分類問題における自然な損失はエラー数です。
  • これが0-1損失です:正解予測では0、誤予測では1となります。
  • ただし、この損失は最小化が困難です。
Python で学ぶ線形分類器

損失の最小化

from scipy.optimize import minimize
minimize(np.square, 0).x
array([0.])
minimize(np.square, 2).x
array([-1.88846401e-08])
Python で学ぶ線形分類器

練習しましょう!

Python で学ぶ線形分類器

Preparing Video For Download...