실험에 파이프라인 실행 추가

Google Cloud 콘솔 또는 Python용 Vertex AI SDK를 사용하여 실험 또는 실험 실행에 파이프라인 실행을 추가할 수 있습니다.

Google Cloud 콘솔

다음 안내에 따라 ML 파이프라인을 실행하고 해당 파이프라인을 실험과 연결하고, 선택적으로 Google Cloud Console을 사용하여 실험 실행을 연결합니다. 실험 실행은 Python용 Vertex AI SDK를 통해서만 만들 수 있습니다(실험 실행 만들기 및 관리 참고).
  1. Google Cloud console의 Vertex AI 섹션에서 파이프라인 페이지로 이동합니다.
    파이프라인으로 이동
  2. 리전 드롭다운 목록에서 파이프라인 실행을 만들려는 리전을 선택합니다.
  3. 실행 만들기를 클릭하여 파이프라인 실행 만들기 창을 엽니다.
  4. 다음 실행 세부정보를 지정합니다.
    • 파일 필드에서 선택을 클릭하여 파일 선택기를 엽니다. 실행하려는 컴파일된 파이프라인 JSON 파일로 이동하고, 파이프라인을 선택하고, 열기를 클릭합니다.
    • 파이프라인 이름은 기본적으로 파이프라인 정의에 지정한 이름으로 지정됩니다. 선택적으로 다른 파이프라인 이름을 지정합니다.
    • 이 파이프라인 실행을 고유하게 식별하기 위해 실행 이름을 지정합니다.
  5. 이 파이프라인 실행에 커스텀 서비스 계정, 고객 관리 암호화 키, 피어링된 VPC 네트워크가 사용되도록 지정하려면 고급 옵션(선택)을 클릭합니다.
    다음 안내에 따라 커스텀 서비스 계정과 같은 고급 옵션을 구성합니다.
    • 서비스 계정을 지정하려면 서비스 계정 드롭다운 목록에서 서비스 계정을 선택합니다.
      서비스 계정을 지정하지 않으면 Vertex AI Pipelines가 기본 Compute Engine 서비스 계정을 사용하여 파이프라인을 실행합니다.
      Vertex AI Pipelines에 사용할 서비스 계정 구성에 대해 자세히 알아보세요.
    • 고객 관리 암호화 키(CMEK)를 사용하려면 고객 관리 암호화 키 사용을 선택합니다. 고객 관리 키 선택 드롭다운 목록이 표시됩니다. 고객 관리 키 선택 드롭다운 목록에서 사용하려는 키를 선택합니다.
    • 이 파이프라인 실행에서 피어링된 VPC 네트워크를 사용하려면 피어링된 VPC 네트워크 상자에 VPC 네트워크 이름을 입력합니다.
  6. 계속을 클릭합니다.
    Cloud Storage 위치 및 파이프라인 매개변수 창이 표시됩니다.
    • 필수: Cloud Storage 출력 디렉토리(예: gs://location_of_directory)를 입력합니다.
    • 선택: 이 파이프라인 실행에 사용할 매개변수를 지정합니다.
  7. 제출을 클릭하여 파이프라인 실행을 만듭니다.
  8. 파이프라인이 제출되면 파이프라인의 Google Cloud 콘솔 테이블에 표시됩니다.
  9. 파이프라인과 연결된 행에서  더보기 > 실험에 추가를 클릭합니다.
    • 기존 실험을 선택하거나 새로운 예산을 만듭니다.
    • 선택사항: 실험 실행이 실험과 연결되면 드롭다운에 표시됩니다. 기존 실험 실행을 선택합니다.
  10. 저장을 클릭합니다.

Google Cloud 콘솔을 사용하여 파이프라인 실행과 실험 실행 비교

  1. Google Cloud 콘솔에서 실험 페이지로 이동합니다.
    실험으로 이동합니다.
    실험 목록이 실험 페이지에 나타납니다.
  2. 파이프라인 실행을 추가할 실험을 선택합니다.
    실행 목록이 나타납니다.
  3. 비교할 실행을 선택한 다음 비교
    를 클릭합니다.
  4. 실행 추가 버튼을 클릭합니다. 실행 목록이 나타납니다.
  5. 추가할 파이프라인 실행을 선택합니다. 실행이 추가됩니다.

Python용 Vertex AI SDK {:#sdk-add-pipeline-run}

다음 샘플은 PipelineJob API를 사용합니다.

파이프라인 실행을 실험과 연결

이 샘플에서는 파이프라인 실행을 실험과 연결하는 방법을 보여줍니다. 파이프라인 실행을 비교하려면 파이프라인 실행을 실험에 연결해야 합니다. Python용 Vertex AI SDK 참조 문서에서 init를 확인하세요.

Python

from typing import Any, Dict, Optional

from google.cloud import aiplatform


def log_pipeline_job_to_experiment_sample(
    experiment_name: str,
    pipeline_job_display_name: str,
    template_path: str,
    pipeline_root: str,
    project: str,
    location: str,
    parameter_values: Optional[Dict[str, Any]] = None,
):
    aiplatform.init(project=project, location=location)

    pipeline_job = aiplatform.PipelineJob(
        display_name=pipeline_job_display_name,
        template_path=template_path,
        pipeline_root=pipeline_root,
        parameter_values=parameter_values,
    )

    pipeline_job.submit(experiment=experiment_name)

  • experiment_name: 실험 이름을 입력합니다. 섹션 탐색 메뉴에서 실험을 선택하면 Google Cloud 콘솔에서 실험 목록을 찾을 수 있습니다.
  • pipeline_job_display_name: 이 파이프라인의 사용자 정의 이름입니다.
  • template_path: PipelineJob 또는 PipelineSpec JSON 또는 YAML 파일의 경로입니다. 로컬 경로 또는 Cloud Storage URI일 수 있습니다. 예를 들면 다음과 같습니다. 'gs://project.name'
  • pipeline_root: 파이프라인 출력의 루트입니다. 기본값은 스테이징 버킷입니다.
  • parameter_values: 런타임 매개변수 이름에서 파이프라인 실행을 제어하는 값으로의 매핑입니다.
  • project: 프로젝트 ID 이러한 ID는 Google Cloud 콘솔 시작 페이지에서 찾을 수 있습니다.
  • location: 사용 가능한 위치 목록을 참조하세요.

파이프라인 실행을 실험 실행과 연결

제공된 샘플에는 파이프라인 실행을 실험 실행과 연결하는 작업이 포함됩니다.

사용 사례:

  • 로컬 모델 학습을 수행한 후 해당 모델에 대한 평가를 실행하는 경우(평가는 파이프라인을 사용하여 수행됨). 이 경우 파이프라인 실행의 평가 측정항목을 ExperimentRun에 작성하려고 합니다.
  • 같은 파이프라인을 여러 번 다시 실행하는 경우. 예를 들면 입력 매개변수를 변경하거나 구성요소 하나가 실패하여 다시 실행해야 하는 경우입니다.

파이프라인 실행을 실험 실행에 연결할 때는 매개변수와 측정항목이 자동으로 표시되지 않으며 Logging API를 사용하여 수동으로 로깅해야 합니다.

참고: 선택적 resume 매개변수를 TRUE로 지정하면 이전에 시작된 실행이 다시 시작됩니다. 지정되지 않은 경우 resume의 기본값은 FALSE이고 새 실행이 생성됩니다.

Vertex AI SDK for Python 참조 문서에서 init, start_run, log를 확인하세요.

Python

from google.cloud import aiplatform


def log_pipeline_job_sample(
    experiment_name: str,
    run_name: str,
    pipeline_job: aiplatform.PipelineJob,
    project: str,
    location: str,
):
    aiplatform.init(experiment=experiment_name, project=project, location=location)

    aiplatform.start_run(run=run_name, resume=True)

    aiplatform.log(pipeline_job=pipeline_job)

  • experiment_name: 실험 이름을 입력합니다. 섹션 탐색 메뉴에서 실험을 선택하면 Google Cloud 콘솔에서 실험 목록을 찾을 수 있습니다.
  • run_name: 실행 이름을 지정합니다.
  • pipeline_job: Vertex AI PipelineJob
  • project: 프로젝트 ID 이러한 항목은 Google Cloud 콘솔 시작 페이지에서 찾을 수 있습니다.
  • location: 사용 가능한 위치 목록을 참조하세요.

Google Cloud 콘솔에서 파이프라인 실행 목록 보기

  1. Google Cloud 콘솔의 Vertex AI 섹션에서 파이프라인 페이지로 이동합니다.

    파이프라인 페이지로 이동

  2. 프로젝트가 올바른지 확인합니다.

  3. 프로젝트의 파이프라인 실행과 연결된 실험 및 실행 목록이 각각 실험실험 실행 열에 각각 표시됩니다.

실험 Vertex AIList

Codelab

  • 실험 최대한 활용하기: Vertex AI로 머신러닝 실험 관리

    이 Codelab에는 Vertex AI를 사용하여 TensorFlow에서 커스텀 Keras 모델을 학습시키는 파이프라인을 빌드하는 작업이 포함됩니다. Vertex AI Experiments는 실험 실행을 추적 및 비교하여 최고 성능의 초매개변수 조합을 식별하는 데 사용됩니다.

다음 단계

관련 노트북 샘플