SIG TFX-Addons 커뮤니티에 가입하고 TFX를 더욱 향상시키는 데 도움을 주세요! SIG TFX 애드온 가입

Cloud AI Platform 파이프라인의 TFX

소개

이 가이드는 TensorFlow Extended(TFX) 및 Cloud AI Platform 파이프라인을 소개하고 Google Cloud에서 자체 머신러닝 파이프라인을 만드는 방법을 배우는 데 도움이 되도록 설계되었습니다. TFX, AI Platform Pipelines, Kubeflow와의 통합과 Jupyter 노트북에서 TFX와의 상호 작용을 보여줍니다.

이 가이드가 끝나면 GCP에서 호스팅되는 ML 파이프라인을 만들고 실행하게 됩니다. 각 실행의 결과를 시각화하고 생성된 아티팩트의 계보를 볼 수 있습니다.

데이터 세트를 검사하여 시작하여 완전한 작업 파이프라인으로 끝나는 일반적인 ML 개발 프로세스를 따릅니다. 그 과정에서 파이프라인을 디버그 및 업데이트하고 성능을 측정하는 방법을 탐색하게 됩니다.

시카고 택시 데이터 세트

택시시카고 택시

당신이 사용하고있는 택시는 데이터 세트 여행 시카고시에서 발표합니다.

당신은 할 수 있습니다 더 읽어 에서 데이터 세트에 대한 구글의 BigQuery를 . 에서 전체 데이터 세트 탐색 BigQuery의 UI를 .

모델 목표 - 이진 분류

고객이 팁을 20% 이상 또는 더 적게 제공합니까?

1. Google Cloud 프로젝트 설정

1.a Google Cloud에서 환경 설정

시작하려면 Google Cloud 계정이 필요합니다. 당신이 이미있는 경우, 건너 뛰고 새 프로젝트를 만듭니다 .

  1. 로 이동 Google 클라우드 콘솔 .

  2. Google Cloud 이용약관에 동의합니다.

  3. 당신은 무료 평가판 계정으로 시작하려는 경우, 클릭 무료로 사용해보세요 (또는 무료로 시작 ).

    1. 당신의 나라를 선택하세요.

    2. 서비스 약관에 동의합니다.

    3. 결제 세부정보를 입력합니다.

      이 시점에서 비용이 청구되지 않습니다. 당신이 다른 Google 클라우드 프로젝트가없는 경우에는 초과하지 않고이 튜토리얼을 완료 할 수 있습니다 Google 클라우드 무료 계층 동시에 실행 8 개 코어의 최대를 포함 한계를.

1.b 새 프로젝트를 만듭니다.

  1. 로부터 기본 Google 클라우드 대시 보드 , 구글 클라우드 플랫폼 헤더 옆에있는 프로젝트 드롭 다운을 클릭하고 새 프로젝트를 선택합니다.
  2. 프로젝트 이름을 지정하고 다른 프로젝트 세부 정보를 입력하십시오.
  3. 프로젝트를 생성했으면 프로젝트 드롭다운에서 선택합니다.

2. 새 Kubernetes 클러스터에서 AI Platform 파이프라인 설정 및 배포

  1. 로 이동 AI 플랫폼 파이프 라인 클러스터 페이지입니다.

    기본 탐색 메뉴 아래: ≡ > AI Platform > 파이프라인

  2. 새 클러스터를 만들려면 + 새 인스턴스를 클릭합니다.

  3. Kubeflow 파이프 라인 개요 페이지에서 구성을 클릭합니다.

    Kubernetes Engine API가 사용 설정되는 동안 계속 진행하려면 몇 분 정도 기다려야 할 수 있습니다.

  4. 배포 Kubeflow 파이프 라인 페이지 :

    1. 선별 된 영역 클러스터에 대한 (또는 "지역").

    2. 중요 체크 박스는 다음 클라우드 API에 대한 액세스 허용 표시. (이 클러스터가 프로젝트의 다른 부분에 액세스하는 데 필요합니다. 이 단계를 놓치면 나중에 수정하기가 약간 까다롭습니다.)

    3. 만들기를 클릭하고 클러스터가 만들어 질 때까지 몇 분 정도 기다립니다.

    4. 네임스페이스와 인스턴스 이름을 선택합니다(기본값을 사용하는 것이 좋습니다). 당신은 사용을 관리 스토리지를 체크 할 필요가 없습니다.

    5. 배포를 클릭하고 파이프 라인이 배포 될 때까지 몇 순간을 기다립니다. Kubeflow Pipelines를 배포하면 서비스 약관에 동의하는 것입니다.

3. Cloud AI Platform Notebook 인스턴스를 설정합니다.

  1. 로 이동 AI 플랫폼 노트북 페이지입니다.

    기본 탐색 메뉴 아래: ≡ -> AI Platform -> 노트북

  2. 메시지가 표시되면 Compute Engine API를 사용 설정합니다.

  3. 설치 TensorFlow 2.1 (또는 그 이상) 새로운 인스턴스를 생성합니다.

    새 인스턴스 -> TensorFlow 2.1 -> GPU 없음

    프리 티어 한도 내에서 유지하려면 여기에서 기본 설정을 수락하지 마십시오. 이 인스턴스에 사용 가능한 vCPU 수를 4개에서 2개로 줄여야 합니다.

    1. 새 노트북 인스턴스 양식의 하단에 사용자 지정을 선택합니다.
    2. 1 개 또는 2 개의 vCPU를 가진 기계 구성을 선택합니다.

4. 시작하기 노트북 실행

  1. 로 이동 AI 플랫폼 파이프 라인 클러스터 페이지입니다.

    기본 탐색 메뉴 아래: ≡ -> AI Platform -> 파이프라인

  2. 이 튜토리얼에서 사용하는 클러스터의 라인에서 열기 파이프 라인 대시 보드를 클릭합니다.

    오픈 대시보드

  3. 시작하기 페이지에서 열기 TF 2.1 노트북을 클릭합니다.

  4. 이 튜토리얼은 사용중인 노트북 인스턴스를 선택하고 계속합니다.

    셀렉트 노트북

5. 노트북에서 계속 작업

설치

은 설치하여 노트북을 시작을 시작하기 TFXKubeflow 파이프 라인 (KFP)를 Jupyter 연구소가 실행되는 VM에.

그런 다음 설치된 TFX 버전을 확인하고 가져오기를 수행하고 프로젝트 ID를 설정 및 인쇄합니다.

파이썬 버전 확인 및 가져오기

Google Cloud 서비스와 연결

파이프라인 구성에는 노트북을 통해 가져와 환경 변수로 설정할 수 있는 프로젝트 ID가 필요합니다.

# Read GCP project id from env.
shell_output=!gcloud config list --format 'value(core.project)' 2>/dev/null
GCP_PROJECT_ID=shell_output[0]
print("GCP project ID:" + GCP_PROJECT_ID)

이제 KFP 클러스터 엔드포인트를 설정합니다.

파이프라인 대시보드의 URL에서 찾을 수 있습니다. Kubeflow Pipeline 대시보드로 이동하여 URL을 확인합니다. 엔드 포인트 URL에 모든 것이 함께 시작 https:// 까지, 그리고 포함 googleusercontent.com .

ENDPOINT='' # Enter YOUR ENDPOINT here.

그런 다음 노트북은 사용자 지정 Docker 이미지에 대해 고유한 이름을 설정합니다.

# Docker image name for the pipeline image
CUSTOM_TFX_IMAGE='gcr.io/' + GCP_PROJECT_ID + '/tfx-pipeline'

6. 템플릿을 프로젝트 디렉토리에 복사

다음 노트북 셀을 편집하여 파이프라인의 이름을 설정하십시오. 이 튜토리얼에서 우리는 사용 my_pipeline .

PIPELINE_NAME="my_pipeline"
PROJECT_DIR=os.path.join(os.path.expanduser("~"),"imported",PIPELINE_NAME)

노트북은 다음 사용 tfx 파이프 라인 템플릿을 복사 CLI를. 템플릿에 모델을 설정 때문에이 튜토리얼은, 이진 분류를 수행하기 위해 시카고 택시 데이터 세트를 사용하는 taxi :

!tfx template copy \
  --pipeline-name={PIPELINE_NAME} \
  --destination-path={PROJECT_DIR} \
  --model=taxi

그런 다음 노트북은 CWD 컨텍스트를 프로젝트 디렉토리로 변경합니다.

%cd {PROJECT_DIR}

파이프라인 파일 찾아보기

Cloud AI Platform Notebook의 왼쪽에 파일 브라우저가 표시되어야 합니다. 파이프 라인 이름 (있는 디렉토리가 있어야합니다 my_pipeline ). 그것을 열고 파일을 봅니다. (노트북 환경에서도 열어서 편집할 수 있습니다.)

# You can also list the files from the shell
 ls

tfx template copy 명령은 위의 파이프 라인을 구축 할 파일의 기본 골격을 만들었습니다. 여기에는 Python 소스 코드, 샘플 데이터 및 Jupyter 노트북이 포함됩니다. 이것은 이 특정 예를 위한 것입니다. 자체 파이프라인의 경우 파이프라인에 필요한 지원 파일입니다.

다음은 Python 파일에 대한 간략한 설명입니다.

  • pipeline -이 디렉토리는 파이프 라인의 정의를 포함
    • configs.py - 파이프 라인 주자에 대한 공통의 상수를 정의
    • pipeline.py - 정의 TFX 구성 요소 및 파이프 라인
  • models -이 디렉토리는 ML 모델 정의가 포함되어 있습니다.
    • features.py features_test.py - 정의 모델에 대한 기능
    • preprocessing.py / preprocessing_test.py - 사용하는 작업 전처리 정의하는 tf::Transform
    • estimator -이 디렉토리는 견적 기반 모델이 포함되어 있습니다.
      • constants.py - 모델을 정의 상수
      • model.py / model_test.py - 정의 DNN 모델 TF 추정을 사용하여
    • keras -이 디렉토리는 Keras 기반 모델이 포함되어 있습니다.
      • constants.py - 모델을 정의 상수
      • model.py / model_test.py - 정의 Keras를 사용하여 DNN 모델
  • beam_runner.py / kubeflow_runner.py - 각 오케스트레이션 엔진 주자를 정의

7. Kubeflow에서 첫 번째 TFX 파이프라인 실행

노트북이 사용하는 파이프 라인 실행 tfx run CLI 명령을 사용합니다.

스토리지에 연결

실행 파이프 라인에 저장되어야 할 유물 만들 ML-메타 데이터 . 아티팩트는 파일 시스템이나 블록 스토리지에 저장해야 하는 파일인 페이로드를 나타냅니다. 이 자습서에서는 GCS를 사용하여 설정 중에 자동으로 생성된 버킷을 사용하여 메타데이터 페이로드를 저장합니다. 그 이름이 될 것입니다 <your-project-id>-kubeflowpipelines-default .

파이프라인 생성

노트북은 샘플 데이터를 GCS 버킷에 업로드하여 나중에 파이프라인에서 사용할 수 있습니다.

gsutil cp data/data.csv gs://{GOOGLE_CLOUD_PROJECT}-kubeflowpipelines-default/tfx-template/data/taxi/data.csv

노트북은 다음 사용 tfx pipeline create 파이프 라인을 만들 수있는 명령을 사용합니다.

!tfx pipeline create  \
--pipeline-path=kubeflow_runner.py \
--endpoint={ENDPOINT} \
--build-image

파이프 라인을 만드는 동안, Dockerfile 도커 이미지를 구축하기 위해 생성됩니다. 이러한 파일을 다른 소스 파일과 함께 소스 제어 시스템(예: git)에 추가하는 것을 잊지 마십시오.

파이프라인 실행

노트북은 다음 사용 tfx run create 파이프 라인의 실행 실행을 시작하는 명령을 사용합니다. Kubeflow Pipelines 대시보드의 실험 아래에도 이 실행이 나열됩니다.

tfx run create --pipeline-name={PIPELINE_NAME} --endpoint={ENDPOINT}

Kubeflow Pipelines 대시보드에서 파이프라인을 볼 수 있습니다.

8. 데이터 검증

모든 데이터 과학 또는 ML 프로젝트의 첫 번째 작업은 데이터를 이해하고 정리하는 것입니다.

  • 각 기능의 데이터 유형 이해
  • 이상 및 누락된 값 찾기
  • 각 기능에 대한 분포 이해

구성품

데이터 구성 요소데이터 구성 요소

  • ExampleGen 섭취 및 상기 입력 데이터 세트를 분할한다.
  • StatisticsGen는 데이터 세트에 대한 통계를 계산합니다.
  • 에서는 schemagen 에서는 schemagen는 통계를 검사하고 데이터 스키마를 작성합니다.
  • ExampleValidator는 데이터 집합의 이상 및 누락 된 값을 찾습니다.

Jupyter 랩 파일 편집기에서:

에서 pipeline / pipeline.py , 파이프 라인에 이러한 구성 요소를 추가 주석 라인 :

# components.append(statistics_gen)
# components.append(schema_gen)
# components.append(example_validator)

( ExampleGen 템플릿 파일이 복사 될 때 이미 활성화되었습니다.)

파이프라인 업데이트 및 다시 실행

# Update the pipeline
! tfx pipeline update \
  --pipeline-path=kubeflow_runner.py \
  --endpoint={ENDPOINT}

! tfx run create --pipeline-name "{PIPELINE_NAME}"

파이프라인 확인

Kubeflow Orchestrator의 경우 KFP 대시보드를 방문하여 파이프라인 실행 페이지에서 파이프라인 출력을 찾으십시오. 왼쪽에서 "실험" 탭을 클릭하고 실험 페이지에서 "모든 실행"을 클릭합니다. 파이프라인 이름으로 실행을 찾을 수 있어야 합니다.

고급 예제

여기에 제시된 예제는 실제로 시작하기 위한 것입니다. 더 진보 된 예를 들어, 참조 TensorFlow 데이터 유효성 검사 Colab을 .

탐색 및 데이터 세트를 검증 TFDV을 사용하는 방법에 대한 자세한 내용은 tensorflow.org의 예를 참조 .

9. 피처 엔지니어링

피쳐 엔지니어링으로 데이터의 예측 품질을 높이거나 차원을 줄일 수 있습니다.

  • 특징 교차
  • 어휘
  • 임베딩
  • PCA
  • 범주형 인코딩

TFX 사용의 이점 중 하나는 변환 코드를 한 번만 작성하면 결과 변환이 훈련과 제공 간에 일관된다는 것입니다.

구성품

변환

  • 변환 데이터 세트에 수행하는 기능 엔지니어링.

Jupyter 랩 파일 편집기에서:

에서 pipeline / pipeline.py 찾아 추가 라인의 주석을 해제 변환 파이프 라인을.

# components.append(transform)

파이프라인 업데이트 및 다시 실행

# Update the pipeline
! tfx pipeline update \
  --pipeline-path=kubeflow_runner.py \
  --endpoint={ENDPOINT}

! tfx run create --pipeline-name "{PIPELINE_NAME}"

파이프라인 출력 확인

Kubeflow Orchestrator의 경우 KFP 대시보드를 방문하여 파이프라인 실행 페이지에서 파이프라인 출력을 찾으십시오. 왼쪽에서 "실험" 탭을 클릭하고 실험 페이지에서 "모든 실행"을 클릭합니다. 파이프라인 이름으로 실행을 찾을 수 있어야 합니다.

고급 예제

여기에 제시된 예제는 실제로 시작하기 위한 것입니다. 더 진보 된 예를 들어, 참조 TensorFlow이 Colab 변환 .

10. 훈련

멋지고 깨끗하며 변환된 데이터로 TensorFlow 모델을 훈련시키세요.

  • 일관되게 적용되도록 이전 단계의 변환을 포함합니다.
  • 생산을 위해 결과를 저장된 모델로 저장
  • TensorBoard를 사용하여 교육 프로세스 시각화 및 탐색
  • 또한 모델 성능 분석을 위해 EvalSavedModel을 저장합니다.

구성품

Jupyter 랩 파일 편집기에서:

에서 pipeline / pipeline.py 파이프 라인에 강사를 추가, 찾아 주석 :

# components.append(trainer)

파이프라인 업데이트 및 다시 실행

# Update the pipeline
! tfx pipeline update \
  --pipeline-path=kubeflow_runner.py \
  --endpoint={ENDPOINT}

! tfx run create --pipeline-name "{PIPELINE_NAME}"

파이프라인 출력 확인

Kubeflow Orchestrator의 경우 KFP 대시보드를 방문하여 파이프라인 실행 페이지에서 파이프라인 출력을 찾으십시오. 왼쪽에서 "실험" 탭을 클릭하고 실험 페이지에서 "모든 실행"을 클릭합니다. 파이프라인 이름으로 실행을 찾을 수 있어야 합니다.

고급 예제

여기에 제시된 예제는 실제로 시작하기 위한 것입니다. 더 진보 된 예를 들어, 참조 TensorBoard 자습서 .

11. 모델 성능 분석

최상위 메트릭 그 이상을 이해합니다.

  • 사용자는 쿼리에 대해서만 모델 성능을 경험합니다.
  • 데이터 조각에 대한 열악한 성능은 최상위 메트릭에 의해 숨겨질 수 있습니다.
  • 모델의 공정성이 중요하다
  • 종종 사용자 또는 데이터의 주요 하위 집합이 매우 중요하고 작을 수 있습니다.
    • 중요하지만 비정상적인 조건에서의 성능
    • 인플루언서와 같은 주요 잠재고객을 위한 성능
  • 현재 생산 중인 모델을 교체하는 경우 먼저 새 모델이 더 나은지 확인하십시오.

구성품

  • 평가자 수행 훈련 결과의 깊은 분석.

Jupyter 랩 파일 편집기에서:

에서 pipeline / pipeline.py 찾아 파이프 라인에 평가자를 추가 라인의 주석 :

components.append(evaluator)

파이프라인 업데이트 및 다시 실행

# Update the pipeline
! tfx pipeline update \
  --pipeline-path=kubeflow_runner.py \
  --endpoint={ENDPOINT}

! tfx run create --pipeline-name "{PIPELINE_NAME}"

파이프라인 출력 확인

Kubeflow Orchestrator의 경우 KFP 대시보드를 방문하여 파이프라인 실행 페이지에서 파이프라인 출력을 찾으십시오. 왼쪽에서 "실험" 탭을 클릭하고 실험 페이지에서 "모든 실행"을 클릭합니다. 파이프라인 이름으로 실행을 찾을 수 있어야 합니다.

12. 모델 서빙

새 모델이 준비되면 그렇게 하십시오.

  • Pusher는 잘 알려진 위치에 저장된 모델을 배포합니다.

배포 대상은 잘 알려진 위치에서 새 모델을 받습니다.

  • 텐서플로우 서빙
  • 텐서플로우 라이트
  • 텐서플로우 JS
  • 텐서플로우 허브

구성품

  • 푸셔는 서빙 인프라 모델을 배포합니다.

Jupyter 랩 파일 편집기에서:

에서 pipeline / pipeline.py 찾아 파이프 라인에 푸셔를 추가 라인의 주석 :

# components.append(pusher)

파이프라인 출력 확인

Kubeflow Orchestrator의 경우 KFP 대시보드를 방문하여 파이프라인 실행 페이지에서 파이프라인 출력을 찾으십시오. 왼쪽에서 "실험" 탭을 클릭하고 실험 페이지에서 "모든 실행"을 클릭합니다. 파이프라인 이름으로 실행을 찾을 수 있어야 합니다.

사용 가능한 배포 대상

이제 모델을 훈련하고 검증했으며 이제 모델을 생산할 준비가 되었습니다. 이제 다음을 포함한 모든 TensorFlow 배포 대상에 모델을 배포할 수 있습니다.

  • TensorFlow 서빙 REST 및 / 또는 gRPC 추론 요청을 서버 또는 서버 팜의 모델을 제공하고 처리.
  • TensorFlow 라이트 , 당신의 안드로이드 또는 iOS 네이티브 모바일 애플리케이션의 모델, 또는 라즈베리 파이에서의 IoT, 또는 마이크로 컨트롤러 응용 프로그램을 포함합니다.
  • TensorFlow.js , 웹 브라우저 나 Node.js를 응용 프로그램에서 모델을 실행합니다.

고급 예제

위에 제시된 예는 실제로 시작하기 위한 것입니다. 다음은 다른 클라우드 서비스와의 통합에 대한 몇 가지 예입니다.

Kubeflow Pipelines 리소스 고려 사항

워크로드의 요구 사항에 따라 Kubeflow Pipelines 배포의 기본 구성이 요구 사항을 충족하거나 충족하지 않을 수 있습니다. 당신은 사용하여 자원 구성을 사용자 정의 할 수 있습니다 pipeline_operator_funcs 당신의 전화에 KubeflowDagRunnerConfig .

pipeline_operator_funcs 목록이다 OpFunc 생성 된 모든 변형 항목 ContainerOp 로부터 컴파일되는 KFP 배관 사양에서 인스턴스 KubeflowDagRunner .

예를 들어, 구성 메모리에 우리가 사용할 수 있습니다 set_memory_request 필요한 메모리의 양을 선언 할 수 있습니다. 이 작업을 수행하는 일반적인 방법은 래퍼 만드는 것입니다 set_memory_request 하고 파이프 라인의 목록에 추가하는 데 사용할 OpFunc 의 :

def request_more_memory():
  def _set_memory_spec(container_op):
    container_op.set_memory_request('32G')
  return _set_memory_spec

# Then use this opfunc in KubeflowDagRunner
pipeline_op_funcs = kubeflow_dag_runner.get_default_pipeline_operator_funcs()
pipeline_op_funcs.append(request_more_memory())
config = KubeflowDagRunnerConfig(
    pipeline_operator_funcs=pipeline_op_funcs,
    ...
)
kubeflow_dag_runner.KubeflowDagRunner(config=config).run(pipeline)

유사한 리소스 구성 기능은 다음과 같습니다.

  • set_memory_limit
  • set_cpu_request
  • set_cpu_limit
  • set_gpu_limit

시도 BigQueryExampleGen

BigQuery를이 서버없는, 높은 확장 성, 비용 효율적인 클라우드 데이터웨어 하우스입니다. BigQuery는 TFX에서 학습 예제의 소스로 사용할 수 있습니다. 이 단계에서, 우리는 추가합니다 BigQueryExampleGen 파이프 라인에.

Jupyter 랩 파일 편집기에서:

두 번 클릭하여 엽니 다 pipeline.py . 주석 CsvExampleGen 하고 인스턴스 생성 라인 주석 BigQueryExampleGen . 또한 주석을 해제 할 필요가 query 의 인수 create_pipeline 기능을.

우리의 BigQuery에 사용할 GCP 프로젝트를 지정해야하고, 이것은 설정하면됩니다 --projectbeam_pipeline_args 파이프 라인을 만들 때.

두 번 클릭하여 엽니 다 configs.py . 의 주석 정의 BIG_QUERY_WITH_DIRECT_RUNNER_BEAM_PIPELINE_ARGSBIG_QUERY_QUERY . 이 파일의 프로젝트 ID와 지역 값을 GCP 프로젝트의 올바른 값으로 바꿔야 합니다.

디렉토리를 한 단계 위로 변경하십시오. 파일 목록 위의 디렉터리 이름을 클릭합니다. 디렉토리의 이름은 파이프 라인의 이름입니다 my_pipeline 당신이 파이프 라인 이름을 변경하지 않은 경우.

두 번 클릭하여 엽니 다 kubeflow_runner.py . 의 주석을 두 개의 인수, querybeam_pipeline_args 에 대한, create_pipeline 기능.

이제 파이프라인에서 BigQuery를 예시 소스로 사용할 준비가 되었습니다. 이전과 같이 파이프라인을 업데이트하고 5단계와 6단계에서 했던 것처럼 새 실행 실행을 만듭니다.

파이프라인 업데이트 및 다시 실행

# Update the pipeline
!tfx pipeline update \
  --pipeline-path=kubeflow_runner.py \
  --endpoint={ENDPOINT}

!tfx run create --pipeline-name {PIPELINE_NAME} --endpoint={ENDPOINT}

Dataflow 사용해 보기

여러 TFX 구성 요소 아파치 빔을 사용하여 데이터 병렬 파이프 라인을 구현하기 위해, 그리고 당신이 사용하는 워크로드를 처리하는 데이터를 배포 할 수 있다는 것을 의미 Google 클라우드 데이터 흐름을 . 이 단계에서는 Apache Beam의 데이터 처리 백엔드로 Dataflow를 사용하도록 Kubeflow 오케스트레이터를 설정합니다.

# Select your project:
gcloud config set project YOUR_PROJECT_ID

# Get a list of services that you can enable in your project:
gcloud services list --available | grep Dataflow

# If you don't see dataflow.googleapis.com listed, that means you haven't been
# granted access to enable the Dataflow API.  See your account adminstrator.

# Enable the Dataflow service:

gcloud services enable dataflow.googleapis.com

두 번 클릭 pipeline 변경 디렉토리, 그리고 두 번 클릭하여 엽니 다 configs.py . 의 주석 정의 GOOGLE_CLOUD_REGIONDATAFLOW_BEAM_PIPELINE_ARGS .

디렉토리를 한 단계 위로 변경하십시오. 파일 목록 위의 디렉터리 이름을 클릭합니다. 디렉토리의 이름은 파이프 라인의 이름입니다 my_pipeline 변경하지 않은 경우.

두 번 클릭하여 엽니 다 kubeflow_runner.py . 의 주석 beam_pipeline_args . (또한 현재 주석 확인 beam_pipeline_args 7 단계에서 추가 한)

파이프라인 업데이트 및 다시 실행

# Update the pipeline
!tfx pipeline update \
  --pipeline-path=kubeflow_runner.py \
  --endpoint={ENDPOINT}

!tfx run create --pipeline-name {PIPELINE_NAME} --endpoint={ENDPOINT}

당신은 당신의 데이터 흐름 작업을 찾을 수 있습니다 클라우드 콘솔에서 데이터 흐름을 .

KFP로 Cloud AI Platform 학습 및 예측 사용해 보기

다음과 같은 몇 가지 관리 GCP 서비스와 TFX의 상호 호환 교육 및 예측을위한 클라우드 AI 플랫폼 . 당신은 설정할 수 있습니다 Trainer 클라우드 AI 플랫폼 교육, ML 모델을 훈련에 대한 관리 서비스를 사용하는 구성 요소를. 모델이 제공하는 내장하고 준비하는 경우 또한, 당신은 봉사 클라우드 AI 플랫폼 예측 모델을 푸시 할 수 있습니다. 이 단계에서, 우리는 우리의 설정합니다 TrainerPusher 클라우드 AI 플랫폼 서비스를 사용하는 구성 요소를.

파일을 편집하기 전에 먼저 AI 플랫폼 교육 및 예측 API를 사용 설정해야 할 수도 있습니다.

두 번 클릭 pipeline 변경 디렉토리, 그리고 두 번 클릭하여 엽니 다 configs.py . 의 주석 정의 GOOGLE_CLOUD_REGION , GCP_AI_PLATFORM_TRAINING_ARGSGCP_AI_PLATFORM_SERVING_ARGS . 우리가 설정해야합니다, 그래서 우리는 클라우드 AI 플랫폼 교육의 모델을 학습하기 위해 사용자 정의 내장 된 컨테이너 이미지를 사용합니다 masterConfig.imageUriGCP_AI_PLATFORM_TRAINING_ARGS 와 같은 값으로 CUSTOM_TFX_IMAGE 위.

디렉토리를 변경 한 수준까지, 그리고 두 번 클릭하여 엽니 다 kubeflow_runner.py . 의 주석 ai_platform_training_argsai_platform_serving_args .

파이프라인 업데이트 및 다시 실행

# Update the pipeline
!tfx pipeline update \
  --pipeline-path=kubeflow_runner.py \
  --endpoint={ENDPOINT}

!tfx run create --pipeline-name {PIPELINE_NAME} --endpoint={ENDPOINT}

당신은 당신의 교육 작업을 찾을 수 있습니다 클라우드 AI 플랫폼 채용 . 파이프 라인이 성공적으로 완료되면, 당신은 당신의 모델을 찾을 수 있습니다 클라우드 AI 플랫폼 모델 .

14. 자신의 데이터 사용

이 자습서에서는 Chicago Taxi 데이터 세트를 사용하여 모델에 대한 파이프라인을 만들었습니다. 이제 자신의 데이터를 파이프라인에 넣어 보십시오. Google Cloud Storage, BigQuery 또는 CSV 파일을 포함하여 파이프라인이 액세스할 수 있는 모든 위치에 데이터를 저장할 수 있습니다.

데이터를 수용하려면 파이프라인 정의를 수정해야 합니다.

데이터가 파일에 저장된 경우

  1. 수정 DATA_PATHkubeflow_runner.py 위치를 나타냅니다.

데이터가 BigQuery에 저장된 경우

  1. 수정 BIG_QUERY_QUERY 쿼리 문에 configs.py에.
  2. 에 기능 추가 models / features.py .
  3. 수정 models / preprocessing.py 위해 훈련을위한 입력 데이터를 변환 .
  4. 수정 models / keras / model.pymodels / keras / constants.py 제품에 대해 설명 당신의 ML 모델 .

트레이너에 대해 자세히 알아보기

참조 트레이너 구성 요소 가이드 교육 파이프 라인에 대한 자세한 내용을.

청소

이 프로젝트에 사용 된 모든 Google 클라우드 자원을 청소하려면 다음을 수행 할 수 있습니다 Google 클라우드 프로젝트 삭제 자습서에 사용합니다.

- : 또는 각 콘솔 방문하여 개별 자원을 정리할 수 있습니다 Google 클라우드 스토리지 - 구글 컨테이너 레지스트리 - 구글는 Kubernetes 엔진