目前我使用tensorflow slim从scrach训练模型。如果我只按照https://github.com/tensorflow/models/tree/master/slim#training-a-model-from-scratch中的说明操作,一切正常。
但是,我想使用多GPU,所以我设置--num_clones = 2或4,它们都不起作用。结果是它们都陷入了global_step / sec:0。它们无法继续。您可以在此处查看结果图片error result
DATASET_DIR=/tmp/imagenet
TRAIN_DIR=/tmp/train_logs
python train_image_classifier.py \
--num_clones=4 \
--train_dir=${TRAIN_DIR} \
--dataset_name=imagenet \
--dataset_split_name=train \
--dataset_dir=${DATASET_DIR} \
--model_name=inception_v3
希望有人可以帮助我,提前谢谢。顺便说一句,我使用tensorflow 1.1&在Ubuntu 16.04上的python 35。如果您需要更多信息,请告诉我。
答案 0 :(得分:0)
您的问题类似于使用tf-slim从单GPU切换到多GPU配置后的体验。我观察到参数服务器作业假定名称为“localhost”,该名称与model_deploy分配给我的CPU设备的默认作业名称冲突。我建议您按照this tensorflow.org article的“记录设备放置”部分检查设备名称。它解释了如何基于每个操作将设备名称打印到控制台。然后,您可以将实际作业名称作为参数传递给DeployConfig()的ps_job_name
参数,然后继续进行培训。