machine-learning - GRU 和 LSTM 哪个更快
问题描述
我尝试使用 GRU 和 LSTM 在 keras 上实现模型。两种实现的模型架构相同。正如我在许多博客文章中所读到的,与 LSTM 相比,GRU 的推理时间更快。但在我的情况下,GRU 并不快,事实上相对于 LSTMs 比较慢。任何人都可以找到原因。与 Keras 中的 GRU 有什么关系,还是我在任何地方都出错了。
非常感谢您的帮助...
提前致谢
解决方案
我会首先检查您使用的 LSTM 是 CuDNNLSTM 还是简单的 LSTM。前者是 GPU 加速的变体,运行速度比简单的 LSTM 快得多,尽管在这两种情况下训练都在 GPU 上运行。
是的,文件不会说谎;事实上,GRU 单元的计算量比 LSTM 单元要少。
确保不要将简单的 GRU 与 CuDNN-LSTM 进行比较。
要获得真正的基准,请确保将 LSTM 与 GRU 以及 CuDNNLSTM 与 CuDNNGRU 进行比较。
推荐阅读
- windows - 如何通过单击从 Windows 中的 Go 可执行文件打开特定文件
- kubernetes - 裸机上的 Rook ceph 块存储 - 如何从 pod 中导出文件?
- python - 如何将一串整数转换为 tkinter 中的浮点值列表
- javascript - 用 Jest 只模拟一个“window”属性
- pyqt - 使用 PyQt5 创建上下文菜单
- javascript - 来自网页的 Facebook/instagram 链接在 ios 设备上返回 404
- c++ - 在 C++ 中继续实现“zip”
- html - 为什么 90% 的 div 高度在两个不同的屏幕上是不同的?
- object - 尝试使用 Grunt 运行 postcss 并收到错误“警告:[object Object] 不是 PostCSS 插件”
- mysql - 如何将 mysql node.js 托管到托管?|| 初学者