そんしつかんすう


機械学習では,予測データをモデルに通すと予測値が算出される.このとき,損失関数は予測値が目標データと一致するか否かを定量的に示す.
WWWを入力してclassのscoreを決定し,損失関数によりscoreの大きさを定量的に決定できる.

損失関数マルチクラスSVM損失



上記の数式を解くと以下のようになります.
  • syis{yi}syi=目標値iの予測得点
  • sjsj=目標値を除く
  • +1+1+1=仮想マシンを最適化するためのオフセット値
  • 000=損失値が負を超える場合、最大値は
  • に置き換えられる.

    猫のイメージを入れるとcatの得点値は3.2,carの得点値は4.9,frogの得点値は-1.7となる.高ければ高いほど、このモデルのW表示でテスト列車が食べれば食べるほどいいです.
    catのlossを上記の式で確認し、以下に示す.
    max(0, 5.1 - 3.2 + 1) + max(0, -1.7 - 3.2 + 1)
    = 2.9 + 0 = 2.9
    他にも計算するとcarは0、frogは12.9の損失です.
    これによりモデルの損失値確率のみが測定される.

    では、3人とも学習損失0のモデルに調整すればいいのでしょうか。


    訓練には向いていない.

    青の円形はtrain、緑がtargetデータの場合のグラフです.
    青い円を参照してlossをゼロにしてフィットすると、後でtargetデータでモデルを学習する際に、オーバーフィットは大きな損失率をもたらします.
    そのため,グリーンラインを理想的な指向点とし,試験した列車の適切な損失を考慮する必要がある.

    だから.λR(W)\lambda R(W)λR(W)の正規化(正規化、拘束)を追加する必要があります.
    ここにいるよλ\lambdaλの値が高く、モデルが簡単で、フィットしない危険があり、値が低く、フィットした危険がある.

    Regularization


    拘束の方法はいろいろありますが、L 1、L 2が最もよく使われています.
    L 1は重要な重みのみを保持し、小さな重みは0に収束し、L 2は重みを0に近いものに誘導し、すべて考慮する特性を有する.

    損失関数Softmax Classifier


    各スコアを指数化して正数にし,正規化によりすべてのスコアの和を1にする確率.そして目標得点にlog-logを加えて損失を定量化する.

    両者の区別


    SVMは正解と誤点数の差を超えていればあまり気にならない.
    Softmaxは正解と誤点数の意味を数値化する.また、正解の点数を上げ続けたいという特徴もあります.
    リファレンス映像
    Stanford University CS231n, Spring 2017 | Lecture3