MLOpsとは

MLOps(Machine Learning Operations)は、機械学習モデルを開発環境から本番環境へデプロイし、継続的に監視・改善するためのエンジニアリング実践です。DevOpsとデータサイエンスを融合した分野です。

機械学習のライフサイクル

データ収集→特徴エンジニアリング→モデル学習→評価→デプロイ→監視→再学習→...

MLOpsはこのサイクル全体を自動化・再現可能にすることを目指します。

MLOpsの主要コンポーネント

コンポーネント ツール 目的
実験管理 MLflow・W&B パラメータ・メトリクスの記録
モデルレジストリ MLflow・SageMaker モデルバージョン管理
特徴量ストア Feast・Tecton 特徴量の一元管理・再利用
モデルサービング BentoML・Seldon APIとしてモデルを公開
モデル監視 Evidently・Arize データドリフト・性能劣化の検出
パイプライン Kubeflow・ZenML ML処理の自動化

モデルデプロイの3つのパターン

バッチ推論:定期的に大量データを処理するバッチジョブとして実行。リアルタイム性は不要だが処理量が大きい場合に有効。

オンライン推論(REST API):リクエストごとにリアルタイムで推論を返すAPI形式。FastAPI + Docker + Kubernetes が一般的な構成。

エッジ推論:TensorFlow Lite・ONNXで量子化したモデルをデバイス上で動かす。スマートフォン・IoTデバイスへのデプロイ。

データドリフトとモデル劣化への対処

本番環境では時間の経過とともに入力データの分布が変化し(データドリフト)、モデルの精度が劣化します。定期的な再学習と監視ダッシュボードで早期発見・対処する仕組みが必須です。