Keras如何在CPU上运行加载模型

2024-04-26 22:55:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我有keras和tensorflow后端,运行在GPU上。但是,我正在训练一个LSTM,所以我在训练CPU。在

with tf.device('/cpu:0'):
    model = Sequential()
    model.add(Bidirectional(LSTM(50, return_sequences=True), input_shape=(50, len(train_x[0][0]))))
    model.add(TimeDistributed(Dense(1, activation='sigmoid')))
    model.compile(loss='binary_crossentropy', optimizer='Adam', metrics=['acc'])

我遇到的问题是,当我保存并加载模型时,加载模型的预测函数执行得非常慢。经过一些定时测试后,我相信所发生的事情是加载的模型运行在GPU上,而不是CPU上,所以速度很慢。我尝试在CPU上编译加载的模型,但这并不能加快速度:

^{pr2}$

有没有一种方法可以达到与新训练的模型相同的速度?新训练出来的模型几乎快了五倍。谢谢你的帮助。在


Tags: 模型addmodelgpudevicetftensorflowwith