コンテンツにスキップ

実験の管理

MLOps Desktopには実験管理機能が組み込まれています。実行履歴、実験のグループ化、バージョン管理付きモデルレジストリ、比較機能を提供します。すべてのデータはローカルのSQLiteに保存されます。

Runsタブには、すべてのパイプライン実行とメトリクスが表示されます。

すべての実行を日付順(新しい順)で表示します。

カラム説明
Name実行名(編集可能)
Pipeline使用したパイプライン
Experiment所属する実験
Metrics主要メトリクス(AccuracyまたはR²)
Duration実行時間
StatusSuccess/Failed

実行をクリックすると以下が可能です。

  • メトリクスを表示 — Metricsタブで詳細を確認
  • 説明データを表示 — この実行のSHAP/重要度を読み込み
  • メタデータを編集 — 表示名、メモ、タグを変更
  • モデルを登録 — モデルレジストリに追加
  • 削除 — 実行を削除(確認あり)

実験は関連する実行をグループ化するために使用します。

  1. ツールバーのExperimentドロップダウンをクリック
  2. + New Experimentを選択
  3. 名前と説明を入力
  4. Createをクリック

新しい実行は自動的にアクティブな実験に関連付けられます。

ステータス意味
Active現在実行中の実験
Completed完了した実験(アーカイブ候補)
Archivedデフォルト表示から除外

Runsタブで実験ステータスによるフィルタリングが可能です。

2-5個の実行を並べて比較できます。

  1. Runsタブで複数の実行を選択(Cmd+クリック)
  2. Compareをクリック
  3. 比較モーダルを確認
Run 1 Run 2 Run 3
Accuracy 0.82 0.85 0.87 ✓
Precision 0.79 0.83 0.85 ✓
Recall 0.78 0.81 0.84 ✓
F1 Score 0.78 0.82 0.84 ✓
パラメータ:
n_estimators 100 150 200
max_depth 10 15 15
learning_rate - - 0.1

各行で最良の値がハイライトされます。

Modelsタブでモデルバージョンを管理します。

  1. Runsタブで成功した実行をクリック
  2. Register Modelを選択
  3. モデル名を入力(または既存のモデルを選択)
  4. 説明とタグを追加
  5. Registerをクリック

各モデルバージョンにはステージがあります。

ステージ目的用途
None登録直後新規モデル
Stagingテスト/検証中本番前の確認
Production本番稼働中現在の最良モデル
Archived非アクティブ過去のバージョン

ステージ間の昇格:

None → Staging → Production → Archived
  • バージョン一覧 — すべてのバージョンを展開表示
  • バージョン比較 — メトリクスを並べて比較
  • 昇格/降格 — ステージを変更
  • 詳細表示 — ファイルパス、形式、メトリクス
  • 削除 — バージョンを削除(確認あり)

実行とモデルバージョンにタグを追加して整理できます。

タグ: baseline, tuned, production-candidate, best

RunsタブとModelsタブの両方でタグによるフィルタリングが可能です。

タグ用途
baseline比較基準となるモデル
tunedハイパーパラメータ最適化後
production現在デプロイ中
experiment-v2関連する実験のグループ化
best最高性能のモデル

実行にコンテキストを追加できます。

表示名: "特徴量エンジニアリング付きRF"
メモ: |
- age_group特徴量を追加
- cabinカラムを削除(欠損値が多い)
- Survivedで層化サンプリング
タグ: [feature-engineering, v2]

任意の実行でEdit Metadataからアクセスできます。

関連する実行を実験にまとめます。

実験: "Titanic - モデル選択"
Run 1: Logistic Regression
Run 2: Random Forest
Run 3: Gradient Boosting
実験: "Titanic - RFチューニング"
Run 1: n_estimators=100
Run 2: n_estimators=200
Run 3: Optuna 50トライアル

良い結果が出たらすぐにタグを付けます。後から最良の実行を探すのは困難です。

モデルを昇格させる前に:

  1. 現在の本番モデルと比較
  2. すべての主要メトリクスで改善を確認
  3. 説明データで特徴量重要度が妥当か確認

失敗した実行やテスト実行を削除して履歴を整理します。フィルタで検索:

  • Status: Failed
  • Duration: 5秒未満(エラーの可能性)

すべての追跡データはローカルに保存されます。

~/Library/Application Support/com.mlops.desktop/settings.db

テーブル構成:

  • runs — 実行のメタデータ、ステータス、時間
  • run_metrics — 実行ごとのメトリクス
  • models — モデルレジストリ
  • model_versions — バージョン、ステージ、タグ
  • experiments — 実験のメタデータ
  • run_annotations — 表示名、メモ、タグ

外部分析用に実行履歴をエクスポートできます。

import sqlite3
import pandas as pd
conn = sqlite3.connect(
"~/Library/Application Support/com.mlops.desktop/settings.db"
)
runs = pd.read_sql("SELECT * FROM runs", conn)
metrics = pd.read_sql("SELECT * FROM run_metrics", conn)