暇人日記

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

Week2の課題(家の値段)をNeural Networkで解いてみる-後編⑦-Pythonとの予測の比較

Neural Networkでの予測の精度はLinear Regressionの精度を上回ることができました。

 

PythonにもLinear Regressionの予測を行う機能があります。

こちらと比較したいと思います。

 

色々読みこみまして↓(私のうけたオンラインレッスンではおまじないと呼んでいました)

f:id:omoshiroamericanews:20200728214925p:plain

dataをtrainとして読み込みます↓

f:id:omoshiroamericanews:20200728215040p:plain

head関数で中身を確認します↓

f:id:omoshiroamericanews:20200728215149p:plain

 

describe関数でデータの情報を再度確認します。

f:id:omoshiroamericanews:20200728215219p:plain

info関数でデータの型を確認します↓

f:id:omoshiroamericanews:20200728215254p:plain

 

1行目と2行目を予測要素と設定します↓

f:id:omoshiroamericanews:20200728215403p:plain

 

ちゃんと1行目と2行目が取り出されているか確認します↓

f:id:omoshiroamericanews:20200728215635p:plain

 

予測結果をyと設定します↓

f:id:omoshiroamericanews:20200728215750p:plain

 

Linear Regressionの予測をするための設定をします↓

f:id:omoshiroamericanews:20200728215902p:plain

 

単回帰で傾きを取り出せます↓

f:id:omoshiroamericanews:20200728215932p:plain

 

切片を取り出します↓

 

f:id:omoshiroamericanews:20200728220205p:plain

 

予測します↓

f:id:omoshiroamericanews:20200728220233p:plain

 

予測結果です↓

f:id:omoshiroamericanews:20200728220308p:plain

 

Octaveで比較したいのでnumpy.ndarray型になっているのをcsvにするために

処理します↓

f:id:omoshiroamericanews:20200728220408p:plain

 

csvファイルにします↓

f:id:omoshiroamericanews:20200728220541p:plain

 

Octavaに取り込みます↓

f:id:omoshiroamericanews:20200728220639p:plain

 

↓に基づいて誤差を計算します。

f:id:omoshiroamericanews:20200728220703p:plain

f:id:omoshiroamericanews:20200728220746p:plain

 

Neural Networkの誤差です。

f:id:omoshiroamericanews:20200728221147p:plain

 

Overfitの可能性はありますが、Neural Networkの方が精度が出ています。

 

ちなみにWeek2のLinear Regressionでの誤差は

f:id:omoshiroamericanews:20200728221257p:plain

だったのでPythonと同じ結果でした。

 

今回はここまでです。また次回頑張ります。