PyTorch vs. TensorFlow之一个月用户体验

2017 年 10 月 21 日 深度学习世界


选自Medium

作者:Dominic Monn

机器之心编译

参与:路雪、刘晓坤



本文作者Dominic Monn之前是 TensorFlow 的用户,最近开始使用 PyTorch。经过一个月的使用之后,Dominic将自己的体验写了出来。文章从安装、使用、文档、社区、工具五个方面对 PyTorch 和 TensorFlow 进行了对比。


我之前是 TensorFlow 的用户,但是加入英伟达之后,我们决定转向 PyTorch(出于测试的目的)。以下是我的一些体验。


安装


PyTorch 的安装轻松直接,可以通过 PIP 或数据源安装。PyTorch 还提供 Docker 镜像,可用作项目的基图像。


PyTorch 没有专门的 CPU 版本和 GPU 版本,这一点与 TensorFlow 不同。这使安装更加便捷,但是如果你想同时支持 CPU 和 GPU 的使用,它需要生成更多代码。


需要注意的是,PyTorch 暂时无法提供官方的 Windows 分发。现在有非官方的 Windows 端口,但是并未得到 PyTorch 的支持。


使用


PyTorch 提供 Python 式的 API。这与 TensorFlow 不同,在 TensorFlow 中你需要先定义所有张量和图,再在会话中使用。


我认为,这将使代码变得更长,但是更简洁易懂。PyTorch 图必须在从 PyTorch nn.Module 类中继承的类中进行定义。图运行时会调用一个 forward() 函数。用这种「约定优于配置」方法,图的位置通常是已知的,且变量不用在后面的代码中进行定义。


这种「新」方法需要一些时间来适应,但是我认为,如果你在深度学习之外的领域中使用过 Python,那么你会发现这种方法非常直观。


根据一些评价,PyTorch 还在大量模型中展示了优于 TensorFlow 的性能。


文档


文档在大多数情况下是完整的。我查找函数或模块的定义时,从未失败过。TensorFlow 文档中所有的函数都在同一页,PyTorch 不同,它每个模块使用一页。如果你习惯了用 TensorFlow 查找函数的话,这可能有点难。


社区


很明显,PyTorch 社区没有 TensorFlow 社区大。但是,很多人喜欢在闲暇时间使用 PyTorch,即使在工作时间仍使用 TensorFlow。我认为如果 PyTorch 脱离 Beta,这种情况可能会有所改变。


当前,精通 PyTorch 的人仍然很少。


这个社区足够大,官方论坛的问题会得到快速回答,这样大量很棒的神经网络的示例实现就会被翻译成 PyTorch。


工具和助手


即使 PyTorch 提供大量的工具,但还缺少一些非常有用的工具。其中之一就是 TensorFlow 的 TensorBoard。这使得可视化稍微有点困难。


PyTorch 还缺少很多常用助手,比起 TensorFlow,这要求 PyTorch 用户更多依靠自己写代码。


结论


PyTorch 是 TensorFlow 的重要替代方案。由于 PyTorch 还在 Beta 中,所以我期待 PyTorch 的易用性、文档和性能都能够有更多改变和改进。


PyTorch 是很 Python 式的,用起来很舒适。它的社区和文档都很优秀,据说它还比 TensorFlow 稍快一点。


但是,PyTorch 社区与 TensorFlow 社区相比较小,且缺少很多有用的工具,如 TensorBoard。

 

原文链接:https://medium.com/towards-data-science/pytorch-vs-tensorflow-1-month-summary-35d138590f9



本文为机器之心编译,转载请联系本公众号获得授权

  
    
    
    

点击下方“阅读原文”下载同声译
↓↓↓
登录查看更多
3

相关内容

《强化学习—使用 Open AI、TensorFlow和Keras实现》174页pdf
专知会员服务
136+阅读 · 2020年3月1日
KGCN:使用TensorFlow进行知识图谱的机器学习
专知会员服务
80+阅读 · 2020年1月13日
一网打尽!100+深度学习模型TensorFlow与Pytorch代码实现集合
【GitHub实战】Pytorch实现的小样本逼真的视频到视频转换
专知会员服务
35+阅读 · 2019年12月15日
【书籍】深度学习框架:PyTorch入门与实践(附代码)
专知会员服务
160+阅读 · 2019年10月28日
【开源书】PyTorch深度学习起步,零基础入门(附pdf下载)
专知会员服务
107+阅读 · 2019年10月26日
开源书:PyTorch深度学习起步
专知会员服务
49+阅读 · 2019年10月11日
PyTorch  深度学习新手入门指南
机器学习算法与Python学习
9+阅读 · 2019年9月16日
手把手教 | 深度学习库PyTorch(附代码)
数据派THU
27+阅读 · 2018年3月15日
TensorFlow神经网络教程
Python程序员
4+阅读 · 2017年12月4日
Pytorch还是Tensorflow?英伟达工程师帮你总结了
人工智能头条
5+阅读 · 2017年10月27日
手把手教你由TensorFlow上手PyTorch(附代码)
数据派THU
5+阅读 · 2017年10月1日
教程 | 如何从TensorFlow转入PyTorch
机器之心
7+阅读 · 2017年9月30日
Adaptive Neural Trees
Arxiv
4+阅读 · 2018年12月10日
Arxiv
5+阅读 · 2018年5月1日
Arxiv
4+阅读 · 2018年4月9日
Arxiv
4+阅读 · 2018年3月30日
VIP会员
相关VIP内容
《强化学习—使用 Open AI、TensorFlow和Keras实现》174页pdf
专知会员服务
136+阅读 · 2020年3月1日
KGCN:使用TensorFlow进行知识图谱的机器学习
专知会员服务
80+阅读 · 2020年1月13日
一网打尽!100+深度学习模型TensorFlow与Pytorch代码实现集合
【GitHub实战】Pytorch实现的小样本逼真的视频到视频转换
专知会员服务
35+阅读 · 2019年12月15日
【书籍】深度学习框架:PyTorch入门与实践(附代码)
专知会员服务
160+阅读 · 2019年10月28日
【开源书】PyTorch深度学习起步,零基础入门(附pdf下载)
专知会员服务
107+阅读 · 2019年10月26日
开源书:PyTorch深度学习起步
专知会员服务
49+阅读 · 2019年10月11日
相关资讯
PyTorch  深度学习新手入门指南
机器学习算法与Python学习
9+阅读 · 2019年9月16日
手把手教 | 深度学习库PyTorch(附代码)
数据派THU
27+阅读 · 2018年3月15日
TensorFlow神经网络教程
Python程序员
4+阅读 · 2017年12月4日
Pytorch还是Tensorflow?英伟达工程师帮你总结了
人工智能头条
5+阅读 · 2017年10月27日
手把手教你由TensorFlow上手PyTorch(附代码)
数据派THU
5+阅读 · 2017年10月1日
教程 | 如何从TensorFlow转入PyTorch
机器之心
7+阅读 · 2017年9月30日
Top
微信扫码咨询专知VIP会员