Gir*_*der 5 python gnu-screen broken-pipe docker keras
我正在使用 userdocker 在远程服务器上一个接一个地训练几个 Keras 模型。我通过 ssh 连接到服务器,让它们在不同的屏幕上运行。
为了加快速度,我在 5 个 GPU 上训练模型,以便同时训练 5 个不同的模型。
大多数情况下,模型训练没有任何问题:我分离屏幕,从服务器注销并让它们运行一夜。然而,有时他们会在培训过程中因管道破裂消息而停止。下面我包含了消息的最后一部分,因为我认为它可能是最相关的,但它很长且重复。
我发现这个问题有一个稍微相似的错误消息,他们链接到这个解释,但我看不出如何在我的情况下修复它,或者我在我的代码中犯了可能导致这个问题的错误并不总是发生。
有没有人在使用 Keras 或 userdocker 时遇到过类似的问题?怎样才能防止它发生?
错误信息
23/24 [==========================>..] - ETA:7s - 损失:1.7797 - acc:0.2219 Traceback(大多数最近调用最后一次):
文件“/usr/local/lib/python2.7/dist-packages/keras/utils/data_utils.py”,第 655 行,在 _data_generator_task self.queue.put((True, generator_output))
文件中",第 2 行,放入
文件 "/usr/lib/python2.7/multiprocessing/managers.py",第 759 行,在 _callmethod 类型中,结果 = conn.recv() EOFError进程 Process-259:回溯(最近一次调用):
文件“/usr/lib/python2.7/multiprocessing/process.py”,第 258 行,在 _bootstrap self.run()
文件“/usr/lib/python2. 7/multiprocessing/process.py", line 114, in run self._target(*self._args, **self._kwargs)
File "/usr/local/lib/python2.7/dist-packages/keras/utils/ data_utils.py”,第 665 行,在 _data_generator_task self.queue.put((False, e))
文件“”,第 2 行,输入文件“/usr/lib/python2.7/multiprocessing/managers.py”,行758, in _callmethod conn.send((self._id, methodname, args, kwds))
IOError: [Errno 32] 管道损坏回溯(最近一次调用):文件“main.py”,第 406 行,在 group_main(sys.argv[1:])
文件“main.py”,第 346 行,在 group_main steps_per_epoch
文件“/netscratch/user01/ perge/scripts/pycharm_perge/model_trainer.py", line 78, in train_model steps_per_epoch=steps_per_epoch, epochs=epochs, callbacks=callBacksList)
文件"/usr/local/lib/python2.7/dist-packages/keras/legacy/interfaces .py”,第 91 行,在包装器中 return func(*args, **kwargs)
文件“/usr/local/lib/python2.7/dist-packages/keras/models.py”,第 1256 行,在 fit_generator initial_epoch= initial_epoch)
文件“/usr/local/lib/python2.7/dist-packages/keras/legacy/interfaces.py”,第 91 行,包装器 return func(*args,**夸格)
文件“/usr/local/lib/python2.7/dist-packages/keras/engine/training.py”,第2195行,fit_generator workers=0)文件“/usr/local/lib/python2.7/dist-包/keras/legacy/interfaces.py”,第 91 行,在包装器中返回 func(*args, **kwargs)
文件“/usr/local/lib/python2.7/dist-packages/keras/engine/training.py “,第 2310 行,在evaluate_generator generator_output = next(output_generator)
文件“/usr/local/lib/python2.7/dist-packages/keras/utils/data_utils.py”中,第 751 行,在 get if not self.queue 中。 empty(): File "", line 2, in empty File "/usr/lib/python2.7/multiprocessing/managers.py", line 758, in _callmethod conn.send((self._id, methodname, args, kwds )) IOError: [Errno 32] 断管
| 归档时间: |
|
| 查看次数: |
946 次 |
| 最近记录: |