信頼性の高い時系列予測を実現!ProphetとXGBoostのハイブリッドモデル活用法

信頼性の高い時系列予測を実現!ProphetとXGBoostのハイブリッドモデル活用法

ProphetとXGBoostを組み合わせた、HEARTCOUNT ABIの時系列予測モデルをご紹介します。 データの変動を自動で検知し、残差を学習して予測精度を高めたプロセスを、わかりやすく解説します。

このページでは、

データ予測モデルで戦略的意思決定を強化する方法とは?

企業が予測モデルを導入する最大の理由は、「データに基づいて未来を見通し、不確実性を減らす」ことにあります。市場の動向、需要の変化、価格の変動といった外部要因は、企業の経営判断に直接影響を与える重要な要素です。これらを勘や過去の経験だけで判断してしまうと、思わぬ損失や過剰な対応につながるリスクがあります。

たとえば、先月の売上が好調だったからといって、来月も同じ傾向が続くとは限りません季節性や祝日、経済指標の変化、政策の影響など、複数の要素が複雑に絡み合って動いているからです。

こうしたデータの構造やパターンを体系的に分析し、将来の変化を予測するのが「予測モデル」の役割です。

予測モデルを活用することで、企業は単に「来月の数値はどれくらいか?」という表面的な問いにとどまらず、「いつトレンドが変わるのか?」「どの外部要因が影響しているのか?」「戦略を調整すべきタイミングはいつか?」といった、より深い洞察を得ることができます。

한 인물이 상승하는 시계열 예측 그래프를 가리키며 데이터를 분석하는 장면. 하단에는 "예측 모델은 전략적 의사결정의 근거를 제공합니다." 라는 문구가 있다.

つまり、予測とは単なる「数値を当てること」ではなく、戦略的な意思決定を支えるための重要な根拠となるのです。

HEARTCOUNT ABIでも、こうした目的を実現するために予測モデルを実際のサービスへ応用しています。本記事では、Prophetをベースとした時系列予測モデルを用いた具体的な活用事例を通じて、どのようにデータを扱い、モデルを設計し、実務に落とし込んでいくのかを詳しく解説していきます。






HEARTCOUNT ABIの予測モデル事例:Prophet+XGBoostによる価格予測の実践

HEARTCOUNT ABIは、「実際のビジネス環境においてデータ予測モデルがどのように活用できるか」を示す好例として、公的データを活用した豚肉枝肉価格の予測モデルを導入しました。

このプロジェクトの顧客企業は、これまで畜産流通情報システムが提供する価格予測資料を参考にしていましたが、実際の相場との乖離が大きく、予測結果の信頼性に課題を抱えていました。そのため、現場担当者たちは自身の経験や直感に頼って価格を見積もり、生産や販売の計画を立てていたのです。

そこでHEARTCOUNT ABIは、過去のデータに潜むパターンや周期性を体系的に分析し、それをもとにProphetをベースにしたカスタム予測モデルを構築しました。このモデルは、時系列データに見られる季節性やイベントなどの変動要因を反映し、豚肉枝肉価格の将来の動向を高精度で予測可能にしました。

その結果、顧客企業はこれまでのように勘に頼ることなく、データに基づいた戦略的な意思決定が可能となり、より合理的な生産・販売計画の立案が実現したのです。

時系列予測モデル「Prophet」とは?Facebook発の強力な予測ツールを解説

Prophetを選定した理由は、単に予測精度が高いという点だけではありません。予測モデルが実務で本当に価値を発揮するためには、正確性・解釈可能性・運用のしやすさの3つの要素がバランスよく備わっていることが重要です。

Prophetは、この3つの要件を高いレベルで満たす数少ないモデルの一つであり、実際のビジネス環境においても非常に扱いやすいツールとして評価されています。

Prophet
Prophet is a forecasting procedure implemented in R and Python. It is fast and provides completely automated forecasts that can be tuned by hand by data scientists and analysts.

Prophetの大きな特徴の一つは、予測結果の「理由」を視覚的かつ論理的に説明できる点にあります。単に「この数値が予測された」という結果を示すだけでなく、「なぜそのような予測になったのか」を理解できるのが大きな利点です。

これは、Prophetが時系列データを構成する要素トレンド(Trend)、季節性(Seasonality)、イベント・休日(Holiday)を個別に分解・可視化できる仕組みを持っているからです。

Prophetは時系列データを、以下のような構成要素に分解します:

Prophetでは、時系列データを以下の4つの構成要素に分解してモデル化します:

  • g(t):トレンド(Trend)
     長期的に見た増加・減少など、時間の経過に伴う全体的な傾向を捉えます。
  • s(t):季節性(Seasonality)
     週ごと、月ごと、年ごとといった周期的に繰り返されるパターンを学習します。たとえば、夏に売上が増える、週末にアクセスが集中するなどの傾向がこれに該当します。
  • h(t):休日・イベント(Holiday)
     祝日や特定イベントによる一時的な影響をモデルに反映します。これにより、通常とは異なる動きを正確に捉えることができます。
  • εt:誤差項(Error)
     データのノイズや外れ値など、予測できない不確実な要素を表します。

このように、Prophetは時系列データの変動要因を構造的に分離し、それぞれを個別に解析・予測することが可能です。そのため、「なぜこの予測値になったのか?」という問いに対しても、明確な説明が可能なモデルとなっています。

Prophet 예측 모델의 구성 요소를 시각화한 그래프.
Forecasting at Scale

Prophetの魅力は、複雑なハイパーパラメータ調整が不要でありながら、一定水準以上の安定した予測性能を発揮する点にもあります。さらに、CPU環境でも高速に学習できるため、システム運用コストが低く抑えられ、予測プロセスの自動化にも非常に適しています。

特筆すべきは、「changepoint(変化点)」の自動検出機能です。この機能により、突発的な市場変動や外部要因による急なトレンド変化を即座にモデルへ反映できます。

つまり、価格や需要が急変したとしても、予測モデルがその変化を見逃さず、軌道修正できるということです。これは、実際のビジネス環境において、予測モデルが「現実についていけなくなる」事態を防ぐうえで、非常に重要な要素です。

Prophet이 탐지한 changepoint 예시
Prophet が検出した changepoint(変化点)の例

このような理由から、HEARTCOUNTはProphetを基本モデルとして採用し、changepoint(変化点)に基づくパラメータ調整および残差補正モデルとの組み合わせを通じて、より精密な予測システムを実現しました。

予測精度を高めるモデル設計とチューニングの戦略とは?

HEARTCOUNT ABIの予測モデルはProphetを基盤としていますが、一般的なProphetの予測とは異なり、データの変動性に応じてパラメータを自動調整し、予測誤差を学習して補正するハイブリッド構造で設計されています。

Prophet + XGBoost 하이브리드 모델

このアプローチは、季節的な変動と急激なトレンドの変化が共存する豚肉枝肉価格のような時系列データにおいて、より安定的で一貫性のある予測結果を提供します



予測モデルの設計と実装プロセスを徹底解説



1. パラメータ設定(Adaptive Parameter Tuning)

モデルは予測を開始する前に、過去のデータから最近の変化点(changepoint)の発生頻度を分析します。


変動が多いほど、モデルが細かいトレンドの変化を過剰に学習するリスクがあるため、このような場合には changepoint_prior_scaleseasonality_prior_scale などのパラメータを保守的に設定して過学習を防ぎます。
逆に変動が少ない安定区間では、パラメータをより柔軟に調整し、モデルが細かな変化を積極的に学習するようにします。
一般的な Prophet モデルのように固定されたパラメータで動作するのではなく、変動性に応じて自動で最適な感度を設定する構造に改善されました。

2. Prophet ベースの予測

パラメータが設定されると、Prophet はトレンド(trend)、季節性(seasonality)、休日(holiday)効果を分離して予測を行います。
モデルは changepoint を自動で検出し、価格が急変した時点を反映します。
また、週次(weekly)および年次(yearly)の周期性を同時に適用し、短期・長期パターンを共に学習します。
さらにイベント特徴量(祝日、プロモーションなど)を追加して、時期別の急上昇/急落パターンが価格に与える影響を反映します。

3. XGBoost による残差補正(Residual Correction)

Prophetは、構造的に線形(Linear)トレンドの予測に強みを持つモデルですが、外部要因などの非線形なパターンに対する反応力には限界があります。
この課題を補うために、Prophetの予測値(yhat)と残差(y - yhat)を活用し、残差(Residual)を補正する追加モデルを学習させる構成を取り入れました。この補正モデルはXGBoostをベースに構築されており、Prophetの予測結果と外部要因の情報を入力として使用することで、Prophetでは捉えきれなかった細かな非線形の変動を学習できるようになっています。

外部要因が残差補正に影響を与えるかどうかは、まず相関分析を通じて事前に確認し、十分な相関が確認された要因のみを特徴量(feature)として追加し、予測に活用します。

Prophetは本質的に、トレンドを線形(Linear)関数の組み合わせとして表現するモデルであるため、変数間の相互作用や突然の非線形変化を直接的に学習するのは難しいです。一方で、XGBoostは決定木ベースのブースティングモデルであり、データ内に潜む複雑なパターンや非線形関係を柔軟に学習できるという大きな利点を持っています。

そのため、このハイブリッドモデルは、Prophetが見逃しがちな微細な変動や非線形的な外部要因の影響をXGBoostが補完する形で設計されており、両者の強みを生かした構造となっています。

結果として、Prophetの予測の安定性とXGBoostの高い非線形学習能力が組み合わさり、予測誤差を体系的に低減できるモデル構造が実現されています。

※ なお、複数の補正モデルを比較した結果、XGBoostが残差の非線形パターンを最も安定的に学習し、少ないデータでも過学習なく一貫した性能を発揮したことから、Prophetの限界を補完する手法として最も適していると判断しました。

4. 結果保存および可視化

予測結果は DB にテーブル形式で保存されます。
自動的にダッシュボードに反映され、予測値と実測値を比較し、誤差の変化を視覚的に確認することができます。
また、過去の予測結果は次回の学習時に再利用され、モデルが自ら改善される循環構造を持ちます。

5. 自動化および再チューニング構造

予測パイプラインは設定されたスケジュールに従って自動的に実行されるよう構成されています。
CRON ジョブを通じてモデル実行を管理し、結果はデータベースおよび可視化ダッシュボードに自動反映されます。
また、changepoint 検出頻度に応じてチューニング周期を動的に調整します。
変動性が低い時期には既存パラメータを維持し、変動性が高いときのみ自動的に最適パラメータを再探索し、運用効率と予測感度のバランスを維持します。

まとめると、HEARTCOUNT ABI の Prophet ベース予測モデルは、単なる時系列モデルではなく、データの変動性を検出し、自動で感度を調整し、残差を学習して誤差を補正する動的構造を持っています。
これが一般的な Prophet モデルとの最も大きな違いです。

Prophet+XGBoost 予測結果の分析および性能比較

HEARTCOUNT ABIで設計した予測モデルは、単純な Prophet モデルに比べて全体的な予測精度において向上した結果を示しました。
特に、変化が頻繁な区間や急激な価格変動が発生した区間においては、残差補正が予測の安定性確保において重要な役割を果たしたことが確認されました。
実際のデータで確認するために、価格が急騰した区間の事例を取り上げました。

시계열 예측 모델의 실제 사례 : 시세 예측의 정확도를 높인 Prophet + XGBoost 모델

下のグラフを見ると、Prophet 単独モデルは変動が少ない平穏な時期には良好な性能を示しましたが、急激な変動が発生した時期(7月末から8月)には、誤差が急増したことがわかります。

시계열 예측 모델의 실제 사례 : 시세 예측의 오차가 큰 prophet 단독 모델
実測値(緑の線)と予測値(グレーの線)の間の差が次第に大きくなっています

一般的に時系列予測では、MAPE(平均絶対パーセント誤差)が10%未満であれば、比較的優れた性能と評価され、実務への適用が可能だと判断されます。
Prophet 単独モデルの場合、8月の予測で MAPE 8.46% を記録し、十分に良好な結果を示しました(もちろん、複数のチューニング作業を通じて性能を向上させたモデルです)。

しかしこれは、実際の価格ベースでおよそ50~60円の誤差を意味しており、10円の変動にも敏感に反応する企業の立場からすれば、決して満足できる水準とは言えません。
そこで、私たちはこのような誤差をさらに削減するために、残差補正モデルを追加で組み合わせて予測精度を改善しました。

実際の結果を見ると、基本の Prophet モデルは変動性が大きい区間で残差が急激に大きくなる傾向がありましたが、補正モデルを適用した後は残差の幅が全体的に減少しました。
特に価格が急変する区間でも、誤差が速やかに安定するパターンが確認できました。
これは、追加補正を行ったモデルが Prophet では反映しきれなかった非線形な外部要因を新たに学習した結果であると解釈できます。

잔차 보정 보델 적용 후 잔차 폭이 감소한 Prophet + XGBoost 모델
오차의 분포가 평균 0을 중심으로 좁게 수렴하고 있는 그래프
誤差の分布が平均0を中心に狭く収束し、予測がより精密になりました

基本モデルと改良モデル(Prophet+XGBoost)の性能指標比較

以下の表は、同じ期間における基本 Prophet モデルと改良モデルの RMSE、MAPE の結果を比較した例です。

Prophet 모델과 Prophet + XGBoost모델의 RMSE, MAPE 비교

残差補正モデルを適用した結果、全体的な誤差指標が大きく改善されました。
これは、changepoint に基づくパラメータ調整とResidual(残差)補正を通じて、データの急激な変動区間においてもモデルが過学習することなく、トレンドを安定的に反映できた結果として解釈されます。

特に Prophet 単独モデルの場合、8月の予測区間では価格の急騰により誤差が大きくなる傾向が見られましたが、XGBoost による残差補正を行ったモデルは、こうした誤差パターンを学習し、短期的な変動性に対する予測精度を向上させました。

これは単に時系列のトレンドに従うだけでなく、予測値と実測値の差(残差)を同時に学習することにより、データの微細なパターンまで捉えることが可能になったということを意味します。

❤️
HEARTCOUNTに問い合わせ

ご利用シーンや導入に関するご相談など、お気軽にお問い合わせください。担当よりご案内させていただきます。

一緒に読むと役立つ記事

テキストをSQLに自動変換する技術、Text To SQL
Text-to-SQLは、SQLの文法に慣れていなくても、データに簡単にアクセスできるように作られた機能です。その特徴と使い方をご確認ください。
ダイナミック・プライシング(Dynamic Pricing)ダッシュボード、製造業マーケティングチームの課題解決
製造業・EC企業向け、ダイナミック・プライシングダッシュボード構築事例 ― リアルタイム価格モニタリングとデータ分析による戦略立案の方法をご紹介します。
韓国のテジョン市はどのように公正で効率的な人事分析システムを構築したのか?
公的機関の人事革新事例として、韓国のデジョン市の「Chat.HRA(チャット・エイチアールエー)」をご紹介します。 HEARTCOUNTのAIとビッグデータ技術で構築された人事情報分析システムが、公正な意思決定と効率的な業務運営を支援します。 今すぐお問い合わせいただき、詳細資料をご覧ください。