最近接触了不少TensorFlow的代码,然后我之前对pytorch也有过接触,于是想研究研究两者有什么区别,然后下面这篇文章讲解的比较清楚,大家可以仔细研究研究。
概括来讲两者在:1、应用;2、动态及静态图形定义;3、调试;4、可视化;5、部署;6、数据并行;7、特征这七个方面有所区别。
总结
TensorFlow 是一款强大而成熟的深度学习库,有强大的可视化性能,以及用于高水平模型开发的多个选项。它具备生产就绪的部署选项,也支持移动平台。如果你符合以下情况, TensorFlow 会是个很好的选择:
- 开发用于生产的模型
- 开发需要在移动平台上部署的模型
- 想要非常好的社区支持和较为全面的帮助文档
- 想要丰富的多种形式的学习资源
- 想要或需要使用 Tensorboard
- 需要用到大规模的分布式模型训练
PyTorch 仍然是个比较年轻的框架,但发展迅速。如果符合以下情况,PyTorch 就比较适合你:
- 正在做机器学习研究,或开发的产品在非功能性需求方面要求不高
- 想要获得更好的开发和调试经验
- 喜欢很有“Python 味”的东西
对于一个像我这样的新手来说,pytorch是比较友好的。因为它精简易懂。
参考详见此链接:
PyTorch VS TensorFlow:细数两者的不同之处 - 知乎
-----------------------------------------------------2022.10.3补充---------------------------------------------------------
动态图代码示例:
动态图非常的直观,也好理解,调试也容易,可以随时对参数调试。
静态图代码示例:
公式一旦定义好,那么在计算过程中,它的中间状态无法改变了。
两者性能评价: