時系列データを使った予測モデル構築の流れ、データ分析講座(その308)

投稿日

時系列データを使った予測モデル構築の流れ、データ分析講座(その308)

 

時系列データをビジネス活用するとき、最も期待される活用方法の1つが「データで近未来を予測しこれからのビジネス活動に活かす」というものです。これは、需要予測や受注予測、LTV予測、離反予測、故障予測などの「〇〇予測」と呼ばれることが多いです。では、近未来を予測しビジネス活動に活かすためには、何が必要でしょうか。当然ながら、予測モデルが必要です。今回は、1変量の時系列データで予測モデルを構築する流れを、簡単に説明します。

  • Step1:テーマ設定
  • Step2:データ準備
  • Step3:予測モデルの構築方法の検討
  • Step4:予測モデルの構築
  • Step5:ビジネス活用

時系列だからといって特別なわけではなく、よくある機械学習のモデル構築の流れと大差はありません。

1. Step 1でデータ活用ストーリーを描きStep 5で実現する

Step 1とStep 5に登場する「データ活用ストーリー」とは何でしょうか。それは、データがビジネス価値を生み出すまでの流れや関係性を描写したものです。非常に重要なものです。

時系列データを使った予測モデル構築の流れ、データ分析講座(その308)

Step 1で、「データからどうビジネス価値を出すのか」というグランドデザインを「データ活用ストーリー」としてざっくり描きます。その描いた「データ活用ストーリー」は、Step 5で実現します。Step 1では、単に「データ活用ストーリー」を描くだけでなく、「どのよう予測モデルを構築すればいいのか」も併せて検討します。ちなみに、Step 1のテーマ設定(データ活用ストーリーの描写)で失敗すると、その後のステップはすべて無駄になるケースが多いです。無駄になるとは、ビジネスの現場で価値を生み出さない、ということです。

 

2. Step 2の「データの準備」

Step 2は、予測モデル構築に必要なデータを準備するステップです。

時系列データを使った予測モデル構築の流れ、データ分析講座(その308)

(1) Step 2-1:予測モデル構築用データセットの準備

Step 2-1は地味に大変です。データ統合やデータ抽出といったことや、新しい変数を作ったり逆に絞り込んだりする「特徴量エンジニアリング」(特徴量生成や特徴量選択など)を実施します。さらに、基本統計量(平均や分散、など)の計算やグラフ化などを通した「データ理解」などが含まれます。

 

(2) Step 2-2:目的変数yと説明変数Xの設定

Step 2-2では、Step 2-1で準備したデータセットの変数の中から、予測モデルの目的変数yと説明変数Xを選定します。目的変数yが受注の金額などの量的変数の場合には「回帰問題」、目的変数yが受注の有無(1:受注、0:失注)などの質的変数の場合には「分類問題」と呼びます。回帰問題なのか分類問題なのかで、予測モデルのタイプや評価指標などが異なりますので気をつけましょう。

 

(3) Step 2-3:学習データとテストデータへの分割

Step 2-3で、Step 2-1で準備したデータセットを「学習データ」と「テストデータ」に分割します。この「学習データ」と「テストデータ」の2つのデータセットは、次のStep 3で利用します。もっともシンプルな分割方法は、データセットを2分割するホールドアウト法です。時系列データの場合、通常はランダムに2分割することは許されません。時系列性(過去の目的変数や説明変数の影響)が失われることが多いからです。よくあるのが、ある時点を境に前半を学習データと、後半をテストデータに分割する時系列ホールドアウト法です。

 

3. Step 3の「予測モデルの構築方法の検討」

予測モデ...

時系列データを使った予測モデル構築の流れ、データ分析講座(その308)

 

時系列データをビジネス活用するとき、最も期待される活用方法の1つが「データで近未来を予測しこれからのビジネス活動に活かす」というものです。これは、需要予測や受注予測、LTV予測、離反予測、故障予測などの「〇〇予測」と呼ばれることが多いです。では、近未来を予測しビジネス活動に活かすためには、何が必要でしょうか。当然ながら、予測モデルが必要です。今回は、1変量の時系列データで予測モデルを構築する流れを、簡単に説明します。

  • Step1:テーマ設定
  • Step2:データ準備
  • Step3:予測モデルの構築方法の検討
  • Step4:予測モデルの構築
  • Step5:ビジネス活用

時系列だからといって特別なわけではなく、よくある機械学習のモデル構築の流れと大差はありません。

1. Step 1でデータ活用ストーリーを描きStep 5で実現する

Step 1とStep 5に登場する「データ活用ストーリー」とは何でしょうか。それは、データがビジネス価値を生み出すまでの流れや関係性を描写したものです。非常に重要なものです。

時系列データを使った予測モデル構築の流れ、データ分析講座(その308)

Step 1で、「データからどうビジネス価値を出すのか」というグランドデザインを「データ活用ストーリー」としてざっくり描きます。その描いた「データ活用ストーリー」は、Step 5で実現します。Step 1では、単に「データ活用ストーリー」を描くだけでなく、「どのよう予測モデルを構築すればいいのか」も併せて検討します。ちなみに、Step 1のテーマ設定(データ活用ストーリーの描写)で失敗すると、その後のステップはすべて無駄になるケースが多いです。無駄になるとは、ビジネスの現場で価値を生み出さない、ということです。

 

2. Step 2の「データの準備」

Step 2は、予測モデル構築に必要なデータを準備するステップです。

時系列データを使った予測モデル構築の流れ、データ分析講座(その308)

(1) Step 2-1:予測モデル構築用データセットの準備

Step 2-1は地味に大変です。データ統合やデータ抽出といったことや、新しい変数を作ったり逆に絞り込んだりする「特徴量エンジニアリング」(特徴量生成や特徴量選択など)を実施します。さらに、基本統計量(平均や分散、など)の計算やグラフ化などを通した「データ理解」などが含まれます。

 

(2) Step 2-2:目的変数yと説明変数Xの設定

Step 2-2では、Step 2-1で準備したデータセットの変数の中から、予測モデルの目的変数yと説明変数Xを選定します。目的変数yが受注の金額などの量的変数の場合には「回帰問題」、目的変数yが受注の有無(1:受注、0:失注)などの質的変数の場合には「分類問題」と呼びます。回帰問題なのか分類問題なのかで、予測モデルのタイプや評価指標などが異なりますので気をつけましょう。

 

(3) Step 2-3:学習データとテストデータへの分割

Step 2-3で、Step 2-1で準備したデータセットを「学習データ」と「テストデータ」に分割します。この「学習データ」と「テストデータ」の2つのデータセットは、次のStep 3で利用します。もっともシンプルな分割方法は、データセットを2分割するホールドアウト法です。時系列データの場合、通常はランダムに2分割することは許されません。時系列性(過去の目的変数や説明変数の影響)が失われることが多いからです。よくあるのが、ある時点を境に前半を学習データと、後半をテストデータに分割する時系列ホールドアウト法です。

 

3. Step 3の「予測モデルの構築方法の検討」

予測モデルは、実務で使う前にその構築方法を検討する必要があります。Step 3で、「学習データ」で予測モデルを学習し、学習した予測モデルを「テストデータ」で評価する、ということを実施しながら、どうすればより良い予測モデルが構築できるのかを検討していきます。

時系列データを使った予測モデル構築の流れ、データ分析講座(その308)

(1) Step 3-1:モデルのタイプなどを選定

Step 3-1でモデルのタイプ(予測モデルを構築するアルゴリズム)などを選定します。「モデルのタイプの選定」とは、どのモデルのタイプで予測モデルを構築するのかを決める、ということです。もちろん複数選定しても問題ありません。

 

ちなみに、モデルのタイプ(予測モデルを構築するアルゴリズム)とは、「線形回帰」「決定木」「XGBoost」などのテーブルデータ系の数理モデルや、「ARIMA」「TBATS」「Prophet」などの時系列系の数理モデルのことです。モデルのタイプによっては、ハイパーパラメータというものを持つことがあります。このハイパーパラメータをどのように扱うのかも、ここで検討しておく必要があります。

 

  • チューニングするハイパーパラメータの選定:どのハイパーパラメータをチューニングし、どのハイパーパラメータをチューニングしないのか 
  • ハイパーパラメータのチューニング方法:チューニングの探索範囲(値の候補)をどのようし設定し、どのような方法でチューニングするのか

 

(2) Step 3-2:予測モデルの学習(学習データ利用)

Step 3-2で、「学習データ」を使い予測モデルを学習していきます。選定したモデルが複数あれば、少なくともモデルのタイプの数だけ予測モデルを学習します。ハイパーパラメータをチューニングする場合、最大でもそのハイパーパラメータの「値の候補」の数だけ予測モデルを学習します。要は、たくさんの予測モデルをここで学習し作っていきます。たくさんの予測モデルの学習を通し……

  • どのモデルで予測モデルを作るのがいいのか 
  • どのハイパーパラメータの値がいいのか
  • どの説明変数の組み合わせがいいのか

……などをここで検討します。

 

(3) Step 3-3:予測モデルのテスト(テストデータ利用)

Step 3-3で、学習し構築した予測モデルをテストデータで使いテストを行い、実務で使う予測モデルを検討していきます。このとき、通常は予測値と実測値の乖離の小さな高精度な予測モデルを選びます。しかし、高精度な予測モデルが使えるモデルとは限りません。例えば、1日後に出力される高精度な予測結果よりも、1分以内に出力されるまぁまぁの精度の予測結果が好まれたりします。その辺りも念頭に入れておきましょう。

 

4. Step 4の「予測モデルの構築(全データ利用)」

予測モデルの構築方法がStep 3で固まれば、次に全てのデータを利用し予測モデルを学習し求めます。この予測モデルをビジネス現場で活用していきます。「全データ利用」とは、手元にあるデータすべてという意味です。少なくとも「学習データ」と「テストデータ」の両方を使います。さらに、新たに蓄積したデータも含まれます。新たなデータがある程度溜まった段階で、再学習し常に予測モデルを更新していきます。

 

【ものづくり セミナーサーチ】 セミナー紹介:国内最大級のセミナー掲載数 〈ものづくりセミナーサーチ〉 はこちら!

 

   続きを読むには・・・


この記事の著者

高橋 威知郎

データネクロマンサー/データ分析・活用コンサルタント (埋もれたデータに花を咲かせる、データ分析界の花咲じじい。それほど年齢は重ねてないけど)

データネクロマンサー/データ分析・活用コンサルタント (埋もれたデータに花を咲かせる、データ分析界の花咲じじい。それほど年齢は重ねてないけど)


「情報マネジメント一般」の他のキーワード解説記事

もっと見る
データ分析と収穫逓減の法則と果汁理論 データ分析講座(その267)

  収穫逓減とは、例えば「農業において、一定面積からの一人当たりの収穫が、労働力の追加的投下によってしだいに減少する」という現象を表現した...

  収穫逓減とは、例えば「農業において、一定面積からの一人当たりの収穫が、労働力の追加的投下によってしだいに減少する」という現象を表現した...


IT化の不効率を加速させたビッグデータブーム データ分析講座(その75)

◆ ビッグデータブームは、IT化の不効率を加速させて余計な業務が増えた  IT化して楽になるはずが、従来よりも手間暇が掛かっている。IT化が進むほど...

◆ ビッグデータブームは、IT化の不効率を加速させて余計な業務が増えた  IT化して楽になるはずが、従来よりも手間暇が掛かっている。IT化が進むほど...


テーマ設定のすれ違い データ分析講座(その239)

    データ活用の為のテーマ設定は、現場で上手くいっていないこと、現場で出来ていないことが設定されます。しかし、設定されたテ...

    データ活用の為のテーマ設定は、現場で上手くいっていないこと、現場で出来ていないことが設定されます。しかし、設定されたテ...


「情報マネジメント一般」の活用事例

もっと見る
中小製造業とIoTの波

 「IoT(アイオーティー)」の波が、中小製造業にどのような影響をおよぼすのか、具体的にどのような変化がこの業界に訪れるのかについて、解説します。   ...

 「IoT(アイオーティー)」の波が、中小製造業にどのような影響をおよぼすのか、具体的にどのような変化がこの業界に訪れるのかについて、解説します。   ...


中小企業のセキュリティ対策を考える

◆ 企業の情報セキュリティと新型コロナウィルス対策の今  先日、駅のプラットフォ-ムで並んでいる時に、控えめに咳をしたら、前に並んでいた人にすかさず...

◆ 企業の情報セキュリティと新型コロナウィルス対策の今  先日、駅のプラットフォ-ムで並んでいる時に、控えめに咳をしたら、前に並んでいた人にすかさず...


個票データの共用化でコストダウン

 データ解析の効率は、生データとその整理の仕方で大きく異なると言えます。 例えば、アンケート結果は単なる生データであり、そのままでは解析出来ません。解析の...

 データ解析の効率は、生データとその整理の仕方で大きく異なると言えます。 例えば、アンケート結果は単なる生データであり、そのままでは解析出来ません。解析の...