ユニット 8 / 11

時系列分析: 定常性、ARIMA、予測

利益:

  • 傾向、季節性、定常性、単位根の概念を理解し、時系列モデリングと予測に正確なデータを備えた人工知能を使用する能力。
  • ARIMA/季節モデルを解釈し、不確実性 (信頼区間、残差分析) を予測し、偽の回帰を回避する能力
  • 人工知能の予測が過去のパターンに基づいていることと、構造的破綻や危機の時期には専門家の判断が前面に出てくることを区別できること。

エコノミストや金融アナリストにとって欠かせないデータの多くは時系列です。つまり、長期間にわたって一定の間隔で測定された同じ変数の値 (月次のインフレ、日次の株価、四半期の GDP) です。時系列は、観測値が独立していないため、通常の断面データとは根本的に異なります。つまり、今日の値は昨日に依存します。この依存は、機会 (未来を予測できる) であると同時に、危険 (通常の回帰はここで誤解を招きやすい) でもあります。この単元では、人工知能 (AI) が時系列のモデリングと予測をどのように加速させているかを説明しますが、最も危険な罠である偽の回帰に注意が必要な理由を説明します。

基本的な概念

通常、時系列には 3 つの要素が含まれます。トレンド (長期的な上昇/下降傾向)、季節性 (年間を通して繰り返される規則的なパターン、例: 夏の観光客の増加)、およびサイクル/ノイズ (残留ボラティリティ) です。モデリングの前に、このシリーズの最も重要な特徴は定常性です。

定常系列とは、統計的特性 (平均、分散) が時間の経過とともに一定のままである系列です。非定常系列には傾向が含まれているか、その分散が増大しているか、または単位根があります。単位根は、系列がショックを永続的に「記憶」し、平均値に戻らない構造です。このような系列はランダム ウォークのように動作します。なぜ重要なのでしょうか? 2 つの非定常系列間の回帰では、実際には関係がない場合でも、高い R 二乗係数と有意な係数が生成される可能性があるため、これは偽回帰と呼ばれます。共通の傾向だけが、2 つのシリーズが「関連している」ように見えます。

注意: 2 つの増加系列 (例: ある国の人口と別の国のアイスクリーム売上高) には高度な相関関係がある可能性があります。どちらも時間の経過とともに増加するためです。これは関係ではなく、共通の傾向の幻想です。時系列で回帰を開始する前に、必ず定常性をチェックしてください。

段階的な時系列ワークフロー

1. 視覚化する。シリーズをプロットします: 傾向はありますか、季節性はありますか、分散は時間の経過とともに変化しますか、構造的な破壊 (突然のレベルの変化) はありますか?

2. 定常性をテストします。 ADF テスト (拡張ディッキー フラー) および KPSS テストは、単位根/定常性をテストします。この 2 つは互いに補い合います。ADF では帰無仮説は「単位根がある」ですが、KPSS では帰無仮説は「定常」です。両方を併用した方が安全です。

3. 停滞する。系列が非定常である場合、通常は差分が得られます (連続した観測の差。これにより傾向が除去されます)。 1 回微分すると、「一次積分」 (I(1)) 系列が定常になります。対数変換は、分散が増大している場合にも役立ちます。

4. モデルを構築します。最も一般的なフレームワークは ARIMA (AutoRegressive Integrated Moving Average) です。これは、AR (系列自体の過去の値への依存)、I (差異の程度)、MA (過去のエラーの影響) というコンポーネントを組み合わせています。季節性がある場合はSARIMAを使用します。 AI は auto.arima などの自動選択ツールのコードを生成します。ただし、自動選択を盲目的に受け入れないでください。

5. 残り物がないか確認します。良好なモデルの残差はホワイト ノイズである必要があります。パターンや自己相関はありません。 Ljung-Box テストはこれをテストします。残差にまだパターンが存在する場合、モデルは不完全です。

6. 不確実性を予測し、示す。予測は一本の線ではありません。常に信頼区間/推定区間とともに与えられます。地平線が伸びるにつれて範囲も広がります。これは欠点ではなく誠実さの表れです。

共積分: 非定常系列との実際の関係

2 つの非定常系列が常に偽の関係を示すわけではありません。それらの間に実際の長期的な平衡が存在する (それらが一緒に動く) 場合、これは共積分と呼ばれ、誤差修正モデル (ECM) でモデル化できます。したがって、解決策は「違いを考えて情報を捨てる」ことではありません。まず共積分をテストすることです。この区別は、偽の回帰と真の長期相関を区別するものであり、AI が独自に決定することはできない理論上の考慮事項です。

比較表

ステータス

症状

正しいアプローチ

ステーショナリーシリーズ

一定の平均/分散

ダイレクトアーチング

トレンドあり(単位根)

連続上昇、ADFは無意味

違い、そしてモデル

2 つの非定常系列

高い R² は偽物の可能性があります

まず、共積分テスト

季節限定

毎年繰り返されるパターン

SARIMA / 季節の違い

構造的破壊

突然のレベル/傾斜の変化

破壊試験、専門家の判断

コピー可能な 4 つのプロンプト

1. 定常性診断:

あなたの役割: 時系列アシスタント。 R コードが必要ですが、データは共有しません。 「series」は月ごとの時系列(tsオブジェクト)です。タスク: (1) 系列と自己相関 (ACF/PACF) グラフを描画します。(2) ADF テストと KPSS テストを適用します。(3) 結果を一緒に解釈する方法を説明します。私はその違いを受け入れる決断を下します。あなたは診断を作成します。

2. モデル構築 (監視あり):

私のシリーズは最初の差分では静止しているように見えます。 auto.arima を使用してモデルを提案しますが、(1) 選択された (p、d、q) 次数とそれらが選択された理由を説明し、(2) Ljung-Box を使用して残差がホワイト ノイズであるかどうかをテストするコードを追加し、(3) 自動選択を盲目的に受け入れないように注意してください。

3. 偽の回帰警告:

2 つの時系列 (X、Y) の間に回帰を設定したいのですが、両方とも傾向が除去されています。偽の回帰のリスクをチェックするワークフロー コードを作成します。最初に両方の定常性をテストし、次に共積分テスト (Engle-Granger または Johansen) を適用します。 lm() を直接実行する前に、私を止めて、なぜそれが危険なのか説明してください。

4. 予測と不確実性:

作成した ARIMA モデルを使用して 12 か月の将来予測を生成するコードを作成します。推定値を 80% および 95% 信頼区間でプロットします。予測は過去のパターンに基づいており、構造的な破綻や危機が発生した場合には無効になる可能性があるという注記をチャートの下に追加します。

弱いプロンプト / 強いプロンプト

弱いプロンプト:

これら 2 つの系列と回帰の関係を見つけて、来年を予測します。

この主張は誤った回帰の罠への招待です。定常性をチェックせずに回帰を設定すると、R 二乗は高いが意味のない「関係」と不当な推定が出現します。

強力なプロンプト:

あなたの役割: 慎重な時系列アシスタント。ステップバイステップで進みます: (1) 系列とレポートの両方の定常性をテストします。(2) 定常でない場合は直接回帰を行わず、最初に共積分をテストします。(3) 予測を作成する場合は、必ず信頼区間を追加し、構造破壊の警告を書き込みます。あらゆる段階での決定は私に任せてください。自動進行。

違い: 強い需要には回帰の前に定常性と共積分が必要であり、推定値に不確実性が生じます。

ミニケース3個

ケース 1 — 偽の回帰。アナリストは、2 つの上昇系列 (ある部門の売上高と別の国のエネルギー消費) の間で R²=0.91、p<0.001 であることを発見し、「強い関係」と書きました。彼のコンサルタントが定常性検定を依頼したところ、両方に単位根があることがわかり、それらの差を取ると、関係 (r = 0.04) が完全に消失しました。 R 二乗値が高いということは、一般的な傾向の幻想にすぎませんでした。教訓: 時系列回帰は、定常性をテストしない限り信頼性がありません。

ケース 2 — 自動モデルへの盲目的な信頼。学生は auto.arima で選択されたモデルを調べずに使用しました。彼は分析に重大な季節性が残っていることにもはや気づきませんでした。このモデルは体系的に夏月を過小評価していました。 Ljung-Box 検定では、残差に自己相関が見られました。正しい方法: 季節コンポーネント (SARIMA) を追加することでした。教訓: 自動選択は始まりであり、最後の言葉ではありません。残留物を確認する必要があります。

ケース 3 — 構造破壊時の予測崩壊。あるモデルは、2019 年のデータを使用して 2020 年の需要を予測しました。信頼区間が狭いため、推定値は信頼できました。 2020年の大きなショック(パンデミック)は、モデルが過去のパターンしか知らなかったため、予測を完全に吹き飛ばしました。教訓: 時系列予測は、過去が未来と類似していることを前提としています。危機や破綻時には、専門家の判断が重要になります。

よくある間違い

  • 定常性をチェックせずに回帰を確立します。偽の回帰により、R 二乗は高くなりますが、重要ではない関係が生成されます。最初に ADF/KPSS を適用します。
  • 微分と共積分のスキップ。本当に長期的な関係がある場合、盲目的に違いを受け入れることは情報を捨ててしまいます。最初に共積分をテストします。
  • 自動モデルを確認せずに使用する。 auto.arima は良いスタートですが、残差 (Ljung-Box) をチェックしないと信頼性が低くなります。
  • 見積もりを 1 行で表示します。信頼区間を使用しない推定では、誤った精度が生じます。常に不確実性を示します。
  • 構造上の破壊を無視します。危機や政権交代は過去のパターンを破壊します。モデルではこれを知ることができないため、専門家の判断が必要です。
ヒント: 時系列の結果を書き込む前に、時系列の生のグラフをもう一度見てください。自分の目で見た明確な傾向や変化は、どんなテストも忘れさせてはならないという最も強い警告となります。

要約すると

時系列分析では、観測値は独立していません。これにより、予測力が得られると同時に、偽の回帰などの落とし穴が生じます。モデリングの前に定常性 (ADF/KPSS) をテストします。非定常系列間の回帰を直接確立するのではなく、共積分をテストします。ホワイト ノイズが発生するまで ARIMA/SARIMA モデルの残差を確認します。常に信頼区間を使用して推定値を提示します。 AI はこれらすべてのステップのコードを生成しますが、専門家がモデルの自動選択、共積分決定、構造的ブレークの解釈を制御します。予測は過去に基づいています。危機の際には人間の判断が最終決定権を持ちます。

アプリケーションタスク

時系列 (月次または四半期) を選択します。 AI の前に、定常性診断 (グラフ、ACF/PACF、ADF、KPSS) を要求して実行し、系列を定常/非定常として分類します。必要に応じて微分し、ARIMA/SARIMA モデルを設定し、Ljung-Box で残差を確認します。 6 ~ 12 期間の将来予測を作成し、信頼区間を使用してプロットします。最後に、データに構造的な欠陥があった場合に予測がどのように間違っているかを段落で検討します。

チェックリスト

  • [ ] シリーズをプロットし、傾向、季節性、ブレイクを視覚的に調べました。
  • [ ] ADF と KPSS を使用して定常性をテストしました。必要な差分が得られました。
  • [ ] 直接回帰を回避し、非定常系列間の共積分をテストしました。
  • [ ] モデル残差 (Ljung-Box) を確認し、ホワイト ノイズであることを確認しました。
  • [ ] 信頼区間を使用して推定値を提示しました。一行で与えたわけではありません。
  • [ ] 私は構造的破壊/危機が発生した場合の予測の限界に注目しました。