こんにちは。グラフィックファシリテーター®やまざきゆにこです。

【NRIプレゼンツ☆知っておきたいデータサイエンス用語】

野村総研 未来創発センターデータサイエンスラボ」さまの新しい取り組み NRI「データサイエンス用語」の解説動画(絵巻物)第12弾がYouTubeアップされました。今回は「時系列分析」のライブラリを使いこなすためにまずは「概念」を理解しておこうです。

こんな方にお薦め
時系列データ…毎日・毎時・毎分…送られてくるけど活用できていない
・Python(パイソン)で時系列分析のライブラリを動かしているけれど、上手く使いこなせてない。
・Prohet(プロフェット)にお任せ状態…でも実は背景や考え方はよく分かってないまま使ってる。

今はPython(パイソン)で簡単に動かせるライブラリが充実していて、勝手に計算してくれるから数式を覚える必要はないけれど、概念だけはしっかり理解しておこうね。というのが今回の動画のメッセージです。

↓動画はこちら

↓用語解説「時系列分析」はこちら
https://www.nri.com/jp/knowledge/glossary/lst/sa/time_series_analysis

動画のポイントは以下↓静止画で、わたしのメモとあわせて、ぜひ押さえてください♪大きく5つの章に分けて制作しました。

01 説明変数xiが分からなくても目的変数yだけで回帰分析できちゃう「時系列分析」をうまく活用してないなんて、もったいない
02 そもそも「時系列データ」を分析するとは?

  おさえておこう。時系列分析の基本の基本3つの変動要因」
03 未来を予測するために、時系列データから規則性を見出して数式=関数=モデルで表したい
04 時系列分析のライブラリを使うのに知っておきたい基本の5つのモデル
05 
なんだかんだいって今はいちばん人気のProhet(プロフェット)って?

まずはイントロ↓

01 説明変数xiが分からなくても目的変数yだけで回帰分析できちゃう「時系列分析」をうまく活用してないなんて、もったいない

回帰分析といえばy売上=x1、x 2、、、、天気、湿度、曜日、、、と説明変数が必要だと思い込んでいたら、なんとyだけでも式がつくれてこれも回帰分析と言うのだそう。例えば、今の売上を過去の売上だけで式が表現したり。解説してくださったデータサイエンティストSさんの「今の自分を過去の自分だけで表現できる」という表現がなんだかステキと思いながら、絵巻物動画に過去の自分(若かりし頃の侍姿の自分などなど…)をこっそり描いておきました。

02 そもそも「時系列データ」を分析するとは?
  おさえておこう。時系列分析の基本の基本3つの変動要因」

いちばん上の時系列データのグラフの波形=折れ線=上下の揺れ=山や谷やギザギザの「変動」が、どんな要因でを生まれたのか?それは次の3つの視点で「分解」することで、具体的な変動要因が見えてくるのだそう。(個人的にはこの3つと言いきっちゃっていいということが衝撃だった…)

①長期変動要因(トレンド) ②季節変動要因(周期性) ③不規則変動要因 

たとえば、①長期変動要因とは、たとえばいちばん上の波形だけ見て「今月のアイスの売上さらに10個、やったー!」と喜んでも、もともと右肩上がりな①長期トレンドが隠れていたとしたら、その係数をかけてあげて長期変動要因を取り除くと「もっと売れなくちゃおかしいよね」という事実が明らかになりツッコまれるというワケです。もちろん①長期変動要因が右肩下がりだったり、変動しない(係数0)なら「よく売れてるね」なのですがさらに他の要因も見ていくわけですね。アイスの夏の売り上げが冬の2倍なら「②季節性による」と言えるから「夏係数」をかけて季節変動要因を取り除いていく。などなど。これら係数も、昔は人間が考え計算していたけれど、優れたライブラリの登場でそれも必要なくなったそう。

とにかく、この3つの視点で変動要因に「分解」して、それらの要因を取り除いていくことで、結果的に本来の要因を精度高く分析できるということなのですが、さてここで改めて、そもそもどうして「分解」したかったんでしたっけ?というのが下の絵。

03 未来を予測するために、時系列データから規則性を見出して数式=関数=モデルで表したい

時系列データを分析することでやりたいことは2つ。

1、これまでの波形はどんな変動要因で構成されているのか
2、それが分かれば、それをもとに、未来の波形を予測したい。

そのためにも、この時系列データのこれまでの波形に、規則性を見出して数式=関数=モデルで表したいわけなのですが、それらモデルがすでに用意されているライブラリが充実している今の時代。

なんとなく使うこともできるけど、基本の5つのモデル(数式)の「考え方」さえ理解しておくとライブラリを使ううえですごく役立つよ。というのが今回のメインコンテンツです。

04 時系列分析のライブラリを使うのに知っておきたい基本の5つのモデル

①ARモデル②MAモデル③ARMAモデル④ARIMAモデル⑤SARIMAモデル ↓画像をクリックすると拡大します。

優れたライブラリが充実している今、ライブラリを使いこなすうえで、分析したい時系列データに「どのモデルを使うか」という視点がとっても重要になってくる。そのためにも知っておきたい基本の5つのモデルの考え方をおさえておきましょう。

①ARモデル 自己回帰モデル  autoregressive 過去の自分に回帰する
考え方:過去の自分のみに影響を受ける=過去の自分で数式が書ける
ポイント:いつまでさかのぼるのか。日ごと・週ごと・月ごと見るのか。

②MAモデル 移動平均モデル Moving Average Model
考え方:昨日までの売り上げの平均値+1つ前の誤差(予測値ー実数)+もう1つ前の誤差+…
ポイント:いつまでさかのぼるのか。日ごと・週ごと・月ごと見るのか。
よく使われる「移動平均」とは計算の仕方は全然違う。あくまでも「移動平均みたいに」前後の数値を使うことで①よりは線が滑らかになる。「誤差(予測値と実数とのズレ)」に意味があるそう。例えばたまたま売り上げがドンと上がったとか、キャンペーンが当ったとか、そんな大きな誤差(ズレ)は後々まで影響を与える性質があるそうで、それを逆手にとって、あえてその誤差でシミュレーションしてみると思わぬ予測ができたりするそう。

③ARMAモデル 自己回帰移動平均モデル autoregressive moving average model
例:arma-model=sm.tsa.ARMA(1,2)
ARMA(1,0)のときはARのみ、ARMA(0,1)のときはMAだけが実装していることになるそう。

ここまでの①②③のモデルは長期トレンドや季節性(周期性)の影響を受けていそうなデータにはフィットしないモデル(数式)

そこでARMAモデルに長期変動要因(トレンド)を加味したモデルがARIMAモデル。「ありま」と呼びます。①~③は読み方なかったのに、ここから呼び方があります。

④ARIMAモデル 自己回帰和分移動平均モデル autoregressive integrated moving average
※ARMAモデルに加えて、前後のデータ間の変化分(差分=「Integrated 和分」の部分?)を定義。

さらにARIMAモデルにさらに季節性(周期性)を加味したのがSARIMAモデル。「さりま」と読みます。

⑤SARIMAモデル 季節変動自己回帰和分移動平均モデル  Seasonal AutoRegressive Integrated Moving Average
季節性を取り除くのは職人技だそう。ライブラリに任せちゃいましょう。

05 なんだかんだいって今はいちばん人気のProhet(プロフェット)って?

さいごに、最新&使いやくすくて優秀なライブラリが「Prophet(ぷろふぇっと)」を解説。日本語で「予言者」という意味。facebookが2017年にリリ―ス。

すごいポイントは2つ。
①~⑤の考え方をすべて包含していて、且つ、ベイズ統計(条件付き確率)で因果関係をより精度高く解くモデル。
・使いやすい!内蔵されているデフォルトの設定が優れていて、たいていの日次データ(デイリーデータ=1日単位で記録されるデータ)にうまく適合する。

【動画制作ウラ話】

NRIのデータサイエンティストさんから直接レクチャーを受けての手書きメモのほんの一部です。

しかし、実はこんなにいっぱい勉強しても、動画制作が完了した直後から忘れているという事実。

結局じぶんがいちばん動画を見直している気がします。

チャンネル登録はこちら
YouTube公式チャンネル NRIデータサイエンスラボ
https://www.youtube.com/channel/UCpy_3_wYutf5u0U4DdOziGQ

他の動画もぜひ♪

第1弾「クッキーレス時代の到来とは?」
第2弾「機械学習と統計学の関係とは?」
第3弾「今注目の因果推論とは?」
第4弾「ディープラーニング」
第5弾「ベイズ統計」
第6弾「コンテクストマッチ広告」
第7弾「GPT-3」
第8弾「秘密計算」
第9弾「ベイジアンネットワーク」
第10弾「自動発注」
第11弾「回帰分析におけるt値とp値」
第12弾「時系列分析」