この記事は、以下の@icoxfog417さんによる問題提起に合わせたちょっとした実験をまとめたものです。
時系列予測の問題において、機械学習のモデルより既存の統計モデル(ARMAモデルなど)の方が予測精度において優良な結果が出るという研究。データへの適合=予測精度の向上ではないことも実験で示している。機械学習の研究では統計モデルとの比較も入れるべきという提言をしている。 https://t.co/jboGhYSX6E
— piqcy (@icoxfog417) September 16, 2019
この点について僕はこんなコメントをしたのですが。
だいぶ以前から「一般的な時系列データ予測の問題は単位根過程や季節調整など非定常過程との戦いなので、本質的に定常過程を想定する機械学習手法での予測は計量時系列分析など非定常過程も考慮した古典的なモデルによる予測には及ばない」と言い続けてきたけど、やっぱりそうなのかなという感想
— TJO (@TJO_datasci) September 16, 2019
この手の「一般的な時系列データには機械学習は向かない」論は過去何度か断片的にしてきてはいるものの、そう言えばまとめて論じたことはなかったなと思ったのでした。そこで、今回の記事では何故一般的な時系列データを機械学習で扱うのが難しいのかについて、簡単にまとめてみようと思います。
なお、いつもながらですが記事中で用いているR / Stan実装が途方も無いクソコードである点何卒ご容赦くださいm(_ _)m 加えて、理論的なポイントについてもやはり抜け漏れや理解不足などあるかと思いますので、お気付きの方はバンバンご指摘下さると有難いです(多分もっとしっかりとした確率過程の理論的背景なども踏まえた論文とかどこかにあるのではないかと思うのですが、僕には手が出ないレベルなのでここでは割愛します)。
また、僕自身はDeep Learningでもよく時系列データに対して使われるRNN系統の手法は不案内で、正直言って適切な実装が出来る自信がありませんので、今回はDeep系の手法は割愛し、代わりに枯れた理論&実装で知られるランダムフォレストを機械学習サイドの代表例として取り上げることとしました。ただしもしかしたら以下に指摘した問題点に対してロバストに良い結果を返すRNN系統の手法があるかもしれませんので、予めお断りしておきます。
続きを読む