作者 | 土豆变成泥

来源 | 知秋路(ID:gh_4a538bd95663)

【导读】作为谷歌tensorflow某项目的Contributor,已经迅速弃坑转向Pytorch。目前Tensorflow还没有被Pytorch比下去,但之后极大概率被比下去。

01 在学术界Pytorch已经超越Tensorflow

Pytorch因其简单易上手,目前已经被广大Researcher所使用。

深度学习论文Pytorch框架使用比例

从2018年的10%左右,飙升到今年的80%,只要不一顿操作猛如虎,Pytorch在学术界称霸已成定局。

道理很简单,Research的目的是快速实现、验证自己的想法,而不太注重兼容、部署等问题,因此多数人奉行“怎么快怎么来”的策略;同样,只有能够快速验证自己idea的Researcher才能不被实现而耽误太多时间,更有机会发好的论文。

因此,学术界Pytorch未来会一枝独秀。

02 在工业界Tensorflow依旧无可取代

工业界更注重部署,而Tensorflow的生态更有利于快速部署。

以Nvidia支持的TensorRT为例子,与Pytorch相比,英伟达官方不仅是是支持了Tensorflow,而且给出了多种模型的基于TensorRT的多版本模型,除此之外,还给出了不同模型在最常用的嵌入式板子TX2上的算法测试时间。

所以,如果作为一个工程人员,为了更快速给出方案、更快速跑通流程、更快速完成任务,最好的方式就是在现有的生态基础上,进行算法组合和调优,以满足特定任务。

而如果采用部署生态尚不成熟的Pytorch,可能遇到目前TensorRT不支持某些操作、TensorRT的优化没达到Tensorflow的水平,甚至出了一些莫名其妙的Bug然后花了好几天才解出来甚至解不出来。

所以,目前的部署生态,Tensorflow要比Pytorch老练很多。

03 未来,Tensorflow无法打入学术界

从Pytorch2018年的10%飙升到80%这一趋势来看,Tensorfow未来是无法打入学术界的,并且后续占据的份额会更少。一个失了人心的框架,想力挽狂澜的再找回人心,比重新开始还要艰难。

除此之外,Tensorflow 2.0更值得令人批判,如果图它的Eager模式,我为何不使用Pytorch?图它的历史包袱吗?都是动态图,Pytorch清晰明了简洁,也没有那么多老旧历史需要绕道。而使用Tensorflow时候,总是一不小心就发现还是绕回了原来的旧版本上。

04 未来,Tensorflow可能也会失掉工业界

Tensorflow在工业界的地位,也没有那么牢固,因为生态总归是人构建的。

当学术界疯狂扑入Pytorch,对新模型的适配等工作,自然会倾向于Pytorch了。

有些项目做了Pytorch转Tensorflow的工具,到时候难道Tensorflow,就只用来部署了?

05 Tensorflow的劣势

Tensorflow静态图虽说上手难了点,但这并非1.x版本不好用的主要原因。Tensorflow 1.x不好用的主要原因在于API混乱。

tf.nn中算是基本操作,可tf.layer、tf.keras、还有tf.contrib里面一坨东西tf.contrib.layer、slim等等,这么多冗余的Module,其实都只是基本的神经网络层,contrib里面额外有一些特殊的。

可是这种冗余极大降低了Tensorflow的生态质量。有的人习惯用tf.layer,有的喜欢nn,官方还一直用slim,不少人也用tf.contrib里面的很多东西。这种混乱使得Tensorflow的生态用起来并没有那么容易。

记得刚用tensorflow不久时候,对contrib里面的东西了解也不多。突然看代码遇到slim这东西,感觉简直了。谷歌官方的代码里,明明就一个MobileNet,就不能不用contrib里面的东西么?我就不知道有什么骚操作需要用到这里的东西,说好的contrib里面的东西不稳定呢?不稳定还总是用。

到了Tensorflow 2.0后,情况并没有好转。

为了兼容1.x,谷歌也是想方设法的搞。可是,2.x的生态其实连Pytorch的车尾灯都看不到。图个啥?图时不时发觉还是1.x的生态好?

还不如坚守静态图,然后好好梳理一下自己的API!

06 总结

Pytorch依旧上升,而tensorflow的混乱会使得tensorflow会优势渐失,倒向动态图的tensorflow,只会加速自己的消亡。

所以,对于要入坑神经网络的小白,直接扑向Pytorch不要回头;

对于已经在使用Pytorch的,不要心心念念想着Tensorflow,这不是一个香饽饽;

对于已经在Tensorflow浅坑里的,建议马上转向Pytorch,因为你会Tensorflow再学会Pytorch,一周就够了;

对于已经在Tensorflow坑底的,那一定是很大很大的大佬了,框架对你来说已经不是束缚了。

框架是死的,人是活的。两个框架各有千秋,只是Pytorch更有前景。

选择最有前景的,才是最理智的,不要49年入国军。

(*本文为AI科技大本营转载文章,转载联系原作者)

精彩公开课

推荐阅读

  • 滴滴开源在2019:十大重点项目盘点,DoKit客户端研发助手首破1万Star

  • 你的 App 在 iOS 13 上被卡死了吗

  • 12306 回应软件崩了;微信发布新版本,朋友圈可“斗图”;Ant Design 3.26.4 发布 | 极客头条

  • 2019 最烂密码排行榜大曝光!网友:已中招!

  • 如何用Redis实现微博关注关系?

  • 扎心了!互联网公司福利缩水指南

  • “对不起,我们只招有出色背景的技术人员!”

  • 2019中国区块链开发者大会圆满落幕!10大烧脑核心技术演讲干货全送上!

  • 你点的每个“在看”,我都认真当成了AI

Pytorch和Tensorflow,谁会笑到最后?相关推荐

  1. 2022年了,PyTorch和TensorFlow你选哪个?

    选自AssemblyAI博客 作者:Ryan O'Connor 机器之心编译 机器之心编辑部 坊间传闻:「TensorFlow 适合业界,PyTorch 适合学界」.都 2022 年了,还是这样吗? ...

  2. 掌握深度学习,为什么要用PyTorch、TensorFlow框架?

    作者 | Martin Heller 译者 | 弯月 责编 | 屠敏 来源 | CSDN(ID:CSDNnews) [导读]如果你需要深度学习模型,那么 PyTorch 和 TensorFlow 都是 ...

  3. 经验 | Pytorch还是Tensorflow?英伟达工程师帮你总结了

    翻译 | AI科技大本营(rgznai100) 参与 | reason_W 本文作者Dominic Monn,是NVIDIA机器学习工程师.在本文中,作者讲述了自己在深度学习过程中使用PyTorch和 ...

  4. 2022年了,PyTorch和TensorFlow选哪个?

    Datawhale推荐 作者:Ryan O'Connor,来源:机器之心 坊间传闻:「TensorFlow 适合业界,PyTorch 适合学界」.都 2022 年了,还是这样吗? 2022年了,你是选 ...

  5. PyTorch、TensorFlow最新版本对比,2021年了你选谁?

    选自towards data science 作者:Mostafa Ibrahim 机器之心编译 编辑:陈萍 PyTorch(1.8)和Tensorflow(2.5)最新版本比较. 自深度学习重新获得 ...

  6. 985博士分享Pytorch与Tensorflow,哪个更值得你学习?

    本文将探讨PyTorch和TensorFlow这两种流行深度学习框架之间的关键相似点和不同点.为什么选择这两个框架,而不是其他的呢?目前有很多的深度学习框架,而且很多都可用于实际的生产,我之所以选择这 ...

  7. 深度学习环境配置指南:Pytorch、TensorFlow、Keras

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者丨Yukyin@知乎 来源丨https://zhuanlan.z ...

  8. 编写同时在PyTorch和Tensorflow上工作的代码

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 ❝ "库开发人员不再需要在框架之间进行选择." ...

  9. 谁是深度学习框架一哥?2022 年,PyTorch 和 TensorFlow 再争霸

    来源:机器学习研究组订阅 用PyTorch还是TensorFlow,对于大部分深度学习从业者来说真是一个头疼的问题.最近Reddit上有个帖子从三个方面对比了两个框架,结果竟然是平手? 你用PyTor ...

最新文章

  1. 腾讯优图10篇AAAI论文解析,涉及数学速算批改、视频识别和语义分割 | 附下载...
  2. 网易云信给您拜年啦!
  3. Java大数加法乘法减法、36进制加法
  4. java设计模式之单例模式(七种方法)
  5. 51nod1676-无向图同构【乱搞】
  6. 【linux】信号量的值定义
  7. MongoDB异常修复
  8. linux下的git 编辑器,vim - 如何让Git使用我选择的编辑器进行提交?
  9. CodeSmith基础(八)
  10. 对于通用计算机而言,《计算机操作系统》第二次作业
  11. ios越狱改设备id_为什么要越狱iOS设备
  12. win10电脑虚拟内存怎么设置?win10虚拟内存设置多少合适?
  13. 保姆级win7下配置虚拟机-安装Ubuntu20.04
  14. Shapely 扩展包功能札记
  15. ux设计_UX评论模式品牌知道规则并且也打破了规则
  16. 第五章 组合逻辑电路设计
  17. WEB、WEB标准、W3C的理解
  18. 唯美MACD-完全版
  19. 用c语言编写一个完整的实现单链表,如何用c语言实现两个单链表的归并
  20. 在什么情况下,“ git pull”会有害吗?

热门文章

  1. html5地理定位数据
  2. 不说12306你会Die啊?当然不会,但会憋死
  3. 如何制作一个类似Tiny Wings的游戏 Cocos2d-x 2.1.4
  4. php中mkdir()函数的权限问题
  5. Oracle 11g Release 1 (11.1) PL/SQL_多维 Collection 类型和其异常
  6. IDC行业前景,机遇与挑战并存
  7. linux安装8168网卡,Fedora 配置 RTL8168/8111 网卡 Linux下 RTL8168/8111 网卡配置
  8. linux下网卡状态,linux-网络状态
  9. HR与HRBP的区别
  10. Ubuntu实时监测系统性能工具