TensorFlow王位不保?ICLR投稿论文PyTorch出镜率快要反超了

2019-04-24 17:58:13 浏览数 (1)

圆栗子 发自 麦蒿寺 量子位 出品 | 公众号 QbitAI

自PyTorch出道以来,不断有人表示,发现了这样的趋势:

学术圈正在慢慢地抛弃TensorFlow,转投PyTorch。”

如今,PyTorch 1.0发布,ICLR 2019也才截稿不久,又是讨论这个问题的好时节。

Reddit上面,有小伙伴用非常低碳的方法观察了一下,这两年的论文用的都是什么框架:

从ICLR 2018到ICLR 2019的投稿来看,TensorFlow、PyTorch和Keras的搜索结果数发生了以下变化。

TensorFlow 228→266 PyTorch 87→252 Keras 42→56

虽然,三者数据皆有上升,但一年之间PyTorch搜索结果涨幅接近200%,好像已经对TensorFlow的宝座产生了威胁。

2017年1月19日,PyTorch第一次公开发布,到今天还不到两年,何以发展得这般蓬勃?

PyTorch可能比较善良

PyTorch的确有亲和力

一是容易上手。只要熟悉Python,就很容易和PyTorch玩耍在一起了。相比之下,学TensorFlow就像在学一种新的语言,语法很复杂,尤其不适合新手。

二是许多操作都很简洁。比如,Tensor和Numpy之间的互转,可以在PyTorch里优雅地完成,而在TF里就不轻松了。

三是debug方便。PyTorch作为动态图框架的优势就体现了,像给Python代码debug那样。有人说在TF里debug,还没有肉眼看一遍来得快。

四是……

总之,对离开TensorFlow拥抱PyTorch的人类来说,TF的槽点不胜枚举。

不过,研究人员选择PyTorch的原因,主要是它非常适合小型项目,适合快速的原型设计,诸如此类。

相对而言,TensorFlow就更适合大规模部署,特别是在需要跨平台部署和嵌入式部署的时候。静态图会方便部署。

还是离不开TensorFlow?

即便如此,作为研究人员,也还是有理由继续和TensorFlow在一起。

上个月,名叫Jeff Hale的数据科学家,做过一次深度学习框架排行榜。

他收集了各式各样的数据,其中一项就是GitHub活跃度

TF的标星 (Star) 、分叉 (Fork) 、关注量 (Watch) 和贡献者 (Contributor) 四项指标,对手皆是望尘莫及。

普及率当仁不让,资源也是最多,许多模型都能找到TF的代码实现。用户量大,遇到问题也容易找到解决的方法。

成熟的生态系统,大概就是这个样子吧。就算有诸多不便,依然是家园。

PyTorch 1.0三大更新

昨天,Facebook在F8大会上发布了PyTorch 1.0 rc1。这次重大更新,主要包括三点:

· 加了个新的混合前端 (Hybrid Front End) ,支持从Eager模式图形模式的追踪,填补研究和生产部署之间的鸿沟;

· 加了个改进过的torch.distributed库,让用户能在Python和C 环境之间,更快地训练模型;

· 加了个Eager模式C 接口,来支持那些需要高性能低延时才能完成的研究。

详细资料请至:

https://github.com/pytorch/pytorch/releases/

PyTorch的个位数更新了,TensorFlow还会远么?

日常预告TensorFlow 2.0

8月中旬,来自谷歌大脑的Martin Wicke透露,TensorFlow 2.0的一个预览版,在今年晚些时候就会和程序猿们见面了。

他说,大家可以期待以下几点更新:

· Eager Execution会成为2.0的一个核心功能。这个命令式的编程环境,会让入门TensorFlow变得更容易。

· 支持更多平台、更多语言;通过交换格式的标准化以及API的协调,来提升组件之间的兼容性和对等性。

· 移除已弃用的API,并减少重复,也是减少用户的困惑。

这里,强调了让新人更容易上手这一点,也许能挽回一部分望而生畏、准备投奔PyTorch的研究人员。

往后,TensorFlow和PyTorch之间的比赛,大概会越来越好看。

0 人点赞