本頁面說明如何在 Agent Platform 上執行 TensorFlow Keras 訓練應用程式。這個模型會訓練圖片分類模型,依類型分類花卉。
本教學課程包含多個頁面:訓練自訂圖片分類模型。
每個頁面都假設您已執行本教學課程前幾頁的操作說明。
本文件其餘部分假設您使用的是按照本教學課程第一頁建立的相同 Cloud Shell 環境。如果原本的 Cloud Shell 工作階段已關閉,您可以按照下列步驟返回環境:-
在 Cloud de Confiance 控制台啟用 Cloud Shell。
-
在 Cloud Shell 工作階段中,執行下列指令:
cd hello-custom-sample
執行自訂訓練管道
本節說明如何使用上傳至 Cloud Storage 的訓練套件,執行 Agent Platform 自訂訓練管道。
前往 Cloud de Confiance 控制台「Agent Platform」部分的「Training pipelines」(訓練管道) 頁面。
按一下 「Create」(建立),開啟「Train new model」(訓練新模型) 窗格。
在「Choose training method」(選擇訓練方法) 步驟中,執行下列操作:
在「Dataset」(資料集) 下拉式選單中,選取「No managed dataset」(沒有代管資料集)。這個訓練應用程式會從 TensorFlow Datasets 程式庫載入資料,而非代管的 Agent Platform 資料集。
確認已選取「Custom training (advanced)」(自訂訓練 (進階))。
按一下「繼續」。
在「Model details」(模型詳細資料) 步驟中,在「Name」(名稱) 欄位中輸入
hello_custom。接著點按「Continue」。在「Training container」(訓練容器) 步驟中,提供 Agent Platform 所需的資訊,以便使用您上傳到 Cloud Storage 的訓練套件:
選取「Prebuilt container」(預先建構的容器)。
在「Model framework」(模型架構) 下拉式選單中,選取「TensorFlow」。
在「Model framework version」(模型架構版本) 下拉式選單中選取「2.3」。
在「Package location」(套件位置) 欄位中輸入
cloud-samples-data/ai-platform/hello-custom/hello-custom-sample-v1.tar.gz。在「Python module」(Python 模組) 欄位中輸入
trainer.task。trainer是 tarball 中的 Python 套件名稱,task.py則包含訓練程式碼。因此,trainer.task是您要 Agent Platform 執行的模組名稱。在「Model output directory」(模型輸出目錄) 欄位中,按一下「Browse」(瀏覽)。在「Select folder」(選取資料夾) 窗格中,執行下列操作:
前往 Cloud Storage bucket。
按一下「建立新資料夾」圖示 。
將新資料夾命名為
output。接著點選「建立」。按一下「選取」。
確認該欄位的值為
gs://BUCKET_NAME/output,其中 BUCKET_NAME 是 Cloud Storage bucket 的名稱。這個值會傳遞至 Agent Platform 的
baseOutputDirectoryAPI 欄位,設定訓練應用程式執行時可存取的數個環境變數。舉例來說,如果將這個欄位設為
gs://BUCKET_NAME/output,Agent Platform 會將AIP_MODEL_DIR環境變數設為gs://BUCKET_NAME/output/model。訓練結束時,Agent Platform 會使用AIP_MODEL_DIR目錄中的任何構件建立模型資源。進一步瞭解這個欄位設定的環境變數。
按一下「繼續」。
在選用的「Hyperparameters」(超參數) 步驟中,確認已取消勾選「Enable hyperparameter tuning」(啟用超參數調整) 核取方塊。本教學課程不會使用超參數調整功能。然後點按「繼續」。
在「Compute and pricing」(運算與定價) 步驟中,為自訂訓練工作分配資源:
在「Region」(區域) 下拉式選單中,選取「us-central1 (Iowa)」(us-central1 (愛荷華州))。
在「Machine type」(機型) 下拉式選單中,選取「Standard」(標準版) 區段中的「n1-standard-4」。
請勿在本教學課程中新增任何加速器或 worker 集區。按一下「Continue」(繼續)。
在「Prediction container」(預測容器) 步驟中,提供 Agent Platform 執行預測所需的資訊:
選取「Prebuilt container」(預先建構的容器)。
在「Prebuilt container settings」(預先建構的容器設定) 部分,執行下列操作:
在「Model framework」(模型架構) 下拉式選單中,選取「TensorFlow」。
在「Model framework version」(模型架構版本) 下拉式選單中選取「2.3」。
在「Accelerator type」(加速器類型) 下拉式選單中,選取「None」(無)。
確認「Model directory」(模型目錄) 欄位的值為
gs://BUCKET_NAME/output,其中 BUCKET_NAME 是 Cloud Storage bucket 的名稱。這與您在先前步驟中提供的「Model output directory」(模型輸出目錄) 值相符。
將「Predict schemata」(預測結構定義) 區段中的欄位留空。
點選「Start training」(開始訓練),啟動自訂訓練管道。
您現在可以在「Training」(訓練) 頁面中查看新的訓練管道,名稱為 hello_custom。(可能需要重新整理頁面)。訓練管道會執行兩項主要工作:
訓練管道會建立名為
hello_custom-custom-job的自訂工作資源。稍待片刻,您就可以在「Training」(訓練) 專區的「Custom jobs」(自訂工作) 頁面查看這項資源:自訂工作會使用您在本節中指定的運算資源,執行訓練應用程式。
自訂工作完成後,訓練管道會在 Cloud Storage bucket 的
output/model/目錄中,找出訓練應用程式建立的構件。並使用這些構件建立模型資源。
監控訓練
如要查看訓練記錄,請按照下列步驟操作:
在 Cloud de Confiance 控制台,依序前往「Agent Platform」專區和「Custom jobs」(自訂工作) 頁面。
如要查看剛建立的
CustomJob詳細資料,請按一下清單中的hello_custom-custom-job。在工作詳細資料頁面,按一下「查看記錄」。
查看訓練完成的模型
自訂訓練 pipeline 完成後,您可以在 Cloud de Confiance 控制台的「Agent Platform」部分,前往「Models」(模型) 頁面找到訓練好的模型。
模型名稱為 hello_custom。
後續步驟
請按照本教學課程的下一頁,使用訓練好的機器學習模型提供預測。