暇人日記

アラフォーおっさんのコーセラの機械学習の課題を解こうと頑張っています!

Coursera Machine Learning Week7 課題 苦闘日記③

今回も前回に引き続きdataset3Params.mに取り組んでいます。

 

 

f:id:omoshiroamericanews:20191122113032p:plain

 

前回の宿題が

 

①56.5%の精度しかないすべて1という境界線をグラフで表現すること

 

②ValidationSetを評価しているのに、SVMの元データがX,yでいいのかということ

 

この2つだったのでこれに今日は取り組みます。

 

①は境界線の計算はもう終了しているのでグラフの軸を

 いかにかえるかというOctaveの基本操作ですね。

 

では式を見てみます。

グラフはこの式で描かれています

  

f:id:omoshiroamericanews:20191104102238p:plain

 

具体的な中身がこれですね。

f:id:omoshiroamericanews:20191104110637p:plain

(出典;『Coursera Machine Learning』 By Mr. Andrew Ng)

 

分布図のグラフに境界線を追加するという2段構えなので、

軸に関係しそうな項目が2つありますね。

Plot Dataのグラフを作成して、境界線を追加するという仕組みなので

赤で囲った箇所を追加してPlot Dataの軸を変更してみます。

 

f:id:omoshiroamericanews:20191104110952p:plain

 (出典;『Coursera Machine Learning』 By Mr. Andrew Ng)

-10から10の範囲にX軸もY軸も変更します。

f:id:omoshiroamericanews:20191104111256p:plain

軸が変わりました!

ちょっと大きくしすぎで分布図がまるでみえないので、

もう少し小さくして-2から2の範囲にX軸もY軸も変更します。

ちなみに境界線も見えていない状況です。

f:id:omoshiroamericanews:20191104111654p:plain

-2から2へ変更しましたが、依然境界線が見えません。

 

私の推定では下のグラフのように

こういう線が入って200個中113ある「0」が

全てErrorなのかと予測していたのですが、

その線が出てきません。。。

f:id:omoshiroamericanews:20191104112057p:plain

 

ふっとErrorの数はPred56.5%の倍の113個であってることを

確かめようと思いました。

 

f:id:omoshiroamericanews:20191104112403p:plain

 

あれ!?そもそもXは211でXvalは200です。

今までのグラフはXの数211についてのグラフです。

 

PredValidationSetXvalについての予測だから、

グラフの○の数とは関係ないんだ、と気づきました。

 

自分でグラフの〇の数113とか言い出したから、

少しハマってしまいました。

 

境界線がどこに入るかは64通りの考察の後に

することにしました。

64通りしたときに56.5%の線が他にも

あるのではないかと思ったのがその理由です。

 

結局宿題の①は考察したものの未解決、②は手つかずですが

明日行うことにします。