Coursera Machine Learning Week5 課題 2周目① Cost Function VIDEO振返り
Week5はかなり難しく苦労した記憶がありますのでまずVIDEOから振り返ります。
Video①Cost Function
Cost Functionの説明がきました。
予測式-->Cost Function-->Gradient-->最適θ-->予測
というのが機械学習の黄金パターンなので
Week4では計算しなかった最適θの計算方法の説明につながっていくと思います。
Week2のLinear RegressionとWeek3のLogistic Regressionでは
予測式-->Cost Function-->Gradientは
↓のようになっていました。
これ↑にNeural Networkを足せれば、自分が理解できたような
気になれそうです!
さてNeural NetworkのCost Functionですが、
Logistic RegressionのCost Functionが複数足しあわされたもの、
ということであっさり説明されます↓
確かに式の前半↓はLogistic Regressionの式と似ています。
ので上下並べてみます。
上がNeural Networkで下がLogistic Regressionです。違いを赤丸で囲ってみました。
KはWeek4の課題のようにOutput Layerが複数ある時に場合分けのKパターンについて
足し合わせる必要があるということを意味していると思います。
抽象的で分からないので、具体的にWeek4の課題でK=10のときを考えてみます。
Cost Functionで検証したいのはK=10の予測の時の精度になります。
実Sample;Yは5000X1のベクトルで最初の方は10ということは
Week4の課題でみてきたので、絵としては↓のようになるかと思います。
K=10の予測の赤枠の部分は青の点線枠で囲ったところは1で、
囲まれてないところは0だったら精度が高いことになります。
とすると、実SampleもK=10の時は10の箇所は1で10以外の箇所は0になっているのが
良いと思いました。(何もしないと1やら2やら3やら4やらの数字が入っています)
これは前回の日記でやりました↓
Coursera Machine Learning Week4 課題 2週目③ -苦闘記憶- One vsALL① - 暇人日記
やるとこういう感じになるはずです↓
この上の絵↑の右がで5000X1になると思います。
はK=10とすればK=10の時の5000X1の予測かと思います。
これでこの式↓の構成がわかったような気がします。
の5000X1との5000X1で計算できそうです。
そしてK=1~10みたいにLoopの計算になりそうです。
Reading Partに
とありました。
確かにSimpleにdouble sumという考えはシンプルですね。
次に後半部分を考えます。
Andrew先生は見た目は難しいけど簡単といっていますが、そんなことないです。
十分難しいです。
θの右肩と右下の数字が何を示しているかは
前回の日記で考えていました↓
これ↑と今回のCostFunctionの関係を色付けすると↓になります。
赤丸、緑丸、青丸の3つに分かれます。
赤丸のLayerは分かりやすいです。
θのLayerは各Layerの間にあるので、↓の例だったら『3』Layerなので
一般化して『L』Layerあるときはθは『L-1』Layerということだと思います。
次に緑丸のiを考えます。
Week4で左の構造のときに、θを全部書くと右になるということを書いていました↓
iは右下の1の位で0から3までありますが、0はBiasでX0に対応して足したものだから、
削ります。ということでi=1からSlの合計になっていて、意図的にi=0が外されていると思います。
次は青丸ですが、10の位が計算結果になるaのlayerの中の位置に対応しているので
計算結果になるaのLayerの数ということになります。
計算結果になるLayerがsl+1で表現されているのではと思います。
赤丸、緑丸、青丸は参照している場所が一緒ではなく
下のようにバラバラになっていると思います。
だから青丸は計算結果になるLayerがsl+1で表現されているのではと思います。
こういう表し方↓もあると思います。
θは上の図で表されますが赤丸、緑丸、青丸で表現された場所を
点線で囲ってみました。
見事に右下の1の位が0のものが除外されていて、
これはBiasに対するθで外すべきものです。
というわけでまとめ表にNeural Networkを足すと、
になります。
今回はここまでです。また次回頑張ります!