暇人日記

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

Coursera Machine Learning Week2 課題 2周目⑤ -苦闘記憶- Predict

今回は前回計算した結果でてきたthetaを用いての予測です。

ここが一番大事なはずなんですが、よくcostfunctionとthetaを計算したら

満足している私がいました汗

本当はJを用いて最少誤差になる予測パラメーターθを導き出しているので、

予測を表現することが実務では大事なはずです。

 

今回は予測で2つ行います。

1つ目は問題文に書かれているこの部分です↓

f:id:omoshiroamericanews:20200103153713p:plain

導いたθを基に人口35,000人と70,000人の町ではいくらの

利益が出るか答えなさいということです。

 

四角で囲われている部分で[1,3.5]となっている3.5が35000人を示していると

思います。なぜならX,yのグラフを作った時にも人口はin 10,000というように

10,000で割った値を示されていたからです↓

f:id:omoshiroamericanews:20191225143332p:plain

 

利益も同じく10,000で割られているので、

結果に10,000をかけた数が利益予測になります。

 

f:id:omoshiroamericanews:20200103154741p:plain

 

結果です↓

f:id:omoshiroamericanews:20200103154854p:plain

 

人口35000人の場所のFood Truckの利益予測は4500$で

人口70000人の場所のFood Truckの利益予測は45300$ということです。

 

人口は2倍なのに利益は10倍と大きな差が出ました。

 

この予測がSampleと見比べて妥当なのかを見てみたいと思います。

そこで問題文にも書いてあった↓を行ってみたいと思います。

f:id:omoshiroamericanews:20200103150439p:plain

Sampleの分布に予測線を引くということは

予測が妥当かみるのに一番の手段だと思います。

(2次元の時しかグラフは作れませんけど)

 

予測線をいれるのはこういう式↓がはいってました。

f:id:omoshiroamericanews:20200106120501p:plain

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

 

X(:、2)は↓のようにとってきているということですね。

X*thetaが予測値だから、それをY軸に表現しているということですね。

 

f:id:omoshiroamericanews:20200106121405p:plain

 

そうすると見事な予測線が得られました。

f:id:omoshiroamericanews:20200107104334p:plain

3.5の人口は写ってませんが、このグラフの目盛り1(=$10000)より

小さくなりそうです。$3000くらいになりそうですね。

7の人口は目盛り5近辺なので$45000も納得な感じです。

 

しかし疑問があります。

 

f:id:omoshiroamericanews:20200107104840p:plain

f:id:omoshiroamericanews:20200107105054p:plain

f:id:omoshiroamericanews:20200107105128p:plain

 

続いて本論とはずれますが、グラフ操作でhold on とhold offが

気になったので実験してみました。

 

f:id:omoshiroamericanews:20200107105309p:plain

 

f:id:omoshiroamericanews:20200107105346p:plain

 

 

f:id:omoshiroamericanews:20200107105432p:plain

 

f:id:omoshiroamericanews:20200107105713p:plain

 

f:id:omoshiroamericanews:20200107105525p:plain

やっぱりhold off機能については???が多いです。。。

 

予測線はかけたので今回はここまでにします。

また次回頑張ります!