演習:モニタリング計画を策定しよう
「システムを安定稼働させるには、モニタリング計画が不可欠だ。」
田中VPoEが本番運用のシナリオを想定する。
「精度モニタリング、再学習トリガー、ビジネスKPIの追跡。これらを統合した運用計画を策定してくれ。」
ミッション概要
需要予測エージェントの本番運用に向けたモニタリング計画を策定する。精度評価、再学習設計、KPI追跡を含む包括的な運用計画を作成する。
Mission 1: 精度モニタリング設計(15分)
タスク:
- カテゴリ別に精度目標(MAPE)を設定する
- モニタリングの頻度と方法を定義する
- 精度劣化時のエスカレーションフローを設計する
- ダッシュボードに表示すべき指標をリストアップする
解答例
精度モニタリング計画
■ カテゴリ別精度目標
| ランク | カテゴリ例 | MAPE目標 | 監視頻度 |
|--------|----------|---------|---------|
| A(売上上位) | GROCERY I, BEVERAGES | < 10% | 日次 |
| B(売上中位) | CLEANING, DAIRY | < 15% | 週次 |
| C(売上下位) | BOOKS, BABY CARE | < 25% | 月次 |
■ モニタリング方法
1. 日次: 前日の予測と実績の比較、アラート判定
2. 週次: 7日ローリングMAPEの推移確認
3. 月次: カテゴリ別精度レポート、ドリフト検出
■ エスカレーションフロー
Level 1: MAPE > 目標の1.2倍 → Slackで通知、データチームが確認
Level 2: MAPE > 目標の1.5倍 → メール通知、1営業日以内に原因分析
Level 3: MAPE > 目標の2.0倍 → 緊急対応、ベースラインモデルに切替
■ ダッシュボード指標
- カテゴリ別MAPE(日次推移)
- 予測バイアス(過大/過小の偏り)
- 異常検知アラート件数
- モデルバージョンと最終学習日
Mission 2: 再学習パイプライン設計(15分)
タスク:
- 再学習トリガーの条件を定義する(定期/精度/ドリフト)
- 再学習パイプラインのステップを設計する
- チャンピオン/チャレンジャー方式のルールを定義する
- ロールバック条件を定義する
解答例
再学習パイプライン設計
■ トリガー条件
1. 定期: 毎週月曜 AM 3:00
2. 精度劣化: 直近7日のMAPEが目標の1.5倍超(ただし24時間以内の再学習はスキップ)
3. ドリフト: KS検定で主要5特徴量のうち2つ以上がp < 0.01
4. イベント: 新カテゴリ追加、店舗の開閉、大規模システム変更
■ パイプラインステップ
1. データ収集: 直近365日のデータを取得
2. 特徴量作成: create_all_features()
3. 新モデル学習: LightGBM + 固定ハイパーパラメータ
4. バリデーション: 直近14日のホールドアウトで評価
5. 比較: 新モデル vs 現行モデル
6. デプロイ/スキップ: 判定ルールに基づく
7. ログ記録: 全ステップの結果をDB保存
■ チャンピオン/チャレンジャールール
- 新モデルのMAPEが現行より2%以上改善 → デプロイ
- 新モデルのMAPEが現行と同等(±2%以内) → 維持
- 新モデルのMAPEが現行より悪い → 棄却
- デプロイ後24時間はモニタリング強化
■ ロールバック条件
- デプロイ後24時間以内にMAPEが現行比+5%以上劣化
- 予測値に異常(負の値、前日比10倍以上等)
- システムエラー率が1%以上
Mission 3: ビジネスKPI追跡計画(15分)
タスク:
- 追跡すべきビジネスKPIを5つ以上定義する
- 各KPIの計測方法、頻度、目標値を設定する
- ML指標との連動関係を明確にする
- 月次経営レポートのテンプレートを作成する
解答例
ビジネスKPI追跡計画
■ KPI定義
| KPI | 計測方法 | 頻度 | 現状 | 目標 |
|-----|---------|------|------|------|
| 在庫回転率 | 年間売上/平均在庫 | 月次 | 12回 | 15回 |
| 欠品率 | 欠品日数/営業日数 | 週次 | 8% | 3% |
| 廃棄率 | 廃棄数/仕入数 | 月次 | 5% | 2% |
| 在庫日数 | 平均在庫/日次売上 | 週次 | 30日 | 24日 |
| 予測活用率 | 予測ベース発注/全発注 | 月次 | 0% | 80% |
| コスト削減額 | 欠品損失+廃棄コスト削減 | 月次 | 基準 | -30% |
■ ML指標との連動
MAPE改善 → 在庫回転率向上、欠品率低下
過小予測削減 → 欠品率低下
過大予測削減 → 廃棄率低下、在庫日数短縮
■ 月次レポートテンプレート
1. エグゼクティブサマリー(KPI一覧と前月比)
2. 予測精度レポート(カテゴリ別MAPE推移)
3. 在庫最適化効果(コスト削減額の内訳)
4. アラート統計(発報件数、対応状況)
5. 次月の改善計画
Mission 4: 運用体制と障害対応(15分)
タスク:
- 運用チームの役割と責任を定義する
- 日次/週次/月次の運用タスクを整理する
- 障害発生時の対応フローを設計する
- SLA(サービスレベル合意)を定義する
解答例
運用体制
■ 役割
| 役割 | 担当 | 責任 |
|------|------|------|
| モデルオーナー | データサイエンティスト | 精度管理、再学習判断 |
| 運用オペレーター | MLOps | パイプライン運用、監視 |
| ビジネスオーナー | 物流マネージャー | KPI管理、業務判断 |
| エスカレーション先 | VPoE | 重大障害時の最終判断 |
■ 運用タスク
日次: アラート確認、精度確認、異常対応
週次: 精度レポート作成、再学習実行判断
月次: KPIレビュー、モデル改善計画策定
■ 障害対応フロー
1. 検知(自動アラート or 手動報告)
2. 一次対応(ベースラインモデルへの切替: 15分以内)
3. 原因調査(データ異常? モデル劣化? システム障害?)
4. 恒久対応(モデル再学習 or バグ修正)
5. 振り返り(ポストモーテム実施)
■ SLA
- 予測提供時間: 毎朝 6:00 までに当日〜7日先の予測を提供
- 可用性: 99.5%(月間ダウンタイム 3.6時間以内)
- 精度保証: Aランクカテゴリ MAPE 15%以内
- 障害復旧: Critical 1時間以内、Warning 4時間以内
達成度チェック
- カテゴリ別の精度目標とモニタリング方法を定義した
- 再学習パイプラインとトリガー条件を設計した
- ビジネスKPIの定義と追跡計画を策定した
- 運用体制と障害対応フローを設計した
推定所要時間: 60分