今天,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,就可以在一個框架中無縫地進(jìn)行從研究到生產(chǎn)的全部過程,而不需要為訓(xùn)練/研究和生產(chǎn)分別選擇框架?!盕acebook發(fā)言人在F8大會上說。
Facebook去年與微軟合作推出開放神經(jīng)網(wǎng)絡(luò)交換(ONNX)格式,這是一個用于表示深度學(xué)習(xí)模型的標(biāo)準(zhǔn),旨在使不同框架之間的移動更加簡單?,F(xiàn)在,F(xiàn)acebook已經(jīng)將ONNX整合到PyTorch 1.0中,使模型能夠與其他框架進(jìn)行互操作,并且開發(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的更多細(xì)節(jié):
生產(chǎn)性:在PyTorch 1.0中,你的代碼可以繼續(xù)按原樣運行,我們沒有對現(xiàn)有的API做任何大更改。如果你不需要優(yōu)化或?qū)С瞿P?,則不必使用這些新功能,也不會有任何缺點。此外,可以逐步使用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:我們的目標(biāo)是在今年夏天推出PyTorch 1.0。
PyTorch 1.0:一個框架實現(xiàn)AI從研究到生產(chǎn)的全過程
AI的開發(fā)從研究到生產(chǎn)的過程,涉及多個步驟和工具,這使得測試新方法、部署它們,以及迭代以提高準(zhǔ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í)行模式之間無縫切換的混合前端進(jìn)行快速實驗和性能優(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)圖等先進(jìn)AI模型的能力使其迅速成為廣受AI研究人員歡迎的重要開發(fā)工具。PyTorch的下載量已經(jīng)超過110萬次,是ArXiv上個月引用量第二大的深度學(xué)習(xí)框架。例如,加州大學(xué)伯克利分校的計算機(jī)科學(xué)家將PyTorch的動態(tài)圖功能用于他們的CycleGAN image-to-image轉(zhuǎn)換的工作。
CycleGAN的PyTorch實現(xiàn)
盡管當(dāng)前版本的PyTorch為AI的研究和開發(fā)提供了很大的靈活性,但由于它與Python的緊密結(jié)合,在生產(chǎn)規(guī)模上的性能有時是一個挑戰(zhàn)。我們經(jīng)常需要將研究代碼(訓(xùn)練腳本或訓(xùn)練模型 )翻譯成Caffe2的圖形模式表示,以便在生產(chǎn)規(guī)模上運行。Caffe2的基于圖形的執(zhí)行程序允許開發(fā)者利用先進(jìn)的優(yōu)化方式,例如圖形轉(zhuǎn)換、高效的內(nèi)存重用以及緊密的硬件接口集成。
Caffe2項目是兩年前推出的,目的是使我們的生產(chǎn)AI工具標(biāo)準(zhǔn)化,現(xiàn)在它已經(jīng)在Facebook服務(wù)器和世界范圍超過10億部手機(jī)上運行神經(jīng)網(wǎng)絡(luò),跨越8代iPhone和6代Android CPU架構(gòu)。今天,Caffe2每天在各種大小模型提供超過200萬億次的預(yù)測,并優(yōu)化生產(chǎn)性能。
從PyTorch遷移到Caffe2以進(jìn)行生產(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種最常用語言的進(jìn)行翻譯。在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不是強(qiáng)制開發(fā)者重寫整個代碼以實現(xiàn)優(yōu)化或從Python遷移,而是提供了一個混合的前端,使開發(fā)者能夠在用于原型制作的即時模式和用于生產(chǎn)的圖形執(zhí)行模式之間無縫地共享大部分代碼。
此外,ONNX本身被加入到PyTorch 1.0中作為一種模型輸出格式,這使得PyTorch 1.0中的模型可與其他AI框架進(jìn)行互操作。ONNX還可用作加速運行時間或硬件特定庫的集成接口。這使得開發(fā)人員可以完全自由地混合和匹配最佳的AI框架和工具,而無需采用資源密集型的定制工程。Facebook將支持ONNX的新特征和功能,ONNX仍然是一種強(qiáng)大的開放格式,同時也是使用PyTorch 1.0進(jìn)行開發(fā)的重要組成部分。
構(gòu)建一個端到端的深度學(xué)習(xí)系統(tǒng)
除了PyTorch 1.0之外,F(xiàn)acebook還開源了多個AI工具,包括Translate——一個PyTorch語言庫,用于快速、靈活的神經(jīng)機(jī)器翻譯;以及下一代ELF——一個綜合的AI推理應(yīng)用游戲平臺。開發(fā)人員還可以利用Glow這樣機(jī)器學(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機(jī)器學(xué)習(xí)服務(wù)和數(shù)據(jù)科學(xué)虛擬機(jī);Amazon Web Services目前支持最新版本的PyTorch,針對P3 GPU實例進(jìn)行了優(yōu)化,并計劃在其云產(chǎn)品發(fā)布后不久支持 PyTorch 1.0,其中包括其深度學(xué)習(xí)AMI(Amazon Machine Image)。
-
AI
+關(guān)注
關(guān)注
87文章
31711瀏覽量
270511 -
Facebook
+關(guān)注
關(guān)注
3文章
1431瀏覽量
55030 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5518瀏覽量
121608 -
pytorch
+關(guān)注
關(guān)注
2文章
808瀏覽量
13380
原文標(biāo)題:PyTorch 1.0 正式公開,Caffe2并入PyTorch實現(xiàn)AI研究和生產(chǎn)一條龍
文章出處:【微信號:AI_era,微信公眾號:新智元】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
PyTorch深度學(xué)習(xí)開發(fā)環(huán)境搭建指南
紅豆Cat 1開源 項目四: 從0-1設(shè)計一款TCP版本DTU產(chǎn)品的軟硬件全過程
![紅豆Cat 1開源 項目四: <b class='flag-5'>從</b>0-1設(shè)計<b class='flag-5'>一</b>款TCP版本DTU產(chǎn)品的軟硬件<b class='flag-5'>全過程</b>](https://file1.elecfans.com//web2/M00/FC/47/wKgaomaQ0I6AKmWWADOOGkXn9tw728.jpg)
紅豆Cat 1開源 項目三: 從0-1設(shè)計一款HTTP版本RTU 支持GNSS 產(chǎn)品的軟硬件全過程
![紅豆Cat 1開源 項目三: <b class='flag-5'>從</b>0-1設(shè)計<b class='flag-5'>一</b>款HTTP版本RTU 支持GNSS 產(chǎn)品的軟硬件<b class='flag-5'>全過程</b>](https://file1.elecfans.com//web2/M00/FB/5A/wKgZomaQzceAc54wABhKA_OQmno874.jpg)
紅豆Cat 1開源 項目二: 從0-1設(shè)計一款MQTT版本DTU 支持GNSS 產(chǎn)品的軟硬件全過程
![紅豆Cat 1開源 項目二: <b class='flag-5'>從</b>0-1設(shè)計<b class='flag-5'>一</b>款MQTT版本DTU 支持GNSS 產(chǎn)品的軟硬件<b class='flag-5'>全過程</b>](https://file1.elecfans.com//web2/M00/FC/46/wKgaomaQzZCAB32vABhKA_OQmno684.jpg)
pytorch中有神經(jīng)網(wǎng)絡(luò)模型嗎
紅豆Cat 1開源 項目一: 從0-1設(shè)計一款TCP版本RTU 支持Modbus+GNSS 產(chǎn)品的軟硬件全過程
![紅豆Cat 1開源 項目<b class='flag-5'>一</b>: <b class='flag-5'>從</b>0-1設(shè)計<b class='flag-5'>一</b>款TCP版本RTU 支持Modbus+GNSS 產(chǎn)品的軟硬件<b class='flag-5'>全過程</b>](https://file1.elecfans.com//web2/M00/FB/B3/wKgaomaOVgyABZ0rABhKA_OQmno584.jpg)
PyTorch神經(jīng)網(wǎng)絡(luò)模型構(gòu)建過程
tensorflow和pytorch哪個更簡單?
tensorflow和pytorch哪個好
解讀PyTorch模型訓(xùn)練過程
PyTorch的特性和使用方法
TensorFlow與PyTorch深度學(xué)習(xí)框架的比較與選擇
精準(zhǔn)到毫米:H9激光切管機(jī)鋁材切割與打孔全過程解析
![精準(zhǔn)<b class='flag-5'>到</b>毫米:H9激光切管機(jī)鋁材切割與打孔<b class='flag-5'>全過程</b>解析](https://file1.elecfans.com/web2/M00/F1/B9/wKgaomZznqOAYZDDAACGj3gqMgE257.png)
物聯(lián)網(wǎng)與醫(yī)療廢物處置全過程電子信息化跟蹤管理系統(tǒng)研究
永磁同步電機(jī)全速域矢量控制的全過程介紹
![永磁同步電機(jī)全速域矢量控制的<b class='flag-5'>全過程</b>介紹](https://file1.elecfans.com/web2/M00/C5/5B/wKgaomXzpRKAMXiaAAAhabj-z4o552.png)
評論