原因:内存不够了,
解决办法:github上,BERT官方也说了,修改max_seq_length
https://github.com/google-research/bert#out-of-memory-issues
运行run_squad.py时,github示例给的参数max_seq_length赋值384,
我用的GPU是GTX 1080,电脑内存16G,我把max_seq_length改为256了,可以正常运行,如下:
python run_squad.py \
--vocab_file=$BERT_BASE_DIR/vocab.txt \
--bert_config_file=$BERT_BASE_DIR/bert_config.json \
--init_checkpoint=$BERT_BASE_DIR/bert_model.ckpt \
--do_train=True \
--train_file=$SQUAD_DIR/train-v1.1.json \
--do_predict=True \
--predict_file=$SQUAD_DIR/dev-v1.1.json \
--train_batch_size=12 \
--learning_rate=3e-5 \
--num_train_epochs=2.0 \
--max_seq_length=256 \
--doc_stride=128 \
--output_dir=/tmp/squad_base/