“用户警告:无法检索到输入。这可能是因为工人死亡。我们没有有关丢失样本的任何信息。”

时间:2019-10-18 07:51:45

标签: machine-learning deep-learning tf.keras

在训练模型时,我收到以下警告:“用户警告:无法检索到输入。可能是由于工人死亡。我们对丢失的样本没有任何信息。)”,显示此警告后,模型开始训练。此警告是什么意思?这会影响我的训练吗?我需要担心吗?

7 个答案:

答案 0 :(得分:1)

这只是用户警告,当您在训练过程中尝试获取输入目标时,通常会抛出该警告。这是因为为排队机制设置了超时,该超时机制将在data_utils.py内部指定。

有关更多详细信息,您可以参考data_utils.py文件夹中的keras/utils文件。

https://github.com/keras-team/keras/blob/master/keras/utils/data_utils.py

答案 1 :(得分:1)

在Google Colab中训练模型时,我得到了同样的警告。问题是我试图从已安装到Colab会话的Google云端硬盘中获取数据。解决方案是将数据移到Colab的工作目录中并从那里使用它。只需通过笔记本中的!cp -r path/to/google_drive_data_dir/ path/to/colab_data_dir即可完成。请注意,每次创建新的Colab会话时,您都必须这样做。

这可能是Rahul提出的问题,也可能不是,但是我认为这可能对其他面临此问题的人有所帮助。

答案 2 :(得分:0)

确保您给出的数据集的路径仅是正确的。这绝对有帮助 例如:train_data_dir =“ / content / drive /我的云端硬盘/ Colab笔记本/数据集”

答案 3 :(得分:0)

当我使用keras在机器上训练一个深度神经网络时,遇到了同样的问题,我花了一些时间才弄清楚。 我正在使用

加载的图像
ImageDataGenerator(target_size = (256, 256))

来自

keras.preprocessing 

的分辨率较低,例如100 * 100,而我试图将它们转换为256 * 256,显然没有为此提供内置支持。

我固定了ImageDataGenerator返回的图像的输出形状后,警告消失了。

//注意:数字100 * 100和255 * 255仅用于说明。

答案 4 :(得分:0)

您可以减少工作人员的数量和max_queue_size来解决问题。

答案 5 :(得分:0)

当我训练的数据样本量小于批处理量时,我得到了这个警告。

(培训实际上似乎已经开始,但是在显示第一个时期的进度条之前就陷入了僵局。)

答案 6 :(得分:0)

如果您正在GPU中运行训练,则会发生Warning。您必须知道fit_generator运行期间有两个运行进度。

  1. GPU,trains每个时期都有每个步骤的图像数据集。
  2. CPU,prepares每个批处理大小的图像数据集。

虽然它们是并行任务。因此,如果CPU的计算量低于GPU的计算量,则会发生Warning

解决方案:

只需将batch_size设置为较小,或升级CPU配置。