MLFlowチュートリアル
MLOpsはエンドツーエンドの機械学習プロジェクトのライフサイクルにとって極めて重要です。Altair RapidMinerプラットフォームは、水平スケーラブルなワークロード実行アーキテクチャを提供し、多数のモデルのトレーニングを含むさまざまなタスクやワークロードの高度な並列実行を可能にし、MLFlowエクステンションに基づく実験としてその特性やパフォーマンスをトラッキングします。
- 実験のトラッキング: 実験はMLFlowにおける主要な組織構造です。これは、可視化、検索、比較を可能にする実行のコレクションです。実行では、トレーニングワークフローの1回の実行で、パフォーマンス、メトリクス、その他のパラメータを含むことができます。
- モデルの登録: Altair RapidMinerのモデル登録は多様なモデルメタデータ、ハイパーパラメータ、ワークフロー、コード、およびモデルインスタンス(トレーニング済みの決定木やニューラルネットモデルなど)の保存を含む、実稼働モデルを登録および管理します。
MLOps機能を使用するには、Altair AI StudioのマーケットプレイスからMLFlowエクステンションをインストールします。
実験のトラッキング
例: タイタニック号の生存予測実験
Altair RapidMinerプラットフォームが機械学習実験をトラッキングする機能をどのように提供しているかを示すために、Altair AI Studioに含まれるTitanicデータセットを使用して、MLFlowで実験を作成し、決定木モデルをトレーニングし、各トレーニング実行のさまざまなメトリクスをログに記録します。
接続の作成
MLFlowサーバーへの接続を追加し、リポジトリに保存します。MLFlowトラッキングサーバーのURLを指定します。必要に応じて、認証方法を設定します。
実験の作成
接続を設定した後、Create Experimentオペレータを使用して、MLFlowトラッキングサーバーに新規実験を作成します。パラメータの実験名を「Titanic survival prediction」に設定し、ワークフローを実行します。これで、MLFlowサーバーに作成された実験を確認できます。
Create RunおよびLog Runオペレータを使用すると、モデルトレーニングワークフロー中に実験IDを記録し、使用することができます。このオペレータはマクロとして実験IDを設定することもできます。
モデルトレーニング実行のログ
実験を設定した後、最適化とログパフォーマンスメトリックスを使用して、各反復の決定木アルゴリズムをトレーニングします。ワークフローを作成し、MLFlowエクステンションのCreate RunとLog Runオペレータを使用します。以下のスクリーンショットは、Optimize Parameters (evolutionary) オペレータが決定木アルゴリズムをトレーニングするサンプルワークフローです。ログに記録されるパフォーマンスメトリクスは、精度、絶対誤差、相対誤差、二乗平均平方根誤差です。
トレーニングワークフローを実行し、MLFlowトラッキングサーバーで実行を表示します。実行結果には、ログに記録されたパフォーマンスメトリクス、パラメータ、および学習済みモデルの成果物が含まれます。
トラッキングサーバー上で以前の実行を比較し、ログに記録されたメトリクスを分析し、モデルの動作を理解することもできます。
モデルの登録
トレーニングワークフロー中に生成されたモデルの成果物は、MLFlow Modelレジストリに登録することができます。「Titanic Survival」という新規モデルを作成し、登録するワークフローを作成することができます。
トレーニングフェーズで作成されたワークフローに、Create Model Versionオペレータを追加し、実行ごとにモデルの新規バージョンを登録することができます。
ワークフローが実行されると、モデルの新規バージョンが作成されます。実行ごとに作成されたモデルのバージョンを確認するには、MLFlowサーバーのモデル登録ページを確認します。
移行
ステージングでモデルを検証した後、Transition Stageオペレータを使用してモデルを本番環境に移行することができます。そのためには、レジストリから移行する最新モデルのバージョンを指定します。既存のバージョンをアーカイブするオプションを選択することもできます。
実行後、モデル登録のページでProduction状態に更新された最新モデルのバージョンを確認することができます。