Pelatihan menggunakan algoritma BERT bawaan

Pelatihan dengan algoritma bawaan di AI Platform Training memungkinkan Anda mengirimkan set data dan melatih model tanpa menulis kode pelatihan apa pun. Halaman ini menjelaskan cara kerja algoritma BERT bawaan, dan cara menggunakannya.

Ringkasan

Algoritme bawaan ini dapat melakukan pelatihan dan mengekspor model:

  1. Pelatihan: Dengan menggunakan set data dan parameter model yang Anda berikan, AI Platform Training menjalankan pelatihan menggunakan implementasi BERT TensorFlow.
  2. Mengekspor: Dengan menggunakan checkpoint awal yang disediakan, buat model serial di direktori tugas yang diinginkan. Model ini kemudian dapat di-deploy ke AI Platform.

Batasan

Fitur berikut tidak didukung untuk pelatihan dengan algoritma BERT bawaan:

  • Pra-Pemrosesan Data Otomatis Versi BERT ini mengharuskan data input dalam bentuk TFRecords untuk pelatihan dan output. Aplikasi pelatihan harus dibuat untuk menangani input yang tidak diformat secara otomatis.

Jenis mesin yang didukung

Tingkat skala dan jenis mesin AI Platform Training berikut didukung:

  • Tingkat skala BASIC
  • Tingkat skala BASIC_TPU
  • Tingkat skala CUSTOM dengan salah satu jenis mesin Compute Engine yang didukung oleh AI Platform Training.
  • Tingkat skala CUSTOM dengan salah satu jenis mesin lama berikut:
    • 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 core)

Sebaiknya gunakan jenis mesin dengan akses ke TPU.

Memformat data input

Pastikan data input dan evaluasi dalam bentuk TFRecords sebelum melatih model.

Memeriksa izin bucket Cloud Storage

Untuk menyimpan data, gunakan bucket Cloud Storage dalam project Google Cloud yang sama dengan yang Anda gunakan untuk menjalankan tugas AI Platform Training. Jika tidak, berikan akses Pelatihan AI Platform ke bucket Cloud Storage tempat data Anda disimpan.

Mengirim tugas pelatihan BERT

Bagian ini menjelaskan cara mengirimkan tugas pelatihan menggunakan algoritma BERT bawaan.

Anda dapat menemukan penjelasan singkat tentang setiap hyperparameter dalam konsol Google Cloud, dan penjelasan yang lebih komprehensif di referensi untuk algoritma BERT bawaan.

Konsol

  1. Buka halaman AI Platform Training Jobs di konsol Google Cloud:

    Halaman Lowongan AI Platform Training

  2. Klik tombol Tugas pelatihan baru. Dari opsi yang ditampilkan di bawah, klik Pelatihan algoritma bawaan.

  3. Di halaman Create a new training job, pilih BERT, lalu klik Next.

  4. Untuk mempelajari lebih lanjut semua parameter yang tersedia, ikuti link di konsol Google Cloud dan lihat referensi BERT bawaan untuk mengetahui detail selengkapnya.

gcloud

  1. Tetapkan variabel lingkungan untuk tugas Anda, isi [VALUES-IN-BRACKETS] dengan nilai Anda sendiri:

       # 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'
    
  2. Kirim tugas pelatihan menggunakan gcloud ai-platform jobs training submit. Sesuaikan contoh umum ini agar berfungsi dengan set data Anda:

       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
    
  3. Pantau status tugas pelatihan Anda dengan melihat log dengan gcloud. Lihat gcloud ai-platform jobs describe dan gcloud ai-platform jobs stream-logs.

       gcloud ai-platform jobs describe ${JOB_ID}
       gcloud ai-platform jobs stream-logs ${JOB_ID}
    

Referensi pembelajaran lebih lanjut