AI Platform Training의 기본 제공 알고리즘을 사용하여 학습하면 학습 코드를 작성하지 않고도 데이터세트를 제출하고 모델을 학습시킬 수 있습니다. 이 페이지에서는 기본 제공 BERT 알고리즘의 작동 방식과 사용법을 설명합니다.
개요
이 기본 제공 알고리즘은 학습 및 모델 내보내기를 모두 수행할 수 있습니다.
- 학습: AI Platform Training은 제공된 데이터 세트 및 모델 매개변수와 함께 TensorFlow의 BERT 구현을 사용하여 학습을 실행합니다.
- 내보내기: 제공된 초기 체크포인트를 사용하여 원하는 작업 디렉터리에 직렬화된 모델을 생성합니다. 그런 후 이 모델을 AI Platform에 배포할 수 있습니다.
제한사항
다음 기능은 기본 제공 BERT 알고리즘을 사용한 학습에 지원되지 않습니다.
- 자동화된 데이터 사전 처리 이 버전의 BERT를 사용하려면 학습 및 출력 모두 입력 데이터가 TFRecords 형식이어야 합니다. 학습 애플리케이션은 형식이 지정되지 않은 입력을 자동으로 처리하도록 해야 합니다.
지원되는 머신 유형
지원되는 AI Platform Training 확장 등급과 머신 유형은 다음과 같습니다.
BASIC
확장 등급BASIC_TPU
확장 등급- AI Platform Training에서 지원하는 Compute Engine 머신 유형을 사용하는
CUSTOM
확장 등급 - 다음 기존 머신 유형이 있는
CUSTOM
확장 등급:standard
large_model
complex_model_s
complex_model_m
complex_model_l
standard_gpu
standard_p100
standard_v100
large_model_v100
complex_model_m_gpu
complex_model_l_gpu
complex_model_m_p100
complex_model_m_v100
complex_model_l_v100
TPU_V2
(코어 8개)
TPU 액세스 권한이 있는 머신 유형을 사용하는 것이 좋습니다.
입력 데이터 형식 지정
모델을 학습하기 전 입력 및 평가 데이터가 TFRecords 형식인지 확인합니다.
Cloud Storage 버킷 권한 확인
데이터를 저장하려면 AI Platform Training 작업을 실행하는 데 사용하는 것과 동일한 Google Cloud 프로젝트에서 Cloud Storage 버킷을 사용합니다. 그렇지 않으면 데이터가 저장된 Cloud Storage 버킷에 AI Platform Training 액세스 권한을 부여합니다.
BERT 학습 작업 제출
이 섹션에서는 기본 제공 BERT 알고리즘을 사용하는 학습 작업을 제출하는 방법을 설명합니다.
Google Cloud Console 내에서는 각 초매개변수의 간략한 설명을 확인할 수 있으며 기본 제공 BERT 알고리즘 참조에서는 보다 포괄적인 설명을 확인할 수 있습니다.
콘솔
Google Cloud Console의 AI Platform Training 작업 페이지로 이동합니다.
새 학습 작업 버튼을 클릭합니다. 아래 표시된 옵션 중에서 기본 제공 알고리즘 학습을 클릭합니다.
새 학습 작업 만들기 페이지에서 BERT를 선택하고 다음을 클릭합니다.
사용 가능한 모든 매개변수에 대해 자세히 알아보려면 Google Cloud Console의 링크로 이동하여 기본 제공 BERT 참조의 자세한 설명을 참조하세요.
gcloud
[VALUES-IN-BRACKETS]
에 고유 값을 입력하여 작업 환경 변수를 설정합니다.# Specify the name of the Cloud Storage bucket where you want your # training outputs to be stored, and the Docker container for # your built-in algorithm selection. BUCKET_NAME='BUCKET_NAME' IMAGE_URI='gcr.io/cloud-ml-algos/bert:latest' DATE="$(date '+%Y%m%d_%H%M%S')" MODEL_NAME='MODEL_NAME' JOB_ID="${MODEL_NAME}_${DATE}" JOB_DIR="gs://${BUCKET_NAME}/algorithm_training/${MODEL_NAME}/${DATE}" BERT_BASE_DIR='gs://cloud-tpu-checkpoints/bert/keras_bert/uncased_L-24_H-1024_A-16' MODEL_DIR='${STORAGE_BUCKET}/bert-output' GLUE_DIR='gs://cloud-tpu-checkpoints/bert/classification' TASK='mnli'
gcloud ai-platform jobs training submit
를 사용하여 학습 작업을 제출합니다. 데이터 세트를 사용하려면 다음과 같은 일반적인 예시를 조정하세요.gcloud ai-platform jobs submit training $JOB_ID \ --master-image-uri=$IMAGE_URI --scale-tier=BASIC_TPU --job-dir=$JOB_DIR \ -- \ --mode='train_and_eval' \ --input_meta_data_path=${GLUE_DIR}/${TASK}_meta_data \ --train_data_path=${GLUE_DIR}/${TASK}_train.tf_record \ --eval_data_path=${GLUE_DIR}/${TASK}_eval.tf_record \ --bert_config_file=${BERT_BASE_DIR}/bert_config.json \ --init_checkpoint=${BERT_BASE_DIR}/bert_model.ckpt \ --train_batch_size=32 \ --eval_batch_size=32 \ --learning_rate=2e-5 \ --num_train_epochs=1 \ --steps_per_loop=1000
gcloud
로 로그를 확인하여 학습 작업 상태를 모니터링합니다.gcloud ai-platform jobs describe
및gcloud ai-platform jobs stream-logs
를 참조하세요.gcloud ai-platform jobs describe ${JOB_ID} gcloud ai-platform jobs stream-logs ${JOB_ID}
추가 학습 자료
- Cloud TPU 자세히 알아보기
- TensorFlow Model Garden에 대해 자세히 알아보기