MLOps
機械学習モデルの精度は、利用の開始時点で最も精度がよい。その後、環境が変化を予測をするにつれて悪化する。この現象はコンセプトドリフト(英語版)として知られており、機械学習モデルが予測しようとしている目的変数の統計的特性が、予期せぬ方法で時間の経過とともに変化することが原因となる。この問題を解決するには機械学習モデルを固定のモデルではなく、継続的に再訓練することで環境の変化に適応する必要がある。
CRISP-DM(英語版)に代表されるような機械学習のモデル構築プロセスではビジネス理解、データ特性の理解、データの前処理、モデルの訓練、モデルの評価といったプロセスを繰り返して完成した精度の良いモデルを本番環境へ適用する。このプロセスはステップや反復が多く時間がかかるものであり、なおかつ収集されたデータが変わるたびにこのプロセスを繰り返すことは非常に手間と時間がかかる課題がある。
ソフトウェア開発ライフサイクル全体におけるワークロードの管理は、従来からDevOpsの概念があった。機械学習プロジェクトにDevOpsを適用した場合、モデルトレーニング等を含むのCI/CDのプロセス管理やデータサイエンティストとデータエンジニアの職種の役割分担など多数の機械学習特有の課題を考慮する必要が生まれた。その結果DevOpsをベースに機械学習プロジェクトに合理化された手法がMLOpsとして概念化された。
主に実験的な機械学習モデルを本番システムに組み込むプロセスとして用いられる。機械学習モデルは、隔離された実験システムでテスト・開発され、アルゴリズムを起動する準備ができたら、データサイエンティスト、保守運用担当者、機械学習エンジニアの間で MLOps を実践し、アルゴリズムを本番システムに移行する。MLOps は、DevOps や DataOps のアプローチと同様に、自動化を進めて本番モデルの品質を向上させるとともに、ビジネスや規制の要件にも焦点を当てている。MLOps は、一連のベストプラクティスとしてスタートしたが、機械学習のライフサイクル管理のための独立したアプローチへと徐々に進化している。 MLOps は、モデルの生成(ソフトウェア開発ライフサイクル、継続的インテグレーション/継続的デリバリー)、編成、デプロイメントの統合から、健全性、診断、ガバナンス、ビジネス指標に至るまで、ライフサイクル全体に適用される。