Entrenamiento personalizado de Hello: Entrena un modelo de clasificación de imágenes personalizado
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
En esta página, se muestra cómo ejecutar una aplicación de entrenamiento de TensorFlow Keras en AI Vertex. Este modelo en particular entrena un modelo de clasificación de imágenes que puede clasificar flores por tipo.
En este instructivo, se incluyen las siguientes páginas:
En cada página, se supone que ya realizaste las instrucciones de las páginas anteriores del instructivo.
En el resto de este documento, se supone que usas el mismo entorno de Cloud Shell que creaste cuando sigues la primera página de este instructivo. Si tu sesión original de Cloud Shell ya no está abierta, puedes volver al entorno de la siguiente manera:
In the Google Cloud console, activate Cloud Shell.
En la sesión de Cloud Shell, ejecuta el siguiente comando:
cdhello-custom-sample
Ejecuta una canalización de entrenamiento personalizado
En esta sección, se describe el uso del paquete de entrenamiento que subiste a Cloud Storage para ejecutar una canalización de entrenamiento personalizado de Vertex AI.
En la Google Cloud consola, en la sección Vertex AI, ve a la página Canalizaciones de entrenamiento.
Haz clic en add_boxCrear para abrir el panel Entrenar modelo nuevo.
En el paso Elige un método de entrenamiento, haz lo siguiente:
De lo contrario, en la lista desplegable Conjunto de datos, selecciona No hay ningún conjunto de datos administrado. Esta aplicación de entrenamiento en particular carga datos de la biblioteca de conjuntos de datos de TensorFlow en lugar de un conjunto de datos administrado de Vertex AI.
Asegúrate de que esté seleccionado Entrenamiento personalizado (avanzado).
Haga clic en Continuar.
En el paso Detalles del modelo, ingresa hello_custom en el campo Nombre. Haz clic en Continuar.
En el paso Contenedor de entrenamiento, proporciona a Vertex AI la información que necesita para usar el paquete de entrenamiento que subiste a Cloud Storage:
Selecciona Contenedor compilado previamente.
En la lista desplegable Framework del modelo, selecciona TensorFlow.
En la lista desplegable de Versión del framework del modelo, selecciona 2.3.
En el campo Ubicación del paquete, ingresa cloud-samples-data/ai-platform/hello-custom/hello-custom-sample-v1.tar.gz.
En el campo Módulo de Python, ingresa trainer.task. trainer es el nombre del paquete de Python en tu archivo comprimido y task.py contiene tu código de entrenamiento. Por lo tanto, trainer.task es el nombre del módulo que deseas que ejecute Vertex AI.
En el campo Directorio de resultados de modelos, haz clic en Explorar. Haz lo siguiente en el panel Seleccionar carpeta:
Navega a tu bucket de Cloud Storage.
Haz clic en Crear nueva carpeta create_new_folder.
Asigna el nombre output a la carpeta nueva. Luego, haz clic en Crear.
Haz clic en Seleccionar.
Confirma que el campo tenga el valor gs://BUCKET_NAME/output, en el que BUCKET_NAME es el nombre de tu bucket de Cloud Storage.
Este valor se pasa a Vertex AI en el campo de API baseOutputDirectory, que establece distintas variables de entorno a las que puede acceder tu aplicación de entrenamiento cuando se ejecuta.
Por ejemplo, cuando configuras este campo como gs://BUCKET_NAME/output, Vertex AI establece la variable de entorno AIP_MODEL_DIR en gs://BUCKET_NAME/output/model. Al final del entrenamiento, Vertex AI usa cualquier artefacto del directorio AIP_MODEL_DIR para crear un recurso del modelo.
En el paso opcional Hiperparámetros, asegúrate de que la casilla de verificación Habilitar ajuste de hiperparámetro esté desmarcada. En este instructivo, no se usa el ajuste de hiperparámetros. Haz clic en Continuar.
En el paso Procesamiento y precios, asigna recursos al trabajo de entrenamiento personalizado:
En la lista desplegable Región, selecciona us-central1 (Iowa).
En la lista desplegable Tipo de máquina, selecciona n1-standard-4 de la sección Estándar.
No agregues aceleradores ni grupos de trabajadores para este instructivo. Haz clic en Continuar.
En el paso Contenedor de predicción, proporciona a Vertex AI la información que necesita para entregar predicciones:
Selecciona Contenedor compilado previamente.
En la sección Configuración de contenedor compilado previamente, haz lo siguiente:
En la lista desplegable Framework del modelo, selecciona TensorFlow.
En la lista desplegable de Versión del framework del modelo, selecciona 2.3.
En la lista desplegable Tipo de acelerador, selecciona Ninguno.
Confirma que el campo Directorio de modelo tenga el valor gs://BUCKET_NAME/output, en el que BUCKET_NAME es el nombre de tu bucket de Cloud Storage. Esto coincide con el valor del Directorio de salida del modelo que proporcionaste en un paso anterior.
Deja en blanco los campos de la sección Esquema de predicción.
Haz clic en Comenzar el entrenamiento para comenzar la canalización de entrenamiento personalizada.
Ahora puedes ver la nueva canalización de entrenamiento, llamada hello_custom, en la página Entrenamiento. Es posible que debas actualizar la página. En esta canalización de entrenamiento, se realizan dos tareas principales:
La canalización de entrenamiento crea un recurso de trabajo personalizado llamado hello_custom-custom-job. Después de unos momentos, puedes ver este recurso en la página Trabajos personalizados de la sección Entrenamiento:
El trabajo personalizado ejecuta la aplicación de entrenamiento mediante los recursos de procesamiento que especificaste en esta sección.
Una vez que se completa el trabajo personalizado, la canalización de entrenamiento encuentra los artefactos que crea la aplicación de entrenamiento en el directorio output/model/ del bucket de Cloud Storage. Usa estos artefactos para crear un recurso de modelo.
Supervisa el entrenamiento
Para ver los registros de entrenamiento, haz lo siguiente:
En la consola de Google Cloud , en la sección Vertex AI, ve a la página Trabajos personalizados.
Para ver los detalles de la CustomJob que acabas de crear, haz clic en hello_custom-custom-job en la lista.
En la página de detalles del trabajo, haz clic en Ver registros.
Observa tu modelo entrenado
Cuando se completa la canalización de entrenamiento personalizada, puedes encontrar el modelo entrenado en la Google Cloud consola, en la página Modelos de la sección Vertex AI.
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Información o código de muestra incorrectos","incorrectInformationOrSampleCode","thumb-down"],["Faltan la información o los ejemplos que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-09-04 (UTC)"],[],[],null,["# Hello custom training: Train a custom image classification model\n\n| To learn more,\n| run the following notebooks in the environment of your choice:\n|\n| - \"Use the Vertex AI SDK for Python to train and deploy a custom image classification model for batch prediction.\":\n|\n| [Open in Colab](https://colab.research.google.com/github/GoogleCloudPlatform/vertex-ai-samples/blob/main/notebooks/official/custom/sdk-custom-image-classification-batch.ipynb)\n|\n|\n| \\|\n|\n| [Open in Colab Enterprise](https://console.cloud.google.com/vertex-ai/colab/import/https%3A%2F%2Fraw.githubusercontent.com%2FGoogleCloudPlatform%2Fvertex-ai-samples%2Fmain%2Fnotebooks%2Fofficial%2Fcustom%2Fsdk-custom-image-classification-batch.ipynb)\n|\n|\n| \\|\n|\n| [Open\n| in Vertex AI Workbench](https://console.cloud.google.com/vertex-ai/workbench/deploy-notebook?download_url=https%3A%2F%2Fraw.githubusercontent.com%2FGoogleCloudPlatform%2Fvertex-ai-samples%2Fmain%2Fnotebooks%2Fofficial%2Fcustom%2Fsdk-custom-image-classification-batch.ipynb)\n|\n|\n| \\|\n|\n| [View on GitHub](https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/main/notebooks/official/custom/sdk-custom-image-classification-batch.ipynb)\n| - \"Use the Vertex AI SDK for Python to train and deploy a custom image classification model for online prediction.\":\n|\n| [Open in Colab](https://colab.research.google.com/github/GoogleCloudPlatform/vertex-ai-samples/blob/main/notebooks/official/custom/sdk-custom-image-classification-online.ipynb)\n|\n|\n| \\|\n|\n| [Open in Colab Enterprise](https://console.cloud.google.com/vertex-ai/colab/import/https%3A%2F%2Fraw.githubusercontent.com%2FGoogleCloudPlatform%2Fvertex-ai-samples%2Fmain%2Fnotebooks%2Fofficial%2Fcustom%2Fsdk-custom-image-classification-online.ipynb)\n|\n|\n| \\|\n|\n| [Open\n| in Vertex AI Workbench](https://console.cloud.google.com/vertex-ai/workbench/deploy-notebook?download_url=https%3A%2F%2Fraw.githubusercontent.com%2FGoogleCloudPlatform%2Fvertex-ai-samples%2Fmain%2Fnotebooks%2Fofficial%2Fcustom%2Fsdk-custom-image-classification-online.ipynb)\n|\n|\n| \\|\n|\n| [View on GitHub](https://github.com/GoogleCloudPlatform/vertex-ai-samples/blob/main/notebooks/official/custom/sdk-custom-image-classification-online.ipynb)\n\nThis page shows you how to run a TensorFlow Keras training application on\nVertex AI. This particular model trains an image classification\nmodel that can classify flowers by type.\nThis tutorial has several pages:\n\n\u003cbr /\u003e\n\n1. [Setting up your project and environment.](/vertex-ai/docs/tutorials/image-classification-custom)\n\n2. Training a custom image classification model.\n\n3. [Serving predictions from a custom image classification\n model.](/vertex-ai/docs/tutorials/image-classification-custom/serving)\n\n4. [Cleaning up your project.](/vertex-ai/docs/tutorials/image-classification-custom/cleanup)\n\nEach page assumes that you have already performed the instructions from the\nprevious pages of the tutorial.\nThe rest of this document assumes that you are using the same Cloud Shell environment that you created when following the [first page of this\ntutorial](/vertex-ai/docs/tutorials/image-classification-custom). If your original Cloud Shell session is no longer open, you can return to the environment by doing the following:\n\n\u003cbr /\u003e\n\n1. In the Google Cloud console, activate Cloud Shell.\n\n [Activate Cloud Shell](https://console.cloud.google.com/?cloudshell=true)\n2. In the Cloud Shell session, run the following command:\n\n ```bash\n cd hello-custom-sample\n ```\n\nRun a custom training pipeline\n------------------------------\n\nThis section describes using the training package that you uploaded to\nCloud Storage to run a Vertex AI custom training\npipeline.\n\n1. In the Google Cloud console, in the Vertex AI section, go to\n the **Training pipelines** page.\n\n [Go to Training pipelines](https://console.cloud.google.com/vertex-ai/training/training-pipelines)\n2. Click **add_box\n Create** to open the **Train new model** pane.\n\n3. On the **Choose training method** step, do the following:\n\n 1. In the **Dataset** drop-down list, select **No managed dataset** . This\n particular training application loads data from the [TensorFlow\n Datasets](https://www.tensorflow.org/datasets/) library rather than a managed Vertex AI\n dataset.\n\n 2. Ensure that **Custom training (advanced)** is selected.\n\n Click **Continue**.\n4. On the **Model details** step, in the **Name** field, enter\n `hello_custom`. Click **Continue**.\n\n5. On the **Training container** step, provide Vertex AI with\n information it needs to use the training package that you uploaded to\n Cloud Storage:\n\n 1. Select **Prebuilt container**.\n\n 2. In the **Model framework** drop-down list, select **TensorFlow**.\n\n 3. In the **Model framework version** drop-down list, select **2.3**.\n\n 4. In the **Package location** field, enter\n `cloud-samples-data/ai-platform/hello-custom/hello-custom-sample-v1.tar.gz`.\n\n 5. In the **Python module** field, enter `trainer.task`. `trainer` is the\n name of the Python package in your tarball, and `task.py` contains your\n training code. Therefore, `trainer.task` is the name of the module that\n you want Vertex AI to run.\n\n 6. In the **Model output directory** field, click **Browse** . Do the\n following in the **Select folder** pane:\n\n 1. Navigate to your Cloud Storage bucket.\n\n 2. Click **Create new folder create_new_folder**.\n\n 3. Name the new folder `output`. Then click **Create**.\n\n 4. Click **Select**.\n\n Confirm that field has the value\n `gs://`\u003cvar translate=\"no\"\u003eBUCKET_NAME\u003c/var\u003e`/output`, where \u003cvar translate=\"no\"\u003eBUCKET_NAME\u003c/var\u003e\n is the name of your Cloud Storage bucket.\n\n This value gets passed to Vertex AI in the\n [`baseOutputDirectory` API\n field](/vertex-ai/docs/reference/rest/v1/CustomJobSpec#FIELDS.base_output_directory), which sets\n several environment variables that your training application can access\n when it runs.\n\n For example, when you set this field to\n `gs://`\u003cvar translate=\"no\"\u003eBUCKET_NAME\u003c/var\u003e`/output`, Vertex AI sets\n the `AIP_MODEL_DIR` environment variable to\n `gs://`\u003cvar translate=\"no\"\u003eBUCKET_NAME\u003c/var\u003e`/output/model`. At the end of training,\n Vertex AI uses any artifacts in the `AIP_MODEL_DIR` directory\n to create a model resource.\n\n Learn more about the [environment variables set by this\n field](/vertex-ai/docs/training/code-requirements#environment-variables).\n\n Click **Continue**.\n6. On the optional **Hyperparameters** step, make sure that the **Enable\n hyperparameter tuning** checkbox is cleared. This tutorial does not use\n hyperparameter tuning. Click **Continue**.\n\n7. On the **Compute and pricing** step, allocate resources for the custom\n training job:\n\n 1. In the **Region** drop-down list, select **us-central1 (Iowa)**.\n\n 2. In the **Machine type** drop-down list, select **n1-standard-4** from the\n **Standard** section.\n\n Do not add any accelerators or worker pools for this tutorial. Click\n **Continue**.\n8. On the **Prediction container** step, provide Vertex AI with\n information it needs to serve predictions:\n\n 1. Select **Prebuilt container**.\n\n 2. In the **Prebuilt container settings** section, do the following:\n\n 1. In the **Model framework** drop-down list, select **TensorFlow**.\n\n 2. In the **Model framework version** drop-down list, select **2.3**.\n\n 3. In the **Accelerator type** drop-down list, select **None**.\n\n 4. Confirm that **Model directory** field has the value\n `gs://`\u003cvar translate=\"no\"\u003eBUCKET_NAME\u003c/var\u003e`/output`, where\n \u003cvar translate=\"no\"\u003eBUCKET_NAME\u003c/var\u003e is the name of your Cloud Storage\n bucket. This matches the **Model output directory** value that you\n provided in a previous step.\n\n 3. Leave the fields in the **Predict schemata** section blank.\n\n9. Click **Start training** to start the custom training pipeline.\n\nYou can now view your new *training pipeline* , which is named `hello_custom`, on\nthe **Training** page. (You might need to refresh the page.) The training\npipeline does two main things:\n\n1. The training pipeline creates a *custom job* resource named\n `hello_custom-custom-job`. After a few moments, you can view this resource\n on the **Custom jobs** page of the **Training** section:\n\n [Go to Custom jobs](https://console.cloud.google.com/vertex-ai/training/custom-jobs)\n\n The custom job runs the training application using the computing resources\n that you specified in this section.\n2. After the custom job completes, the training pipeline finds the artifacts\n that your training application creates in the `output/model/` directory of\n your Cloud Storage bucket. It uses these artifacts to create\n a *model* resource.\n\n### Monitor training\n\nTo view training logs, do the following:\n\n1. In the Google Cloud console, in the Vertex AI section, go to\n the **Custom jobs** page.\n\n [Go to Custom jobs](https://console.cloud.google.com/vertex-ai/training/custom-jobs)\n2. To view details for the `CustomJob` that you just created, click\n `hello_custom-custom-job` in the list.\n\n3. On the job details page, click **View logs**.\n\n### View your trained model\n\nWhen the custom training pipeline completes, you can find the trained model in\nthe Google Cloud console, in the Vertex AI section, on the\n**Models** page.\n\n[Go to Models](https://console.cloud.google.com/vertex-ai/models)\n\nThe model has the name `hello_custom`.\n\nWhat's next\n-----------\n\nFollow the [next page of this tutorial](/vertex-ai/docs/tutorials/image-classification-custom/serving) to serve\npredictions from your trained ML model."]]