0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【機械学習】MLflowで実験結果を「可視化・比較」する

0
Last updated at Posted at 2026-02-17

ある日、過去の実験結果を見返そうとして、手が止まりました。

  • 「このスコア、どの実験の結果だっけ?」
  • 「AUCが一番高かったのって、どの条件だった?」
  • 「似たような実験が多すぎて、違いが分からない」

ノートブックは大量にあり、メモも一応残っている。
でも 実験結果を横並びで比較できない

「設定は覚えていなくてもいいから、せめて結果だけでも一覧で見たい」

そう思って使い始めたのが MLflow でした。

この記事では、

  • 実験結果を手作業で管理することの限界
  • MLflowを使うと何が楽になるのか
  • 最低限押さえておきたい使い方

を、実体験ベースでまとめます。

なぜ「実験結果の管理」が難しくなるのか

実験管理というと、

  • 設定ファイルをどう管理するか
  • パラメータをどう再現するか

に目が向きがちですが、実際に困るのは 結果の整理 です。

例えば、

  • accuracy / AUC / loss をメモしているだけ
  • CSVやスプレッドシートに転記している
  • ノートブックを開いてセルを探し直す

このやり方だと、

  • 実験数が増えるほど追えなくなる
  • 条件差分を見落とす
  • 「結局どれが良かったの?」が分からない

という状態になりがちです。

MLflowは、この「結果の整理・比較」を仕組みで解決するツールです。

MLflowとは何をしてくれるツールか

MLflowは、機械学習の実験結果を管理・可視化するためのツールです。

主に次のことができます。

  • 実験結果(accuracy, loss など)を自動で記録
  • 実験ごとのパラメータを保存
  • 結果を一覧表示・横並び比較
  • Web UI で直感的に確認

一言で言うと、「実験結果をあとから比較できる形で残す仕組み」です。

MLflowのインストール

pip install mlflow

MLflowの基本概念

MLflowでは、実験を次の2階層で管理します。

  • Experiment:実験のまとまり(例:LightGBMの検証)
  • Run:その中の1回の実行

1回モデルを学習・評価するごとに、
1つの Run が作られるイメージです。

最小構成の使い方

import mlflow

# 実験名を指定
mlflow.set_experiment("baseline_experiment")

with mlflow.start_run():
    # パラメータを記録
    mlflow.log_param("model", "LightGBM")
    mlflow.log_param("num_leaves", 40)

    # 評価指標を記録
    mlflow.log_metric("auc", 0.82)
    mlflow.log_metric("accuracy", 0.75)

これだけで、

  • どんな条件で
  • どんな数値が出たか

が MLflow に記録されます。

MLflow UIで結果を確認する

ターミナルで以下を実行します。

mlflow ui

ブラウザで
http://localhost:5000
にアクセスすると、実験結果が一覧表示されます。

MLflowを使ってよかった点

① 実験結果を一覧で見られる

ノートブックを開き直さなくても、

  • 実験名
  • パラメータ
  • accuracy / AUC / loss

が一覧で確認できます。


② 横並びで比較できる

複数の Run を選択して Compare を押すと、

  • どのパラメータを変えたのか
  • それで結果がどう変わったのか

を一目で確認できます。

「この改善、効いてたっけ?」がすぐ分かるようになりました。


③ グラフで推移を確認できる

log_metric を使っていれば、

  • 学習の進行
  • スコアの変化

も自動でグラフ化されます。

細かい可視化コードを書かなくていいのは、
地味ですがかなり助かります。

設定管理は別のツールに任せるのがおすすめ

MLflowは 結果の管理・比較 に強い一方で、

  • 設定ファイルの構造化
  • 実行ごとのディレクトリ管理

は得意ではありません。

そのため、

  • 設定管理 → 別ツール
  • 結果の可視化・比較 → MLflow

と役割を分けるのがおすすめです。

設定管理については、
別の記事で Hydra を使った方法を紹介しています。

👉 【機械学習】Hydraで「再現できない実験」とおさらば

おわりに

MLflowを使い始めてから、

  • 「どの実験が一番良かったか」
  • 「何を変えたら改善したのか」

を感覚ではなく、画面を見て判断できるようになりました。

実験管理というと難しそうに聞こえますが、
まずは 結果を記録して並べるだけでも、作業効率は大きく変わります。

同じように、

  • 実験結果が散らかってきた
  • 比較がつらくなってきた

と感じている方の参考になれば嬉しいです。

参考文献

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?