在高级深度学习库Keras中,存在多种类型的循环层。这些包括LSTM(长期短期记忆)和CuDNNLSTM。根据Keras documentationCuDNNLSTM是:



我相信Keras会尽可能自动使用GPU。根据TensorFlow build instructions的说法,要拥有一个可用的TensorFlow GPU后端,您将需要CuDNN:



因此,使用TensorFlow GPU后端的CuDNNLSTM与普通LSTM有何不同?找到可用的TensorFlow GPU后端后,会自动选择CuDNNLSTM并替换普通的LSTM吗?

最佳答案

您为什么不亲自尝试一下,看看呢?
就我而言,使用LSTM训练模型需要10分钟30秒。
只需将 call 从LSTM()切换到CuDNNLSTM(),就花费了不到一分钟的时间。

我还注意到,切换到CuDNNLSTM()也会大大提高model.evaluate()model.predict()的速度。

关于tensorflow - Keras中的CuDNNLSTM和LSTM有什么区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49987261/

10-12 20:11