今回はRegularized↓に取り組みます!
前回まとめた相関図ではCostFunctionのVideoだけが参考になっているはずです。
Regularizedが何かといえば↓の式です。
この式がプログラミングできれば終了です。
Coursera Machine Learning Week5 課題 2周目① Cost Function VIDEO振返り - 暇人日記
前回の日記を書いたときに↓が問題でイメージできれば
解けるんじゃないかと思いました。
それでは問題文を読んでみます。
重要ポイントはlambda=1だったらJが0.383770になるということです。
0.383770をターゲットにします。
もう1つは赤丸で囲った部分です。
の一般式と違います。
θが2つあるのはLayerのLを分けているからだと思います。
一般式
では一番左のΣでLayerも1つの式にしていましたが、
問題文はLayerを分けていると思います。
なのでθは2つあって、ΣでLがついているものがないと思います。
↑の方がイメージしやすいので、こちらで考えてみます。
まずTheta1とTheta2の確認です。
絵としては↓の場所にあります。
サイズはOctaveでもこの表↑のとおり、と思ったら
縦横が逆ですね。
今回削除しなくてはいけないのは
Theta1では401のうちの1つ、Theta2では26のうちの1つです。
なぜならBiasを足していて400-->401、25-->26と予測の精度を向上させるためだけに実在しない行を足しているからです。
Theta2で考えてみます。
Theta2の形を絵にすると↓になります。
そして26のうち1行目がいりません。
削ると10X25のサイズになります↓
サイズが10X25になったので、θは合計250個
もともと問題に示されていた式↓のTheta2も10X25で250個なので、
これを要素ごとに2乗すればいいことになります。
10X26から1行目を削って10X25にする方法について
小実験してみます。
(:,2:end)を利用すれば1行目だけを削除できることがわかりました。
要素ごとに2乗して↓
合計を足して↓
完成ですね。
これをTheta1とTheta2でやったらJが0.383770になりました!
今回はここまでです。次回はBackpropagationに取り組みます!