時系列データと時系列モデル

定常性・自己共分散からARIMAまで
🔰 初心者

時系列データって普通のデータと何が違うんですか?

🎓 上級者

時系列データは「時間の順番」に意味があるデータのことだよ。株価、気温、売上高など、過去の値が未来に影響するのが最大の特徴。普通のデータと違って「並び替え厳禁」なんだ。

📊 時系列データの構成要素
🎓 上級者

時系列データは大きく4つの成分に分解できる。これを理解すると、モデル選びの判断がしやすくなるよ。

成分意味
トレンド長期的な上昇・下降の傾向年々上がるGDP
季節性一定周期で繰り返すパターン夏に売れるアイス
循環変動季節より長い周期の変動景気循環(数年周期)
不規則変動上記で説明できないランダムな揺れ突発的なニュースの影響
時系列データの構成要素 トレンド(長期傾向) 季節性(周期パターン) 不規則変動(ノイズ) + + = 実際に観測される時系列データ 時間 →
図1: 時系列データ = トレンド + 季節性 + 不規則変動
⚖️ 定常性(Stationarity)
🔰 初心者

時系列分析で「定常性」が大事と聞きますが、どういう意味ですか?

🎓 上級者

定常過程とは、統計的な性質(平均・分散)が時間によって変わらないデータのこと。多くの時系列モデルは「データが定常である」ことを前提にしている。非定常なデータはそのまま分析できないので、差分をとって定常にしてから分析するんだ。

定常な時系列

平均・分散が一定
トレンドや季節性がない
→ そのままモデルに入力OK

非定常な時系列

平均・分散が時間で変化
トレンドや季節性がある
差分をとって定常にする

差分(Differencing)とは?

元のデータから「1つ前の値を引く」操作。トレンドを取り除いて定常化できる。

例:株価が [100, 103, 108, 106] → 差分 [+3, +5, -2]
元の株価はトレンドがあるが、差分を取ると「変化量」になりトレンドが消える。

1回の差分で定常にならなければ2回差分を取ることもある(2階差分)。

🔄 自己共分散と自己相関
🔰 初心者

自己共分散って何ですか?普通の共分散と違うんですか?

🎓 上級者

普通の共分散は「2つの異なる変数」の関係を見るけど、自己共分散は「同じ時系列の中で、時間がずれた値同士の関係」を見るものだよ。「今日の気温と3日前の気温はどのくらい関連があるか?」を数値化するイメージだね。

自己共分散(Autocovariance)

同じ時系列データ内で、k時点ずれた値同士の共分散。このずれ幅kをラグ(lag)と呼ぶ。

例:ラグ1の自己共分散 → 「今日の値」と「昨日の値」の共分散
ラグ7の自己共分散 → 「今日の値」と「7日前の値」の共分散

自己共分散を標準化(-1〜+1の範囲に変換)したものが自己相関係数

自己相関(Autocorrelation)

自己共分散を標準化したもので、-1〜+1の値をとる。

+1に近い → 過去の値と強い正の関係(昨日高ければ今日も高い)
0に近い → 過去の値と関係なし(ランダム)
-1に近い → 過去の値と逆の関係

自己相関をラグごとにグラフにしたものをコレログラム(自己相関関数プロット)と呼び、データの性質を把握するのに使う。

用語意味ポイント
ラグ(lag)時間のずれ幅ラグ1=1つ前、ラグ7=7つ前
自己共分散同じ時系列のラグkの共分散自分自身との共分散
自己相関係数自己共分散を標準化(-1〜+1)ラグごとの関連の強さ
コレログラム自己相関のグラフモデル選択の手がかりになる
🎲 ランダムウォーク(Random Walk)
🔰 初心者

ランダムウォークってよく聞きますが、どういう仕組みですか?

🎓 上級者

「今の値=前の値+ランダムなノイズ」だけで決まるモデルだよ。酔っ払いがフラフラ歩くイメージで、次にどっちに行くか全く予測できない。株価がランダムウォークに従うなら、予測は不可能ということになるんだ。

ランダムウォークの特徴

式:y(t) = y(t-1) + ノイズ(今の値 = 前の値 + ランダムな変化)

特徴:
・過去の情報が未来の予測に役立たない
・トレンドがあるように見えるが、実はただの偶然の積み重ね
・分散が時間とともにどんどん大きくなる(非定常)
・差分を取るとホワイトノイズ(完全にランダムな系列)になる

ランダムウォーク vs ホワイトノイズ ランダムウォーク(非定常) 0 フラフラと偏り続ける(分散が拡大) 差分後 → ホワイトノイズ(定常) 0 0付近をバラバラに動く(平均・分散が一定) 差分
図2: ランダムウォークに差分を取るとホワイトノイズになる
効率的市場仮説とランダムウォーク

金融の世界では「株価はランダムウォークに従う」とする効率的市場仮説がある。市場に出回る情報はすぐに価格に織り込まれるため、過去の値から将来を予測することはできない、という考え方。G検定では「ランダムウォーク=予測不可能」というニュアンスを押さえておけばOK。

🔧 代表的な時系列モデル
🔰 初心者

時系列を予測するモデルにはどんなものがありますか?

🎓 上級者

統計的な時系列モデルはAR→MA→ARMA→ARIMAの順に発展してきた。それぞれ「何を使って予測するか」が違うんだ。

ARモデル(自己回帰モデル / AutoRegressive)

過去の自分自身の値を使って未来を予測するモデル
考え方:「明日の気温は、今日や昨日の気温から予測できる」
式のイメージ:y(t) = a1 × y(t-1) + a2 × y(t-2) + ... + ノイズ
AR(p):過去p個の値を使う。pが大きいほど過去を多く参照する

MAモデル(移動平均モデル / Moving Average)

過去のノイズ(誤差)を使って未来を予測するモデル
考え方:「昨日の予測のハズレ具合が、今日の値に影響する」
式のイメージ:y(t) = ノイズ(t) + b1 × ノイズ(t-1) + b2 × ノイズ(t-2) + ...
MA(q):過去q個のノイズを使う。
注意:株価の「移動平均線」とは別物!

ARモデル

過去の値で予測
y(t) = a×y(t-1) + ...
「昨日暑かったから今日も暑い」

MAモデル

過去のノイズで予測
y(t) = b×ノイズ(t-1) + ...
「昨日の予測が外れた分を補正」

ARMAモデル(自己回帰移動平均モデル)

ARとMAを組み合わせたモデル
考え方:過去の値+過去のノイズの両方を使って予測
ARMA(p, q):AR部分がp次、MA部分がq次
前提:データが定常であること(トレンドや季節性がない)

ARIMAモデル(自己回帰和分移動平均モデル)

非定常データにも対応できるよう、ARMAに差分(I)を加えたモデル
考え方:差分をとって定常化 → ARMAで予測
ARIMA(p, d, q):p=AR次数、d=差分の回数、q=MA次数
例:ARIMA(1, 1, 1) → 1回差分をとってAR(1)+MA(1)で予測
I=Integrated(和分):差分の逆操作=元に戻す(累積する)意味
🔗 モデルの進化フロー
AR → MA → ARMA → ARIMA の流れ

AR(過去の値で予測)
 + MA(過去のノイズで予測)
 = ARMA(両方使う。ただし定常データ限定)
 + I(差分)(非定常→定常に変換)
 = ARIMA(非定常データにも対応!)

📋 モデル比較まとめ
モデル正式名予測に使うもの定常性パラメータ
AR自己回帰過去の値必要p(次数)
MA移動平均過去のノイズ必要q(次数)
ARMA自己回帰移動平均過去の値+ノイズ必要p, q
ARIMA自己回帰和分移動平均差分+過去の値+ノイズ不要(差分で対応)p, d, q
ランダムウォーク前の値+ランダム非定常

🎯 G検定ポイント