モデルを追跡、共有、分析できるように、Vertex AI SDK for Python には、ML モデルを ExperimentModel クラスにシリアル化し、モデルを Vertex AI experiments に記録する API が用意されています。
使用する最適なモデルを選択したら、Vertex AI Experiments から Vertex AI Model Registry にそのモデルを登録できます。
サポートされているフレームワークは、scikit-learn、XGBoost、Tensorflow です。
ML モデルの保存と記録
モデルを保存する
Vertex AI SDK には、ML モデルをシリアル化し、モデルを Cloud Storage にアップロードして、モデルを Vertex ML Metadata として表す save_model メソッドが用意されています。
Python
project: これらの ID は、 Google Cloud コンソールの [ようこそ] ページで確認できます。location: 利用可能なロケーションの一覧をご覧くださいmodel:(必須)。ML モデル。(Union["sklearn.base.BaseEstimator", "xgb.Booster", "tf.Module"])artifact_id: 省略可。アーティファクトのリソース ID。この ID は、metadataStore 内でグローバルに一意である必要があります。63 文字以下で、有効な文字は[a-z0-9_-]です。最初の文字に数字やハイフンを使用することはできません。uri: 省略可。モデルファイルを保存する gcs ディレクトリ。URI が指定されていない場合は、gs://default-bucket/timestamp-uuid-frameworkName-modelが使用されます。デフォルトのステージング バケットが設定されていない場合は、新しいバケットが作成されます。input_example: 省略可。各モデルは入力データを受け取り、予測を生成します。各モデルは、1 つの特定の入力形式(数値、文字列、2 次元配列など)を受け入れ、gcs URI に yaml ファイルとして保存されます。 list、dict、pd.DataFrame、np.ndarray を受け入れます。list 内の値はスカラーまたはリストである必要があります。辞書内の値は、スカラー、リスト、または np.ndarray にする必要があります。(Union[list, dict, pd.DataFrame, np.ndarray])。display_name: アーティファクトの表示名。
モデルを記録する
Vertex AI SDK には、log_model メソッドが用意されています。これにより、現在のテスト実行に対する Vertex ML Metadata アーティファクトを記録するために save_model および追加のステップをオーケストレートします。Vertex AI Experiments で複数の ML モデルを管理および分析するための log_model メソッド。
Python
experiment_name: テストの名前を指定します。 Google Cloud コンソールでテストのリストを表示するには、セクション ナビゲーションで [テスト] を選択します。run_name: 実行名を指定します。project: これらの ID は、 Google Cloud コンソールの [ようこそ] ページで確認できます。location: 利用可能なロケーションの一覧をご覧ください。model: 必須。ML モデル。(Union["sklearn.base.BaseEstimator", "xgb.Booster", "tf.Module"])uri: 省略可。モデルファイルを保存する gcs ディレクトリ。URI が指定されていない場合は、gs://default-bucket/timestamp-uuid-frameworkName-modelが使用されます。 デフォルトのステージング バケットが設定されていない場合は、新しいバケットが作成されます。input_example: 省略可。各モデルは入力データを受け取り、予測を生成します。各モデルは、1 つの特定の入力形式(数値、文字列、2 次元配列など)を受け入れ、gcs URI に yaml ファイルとして保存されます。 list、dict、pd.DataFrame、np.ndarray を受け入れます。list 内の値はスカラーまたはリストである必要があります。辞書内の値は、スカラー、リスト、または np.ndarray にする必要があります。(Union[list, dict, pd.DataFrame, np.ndarray])。display_name: 省略可。アーティファクトの表示名。
ExperimentModel をトラッキングする
テストモデルを取得する
get_experiment_model を使用して保存済みモデルを返すには、保存済みモデルのアーティファクト ID を渡します。
Python
project: これらの ID は、 Google Cloud コンソールの [ようこそ] ページで確認できます。location: 利用可能なロケーションの一覧をご覧ください。artifact_id: 必須: 既存のモデルのリソース ID。
テストモデルを取得する
get_experiment_models メソッドは、特定のテスト実行に記録されるすべての ExperimentModel のリストを取得します。
Python
run_name: 実行名を指定します。experiment: テストの名前を指定します。Google Cloud コンソールで、セクション ナビゲーションの [テスト] を選択すると、テストのリストを見つけることができます。project: これらの ID は、 Google Cloud コンソールの [ようこそ] ページで確認できます。location: 利用可能なロケーションの一覧をご覧ください。
モデル情報を取得する
get_model_info メソッドは、特定の ExperimentModel インスタンスのモデルのメタデータ(モデルクラス、フレームワーク タイプなど)を返します。
Python
artifact_id: 必須: 既存のExperimentModelのリソース ID。project: これらの ID は、 Google Cloud コンソールの [ようこそ] ページで確認できます。location: 利用可能なロケーションの一覧をご覧ください。
ExperimentModel を読み込む
モデルを読み込む
load_experiment_model メソッドを使用すると、ExperimentModel インスタンスをシリアル化解除して元の ML モデルに戻すことができます。
Python
artifact_id:(必須)。既存のExperimentModelのリソース ID。 例:artifact_id="my-sklearn-model"project: これらの ID は、 Google Cloud コンソールの [ようこそ] ページで確認できます。location: 利用可能なロケーションの一覧をご覧ください。
ExperimentModel を登録する
保存済みモデルを登録する
register_experiment_model API を使用すると、最小限の構成で、最適とみなされたモデルを Vertex AI Model Registry に登録できます。API は、モデルのフレームワークとバージョンに基づいてビルド済み予測コンテナを自動的に選択します。
Python
artifact_id:(必須)。既存のExperimentModelのリソース ID。project: これらの ID は、 Google Cloud コンソールの [ようこそ] ページで確認できます。location: 利用可能なロケーションの一覧をご覧ください。display_name: 省略可。登録済みモデルのユーザー定義の名前。
Google Cloud コンソールでテスト実行リストを表示する
- Google Cloud コンソールで [テスト] ページに移動します。
[テスト] に移動
テストのリストが表示されます。 - 確認するテストを選択します。
実行のリストが表示されます。
