发布于 2018-10-25 23:58:53
我相信目前最著名的库的实现将允许您实现您遇到的任何网络。因此,它归结为品味和实用性方面。
至于根据您想要创建的网络来决定框架;如果网络有分支或独立的控制流(数据传输或逻辑)在培训期间有条件地使用,那么PyTorch可能更有用。否则,最好的起点可能是使用喀拉斯 --一个高于丹瑟尔流的高级API。
使用火炬进行实验,使用Tensorflow进行生产
现在,对上述笼统的声明提出警告:
Pytorch的最新版本(v1.0)提供了几种使生产就绪的代码方法,因此可以通过编译它来提高性能,以及使用16位浮点操作(与标准的32位操作相反)。他们还开始推出C++ API。这些都是为部署而制作全面产品的步骤.Tensorflow已经引入了它的热衷于执行的API,这意味着您可以构建动态图,就像在PyTorch中一样。它支持更快、更交互式的原型开发。
如果您是一个纯Python开发人员,PyTorch会感觉更自然一些。如果您是其他静态类型语言(如C++和Java)的通用软件工程师,Tensorflow可能会觉得更符合逻辑。
总的来说,Tensorflow以及(现在内置的) Keras包装器是一个更成熟的库,具有更大的社区和更长的历史,这意味着在线支持更多。据我所知,PyTorch周围有更高层次的兴奋网。它被非常积极地用于研究和更新的开源项目/课程,这表明它可能成为一种主导力量。
https://datascience.stackexchange.com/questions/19673
复制相似问题