【エムエルフロー】

MLflow とは?

💡 機械学習の実験ノートとモデル倉庫を一つにまとめた万能ツール
📌 このページのポイント
MLflow の4つのコンポーネント Tracking パラメータ記録 メトリクス記録 成果物の保存 実験管理 Projects 実行環境の定義 依存関係管理 再現可能な実行 再現性 Models モデルの標準形式 マルチFW対応 デプロイ連携 パッケージング Registry バージョン管理 ステージ管理 承認フロー モデル管理 MLのライフサイクル全体をカバー 実験 開発 デプロイ 運用 Python / R / Java / REST API 対応 ・ OSS(Apache 2.0)
MLflowのイメージ
ひよこ ひよこ

MLflowって何をするツールなの?

ペンギン先生 ペンギン先生

機械学習の「実験管理」と「モデル管理」を一元化するツールだよ。たとえば料理に例えると、レシピのメモ帳(実験記録)、完成した料理の写真アルバム(モデル保存)、レシピの改訂履歴(バージョン管理)が全部一つにまとまっている感じだね

ひよこ ひよこ

実験管理って何を記録するの?

ペンギン先生 ペンギン先生

MLflow Trackingという機能で、学習時のハイパーパラメータ学習率バッチサイズなど)、評価メトリクス(精度やロスなど)、使ったデータセット、生成されたモデルファイルなんかを全部記録するよ。コードを1行追加するだけで記録が始まるから導入が楽なんだ

ひよこ ひよこ

他にはどんな機能があるの?

ペンギン先生 ペンギン先生

大きく4つのコンポーネントがあるよ。Tracking(実験記録)、Projects(実行環境の再現)、Models(モデルのパッケージング・デプロイ)、Model Registry(モデルのバージョン管理とステージ管理)。この4つで機械学習のライフサイクル全体をカバーしているんだ

ひよこ ひよこ

他の似たようなツールと比べてどこが強いの?

ペンギン先生 ペンギン先生

最大の強みはオープンソースで特定のクラウドに縛られないことだね。Weights & BiasesやNeptuneは実験管理に特化してるけど有料プランが前提。MLflowは無料で使えて、Databricksのマネージド版もある。あとPyTorchTensorFlowscikit-learnなど主要フレームワークを横断的にサポートしている点も大きいよ

ひよこ ひよこ

小さいチームでも使えるの?

ペンギン先生 ペンギン先生

むしろ小さいチームにこそおすすめだよ。ローカルでファイルベースで動くから、最初はpip installしてすぐ使い始められる。チームが大きくなったらサーバーモードに切り替えて共有すればいいんだ

ひよこ ひよこ

最近のMLflowってどんな進化をしているの?

ペンギン先生 ペンギン先生

MLflow 2.0以降でLLM対応が大幅に強化されたよ。プロンプトの管理やLLMの評価(hallucination検出など)もTracking機能で記録できるようになったんだ。従来の機械学習だけじゃなく、生成AI時代のMLOpsにも対応し続けている注目のツールだよ

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「MLflow」って出てきたら「機械学習の実験とモデルをまとめて管理するオープンソースツール」と思えればだいたいOK!
📖 おまけ:英語の意味
「MLflow」 = 機械学習のフロー(流れ)
💬 ML(Machine Learning)とflow(流れ)を組み合わせた名前で、機械学習のワークフロー全体をスムーズにする、という意味が込められているよ
← 用語集にもどる