MLOpsとは
Machine Learning Operations
機械学習モデルの開発・検証・デプロイ・運用を継続的かつ再現可能な形で行うための一連のプラクティス
ひとことで言うと
機械学習モデルを作って終わりにせず、継続的に開発・運用していくための考え方や仕組み全般。
概要
MLOpsとは、ソフトウェア開発におけるDevOpsの考え方を機械学習に適用し、モデルの開発・学習・検証・デプロイ・監視までの一連のプロセスを継続的かつ再現可能な形で回すための実践・体制・ツール群を指す。データやコードのバージョン管理、実験管理、自動化されたパイプラインによる学習・デプロイ、本番環境でのモデル性能やデータドリフトの監視といった要素を含み、モデルを1度作って終わりにするのではなく、継続的に改善・再学習していく運用を前提とする。LLMを組み込んだアプリケーション特有の課題(プロンプト管理・非決定的な出力の評価等)を扱う派生分野としてLLMOpsが位置づけられる。
利点
- モデルの学習から本番デプロイまでのプロセスを自動化・標準化でき、リリースの速度と信頼性が向上する
- データやモデルのバージョン管理を徹底することで、問題発生時に特定のバージョンへ切り戻しやすくなる
- 本番環境での性能劣化やデータドリフトを継続的に監視でき、モデルの再学習タイミングを判断しやすくなる
欠点
- パイプラインや監視基盤の構築・維持に相応の初期投資と専門知識が必要になる
- 対象領域が広く、組織の規模やモデルの性質によって最適な実践やツールの組み合わせが変わる
比較
- LLMOps — LLMOpsはMLOpsの考え方をLLMを組み込んだアプリケーションに適用し、プロンプト管理や非決定的な出力の評価といったLLM特有の課題に対応したもの
- デプロイメントパイプライン — デプロイメントパイプラインはMLOpsが扱う要素の1つで、学習済みモデルを本番環境へ自動的に配置する仕組みにあたる
- MLflow — MLflowはMLOpsを実践するための代表的なオープンソースツールの1つで、実験管理・モデル管理・デプロイの機能を提供する