當前位置:
首頁 > 新聞 > Caffe2代碼全部併入PyTorch:深度學習框架格局劇震

Caffe2代碼全部併入PyTorch:深度學習框架格局劇震

昨日,Caffe2 的 Github 頁面突然出現了一個「巨大的改動」:Caffe2 開源代碼正式併入 PyTorch,至此,Facebook 主力支持的兩大深度學習框架已合二為一。這兩大框架,在整個深度學習框架格局中都極受關注。

Caffe2代碼全部併入PyTorch:深度學習框架格局劇震

在 Caffe 2 的 GitHub 頁面上,以往用於介紹框架內容的 Readme 區域已經變成了一個加粗體的鏈接:源代碼現已歸入 PyTorch 庫。

自 2017 年 1 月發布之後,由於調試、編譯等多方面的優勢,PyTorch 已經成為很多科研機構首選的深度學習框架;而 2017 年 4 月推出的 Caffe 2 則具有可在 iOS、Android 和樹莓派等多種設備上訓練和部署模型的優勢。儘管獲得了很多用戶的支持,在面對谷歌支持的 TensorFlow 生態時,PyTorch 和 Caffe 2 各自仍有短板,此次「合併」或許會成為深度學習工程領域新形勢的一個開始。

相關鏈接:

  • Facebook 宣布開源 Caffe2:可在手機與樹莓派上訓練和部署模型

  • 重磅 | Torch7 團隊開源 PyTorch:Python 優先的深度學習框架

如果你緊跟 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 問題。

Caffe2代碼全部併入PyTorch:深度學習框架格局劇震

關於此問題,目前任 Facebook 研究科學家賈揚清在知乎上表示:


來簡單答一下:因為 PyTorch 有優秀的前端,Caffe2 有優秀的後端,整合起來以後可以進一步最大化開發者的效率。目前 FAIR 大概有超過一半的項目在使用 PyTorch,而產品線全線在使用 Caffe2,所以兩邊都有很強的動力來整合優勢。

開發效率是我在 Facebook 非常重視的一個方向:去年年中的時候啟動了 ONNX 項目(初版的代碼是我親自上手寫的),然後幫助搭建了 ONNX team,來增強不同框架甚至不同公司之間的協作;Caffe2 和 PyTorch 在代碼層的合併也是從那個時候開始逐漸推動的一項內容。

至於進一步的計劃,目前我還不方便透露,等過一個月有空再來更新吧。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 機器之心 的精彩文章:

業界 | 進化演算法 + AutoML,谷歌提出新型神經網路架構搜索方法
級聯MobileNet-V2實現人臉關鍵點檢測

TAG:機器之心 |