初心者のコロナ予測追加改良!? コーセラのNeural Networkをベースに予測
前回の日記でコロナ予測を人出指数なるものを作成して、
NeuralNetworkに放り込んで予測してみました。
この時はTraining set期間の3/11-4/22の累計精度はほぼ100%ですが、
その予測線を4/23-5/5でみるとどう見ても当たってなさそう・・・
というものでした↓
この時に考えたこうなった原因は、3/11-->5/4の期間で
人出指数は減少していき、コロナ感染者数は逆に増えていくので、
反比例の関係を成立させるパラメーターはないんだろうなと思いました。
人出指標とコロナ感染者数の数字↓
対処法としてはもう1つもう2つ特徴量を増やすしかないので、
1つアイデアが出ました。
人出指標は2週間前の人出の影響を受けるということにしましたが、
何週間前の人出の影響を受けていそうかも
Neural Networkに重みづけしてもらおうと思いました。
こういう感じです↓
そして人出指数もコロナ感染者数も過去7日間平均にしてみます。
具体的な数字です↓
予測してみました↓
前回とおなじような傾向です。。。
4/22までのTraining Setの精度は良いんですけど延伸した部分がダメ、
というのは前回と同じですね。
データ数が少ないのが原因かもしれないと考えたので、
前回は5/3までのデータでしたが次は5/15までのデータでやってみます。
3/11-5/3をTraining Setとして予測してみました↓
同じような傾向です。
5/3までの累計数は青線と赤棒グラフの累計はほぼ同じです。
しかし、前回より下手すると青の予測線の5/4以降の精度は悪そうに見えます。
一度5/15まで全ての期間の精度を求めに行ったときに青線が
どれくらいFitするか見てみたいと思います。
予測してみました↓
3/11-5/15の累計新規感染者は赤棒で4835人で、
青の予測線の累計は4815人です。
累計では精度が出てますが5/3-5/15の期間の青線と赤棒グラフは
大きく外れているといえます。
一度、機械学習がうまくいくかどうか判断するために
Train ErrorとTest ErrorをみてOverfitかUnderfitかを決めて、
改良策を考えたいと思います。
今回行ったことで分かったのは累計の精度はでているが、
日別の精度が出ていないため、将来機関の予測が外れているということ
だと思います。
Neural NetworkよりLinear Regressionの方が精度がいいのかもしれません。
次回トライしてみます!