Как обучить модель BERT с помощью SQUAD 2.0 в Cloud TPU v2?

Отказ от ответственности: я новичок в нейронных сетях и Tensorflow.

Я пытаюсь создать приложение QA, где пользователь задает вопрос, а приложение дает ответ. Большинство традиционных методов, которые я пробовал, не работают, недостаточно точны или требуют ручного вмешательства. Я изучал неконтролируемое приложение QA, то есть когда я наткнулся на BERT.

BERT, как утверждает Google, является современной моделью нейронной сети и набрал наивысший балл в таблице лидеров для Отряд 2.0. Я хочу использовать эту модель в своем приложении и протестировать ее работоспособность.

Я создал виртуальную машину Windows 2012 Datacenter edition в Compute Engine. Я создал облако TPU с использованием ctpu.

У меня есть большая модель BERT без корпуса в облачном хранилище .

Как обучить большую модель BERT без корпуса с помощью SQUAD 2.0?

Пожалуйста, не стесняйтесь поправлять меня, если я ошибаюсь, я понимаю, что Cloud TPU - это просто устройство, такое как CPU или GPU. Однако, если вы читаете это, они объясняют, что Cloud TPU - это виртуальная машина. (В Cloud TPU вы можете запускать BERT-Large как ...).

Где запустить run_squad.py, как указано в здесь?

python run_squad.py \
  --vocab_file=$BERT_LARGE_DIR/vocab.txt \
  --bert_config_file=$BERT_LARGE_DIR/bert_config.json \
  --init_checkpoint=$BERT_LARGE_DIR/bert_model.ckpt \
  --do_train=True \
  --train_file=$SQUAD_DIR/train-v2.0.json \
  --do_predict=True \
  --predict_file=$SQUAD_DIR/dev-v2.0.json \
  --train_batch_size=24 \
  --learning_rate=3e-5 \
  --num_train_epochs=2.0 \
  --max_seq_length=384 \
  --doc_stride=128 \
  --output_dir=gs://some_bucket/squad_large/ \
  --use_tpu=True \
  --tpu_name=$TPU_NAME \
  --versionvocab_filewith_negative=True

Как получить доступ к файлам хранилища из виртуальной машины для этого аргумента vocab_file?

Является ли внешний IP-адрес значением переменной среды $TPU_NAME?




Ответы (1)


Таким образом, TPU в настоящее время считываются только из GCS. Скачанную вами модель необходимо загрузить в другую корзину GCS, созданную вами. Таким образом TPU будет обращаться к vocab_file и другим файлам.

person Alex Ilchenko    schedule 16.06.2019
comment
Как мне сказать в виртуальной машине, что этот пример gs: // - это корзина, к которой я пытаюсь получить доступ? Я попытался сделать это, создав переменную окружения со значением 'gs: // example'. Выкинул ошибку. - person Jeeva Bharathi; 18.06.2019
comment
Вы должны пытаться получить доступ к сегментам, которые определены переменными среды. Если вы перейдете сюда, github.com/google-research/bert, вы увидите, что необходимо сделать export BERT_BASE_DIR=gs://bert_models/2018_10_18/uncased_L-12_H-768_A-12, например, если вы пытаетесь использовать базовую модель. - person Alex Ilchenko; 21.06.2019