Keras fit生成器在Tensorflow后端中未使用GPU

Keras fit生成器在Tensorflow后端中未使用GPU,tensorflow,keras,Tensorflow,Keras,我用Keras实现了一个代码,我使用的是fit\u生成器,因为数据的大小非常大 这是我的密码: model = ad.kerasCNN() model.fit_generator( ad.data_generator(X_TRAIN_metadata, Y_TRAIN_metadata, batch_size), steps_per_epoch, epochs=maxEpoch, verbose=1, callbacks=[history, e

我用
Keras
实现了一个代码,我使用的是
fit\u生成器
,因为数据的大小非常大

这是我的密码:

model = ad.kerasCNN() 

model.fit_generator(
    ad.data_generator(X_TRAIN_metadata, Y_TRAIN_metadata, batch_size), 
    steps_per_epoch, 
    epochs=maxEpoch, 
    verbose=1, 
    callbacks=[history, early_stopping], 
    validation_data=ad.data_generator(X_DEV_metadata, Y_DEV_metadata, batch_size), 
    validation_steps=steps_per_epoch_dev, 
    class_weight=None, 
    max_queue_size=10, 
    workers=1, 
    use_multiprocessing=False, 
    initial_epoch=0
)
当我使用GPU运行这段代码时,我在培训阶段不会遇到任何问题,GPU的使用率在70-80%之间

但是,当代码进入验证时,GPU不被使用。 这意味着验证时间比培训阶段长23倍

这是keras/tensorflow的正常行为吗


要在验证时使用GPU,我可以做些什么?

请格式化您的代码-无法在代码格式化时读取它。这是我正在使用的keras对fit_生成器的唯一调用。内联格式并不适用于如此长的代码段,而是应该使用代码块。我们只是想帮助您回答问题,您可以随时不听。好吧,现在是一个代码块。请格式化您的代码-不可能在代码格式化时读取它。这是我正在使用的keras对fit_生成器的唯一调用。内联格式并不适用于如此长的代码段,而是应该使用代码块。我们只是想帮你回答问题,你总是可以自由地不听……好吧,现在是一个代码块。