予測分析による需要予測事例

2026.04.28
予測分析による需要予測事例

予測分析による需要予測事例

売れ行きは「なんとなく」ではなく、曜日・気温・価格・販促といった要素の合成波です。予測精度は在庫だけでなく人員配置や配送スロットにも直結します。ポイントは、意思決定単位に合わせて粒度と指標を決め、運用できる形で回すことです。

意思決定に刺さる需要予測の基本設計

予測目的と粒度を先に固定する

発注量最適化が目的なら、SKU×店舗×日(あるいは時間)の粒度が基本です。ECの配送計画なら、カテゴリ×エリア×時間帯で十分なこともあります。予測地平はリードタイム+バッファ(例:2〜14日)に設定し、P50(中央値)だけでなくP90など分位点を出せば安全在庫に直結します。

評価指標は現場の痛みに合わせる

MAPEやWAPEを全体で見るだけでは偏りを拾えません。品切れコストが高いなら上振れ・下振れを分け、P90のサービスレベルを同時に追います。ベースラインは「前年同日」「直近同曜日移動平均」を必ず置き、モデル導入の勝ちを明確化します。

効く特徴量の作り方とデータ前処理

予測精度はモデル選定より特徴量設計で決まります。現場で再現できる情報に寄せましょう。

  • カレンダー: 曜日、祝日、給料日、学校行事、セール開始/終了フラグ
  • 天気: 最高/最低気温、降水量、前日比、閾値超えフラグ(猛暑・大雨)
  • 価格と販促: 価格指数、値引率、クーポン配布、チラシ露出量
  • 季節性/履歴: 7/14/28日ラグ、移動平均、年周期のフーリエ項
  • 在庫・陳列: 前日在庫、フェイス数、欠品フラグ(リークに注意)

欠損は直近補完かセンサー由来なら「観測欠損フラグ」で併用。データ漏洩を避けるため、集計は予測時点より未来を見ないウィンドウで作ります。SQLやPythonの集計は人的ミスが出やすいので、Copilotでクエリの静的チェック、ChatGPTでケース分けの抜け漏れ確認、Geminiで天気API仕様の要点抽出、要件整理はClaudeで論点分解、のように生成AIを補助輪として使うとスピードと品質が両立します。

身近な企業活用例:地域スーパーの失敗と再起

以前は月次売上の前年同月比で発注係数を調整していましたが、猛暑週の飲料欠品、雨天週の惣菜廃棄が続発。品切れ率6%、廃棄率18%という状況でした。

改善では、SKU×店舗×日の需要予測に切替。POS、天気、カレンダー、販促のデータを統合し、勾配ブースティングでP50/P90を同時推定。特徴量は「最高気温」「降水量」「給料日前後±3日」「チラシ露出」「7/14/28日ラグ」。検証は時系列のローリング・オリジンで8週バックテストし、ベースライン(前年同日・移動平均)対比でWAPEを12%→7.6%に。

運用は、P50を基準発注、P90−P50を安全在庫に。リードタイム1日の品は安全係数k=0.6、3日の品はk=0.9で調整し、廃棄リスクの高い惣菜はkを0.3に抑えるポリシーを設定。結果、3か月で品切れ率6%→3%、廃棄率18%→11%、粗利率は+1.2pt。人員計画も曜日×時間帯の来客予測を共有し、ピーク帯のレジ待ち時間を平均18%短縮しました。失敗要因だった「月次の粗い粒度」と「販促反映の遅れ」を、日次×特徴量設計と週次再学習で解消したのが決め手です。

モデル選定と運用の勘所

シンプルに始めて継続監視する

カテゴリやSKU数が多い場合、まずは階層別のベースライン(階層的季節分解+勾配ブースティング)で着手し、需要薄なロングテールは親カテゴリ予測を子に配賦。評価はセグメント別WAPE(上位SKU・新商品・低頻度)を出し、意思決定がぶれる箇所を特定します。

再学習とドリフト検知

価格政策や気候が変われば分布も動きます。週次のMAPE・P90サービスレベルを店舗×カテゴリでモニタし、PSIや残差の自己相関でドリフト兆候を検出。閾値超過で特徴量重要度の変化をレビューし、特徴量ストア経由で再学習を自動実行。ABテストは店舗単位で実施し、在庫回転と品切れのトレードオフを2週間で評価します。

需要予測は単発のPoCより、データ基盤・特徴量管理・学習/推論パイプラインが一体になった運用で価値が出ます。粒度と指標を現場の意思決定に合わせ、外部データと分位点予測を取り込み、生成AIを安全に補助利用する。この地道な積み上げこそ、データ解析プラットフォーム事業が提供する“回り続ける予測”の本質といえます。