0
本文作者: 汪思穎 | 2018-04-02 14:54 |
雷鋒網(wǎng) AI 研習(xí)社按,對(duì)于廣大深度學(xué)習(xí)開發(fā)者來(lái)說(shuō), 迎來(lái)一個(gè)重大消息——Caffe2 代碼并入 PyTorch 庫(kù)。
在 Caffe2 的 GitHub 上可以看到如下說(shuō)明,
Source code now lives in the PyTorch repository.
作為 Caffe2 作者,現(xiàn)在任職于 Facebook 的賈揚(yáng)清在知乎說(shuō)道,將這兩個(gè)框架整合起來(lái)可以極大提升開發(fā)效率,為廣大開發(fā)者提供便利,而他們也會(huì)有進(jìn)一步計(jì)劃。
「因?yàn)?PyTorch 有優(yōu)秀的前端,Caffe2 有優(yōu)秀的后端,整合起來(lái)以后可以進(jìn)一步最大化開發(fā)者的效率。目前 FAIR 大概有超過(guò)一半的項(xiàng)目在使用 PyTorch,而產(chǎn)品線全線在使用 Caffe2,所以兩邊都有很強(qiáng)的動(dòng)力來(lái)整合優(yōu)勢(shì)。
開發(fā)效率是我在 Facebook 非常重視的一個(gè)方向:去年年中的時(shí)候啟動(dòng)了 ONNX 項(xiàng)目(初版的代碼是我親自上手寫的),然后幫助搭建了 ONNX team,來(lái)增強(qiáng)不同框架甚至不同公司之間的協(xié)作;Caffe2 和 PyTorch 在代碼層的合并也是從那個(gè)時(shí)候開始逐漸推動(dòng)的一項(xiàng)內(nèi)容。
至于進(jìn)一步的計(jì)劃,目前我還不方便透露,等過(guò)一個(gè)月有空再來(lái)更新吧?!?/p>
此前,針對(duì)深度學(xué)習(xí)框架碎片化問(wèn)題(比如在 A 框架上訓(xùn)練的神經(jīng)網(wǎng)絡(luò)模型無(wú)法直接在 B 框架上使用,開發(fā)者需要耗費(fèi)大量時(shí)間精力把模型從一個(gè)開發(fā)平臺(tái)移植到另一個(gè)平臺(tái)),F(xiàn)acebook 和微軟發(fā)布開源項(xiàng)目——ONNX。目前,CNTK,PyTorch , Caffe2,MXNet 等均宣布支持 ONNX。
而現(xiàn)在,隨著 PyTorch 和 Caffe2 結(jié)合,這將會(huì)是解決深度學(xué)習(xí)框架碎片化,創(chuàng)造一個(gè)更加便利的開發(fā)環(huán)境的一大步。
附 PyTorch,Caffe2 簡(jiǎn)介
PyTorch
2017 年 1 月,F(xiàn)acebook 在機(jī)器學(xué)習(xí)和科學(xué)計(jì)算工具 Torch 的基礎(chǔ)上,針對(duì) Python 語(yǔ)言發(fā)布了全新的機(jī)器學(xué)習(xí)工具包——PyTorch。PyTorch 支持 GPU,有著更高級(jí)的功能,可以用來(lái)構(gòu)建和訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)。一經(jīng)發(fā)布便受到廣泛關(guān)注和討論。經(jīng)過(guò)將近一年的發(fā)展,目前已經(jīng)成為從業(yè)者最重要的研發(fā)工具之一。
PyTorch有著諸多優(yōu)勢(shì):
為改進(jìn)現(xiàn)有的神經(jīng)網(wǎng)絡(luò)提供了更快速的方法——采用動(dòng)態(tài)計(jì)算圖(dynamic computational graph)結(jié)構(gòu),而不是大多數(shù)開源框架,比如 TensorFlow、Caffe、CNTK、Theano 等采用的靜態(tài)計(jì)算圖;
處于機(jī)器學(xué)習(xí)第一大語(yǔ)言 Python 的生態(tài)圈之中,使得開發(fā)者能接入廣大的 Python 庫(kù)和軟件;
采用定制的 GPU 內(nèi)存分配器;
……
在眾多開發(fā)者眼中,PyTorch 是 TensorFlow 之外一個(gè)非常好的選擇。
Caffe2
2017 年 4 月,F(xiàn)acebook 開源深度學(xué)習(xí)框架 Caffe2。它最大的特點(diǎn)就是輕量、模塊化和擴(kuò)展性好。Caffe2 可以方便地為手機(jī)等移動(dòng)終端設(shè)備帶來(lái) AI 加持,讓 AI 從云端走向終端。
它是在此前流行的開源框架 Caffe 基礎(chǔ)上的重構(gòu)和升級(jí),一方面集成了諸多新出現(xiàn)的算法和模型,另一方面在保證運(yùn)算性能和可擴(kuò)展性的基礎(chǔ)上重點(diǎn)加強(qiáng)了框架在輕量級(jí)硬件平臺(tái)的部署能力,利于讓開發(fā)者在移動(dòng)設(shè)備上部署 AI 模型,快速準(zhǔn)確地處理相關(guān)分析任務(wù)。
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。