本周,PyTorch 迎来了自己的 5 岁生日,官方发布可一条 Twitter 庆祝。
今天是 PyTorch 公开发布 5 周年!我们没想到会走这么远,但我们现在达成了这些成就 ——2000 贡献者,9 万项目,GitHub 上 390 万行“import torch”。
你细看,官方推文还复古了一把,图片里用上了 5 年前的原始 Logo。
追忆 5 年前,首个公开版 PyTorch 还不支持 Windows,Python 最新版还是 3.5,当时苹果操作系统还叫 OS X,PyTorch 的“老父亲”Meta 还叫 Facebook。
再看一眼现在 PyTorch 的安装指导页面,不禁让人感叹深度学习发展太快。
在这条 Twitter 下许多程序员发出祝福,一改学术圈推文下冷清的常态。AI 硬件的“老大哥”英伟达也发来贺电:
还有网友前来“捣乱”,玩起了 HR 梗:招聘具有 7 年 PyTorch 的程序员。
作为最受欢迎的机器学习框架(之一),PyTorch 诞生的过程并不是想象的那般具有传奇性。Meta 官方邀请了 LeCun 与 PyTorch 创始人一起回顾了当年那段历史。
大牛追忆诞生历史
时间回到 2016 年,当时的 Facebook AI 还在使用 Caffe、Torch 框架。Caffe 是贾扬清在加州大学伯克利分校攻读博士期间创建的项目,用 C++ 编写。Torch 则是基于 Lua 语言开发。
PyTorch 的创始人 Soumith Chintala 回忆说,当时很多框架安装都非常麻烦,甚至需要手动 gcc 编译源代码,如果要用 GPU 加速还要安装正确的 CUDA 版本,一切都像在碰运气。
△ Soumith Chintala
TensorFlow 的出现简化了很多工作。但是还有很多研究是基于 Caffe、Torch 框架,像 Torch 这样的框架,开发者甚至还要每组网络层手动编写微分,然后再以一种复杂的方式组合在一起。
所以,Chintala 希望开发在此基础新一代框架,它可以自动微分,而且使用动态计算图。他在 Torch 的 GitHub 页公开了自己的想法。Chintala 拉来一个实习生 Adam Paszke,后者当时只是华沙大学一年级学生。后来又有两位核心成员 Sam Gross 和 Gregory Chanan 入伙。
△ Adam Paszke
在经历了一个半月的紧张开发后,PyTorch 的雏形诞生。Chintala 邀请来自不同公司和大学的大约 100 名开发者当“小白鼠”,言辞近乎恳求:“你能试用一个小时吗?用它来做研究,看看有没有问题。”事实上,这些早期用户给了非常多有用的反馈,帮助 PyTorch 小队一周内修复了 30 多个 bug。
据 Chintala 说,不少试用科研人员喜爱上了 PyTorch,很多人写论文就用上了 PyTorch,甚至论文在公开发布之前就已经在 PyTorch 上发表。
PyTorch 在起步阶段就取得了不错的成就。经过 5 年的发展,PyTorch 已经和 TensorFlow 成为最受欢迎的两大框架。
与 TensorFlow 之争
从 PyTorch 诞生至今,它与 TensorFlow 孰优孰劣的口水战就从来没有挺过。如今,PyTorch 已经在学术论文圈对 TensorFlow 形成碾压的态势。据统计 Hugging Face 上有 85% 的模型是 PyTorch 独家的,TensorFlow 的比例为 8%
如果把目光聚焦到前 30 个受欢迎的项目,那么所有项目都有 PyTorch 代码,而超过 10 个模型是没有 TensorFlow 代码的。
对八家顶尖研究期刊数据的统计显示,PyTorch 诞生当年,仅有 7% 论文的开源代码由其写就。而到了 2021 年,将近 80% 的论文都使用 PyTorch 框架。
根据对 Paper with Code 数据的统计,PyTorch 论文比例稳步增长,达到了 60%,TensorFlow 的份额被蚕食到仅 11%。
2019 年,有 55% 的 TensorFlow 使用者“叛逃”到 PyTorch 阵营。
不过在产业界 TensorFlow 还有非常重要的地位,由于 TensorFlow 强大的部署框架和端到端扩展平台,对于部署生产模型的人来说还是非常重要。
但是在工业界也有越来越多的人选择 PyTorch,比如特斯拉的 Autopilot、深度学习研发框架 Catalyst 等。面对 PyTorch 的强势地位,甚至连 TensorFlow 的 TensorBoard 可视化工具也加入了对 PyTorch 的支持。另外,PyTorch 官方 Twitter 的关注者里,谷歌大神 Jeff Dean 也赫然在列。
下一个五年,PyTorch 会朝怎样的方向发展,Chintala 表示未来会有更多 AI 技术商业化,PyTorch 将更加重视在产业界的作用。看来 PyTorch 和 TensorFlow 的下一场对决是不可避免了。
仅仅 5 年就获得巨大的成功,就连 PyTorch 创始人 Chintala 本人也没想到,无论是使用量、贡献者还是资金支持都超出了他的预料。不知道这算不算凡尔赛呢?