将数据自动记录到实验运行作业中

自动日志记录是 Vertex AI SDK 中的一项功能,可自动将模型训练运行中的参数和指标记录到 Vertex AI Experiments。这种方法无需手动记录此数据,因此可以节省时间和精力。目前,自动日志记录功能仅支持参数和指标日志记录。

自动记录数据

您可以通过以下两种方法将数据自动记录到 Vertex AI Experiments。

  1. 让 Vertex AI SDK 自动为您创建 ExperimentRun 资源。
  2. 指定您希望自动记录的参数和指标写入的 ExperimentRun 资源。

自动创建

Python 版 Vertex AI SDK 会为您处理 ExperimentRun 资源。 自动创建的 ExperimentsRun 资源将具有以下格式的运行名称:{ml-framework-name}-{timestamp}-{uid},例如:“tensorflow-2023-01-04-16-09-20-86a88”。

以下示例使用 aiplatform 软件包函数中的 init 方法。

Python

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:提供实验的名称。要找到实验列表,您可以在 Google Cloud 控制台的板块导航栏中选择实验
  • experiment_tensorboard:(可选)提供 Vertex AI TensorBoard 实例的名称。
  • project:您的项目 ID。 您可以在 Google Cloud 控制台的欢迎页面中找到这些项目 ID。
  • location:请参阅可用位置列表

用户指定

提供您自己的 ExperimentRun 名称,并将来自多个模型训练运行作业的指标和参数记录到同一 ExperimentRun 中。通过调用 aiplatform.start_run("your-run-name")(直到调用 aiplatform.end_run() 为止),设置从模型到当前运行的任何指标。

以下示例使用 aiplatform 软件包函数中的 init 方法。

Python

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:提供实验的名称。
  • run_name:提供实验运行的名称。要找到实验列表,您可以在 Google Cloud 控制台的板块导航栏中选择实验
  • project:您的项目 ID。 您可以在 Google Cloud 控制台的欢迎页面中找到这些项目 ID。
  • location:请参阅可用位置列表
  • experiment_tensorboard:(可选)提供 Vertex AI TensorBoard 实例的名称。

Vertex AI SDK 自动日志记录功能在其实现中使用 MLFlow 的自动日志记录功能。启用自动日志记录后,系统会将以下框架中的评估指标和参数记录到 ExperimentRun 中。

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

查看自动记录的参数和指标

使用 Python 版 Vertex AI SDK 比较运行作业并获取运行数据。Google Cloud 控制台提供了一种简单的方法来比较这些运行作业。

相关笔记本示例

博文