時系列解析は、一定間隔で記録されたデータポイントの解析に用いる統計手法です。パターン、トレンド、季節性変動の特定に役立つため、経時的な結果の予想に便利です。
時系列データを扱うエンジニアや科学者は、時系列解析を用いてシステム動作の監視、モデル化、予測を行うことで、システムを最適化して、予想の精度を高めることができます。
時系列データの要素
時系列データは、潜在的なパターンを理解して予想するために、いくつかの基本要素に分解することができます。
要素 | 定義 | 例 | |
![]() |
トレンド | 増加、減少、一定など、経時的なデータの全体的な方向性 | EV テクノロジーの採用、スタートアップ企業の収益 |
![]() |
季節性 | 日次、月次、年次など、特定の周期ごとに繰り返されるデータパターン | 夏のピーク電力需要 |
![]() |
周期的な変動 | 季節性はないが、数年にわたり発生する反復的データパターン | 不動産市場のサイクル |
![]() |
不規則な変動 | 他の要素では説明できない予測不可能な増加や減少 | 想定外の事象に起因する株式市場の暴落 |
時系列解析の手順
時系列データの解析には、経時的に収集されたデータポイントの理解、モデル化、予想を可能にするさまざまな手法を統合した体系的なアプローチが必要です。
探索的データ解析
分解
分解は、時系列データを基本要素 (トレンド、季節性、周期、その他) に細分化し、潜在的なパターンの解析やデータの解釈を容易にするために用いる手法です。
![データを 1 つの曲線、分解された要素を 4 つの追加曲線で示す時系列解析のプロット。](https://jp.mathworks.com/discovery/time-series-analysis/_jcr_content/mainParsys/band_1857610351/mainParsys/lockedsubnav/mainParsys/columns/335ce30a-77fd-4c27-af75-93672733f56b/columns_2113015877/51228219-8e9c-4d90-a9dc-8042b6ca1b66/image.adapt.full.medium.png/1738167829736.png)
trenddecomp
関数で実装された特異スペクトル解析アルゴリズムを使用して、時系列データセットを長期的トレンド、季節性、その他のパターンに分解しています。(MATLAB コードを参照)
モデルの選択と当てはめ
モデルの選択では、季節性、トレンド、定常性などの特性に基づいて潜在的なデータパターンを捉えるために、最も適したモデルを選択します。モデルの当てはめは、選択したモデルに学習させて観測データと予測との誤差を最小限に抑えることで、新しいデータに対しても適切に一般化できるようにします。
モデルの予測と予想
モデルの予測と予想では、前述の手順で学習したモデルを新しいデータに適用し、過去のパターンに基づいて未来のデータポイントを生成します。
モデル評価
モデル評価では、モデルの機能性と予測精度を評価します。評価は、以下の主要な 3 つの要素で構成されています。
- パフォーマンス メトリクス: 平方根平均二乗誤差 (RMSE) などのメトリクスは、予測値と実際の値の差を計算し、モデル精度の評価基準を提供します。
- 検証手法: 交差検証やバックテストなどの手法は、新しいデータセットの予測を行う際にモデルの性能を評価することで、モデルの信頼性を評価します。
- 解釈可能性手法: LIME (Local Interpretable Model-Agnostic Explanations) や SHAP (Shapley Additive Explanations) などの手法は、モデル予測の理解に役立ち、モデル判定の透明性を向上させます。
![時系列解析に使用されるヒストグラム。RMSE 値の分布に加え、強調表示された異常シーケンスと比較用のベースライン参照が示されています。](https://jp.mathworks.com/discovery/time-series-analysis/_jcr_content/mainParsys/band_1857610351/mainParsys/lockedsubnav/mainParsys/columns/335ce30a-77fd-4c27-af75-93672733f56b/columns_1877876223/6de26e5d-6752-43ac-ba63-30f9941aaae8/image.adapt.full.medium.png/1738167829798.png)
異常シーケンスを特定するために、新規データの RMSE 値の分布を可視化しています。(MATLAB コードを参照)
![LIME を用いたディープ ニューラル ネットワークの分類判定の解釈を示すカラーマップ。](https://jp.mathworks.com/discovery/time-series-analysis/_jcr_content/mainParsys/band_1857610351/mainParsys/lockedsubnav/mainParsys/columns/335ce30a-77fd-4c27-af75-93672733f56b/columns_1877876223/fa5291a2-2d17-4501-a6b9-3a4c0187578d/image.adapt.full.medium.png/1738167829817.png)
imageLIME
関数を使用して、ネットワーク予測を可視化しています。(MATLAB コードを参照)
時系列モデリングの一般的な手法
時系列データのモデリングによく用いられる手法には、従来型予想モデル、機械学習モデル、ディープラーニング モデルの 3 つがあります。
従来型予想モデル
従来型予想モデルは、統計手法を用いて潜在的なデータパターンやトレンドを特定します。
自己回帰和分移動平均 (ARIMA) 統計モデルは、過去のデータを解析して将来値を予測します。このモデルはトレンドや季節性を捉えて、定常データセットと非定常データセットの両方への適用を可能にするため、株価や販売など短期から中期の予想に適しています。
![ARIMA モデルの 5 ステップ先の予測を比較する 2D プロット。検証データに対するモデルの性能を示す適合率は 78.76% です。](https://jp.mathworks.com/discovery/time-series-analysis/_jcr_content/mainParsys/band_1857610351/mainParsys/lockedsubnav/mainParsys/columns/335ce30a-77fd-4c27-af75-93672733f56b/columns_1095866753/44ade517-18ee-408b-86d5-eb35e900e704/image.adapt.full.medium.png/1738167829910.png)
System Identification Toolbox を時系列予想に使用して ARIMA モデルを推定しています。(MATLAB コードを参照)
指数平滑化モデルは、過去の観測値に指数的に減少する重みを付けることで最新のデータを重視します。この手法は、時系列データ内の潜在的なトレンドやパターンを捉えながら、短期的な変動を効果的に平滑化します。特に、トレンドや季節性のあるデータに有効です。
機械学習モデル
機械学習モデルは、従来型モデルでは見逃しがちな複雑なデータパターンを捉えることができます。
ランダム フォレスト モデルは、複数の決定木を構築し、その出力を組み合わせて時系列解析における予測精度を向上させます。大規模で高次元のデータセットを扱うことができ、過学習に対しても堅牢性の高いモデルです。過去のデータを予測子として使用することで非線形的な関係や相互作用を捉えるため、不規則なパターンのモデル化に最適です。
サポート ベクター マシン (SVM) は、分類と回帰に使用する教師あり学習モデルです。時系列解析では、非線形関係をモデル化し、高次元データ、特に小規模で複雑なデータセットを扱うことができます。たとえば、SVM を使用すると、過去の消費量、気象、経済指標間の非線形相互作用を捉えることによりエネルギー需要を予想できます。
![ECG データの 2D 時系列解析の 4 つの 2D プロット。ARR、CHF、NSR を示しています。](https://jp.mathworks.com/discovery/time-series-analysis/_jcr_content/mainParsys/band_1857610351/mainParsys/lockedsubnav/mainParsys/columns/335ce30a-77fd-4c27-af75-93672733f56b/columns_1057052550/13ba3d09-7abe-4e08-a861-852c32676289/image.adapt.full.medium.png/1738167829981.png)
不整脈 (ARR)、鬱血性心不全 (CHF)、正常洞調律 (NSR) を区別するために信号処理、ウェーブレットベースの特徴抽出、サポート ベクター マシン (SVM) 分類子を使用して ECG 信号の分類を示すプロット。(MATLAB コードを参照)
ディープラーニング モデル
ディープラーニングは、パターンと依存関係をデータから直接自動学習することにより、時系列解析を強化します。短期的変動と長期的トレンドの両方を捉えるため、予想と異常検出に理想的なモデルです。
長短期記憶 (LSTM) モデルは、リカレント ニューラル ネットワーク (RNN) の一種で、メモリセルとゲーティング機構を採用することで、従来型 RNN の限界を克服できるように設計されています。この設計により、長期的依存関係を効果的に捉えることができ、特に予想やシーケンス予測などの時系列解析タスクに有効です。
![入力データの 4 つのサイクルと 5 つの予想サイクルを示す、時系列解析の 2D プロット。](https://jp.mathworks.com/discovery/time-series-analysis/_jcr_content/mainParsys/band_1857610351/mainParsys/lockedsubnav/mainParsys/columns/335ce30a-77fd-4c27-af75-93672733f56b/columns_2118520215/a344761c-6d6c-4fdb-8b64-f5a6c1f4d5a7/image_1634535254.adapt.full.medium.png/1738167830024.png)
時系列データを予測する閉ループ予想のために、シンプルな長短期記憶 (LSTM) ネットワークを使用しています。(MATLAB コードを参照)
畳み込みニューラル ネットワーク (CNN) は、畳み込み層を使用してデータから特徴量を自動抽出できるため、時系列解析で使用されます。ローカルパターンと階層を特定することから、多変量時系列分類などのタスクに向けた短期的依存関係の特定に効果的です。
![人間の ECG 信号の時系列解析に使用される時間周波数表現を示すスカログラム。](https://jp.mathworks.com/discovery/time-series-analysis/_jcr_content/mainParsys/band_1857610351/mainParsys/lockedsubnav/mainParsys/columns/335ce30a-77fd-4c27-af75-93672733f56b/columns_582677468/874d935e-e925-407f-9291-b93e8358d5fc/image.adapt.full.medium.png/1738167830090.png)
ウェーブレット解析とディープラーニングを使用して、時系列データを分類しています。(MATLAB コードを参照)
![複数のタイムステップにまたがる 12 個の特徴量を示す時系列解析の 2D プロット。](https://jp.mathworks.com/discovery/time-series-analysis/_jcr_content/mainParsys/band_1857610351/mainParsys/lockedsubnav/mainParsys/columns/335ce30a-77fd-4c27-af75-93672733f56b/columns_582677468/718e577f-ef0a-4055-a459-7aa5ca2c521f/image.adapt.full.medium.png/1738167830107.png)
1D 畳み込みを使用したシーケンス分類。(MATLAB コードを参照)
時系列解析の種類
時系列解析は、データのトレンドとパターンを効果的に記述、説明、予想、最適化する以下のカテゴリに分類できます。
- 記述解析は、データセットの主要な特徴量を要約します。データの潜在的なパターン、トレンド、季節性変動を理解する際に役立ちます。
- 説明解析は、データ内の関係と因果効果を理解することを目的としています。特定のパターンやトレンドが発生する理由を、内在する要因や相関関係を分析することで説明しようと試みます。
- 予測解析は、過去のデータ、統計モデル、機械学習アルゴリズムを使用して、未来のトレンドやパターンを予測します。
- 処方的解析は、予測インサイトに基づく推奨事項と行動を提供します。さまざまな状況と起こり得る結果を評価することで、最適な意思決定を提案します。
時系列解析の課題
時系列解析には、特有の障壁がいくつかあります。データ収集時にセンサーや計測器が不規則な間隔でデータを記録することがよくあり、これは単調に増加するデータを扱うように設計された多くの時系列モデルとって問題となります。データの準備には、欠損データ、外れ値、ノイズなどの不規則性に対処することや、間隔を均一にするためのデータ リサンプリングが含まれる場合があります。前述の探索的データ解析手法は、こうした問題を軽減するのに役立ちます。
さらに、時系列データに内在する季節性や周期的パターンが、モデル選択や当てはめプロセスを複雑にする可能性があります。このような場合、データセットと適用可能なモデリングオプションをしっかりと理解することで適切なスタートを切ることができます。先ほど概説したモデリング手法や交差検証などの確立されたモデル検証手法も役立ちます。
経済・金融分析: 経済指標と金融市場を把握し、リスク管理と戦略策定に役立つインサイトを提供します。
環境モニタリング: 継続的な環境モニタリングを実施して気候リスクを評価することは、長期的なトレンドとリスクの理解に役立ちます。
予知保全: 機器の故障を予測して保守スケジュールを最適化することで、ダウンタイムと運用コストを削減します。
信号処理: IoT デバイス、センサー、医療システムからの信号を解釈することで、性能を強化して、異常を検出し、信頼性を向上させます。
時系列解析の例
時系列解析には、時間の経過とともに変化するデータを理解して予想する手法が含まれます。以下の例では、さまざまな用途を解説しながら、複雑なデータセットから重要なインサイトを引き出す独自の手法やツールを紹介しています。
ロマプリータ地震の解析
地震活動の理解に役立つ、タイムスタンプ付きの地震データをタイムテーブルに保存する方法と、timetable
関数を使用して特定の時間間隔における地動加速度を解析して可視化する方法を確認できます。
![地震活動を理解するために速度と位置データの時系列解析を可視化したプロット。](https://jp.mathworks.com/discovery/time-series-analysis/_jcr_content/mainParsys/band_1857610351/mainParsys/lockedsubnav/mainParsys/columns/335ce30a-77fd-4c27-af75-93672733f56b/columns_831475414/eb9e694a-66e0-4207-a294-ce69c7f96d71/image.adapt.full.medium.png/1738167830274.png)
各加速度要素の時系列。(MATLAB コードを参照)
実践に即した時間-周波数解析の紹介
デュアルトーン マルチ周波数 (DTMF) のトーンなど、非定常信号を解析する基本的な時間-周波数解析を実行して解釈する方法を学ぶことができます。
![DTMF トーンの周波数とパワーを示すスペクトログラム。](https://jp.mathworks.com/discovery/time-series-analysis/_jcr_content/mainParsys/band_1857610351/mainParsys/lockedsubnav/mainParsys/columns/335ce30a-77fd-4c27-af75-93672733f56b/columns_831475414/fa510ebb-b8ce-4f84-a149-a6ac46441e6f/image.adapt.full.medium.png/1738167830303.png)
数字の 508 をダイヤルしたときの DTMF トーンのスペクトログラム。トーンの長さとシーケンスを示し、2 列目のキーパッド入力に対応する 1336 Hz のトーンを強調表示しています。(MATLAB コードを参照)
多変量時系列の予想
獲物の密集シナリオにおける捕食個体群と被捕食個体群から測定されたデータの多変量時系列予測を実行する方法を学ぶことができます。
![さまざまなモデルの予想応答を示す線グラフ。](https://jp.mathworks.com/discovery/time-series-analysis/_jcr_content/mainParsys/band_1857610351/mainParsys/lockedsubnav/mainParsys/columns/335ce30a-77fd-4c27-af75-93672733f56b/columns_960282012/58f5f72b-32da-441d-b641-6fde4fc3b9bf/image.adapt.full.medium.png/1738167830370.png)
ARMA、多項式 AR、ガウス過程 (GP)、グレーボックスモデルを使用した捕食個体群と被捕食個体群の比較予想解析。(MATLAB コードを参照)
LSTM を使用した ECG 信号の分類
LSTM ネットワークと時間-周波数解析を使用して ECG データを分類する方法を確認できます。
![ECG 信号の瞬時周波数を示す 2 つの線グラフのセット。](https://jp.mathworks.com/discovery/time-series-analysis/_jcr_content/mainParsys/band_1857610351/mainParsys/lockedsubnav/mainParsys/columns/335ce30a-77fd-4c27-af75-93672733f56b/columns_960282012/9436f0ae-bd9e-4a2b-ab42-5af5993263d8/image.adapt.full.medium.png/1738167830399.png)
正常な ECG 信号と心房細動 (AFib) のある ECG 信号における瞬時周波数の比較。(MATLAB コードを参照)
このトピックについてさらに詳しく
timetable を使用した時系列解析のデータ準備
欠損値の処理や外れ値の管理などの前処理タスクの前後に時間ベースの演算を使用する場合は、時系列解析に適した形式にデータを変換する必要があります。timetable
関数はタイムスタンプ付きデータ用に設計されており、各行に時間を関連付け、同じ行数をもつ列方向の変数を保存します。データの整列、結合、計算を実行するための時間に特化した関数と同期やリサンプリングなどの機能を提供することで、時系列解析を簡略化します。
![自転車交通量と外気温を別々の y 軸に示した 2D プロット。](https://jp.mathworks.com/discovery/time-series-analysis/_jcr_content/mainParsys/band_1857610351/mainParsys/lockedsubnav/mainParsys/columns/335ce30a-77fd-4c27-af75-93672733f56b/columns_673420312/27bf6009-9273-435f-9a06-4b671028cb61/image.adapt.full.medium.png/1738167830575.png)
自転車交通量のパターンを解析するために、timetable データコンテナーを使用して、タイムスタンプ付きセンサーデータを整理して前処理しています。(MATLAB コードを参照)
MATLAB は、特定分野の用途に応じてワークフロー全体を支援する専用のツールボックスを提供します。
用途 | 時系列解析の次の手順 | ツールボックスと主な機能 | 例、リソース |
統計、機械学習 | 統計モデルと機械学習アルゴリズムを活用した時系列データのモデル化 | Statistics and Machine Learning Toolbox™
|
時系列データの解析 |
経済予想 | 時系列予想と仮説検定を含む、計量経済学モデリングと解析の実行 |
|
乗法的な ARIMA モデルの推定 |
動的システムモデリング | 時系列モデルの作成、推定、予想 | System Identification Toolbox™
|
時間領域システム同定における timetable データの使用 |
状態監視、予知保全 | 機器の故障予測とメンテナンスの最適化を目的とした、センサーデータ解析によるアルゴリズム開発 | Predictive Maintenance Toolbox™
|
ポンプ診断用の特徴の解析と選択 |
信号解析 | 信号のフィルタリングと解析 (時系列データからの特徴量の抽出) |
|
クジラの歌から対象の領域を抽出 |
ディープラーニング | ニューラル ネットワークを使用した複雑なパターンの把握 |
|
ディープラーニングを使用した時系列予測 |
リソース
ドキュメンテーション、例、ビデオなどを通じて知識を広げましょう。
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します: United States
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)