このページでは、Agent Platform で TensorFlow Keras トレーニング アプリケーションを実行する方法について説明します。このモデルは、花の画像を種類別に分類できる画像分類モデルをトレーニングします。
このチュートリアルには複数のページが含まれます。カスタム画像分類モデルのトレーニング
各ページは、前のページのチュートリアルの手順を実施済みであることを前提としています。
以降の内容は、チュートリアルの最初のページで作成した Cloud Shell 環境を使用していることを前提としています。元の Cloud Shell セッションをすでに閉じてしまった場合は、次の手順でその環境に戻ることができます。-
コンソールで Cloud Shell をアクティブにします。 Google Cloud
-
Cloud Shell セッションで次のコマンドを実行します。
cd hello-custom-sample
カスタム トレーニング パイプラインを実行する
このセクションでは、Cloud Storage にアップロードしたトレーニング パッケージを使用して Agent Platform カスタム トレーニング パイプラインを実行する方法について説明します。
コンソールの [Agent Platform] セクションで、 [トレーニング パイプライン] ページに移動します。 Google Cloud
[作成] をクリックして、[新しいモデルのトレーニング] ペインを開きます。
トレーニング方法の選択ステップで、次の手順を行います。
[データセット] プルダウン リストで、[管理されているデータセットなし] を選択します。この 特定のトレーニング アプリケーションは、マネージド Agent Platform データセットではなく TensorFlow Datasets ライブラリからデータを読み込みます。
[カスタム トレーニング(上級者向け)] が選択されていることを確認します。
[続行] をクリックします。
[モデルの詳細] ステップの [名前] フィールドに「
hello_custom」と入力します。[続行] をクリックします。[トレーニング コンテナ] ステップで、Cloud Storage にアップロードしたトレーニング パッケージを使用するために必要な情報を Agent Platform に提供します。
[Prebuilt container] を選択します。
[モデル フレームワーク] プルダウン リストで [TensorFlow] を選択します。
[モデル フレームワークのバージョン] プルダウン リストで、[2.3] を選択します。
[パッケージの場所] フィールドに「
cloud-samples-data/ai-platform/hello-custom/hello-custom-sample-v1.tar.gz」と入力します。[Python モジュール] フィールドに「
trainer.task」と入力します。trainerは tarball の Python パッケージの名前です。task.pyにはトレーニング コードが含まれています。trainer.taskは、Agent Platform で実行するモジュールの名前です。[モデル出力ディレクトリ] フィールドで、[Browse] をクリックします。[フォルダの選択] ペインで次の手順を行います。
Cloud Storage バケットに移動します。
[新しいフォルダを作成] をクリックします。
新しいフォルダの名前を
outputとします。次に [作成] をクリックします。[選択] をクリックします。
フィールドの値が
gs://BUCKET_NAME/outputであることを確認します。ここで、BUCKET_NAME は Cloud Storage バケットの名前です。この値は、Agent Platform の
baseOutputDirectoryAPI フィールドに渡されます。この値に基づいて、トレーニング アプリケーションが実行時にアクセスする 複数の環境変数が設定されます。たとえば、このフィールドを
gs://BUCKET_NAME/outputに設定すると、Agent Platform は 環境変数をgs://BUCKET_NAME/output/modelに設定します。AIP_MODEL_DIRトレーニングが終了すると、Agent Platform はAIP_MODEL_DIRディレクトリのアーティファクトを使用してモデルリソースを作成します。詳しくは、この フィールドで設定される環境変数をご覧ください。
[続行] をクリックします。
オプションの [ハイパーパラメータ] ステップで、[Enable hyperparameter tuning] チェックボックスがオフになっていることを確認します。このチュートリアルでは、ハイパーパラメータ調整は使用しません。[続行] をクリックします。
[コンピューティングと料金] ステップで、カスタム トレーニング ジョブのリソースを割り当てます。
[リージョン] プルダウン リストで、[us-central1(アイオワ)] を選択します。
[マシンタイプ] プルダウン リストで、[標準] セクションから [n1-standard-4] を選択します。
このチュートリアルでは、アクセラレータやワーカープールを追加しないでください。[続行] をクリックします。
[予測コンテナ] ステップで、Agent Platform が予測を行うために必要な情報を提供します。
[Prebuilt container] を選択します。
[Prebuilt container settings] セクションで、次の操作を行います。
[モデル フレームワーク] プルダウン リストで [TensorFlow] を選択します。
[モデル フレームワークのバージョン] プルダウン リストで、[2.3] を選択します。
[アクセラレータ タイプ] プルダウン リストで、[なし] を選択します。
[モデル ディレクトリ] フィールドの値が
gs://BUCKET_NAME/outputになっていることを確認します。ここで、BUCKET_NAME は Cloud Storage バケットの名前です。これは、前のステップで指定した [Model output directory] の値と一致します。
[予測 schemata] セクションのフィールドは空白のままにします。
[トレーニングを開始] をクリックして、カスタム トレーニング パイプラインを開始します。
[トレーニング] ページに、hello_custom という名前の新しいトレーニング パイプラインが表示されます(ページの更新が必要になる場合があります)。トレーニング パイプラインは、次の 2 つの主要な処理を行います。
トレーニング パイプラインが、
hello_custom-custom-jobという名前のカスタムジョブ リソースを作成します。しばらくすると、[トレーニング] セクションの [CUSTOM JOB] ページにこのリソースが表示されます。カスタムジョブは、このセクションで指定されたコンピューティング リソースを使用してトレーニング アプリケーションを実行します。
カスタムジョブが完了すると、トレーニング パイプラインにより、トレーニング アプリケーションが作成したアーティファクトが検出されます。このアーティファクトは Cloud Storage バケットの
output/model/ディレクトリに作成されます。これらのアーティファクトを使用してモデルリソースを作成します。
トレーニングをモニタリングする
トレーニング ログを表示する方法は次のとおりです。
コンソールの [Agent Platform] セクションで、 [**カスタムジョブ**] ページに移動します。 Google Cloud
作成した
CustomJobの詳細を表示するには、リスト内のhello_custom-custom-jobをクリックします。ジョブの詳細ページで、[ログを表示] をクリックします。
トレーニング済みのモデルを表示する
カスタム トレーニング パイプラインが完了すると、 コンソール Google Cloud の [Agent Platform] セクションの [**モデル**] ページにトレーニング済みモデルが表示されます。
モデルの名前は hello_custom です。
次のステップ
このチュートリアルの次のページの説明に沿って、トレーニング済みの ML モデルから予測を行います。