Registrar datos automáticamente en una ejecución de un experimento

El registro automático es una función del SDK de Vertex AI que registra automáticamente los parámetros y las métricas de las ejecuciones de entrenamiento de modelos en Vertex AI Experiments. De esta forma, se ahorra tiempo y esfuerzo, ya que no es necesario registrar estos datos manualmente. El registro automático solo admite el registro de parámetros y métricas.

Datos de registro automático

Hay dos opciones para registrar datos automáticamente en Vertex AI Experiments.

  1. Permite que el SDK de Vertex AI cree automáticamente recursos ExperimentRun.
  2. Especifica el recurso ExperimentRun en el que quieres que se escriban los parámetros y las métricas registrados automáticamente.

Creado automáticamente

El SDK de Vertex AI para Python se encarga de crear recursos ExperimentRun por ti. Los recursos ExperimentRun creados automáticamente tendrán un nombre con el siguiente formato: {ml-framework-name}-{timestamp}-{uid}, por ejemplo: "tensorflow-2023-01-04-16-09-20-86a88".

En el siguiente ejemplo se usa el método init de las funciones del aiplatform paquete.

Python

from typing import Optional, Union

from google.cloud import aiplatform


def autologging_with_auto_run_creation_sample(
    experiment_name: str,
    project: str,
    location: str,
    experiment_tensorboard: Optional[Union[str, aiplatform.Tensorboard]] = None,
):
    aiplatform.init(
        experiment=experiment_name,
        project=project,
        location=location,
        experiment_tensorboard=experiment_tensorboard,
    )

    aiplatform.autolog()

    # Your model training code goes here

    aiplatform.autolog(disable=True)

  • experiment_name: ponle un nombre al experimento. Puedes consultar tu lista de experimentos en la consola. Para ello, selecciona Experimentos en la barra de navegación de la sección. Google Cloud
  • experiment_tensorboard: (Opcional) Proporciona un nombre para tu instancia de Vertex AI TensorBoard.
  • project: . Puedes encontrar estos IDs de proyecto en la página de Google Cloud bienvenida de la consola.
  • location: consulta la lista de ubicaciones disponibles.

Especificado por el usuario

Proporciona tus propios nombres de ExperimentRun y registra métricas y parámetros de varias ejecuciones de entrenamiento de modelos en el mismo ExperimentRun. Las métricas del modelo hasta la ejecución actual se definen llamando a aiplatform.start_run("your-run-name") hasta que se llama a aiplatform.end_run().

En el siguiente ejemplo se usa el método init de las aiplatform funciones del paquete.

Python

from typing import Optional, Union

from google.cloud import aiplatform


def autologging_with_manual_run_creation_sample(
    experiment_name: str,
    run_name: str,
    project: str,
    location: str,
    experiment_tensorboard: Optional[Union[str, aiplatform.Tensorboard]] = None,
):
    aiplatform.init(
        experiment=experiment_name,
        project=project,
        location=location,
        experiment_tensorboard=experiment_tensorboard,
    )

    aiplatform.autolog()

    aiplatform.start_run(run=run_name)

    # Your model training code goes here

    aiplatform.end_run()

    aiplatform.autolog(disable=True)

  • experiment_name: Indica el nombre del experimento.
  • run_name: Asigna un nombre a la ejecución del experimento. Puedes consultar la lista de experimentos en la consola. Para ello, selecciona Experimentos en la barra de navegación de la sección. Google Cloud
  • project: . Puedes encontrar estos IDs de proyecto en la página de Google Cloud bienvenida de la consola.
  • location: consulta la lista de ubicaciones disponibles.
  • experiment_tensorboard: (Opcional) Proporciona un nombre para tu instancia de Vertex AI TensorBoard.

El registro automático del SDK de Vertex AI usa el registro automático de MLflow en su implementación. Las métricas y los parámetros de evaluación de los siguientes frameworks se registran en ExperimentRun cuando se habilita el registro automático.

  • Fastai
  • Gluon
  • Keras
  • LightGBM
  • PyTorch Lightning
  • Scikit-learn
  • Spark
  • Statsmodels
  • XGBoost

Ver parámetros y métricas registrados automáticamente

Usa el SDK de Vertex AI para Python para comparar ejecuciones y obtener datos de ejecuciones. La Google Cloud consola ofrece una forma sencilla de comparar estas ejecuciones.

Cuaderno de ejemplo pertinente

Entrada de blog