我有一个关于 Keras 与其他 TF 包装器(如 Tensorpack)的训练性能的问题。
在 a Q&A session 期间,Keras 的作者表示该软件包没有性能成本:
但另一方面,Tensorpack github 声称它比 Keras 快 2 倍,即使有一个很小的 CNN:
所以现在我想知道以下问题:谁是对的?
在训练中,两倍对我来说非常重要。
最佳答案
我是 tensorpack 的作者。
文档中的 Input Pipeline 页面总结了主要性能改进的原因:https://tensorpack.readthedocs.io/tutorial/extend/input-source.html
这些参数适用于单个 GPU 训练案例。对于多 GPU 训练,我们有更多性能改进以匹配 Google 的基准代码。
@jdehesa 的回答是不对的,我们从不使用 TFRecord 来读取数据(虽然它有能力这样做,但我看不出有多大优势)。您可以通过纯 Python 阅读所有内容并获得这种速度。
此外,2 倍加速可能有点过时了,我知道 Keras 一直在改进减少框架开销。
关于performance - TF 包装器 : Performance of Keras vs Tensorpack,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45411755/