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

周其
 周其
发布于 2018年04月02日
收藏 12

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


自 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 在代码层的合并也是从那个时候开始逐渐推动的一项内容。

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

来自:机器之心

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:Caffe2 代码全部并入 PyTorch:深度学习框架格局剧震
加载中

精彩评论

寒天修竹
寒天修竹
牛逼了,可以少学一个框架了😄
如果谁再把pytorch和tensorflow也合一起😂
Funnyrz
Funnyrz
没人评论?我知道我的机会来了

最新评论(5

大洋的顶端
大洋的顶端
贾扬清

这个人是 Caffe 、TensorFlow 等重大项目的作者。

河图再现
河图再现
写的不错!
Funnyrz
Funnyrz
没人评论?我知道我的机会来了
寒天修竹
寒天修竹
牛逼了,可以少学一个框架了😄
如果谁再把pytorch和tensorflow也合一起😂
花儿笑弯了腰
花儿笑弯了腰
居然没有人评论
返回顶部
顶部