我在Keras创建了一个使用卷积层和LSTM层的网络。
我已经读过,tensorflow无法很好地处理GPU中的LSTM层:http://minimaxir.com/2017/07/cpu-or-gpu/
事实上,我的网络在GPU中变慢了(希望它不是另一个问题)。
我希望tensorflow将所有卷积操作都抛给GPU,但是将所有LSTM操作保留在CPU中。这可能吗?
因此,考虑到我可以找到张量流图并识别其每个张量,我可以手动定义每个张量执行其操作的位置吗?
答案 0 :(得分:2)
在实施this网络后,您可以(如果使用Tensorflow
)尝试以下技术:
with tf.device('/cpu:0'):
# model layers which should be run on CPU go here
答案 1 :(得分:1)