今天,F(xiàn)acebook正式公布PyTorch 1.0,這個新的框架將PyTorch 0.4與Caffe2合并,并整合ONNX格式,讓開發(fā)者可以無縫地將AI模型從研究轉(zhuǎn)到生產(chǎn),而無需處理遷移。
今天,F(xiàn)acebook正式公布PyTorch 1.0,這是將基于Python的PyTorch與Caffe2合并的一個新版本的框架,讓開發(fā)者可以無縫地將AI模型從研究轉(zhuǎn)到生產(chǎn),而無需處理遷移。
“現(xiàn)在,你只需要使用PyTorch 1.0,就可以在一個框架中無縫地進行從研究到生產(chǎn)的全部過程,而不需要為訓(xùn)練/研究和生產(chǎn)分別選擇框架。”Facebook發(fā)言人在F8大會上說。
Facebook去年與微軟合作推出開放神經(jīng)網(wǎng)絡(luò)交換(ONNX)格式,這是一個用于表示深度學(xué)習(xí)模型的標準,旨在使不同框架之間的移動更加簡單。現(xiàn)在,F(xiàn)acebook已經(jīng)將ONNX整合到PyTorch 1.0中,使模型能夠與其他框架進行互操作,并且開發(fā)人員可以“混合搭配”。
Facebook還表示,將統(tǒng)一PyTorch 0.4和Caffe2的代碼庫,以創(chuàng)建一個統(tǒng)一的框架,支持多種功能,包括高效的圖形模式執(zhí)行、分析、移動部署等。
PyTorch 1.0將在未來幾個月內(nèi)發(fā)布,據(jù)悉,微軟計劃在Azure中支持該框架,亞馬遜也將在其云產(chǎn)品中支持PyTorch 1.0。
PyTorch官方博客介紹了PyTorch 1.0的更多細節(jié):
生產(chǎn)性:在PyTorch 1.0中,你的代碼可以繼續(xù)按原樣運行,我們沒有對現(xiàn)有的API做任何大更改。如果你不需要優(yōu)化或?qū)С瞿P停瑒t不必使用這些新功能,也不會有任何缺點。此外,可以逐步使用traced或@script模塊/函數(shù)。
JIT編譯器:使用torch.jit編譯器將模型導(dǎo)出到非Python環(huán)境,并提高其性能。對于不包含循環(huán)和if語句的網(wǎng)絡(luò),trace是非侵入式的,并且足夠穩(wěn)健,可以處理各種編碼風(fēng)格;對于主要使用控制流的模型(如RNN),我們的解決方案是腳本模式(@script)。
優(yōu)化和導(dǎo)出:Caffe2 / ONNX中模型的python-free表示
后端:我們正在替換(或重構(gòu))后端ATen庫,以整合來自Caffe2的功能和優(yōu)化。
Timeline:我們的目標是在今年夏天推出PyTorch 1.0。
PyTorch 1.0:一個框架實現(xiàn)AI從研究到生產(chǎn)的全過程
AI的開發(fā)從研究到生產(chǎn)的過程,涉及多個步驟和工具,這使得測試新方法、部署它們,以及迭代以提高準確性和性能都非常耗時而且復(fù)雜。為了幫助加速和優(yōu)化這個過程,我們推出PyTorch 1.0。
PyTorch 1.0采用了Caffe2和ONNX的模塊化、面向生產(chǎn)的功能,并將它們與PyTorch現(xiàn)有的靈活的、側(cè)重于研究的設(shè)計結(jié)合起來,為各種AI項目提供從研究原型到生產(chǎn)部署的快速、無縫的路徑。
使用PyTorch 1.0,AI開發(fā)人員可以通過在命令式執(zhí)行模式和聲明式執(zhí)行模式之間無縫切換的混合前端進行快速實驗和性能優(yōu)化。PyTorch 1.0中的技術(shù)已經(jīng)為Facebook的許多產(chǎn)品和服務(wù)提供支持,包括每天執(zhí)行60億次的文本翻譯。
PyTorch 1.0將在未來幾個月內(nèi)推出,并將包含一系列工具、庫、預(yù)訓(xùn)練的模型和各個開發(fā)階段的數(shù)據(jù)集,使社區(qū)能夠大規(guī)模地快速創(chuàng)建和部署新的AI創(chuàng)新。
從研究到生產(chǎn)的路徑
PyTorch的命令式前端通過其靈活且高效的編程模型實現(xiàn)了更快速的原型設(shè)計和實驗。PyTorch的第一個版本是在一年前推出的,它的快速、高效和支持動態(tài)圖等先進AI模型的能力使其迅速成為廣受AI研究人員歡迎的重要開發(fā)工具。PyTorch的下載量已經(jīng)超過110萬次,是ArXiv上個月引用量第二大的深度學(xué)習(xí)框架。例如,加州大學(xué)伯克利分校的計算機科學(xué)家將PyTorch的動態(tài)圖功能用于他們的CycleGAN image-to-image轉(zhuǎn)換的工作。
CycleGAN的PyTorch實現(xiàn)
盡管當前版本的PyTorch為AI的研究和開發(fā)提供了很大的靈活性,但由于它與Python的緊密結(jié)合,在生產(chǎn)規(guī)模上的性能有時是一個挑戰(zhàn)。我們經(jīng)常需要將研究代碼(訓(xùn)練腳本或訓(xùn)練模型 )翻譯成Caffe2的圖形模式表示,以便在生產(chǎn)規(guī)模上運行。Caffe2的基于圖形的執(zhí)行程序允許開發(fā)者利用先進的優(yōu)化方式,例如圖形轉(zhuǎn)換、高效的內(nèi)存重用以及緊密的硬件接口集成。
Caffe2項目是兩年前推出的,目的是使我們的生產(chǎn)AI工具標準化,現(xiàn)在它已經(jīng)在Facebook服務(wù)器和世界范圍超過10億部手機上運行神經(jīng)網(wǎng)絡(luò),跨越8代iPhone和6代Android CPU架構(gòu)。今天,Caffe2每天在各種大小模型提供超過200萬億次的預(yù)測,并優(yōu)化生產(chǎn)性能。
從PyTorch遷移到Caffe2以進行生產(chǎn),以前這是一個手動的過程,耗時多且容易出錯。為了解決這個問題,我們與主要的硬件和軟件公司合作創(chuàng)建了ONNX(開放式神經(jīng)網(wǎng)絡(luò)交換),這是一種表示深度學(xué)習(xí)模式的開放式格式。借助ONNX,開發(fā)人員可以在不同框架之間共享模型,例如,導(dǎo)出使用PyTorch構(gòu)建的模型并將其導(dǎo)入Caffe2。
我們已經(jīng)使用這些工具(PyTorch,Caffe2和ONNX)來構(gòu)建和部署Translate,這個工具現(xiàn)在可以對Facebook上48種最常用語言的進行翻譯。在VR方面,這些工具對于將Oculus的新研究部署到生產(chǎn)中至關(guān)重要。
但是,盡管這三種不同工具的組合是有效的,但仍然存在手工步驟復(fù)雜、耗費時間長等問題。因此,僅僅是將這些工具組合還無法像我們期待的那樣無縫地將AI的研究創(chuàng)新帶入生產(chǎn)過程。
在一個框架中統(tǒng)一研究和生產(chǎn)的能力
PyTorch 1.0將即時模式和圖形執(zhí)行模式融合在一起,為生產(chǎn)的研究和性能優(yōu)化提供了靈活性。更具體地說,PyTorch 1.0不是強制開發(fā)者重寫整個代碼以實現(xiàn)優(yōu)化或從Python遷移,而是提供了一個混合的前端,使開發(fā)者能夠在用于原型制作的即時模式和用于生產(chǎn)的圖形執(zhí)行模式之間無縫地共享大部分代碼。
此外,ONNX本身被加入到PyTorch 1.0中作為一種模型輸出格式,這使得PyTorch 1.0中的模型可與其他AI框架進行互操作。ONNX還可用作加速運行時間或硬件特定庫的集成接口。這使得開發(fā)人員可以完全自由地混合和匹配最佳的AI框架和工具,而無需采用資源密集型的定制工程。Facebook將支持ONNX的新特征和功能,ONNX仍然是一種強大的開放格式,同時也是使用PyTorch 1.0進行開發(fā)的重要組成部分。
構(gòu)建一個端到端的深度學(xué)習(xí)系統(tǒng)
除了PyTorch 1.0之外,F(xiàn)acebook還開源了多個AI工具,包括Translate——一個PyTorch語言庫,用于快速、靈活的神經(jīng)機器翻譯;以及下一代ELF——一個綜合的AI推理應(yīng)用游戲平臺。開發(fā)人員還可以利用Glow這樣機器學(xué)習(xí)編譯器,可以加速不同硬件平臺上的框架性能;還可以使用Tensor Comprehensions這種自動生成高級數(shù)學(xué)運算的高效GPU代碼的工具。Facebook也開源了其他庫,如Detectron,支持對象檢測研究,涵蓋了邊界框和對象實例分割輸出。
Facebook推出一個AI開發(fā)者網(wǎng)站,列舉了所有這些開源工具:
facebook.ai/developers
在接下來的幾個月中,我們將重構(gòu)并統(tǒng)一Caffe2和PyTorch 0.4框架的代碼庫。最終將形成一個統(tǒng)一的框架,支持高效的圖形模式執(zhí)行,包括profiling,移動部署,廣泛的vendor集成等。與ONNX等其他開放式AI計劃一樣,我們也與其他公司和社區(qū)合作,為更多開發(fā)者提供這些加速研究的生產(chǎn)能力。首先,微軟計劃在他們的Azure云和開發(fā)者產(chǎn)品中支持PyTorch 1.0,包括Azure機器學(xué)習(xí)服務(wù)和數(shù)據(jù)科學(xué)虛擬機;Amazon Web Services目前支持最新版本的PyTorch,針對P3 GPU實例進行了優(yōu)化,并計劃在其云產(chǎn)品發(fā)布后不久支持 PyTorch 1.0,其中包括其深度學(xué)習(xí)AMI(Amazon Machine Image)。
-
AI
+關(guān)注
關(guān)注
91文章
39768瀏覽量
301371 -
Facebook
+關(guān)注
關(guān)注
3文章
1432瀏覽量
58905 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5598瀏覽量
124396 -
pytorch
+關(guān)注
關(guān)注
2文章
813瀏覽量
14850
原文標題:PyTorch 1.0 正式公開,Caffe2并入PyTorch實現(xiàn)AI研究和生產(chǎn)一條龍
文章出處:【微信號:AI_era,微信公眾號:新智元】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
LuatOS平臺下BLE藍牙開發(fā)從入門到實踐
ProfiNet轉(zhuǎn)DeviceNet智能網(wǎng)關(guān)實現(xiàn)壓力傳感器與西門子PLC無縫集成提升發(fā)酵過程自動化水平
從面粉到面食:疆鴻智能PROFIBUS轉(zhuǎn)ETHERCAT如何賦能伺服智造
過程×框架×平臺:安全“三支柱”護航AI應(yīng)用量產(chǎn)落地
芯片燒錄原理是什么?一文讀懂芯片程序燒錄全過程
【「AI芯片:科技探索與AGI愿景」閱讀體驗】+AI的科學(xué)應(yīng)用
SOLIDWORKS PDM Professional安裝部署指南:從服務(wù)器到客戶端的詳細步驟
AI的核心操控:從算法到硬件的協(xié)同進化
【「AI芯片:科技探索與AGI愿景」閱讀體驗】+可期之變:從AI硬件到AI濕件
【「AI芯片:科技探索與AGI愿景」閱讀體驗】+內(nèi)容總覽
LoRa1120模塊與ESP32點對點LoRa通信實現(xiàn)實踐指南
安科瑞溫濕度控制器與玻璃機械的協(xié)同效應(yīng):從生產(chǎn)保障到設(shè)備維護
PyTorch 1.0:一個框架實現(xiàn)AI從研究到生產(chǎn)的全過程
評論