모델 및 작업 관리

모델을 학습시키고 배포하여 예측을 수행하는 동안 Google Cloud Platform의 리소스를 관리해야 합니다. 이 페이지에서는 모델, 버전, 작업의 작동 방식을 설명합니다.

AI Platform Prediction 리소스 이름 지정

작업을 만들 때는 항상 이름을 지정해야 합니다. 이름 지정 규칙은 3가지 유형의 리소스에서 모두 동일합니다. 각 이름은 다음 규칙을 준수해야 합니다.

  • 문자, 숫자, 밑줄만 사용할 수 있습니다.
  • 대소문자를 구분합니다.
  • 문자로 시작해야 합니다.
  • 128자(영문 기준) 이하여야 합니다.
  • 네임스페이스(모델 및 작업의 경우 프로젝트, 버전의 경우 상위 모델) 내에서 고유해야 합니다.

작업 로그와 같은 리소스 목록에서 쉽게 구별할 수 있는 이름을 지정해야 합니다. 다음은 몇 가지 권장사항입니다.

  • 모델 이름과 작업 색인(작업 생성 시의 타임스탬프가 적합)을 사용하는 동일한 모델의 모든 작업 이름을 지정합니다.
  • 모델이 사용하는 데이터세트에서 쉽게 식별할 수 있도록 모델 이름을 지정합니다(예를 들어 일반적으로 my_new_model보다 census_wide_deep이 더 적합).
  • 버전은 쉽게 읽을 수 있는 이름으로 지정하는 것이 좋습니다. 타임스탬프나 이와 비슷한 고유한 값 대신 간단한 버전 지정자(예: v1)를 사용하는 것이 좋습니다.

모델 관리

AI Platform Prediction의 모델 리소스는 머신러닝 모델을 개별적으로 구현하는 데 사용되는 논리적 컨테이너입니다. 할당이나 유지보수에 필요한 복잡한 작업이나 추가 리소스가 없으므로 작업하기에 가장 간단한 리소스입니다.

다음 표에는 모델 작업에 대한 요약과 이를 수행하는 데 사용할 인터페이스 목록이 나와 있습니다.

작업 인터페이스 참고
create projects.models.create
gcloud ai-platform models create
AI Platform Prediction 모델 페이지에서 모델 만들기
delete projects.models.delete

모델 삭제는 장기 실행 작업입니다.

모델에 연결된 버전이 없어야 삭제할 수 있습니다.

gcloud ai-platform models delete
모델 목록 또는 모델 세부정보 페이지에서 삭제
get projects.models.get

제공되는 정보는 Model 리소스 참조에 설명되어 있습니다.

gcloud ai-platform models describe
모델 세부정보 페이지(모델 목록에서 링크를 통해 이동)
list projects.models.list
gcloud ai-platform models list
AI Platform Prediction 모델 페이지

버전 관리

버전은 모델의 특정한 반복 작업입니다. 모델 버전의 핵심은 텐서플로우 저장된 모델입니다.

다음 표에는 버전 작업에 대한 요약과 이를 수행하는 데 사용할 인터페이스 목록이 나와 있습니다.

작업 인터페이스 참고
create projects.models.versions.create

버전 만들기는 저장된 모델을 AI Platform Prediction으로 배포하는 작업입니다. 자세한 내용은 모델 배포 가이드를 참조하세요.

gcloud ai-platform versions create
모델 세부정보 페이지(모델 목록에서 링크를 통해 이동)에서 버전 만들기
delete projects.models.versions.delete

버전 삭제는 장기 실행 작업입니다.

모델의 기본 버전을 삭제하려면 모델에 할당된 다른 버전이 있어야 합니다.

gcloud ai-platform versions delete
모델 세부정보 페이지의 버전 목록에서 삭제
get projects.models.versions.get

제공되는 정보는 Version 리소스 참조에 설명되어 있습니다.

gcloud ai-platform versions describe
버전 세부정보 페이지(모델 세부정보 페이지의 버전 목록에서 링크를 통해 이동)
list projects.models.versions.list
gcloud ai-platform versions list
모델 세부정보 페이지의 버전 목록
setDefault projects.models.versions.setDefault

모델에 새 기본 버전을 할당할 수 있는 유일한 방법입니다. 첫 번째 버전 이후 버전을 만들어도 새 버전이 기본 버전으로 전환되지 않습니다.

gcloud ai-platform versions set-default
모델 세부정보 페이지의 버전 목록에서 기본값으로 설정

작업 관리

AI Platform Prediction은 학습과 일괄 예측 등 두 가지 유형의 작업을 지원합니다. 각 유형의 세부 내용은 다르지만 기본 작업은 동일합니다.

다음 표에는 작업에 대한 요약과 이를 수행하는 데 사용할 인터페이스 목록이 나와 있습니다.

작업 인터페이스 참고
create projects.jobs.create

작업 만들기에 대한 자세한 내용은 학습일괄 예측 가이드를 참조하세요.

gcloud ai-platform jobs submit training

gcloud ai-platform jobs submit prediction

콘솔 구현 없음
cancel projects.jobs.cancel

실행 중인 작업 취소

gcloud ai-platform jobs cancel

작업 세부정보 페이지에서 취소
get projects.jobs.get 제공되는 정보는 Jobs 리소스 참조에 설명되어 있습니다.

gcloud ai-platform jobs describe

작업 세부정보 페이지(작업 목록의 링크를 통해 이동)
list projects.jobs.list 최근 90일 동안 만든 작업만 표시됩니다.

gcloud ai-platform jobs list

작업 목록

비동기 작업 처리

대부분의 AI Platform Prediction 리소스 관리 작업은 최대한 빨리 반환되며 완전 응답을 제공합니다. 그러나 작업 및 장기 실행 작업이라는 두 가지 유형의 비동기 작업에 대해 이해하고 있어야 합니다.

일반적으로 비동기 작업을 시작할 때는 완료 시점을 파악해 두는 것이 좋습니다. 상태를 가져오는 프로세스는 작업 및 장기 실행 작업에 따라 다릅니다.

작업 상태 가져오기

projects.jobs.get을 사용하여 작업 상태를 가져올 수 있습니다. 이 메서드는 gcloud ai-platform jobs describe 및 Google Cloud Console의 작업 페이지에서도 제공됩니다. 상태를 가져오는 방법과 관계없이 가져온 정보는 작업 리소스의 구성원을 기반으로 합니다. 응답의 Job.state가 다음 값 중 하나와 같으면 작업이 완료된 것입니다.

  • SUCCEEDED
  • FAILED
  • CANCELLED

장기 실행 작업 상태 가져오기

AI Platform 예측에는 3가지 장기 실행 작업이 있습니다.

  • 버전 만들기
  • 모델 삭제
  • 버전 삭제

장기 실행 작업 중 버전 만들기 작업은 완료하는 데 많은 시간이 걸릴 수 있는 유일한 작업입니다. 일반적으로 모델 및 버전 삭제는 거의 실시간으로 완료됩니다.

gcloud 명령줄 도구 또는 Cloud Console을 사용하여 버전을 만들 경우 작업이 완료되면 인터페이스에 자동으로 알림이 표시됩니다. API를 사용하여 버전을 만들면 작업 상태를 직접 추적할 수 있습니다.

  1. projects.models.versions.create 호출에 대한 응답에 포함된 작업 객체에서 서비스 할당 작업 이름을 가져옵니다. 이름 값의 키는 "name"입니다.

  2. projects.operations.get을 사용하여 작업 상태를 주기적으로 폴링합니다.

    1. 첫 번째 단계에서 가져온 작업 이름을 사용하여 다음과 같은 형식의 이름 문자열을 만듭니다.

      'projects/my_project/operations/operation_name'
      

      응답 메시지에는 작업 객체가 포함됩니다.

    2. "done" 키의 값을 가져옵니다. 이 값은 작업 완료를 나타내는 부울 표시기입니다. 작업이 완료되면 이 값은 true입니다.

  3. 완료되면 작업 객체에 다음 두 가지 키 중 하나가 포함됩니다.

    • 작업이 성공하면 "response" 키가 표시됩니다. 값은 google.protobuf.Empty입니다. 응답 객체가 있는 AI Platform Prediction 장기 실행 작업이 없기 때문입니다.

    • 오류가 발생하면 "error" 키가 표시됩니다. 값은 상태 객체입니다.

다음 단계