El entrenamiento mediante algoritmos integrados en AI Platform Training te permite enviar el conjunto de datos y entrenar un modelo sin escribir ningún código de entrenamiento. En esta página, se explica cómo funciona el algoritmo BERT integrado y cómo usarlo.
Descripción general
Este algoritmo integrado puede realizar el entrenamiento y la exportación de modelos:
- Entrenamiento: Con el conjunto de datos y los parámetros del modelo que proporcionaste, AI Platform Training ejecuta el entrenamiento con la implementación BERT de TensorFlow.
- Exportación: con el punto de control inicial proporcionado, genera un modelo serializado en el directorio de trabajo deseado. Luego, este modelo puede implementarse en AI Platform.
Limitaciones
Las siguientes características no son compatibles para el entrenamiento con el algoritmo integrado de BERT:
- Procesamiento previo y automático de datos: Esta versión de BERT requiere que los datos de entrada tengan el formato de TFRecords para capacitación y salida. Se debe realizar una aplicación de entrenamiento para manejar automáticamente las entradas sin formato.
Tipos de máquina admitidos
Se admiten los siguientes niveles de escala y tipos de máquinas de AI Platform Training:
- Nivel de escala
BASIC
- Nivel de escala
BASIC_TPU
- Nivel de escala
CUSTOM
con cualquiera de los tipos de máquina de Compute Engine compatibles con AI Platform Training. - Nivel de escala
CUSTOM
con cualquiera de los siguientes tipos de máquinas heredadas: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 núcleos)
Recomendamos usar un tipo de máquina con acceso a TPU.
Establece el formato de los datos de entrada
Asegúrate de que los datos de entrada y evaluación tengan el formato de TFRecords antes de entrenar el modelo.
Verifica los permisos del bucket de Cloud Storage
A fin de almacenar tus datos, usa un bucket de Cloud Storage en el mismo proyecto de Google Cloud que usas para ejecutar trabajos de AI Platform Training. De lo contrario, otorga acceso para AI Platform Training al depósito de Cloud Storage donde se almacenan tus datos.
Envía un trabajo de entrenamiento de BERT
En esta sección, se explica cómo enviar un trabajo de entrenamiento con el algoritmo integrado de BERT.
Puedes encontrar explicaciones breves de cada hiperparámetro en la consola de Google Cloud, y una explicación más completa en la referencia del algoritmo integrado BERT.
Console
Ve a la página Trabajos de AI Platform Training en la consola de Google Cloud:
Haz clic en el botón Trabajo de entrenamiento nuevo. En las opciones que se muestran a continuación, haz clic en Entrenamiento de algoritmos integrados.
En la página Crear un trabajo de entrenamiento nuevo, selecciona BERT y haz clic en Siguiente.
Si deseas obtener más información sobre todos los parámetros disponibles, sigue los vínculos en la consola de Google Cloud y consulta la referencia de BERT integrado para conocer más detalles.
gcloud
Configura variables de entorno en tu trabajo. Para ello, rellena los campos
[VALUES-IN-BRACKETS]
con tus propios valores:# 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'
Envía el trabajo de entrenamiento mediante
gcloud ai-platform jobs training submit
. Adapta este ejemplo genérico para trabajar con tu conjunto de datos: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
Supervisa el estado de tu trabajo de entrenamiento mediante la vista de los registros con
gcloud
. Consultagcloud ai-platform jobs describe
ygcloud ai-platform jobs stream-logs
.gcloud ai-platform jobs describe ${JOB_ID} gcloud ai-platform jobs stream-logs ${JOB_ID}
Más recursos de aprendizaje
- Más información sobre Cloud TPU.
- Obtén más información acerca de Model Garden de TensorFlow.