Keras – method on_batch_end 速度慢,但我的唯一回调是检查点

我使用TensorFlow后端设置了一个Keras网络。

在训练我的网络时,我经常收到以下消息:

UserWarning: Method on_batch_end() is slow compared to the batch update (0.195523). Check your callbacks.  % delta_t_median)

问题在于我的网络只设置了检查点回调:

checkpoint = ModelCheckpoint(filepath, monitor='val_loss', verbose=1, save_best_only=True, mode='min')callbacks_list = [checkpoint]

据我所知,文档中提到这个方法只在每个epoch结束时调用,所以它不应该减慢on_batch_end方法的速度。谁能提供一些关于这个问题是什么的信息吗?


回答:

这很可能是一个生成器(fit_generator())的问题。当使用生成器作为数据源时,必须在每个批次结束时调用它。建议重新检查你的生成器代码,使用多处理(workers > 1)或增加批量大小(如果可能的话)。

Related Posts

时间序列二元分类

已关闭。此问题需要更加集中。目前不接受回答。 想要改进…

神经网络反向传播代码不工作

我需要编写一个简单的由1个输出节点、1个包含3个节点的…

值错误:y 包含先前未见过的标签:

我使用了 决策树分类器,我想将我的 输入 作为 字符串…

使用不平衡数据集进行特征选择时遇到的问题

我正在使用不平衡数据集(54:38:7%)进行特征选择…

广义随机森林/因果森林在Python上的应用

我在寻找Python上的广义随机森林/因果森林算法,但…

如何用PyTorch仅用标量损失来训练神经网络?

假设我们有一个神经网络,我们希望它能根据输入预测三个值…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注