2

我想研究深度学习的研究,但是不知道在TensorFlow和PaddlePaddle之间我应该选择哪个框架。谁能对比一下这两个框架?哪一个更好?尤其是CPU的运行效率

4

2 回答 2

1

这真的取决于你的目标......如果你计划训练,CPU 不会很好地为你工作。使用 colab 或 kaggle。

假设您确实获得了 GPU,这取决于您是要专注于分类还是对象检测。

如果你专注于分类,Keras 可能是最容易使用的,如果你想要一些高级的东西并且能够改变一些东西,那么 pytorch 可能是最容易使用的。

如果您计划进行对象检测,事情就会变得复杂......推理相当容易,但训练很复杂。实际上,您应该考虑 4 个平台:

  1. Tensorflow - 功能强大但很难使用。如果您不使用 Keras(而对于 OD,您通常不能),您需要将数据集预处理为 tfrecords,这很痛苦。OD Api 的消息非常神秘,对 tf 版本和 api 版本的组合非常敏感。另一方面,像efficientdet 这样的酷模型或多或少都易于使用。

  2. MMdetection - 非常强大的框架,有很多高级模型,一旦你了解了如何使用它,你就可以轻松地使用它支持的模型。缺点是某些模型的到达速度很慢(例如,efficientdet)

  3. paddlepaddle - 如果你懂中文,这应该没问题,也许。文档有点落后,通常需要大量即兴创作。基本上它类似于 mmdetection,只是有一些独特的模型和一些缺失的模型。

  4. detectron2 - 我没有使用这个,但它似乎只支持几个模型。

您可能需要首先为自己定义要做什么,然后再选择。

祝你好运!

于 2020-11-04T03:24:55.013 回答
0

这不是那么微不足道。一些模型在一种框架下运行得更快,而另一些模型在另一种框架下运行得更快。此外,它还取决于硬件。请参阅博客。如果推理是您唯一关心的问题,那么您可以在任何流行的框架(如 TensorFlow、PyTorch 等)中开发您的模型。最后将您的模型转换为ONNX格式并使用DNN-Bench对其性能进行基准测试,以选择最佳推理引擎你的申请。

于 2021-02-26T14:25:54.343 回答