查看原文
其他

深度学习框架格局剧震:Caffe2 代码全部并入 PyTorch

2018-04-02 云头条

本文经机器之心(微信公众号:almosthuman2014)授权转载,禁止二次转载。

选自PyTorch

机器之心报道


昨日,Caffe2 的 Github 页面突然出现了一个「巨大的改动」:Caffe2 开源代码正式并入 PyTorch,至此,Facebook 主力支持的两大深度学习框架已合二为一。这两大框架,在整个深度学习框架格局中都极受关注。


在 Caffe 2 的 GitHub 页面上,以往用于介绍框架内容的 Readme 区域已经变成了一个加粗体的链接:源代码现已归入 PyTorch 库。


自 2017 年 1 月发布之后,由于调试、编译等多方面的优势,PyTorch 已经成为很多科研机构首选的深度学习框架;而 2017 年 4 月推出的 Caffe 2 则具有可在 iOS、Android 和树莓派等多种设备上训练和部署模型的优势。尽管获得了很多用户的支持,在面对谷歌支持的 TensorFlow 生态时,PyTorch 和 Caffe 2 各自仍有短板,此次「合并」或许会成为深度学习工程领域新形势的一个开始。


相关链接:



如果你紧跟 PyTorch 的开发进程,那么你可能会注意到过去几个月这个库有一些改变:


  • PyTorch 和 Caffe2 目前会共享 CI,这是非常重要的工程工作。

  • PyTorch 和 PyTorch-ONNX 有非常复杂的 CI,onnxbot 触发器构建在每一个 PyTorch PR 上,并以 roundabout 的方式更新。

  • 在「pending」状态中有后端研发工作,例如与最新和最重要的库集成(MKLDNN、cuFFT 和更多的 NNPACK 覆盖等)。


作为 PyTorch 和 Caffe2 框架的主要维护者,共享二者通用的工程性内容也就很合理了,例如算子库。


然而,在两个单独的 Github repos 上共享代码很有挑战性(不可去掉的子模块或者子树,Continuous Intergration 变得很难等)。


在协作下,我们把 Caffe2 repo 并入到了 PyTorch 的 github。也就是,如果你用命令 git clone https://github.com/pytorch/pytorch,你可以看到 caffe2 的二进制文件。


作为 PyTorch 用户,你需要知道:并没改变什么,PyTorch 的安装、搭载、使用和往常一样。


其实这并不会意味着我们的代码会失效,这只是开发和后端工程工作。如何你并不是 core-developer,这个问题甚至不会与你有任何关系。此外对于用户来说,我们同样也并不需要关注 protobuf 问题。



关于此问题,目前任 Facebook 研究科学家贾扬清在知乎上表示:


来简单答一下:因为 PyTorch 有优秀的前端,Caffe2 有优秀的后端,整合起来以后可以进一步最大化开发者的效率。目前 FAIR 大概有超过一半的项目在使用 PyTorch,而产品线全线在使用 Caffe2,所以两边都有很强的动力来整合优势。


开发效率是我在 Facebook 非常重视的一个方向:去年年中的时候启动了 ONNX 项目(初版的代码是我亲自上手写的),然后帮助搭建了 ONNX team,来增强不同框架甚至不同公司之间的协作;Caffe2 和 PyTorch 在代码层的合并也是从那个时候开始逐渐推动的一项内容。


至于进一步的计划,目前我还不方便透露,等过一个月有空再来更新吧。


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

✄------------------------------------------------


相关阅读:

深度学习卡住了

从起源到具体算法,这是一份适合所有人读的深度学习综述论文

23种深度学习库排行榜:TensorFlow最活跃、Keras最流行

深度学习不是 AI 的未来!

Facebook开源产业级深度学习框架Caffe2

深度学习:FPGA VS GPU

机器学习和深度学习的最佳框架大比拼

驾驭机器学习的13种框架


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存