Почему добавление аргумента `--display_step 2` значительно замедляет время обучения Mozilla DeepSpeech?
Я тренирую Mozilla DeepSpeech по набору данных Common Voice в Ubuntu 16.04 LTS x64 с 4 Nvidia GeForce GTX 1080, выполняя команду:
./DeepSpeech.py --train_files data/common-voice-v1/cv-valid-train.csv \
--dev_files data/common-voice-v1/cv-valid-dev.csv \
--test_files data/common-voice-v1/cv-valid-test.csv \
--log_level 0 --train_batch_size 20 --train True \
--decoder_library_path ./libctc_decoder_with_kenlm.so \
--checkpoint_dir cv001 --export_dir cv001export \
--summary_dir cv001summaries --summary_secs 600 \
--wer_log_pattern "GLOBAL LOG: logwer('${COMPUTE_ID}', '%s', '%s', %f)" \
--validation_step 2
Он использует более 80% из 4 графических процессоров.
Однако, если я добавлю --display_step 2
аргумент, это значительно замедляет время обучения, и он использует менее 20% из 4 графических процессоров.
Это удивляет меня как --display_step
описывается как:
tf.app.flags.DEFINE_integer ('validation_step', 0, 'количество эпох, через которые мы проходим цикл до проверки модели - подробный отчет о ходе работы зависит от "--display_step" - 0 означает отсутствие шагов проверки ")
поэтому, насколько я понимаю, модель должна оцениваться один раз каждые 2 эпохи, и, следовательно, она не должна замедлять время обучения (т. е. она должна просто добавлять некоторое время оценки один раз каждые 2 эпохи).
Почему добавление --display_step 2
аргумент значительно замедляет время обучения Mozilla DeepSpeech?