実験の管理
MLOps Desktopには実験管理機能が組み込まれています。実行履歴、実験のグループ化、バージョン管理付きモデルレジストリ、比較機能を提供します。すべてのデータはローカルのSQLiteに保存されます。
- 異なる設定で複数のパイプラインを実行済み
- クイックスタートを完了済み
Runsタブ
Section titled “Runsタブ”Runsタブには、すべてのパイプライン実行とメトリクスが表示されます。
すべての実行を日付順(新しい順)で表示します。
| カラム | 説明 |
|---|---|
| Name | 実行名(編集可能) |
| Pipeline | 使用したパイプライン |
| Experiment | 所属する実験 |
| Metrics | 主要メトリクス(AccuracyまたはR²) |
| Duration | 実行時間 |
| Status | Success/Failed |
実験ごとにグループ化して表示します。
▼ Titanic Classification(3実行) Run 1: Accuracy 0.82 Run 2: Accuracy 0.85 Run 3: Accuracy 0.87▼ Iris Baseline(2実行) Run 1: Accuracy 0.96 Run 2: Accuracy 0.97▼ 未分類(5実行) ...実行のアクション
Section titled “実行のアクション”実行をクリックすると以下が可能です。
- メトリクスを表示 — Metricsタブで詳細を確認
- 説明データを表示 — この実行のSHAP/重要度を読み込み
- メタデータを編集 — 表示名、メモ、タグを変更
- モデルを登録 — モデルレジストリに追加
- 削除 — 実行を削除(確認あり)
実験は関連する実行をグループ化するために使用します。
- ツールバーのExperimentドロップダウンをクリック
- + New Experimentを選択
- 名前と説明を入力
- Createをクリック
新しい実行は自動的にアクティブな実験に関連付けられます。
実験のステータス
Section titled “実験のステータス”| ステータス | 意味 |
|---|---|
| Active | 現在実行中の実験 |
| Completed | 完了した実験(アーカイブ候補) |
| Archived | デフォルト表示から除外 |
Runsタブで実験ステータスによるフィルタリングが可能です。
2-5個の実行を並べて比較できます。
- Runsタブで複数の実行を選択(Cmd+クリック)
- Compareをクリック
- 比較モーダルを確認
Run 1 Run 2 Run 3Accuracy 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 200max_depth 10 15 15learning_rate - - 0.1各行で最良の値がハイライトされます。
モデルレジストリ
Section titled “モデルレジストリ”Modelsタブでモデルバージョンを管理します。
モデルの登録
Section titled “モデルの登録”- Runsタブで成功した実行をクリック
- Register Modelを選択
- モデル名を入力(または既存のモデルを選択)
- 説明とタグを追加
- Registerをクリック
モデルステージ
Section titled “モデルステージ”各モデルバージョンにはステージがあります。
| ステージ | 目的 | 用途 |
|---|---|---|
| None | 登録直後 | 新規モデル |
| Staging | テスト/検証中 | 本番前の確認 |
| Production | 本番稼働中 | 現在の最良モデル |
| Archived | 非アクティブ | 過去のバージョン |
ステージ間の昇格:
None → Staging → Production → Archivedモデルのアクション
Section titled “モデルのアクション”- バージョン一覧 — すべてのバージョンを展開表示
- バージョン比較 — メトリクスを並べて比較
- 昇格/降格 — ステージを変更
- 詳細表示 — ファイルパス、形式、メトリクス
- 削除 — バージョンを削除(確認あり)
実行とモデルバージョンにタグを追加して整理できます。
タグ: baseline, tuned, production-candidate, bestRunsタブとModelsタブの両方でタグによるフィルタリングが可能です。
タグの使用例
Section titled “タグの使用例”| タグ | 用途 |
|---|---|
baseline | 比較基準となるモデル |
tuned | ハイパーパラメータ最適化後 |
production | 現在デプロイ中 |
experiment-v2 | 関連する実験のグループ化 |
best | 最高性能のモデル |
実行にコンテキストを追加できます。
表示名: "特徴量エンジニアリング付きRF"メモ: | - age_group特徴量を追加 - cabinカラムを削除(欠損値が多い) - Survivedで層化サンプリングタグ: [feature-engineering, v2]任意の実行でEdit Metadataからアクセスできます。
ベストプラクティス
Section titled “ベストプラクティス”実験でグループ化
Section titled “実験でグループ化”関連する実行を実験にまとめます。
実験: "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トライアル重要な実行にタグ付け
Section titled “重要な実行にタグ付け”良い結果が出たらすぐにタグを付けます。後から最良の実行を探すのは困難です。
デプロイ前の比較
Section titled “デプロイ前の比較”モデルを昇格させる前に:
- 現在の本番モデルと比較
- すべての主要メトリクスで改善を確認
- 説明データで特徴量重要度が妥当か確認
失敗した実行の整理
Section titled “失敗した実行の整理”失敗した実行やテスト実行を削除して履歴を整理します。フィルタで検索:
- Status: Failed
- Duration: 5秒未満(エラーの可能性)
データストレージ
Section titled “データストレージ”すべての追跡データはローカルに保存されます。
~/Library/Application Support/com.mlops.desktop/settings.dbテーブル構成:
runs— 実行のメタデータ、ステータス、時間run_metrics— 実行ごとのメトリクスmodels— モデルレジストリmodel_versions— バージョン、ステージ、タグexperiments— 実験のメタデータrun_annotations— 表示名、メモ、タグ
データのエクスポート
Section titled “データのエクスポート”外部分析用に実行履歴をエクスポートできます。
import sqlite3import 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)