PyTorch 1.0 預覽版發布:90% 的功能能經受住業界的考驗

10 月 3 日,在首屆 PyTorch 開發者大會上,Facebook 正式發佈 PyTorch 1.0 開發者預覽版,在帶來 PyTorch 1.0 一系列更新的同時,還重點介紹了該框架的生態支持和教育方面的合作。

早在今年 5 月份的 Facebook F8 大會上,Facebook 就宣佈在未來幾個月中將開源 PyTorch 1.0 框架。時隔五個月的今日,Facebook 終於將這一計劃變成了現實。

Facebook 表示,PyTorch 1.0 是 PyTorch 推出以來最重要的版本,1.0 代表著該框架版本已經非常穩定、成熟,而今天發佈的預覽版,其中 90% 的功能已經能夠經受住業界的考驗。那 PyTorch 1.0 現在到底有了怎樣的進展呢?雷鋒網接下來從 PyTorch 1.0 的重要更新、生態支持以及教育合作三個角度進行介紹。

PyTorch 1.0 三大重要更新

經過五個月左右的開源,PyTorch 1.0 框架主要迎來了三大更新:

第一,添加了一個新的混合前端(hybrid front end),支持從 Eager 模式到圖形模式的跟蹤和腳本模型,以彌合研究和生產部署之間的差距。

第二,增加了經過改進的 torch.distributed 庫,使得開發者可以在 Python 和 C++環境中實現更快的訓練。

第三,增加了針對關鍵性能研究的 Eager 模式 C++接口,這一接口會在測試版中發佈。

目前,研究人員和工程師必須使用多個框架和工具來研究新的深度學習模型,並將其轉移到生產環境中大規模運運行,然而這些框架和工具通常是不兼容的。這樣的話,就會降低開發者對突破性 AI 研究進行產品化的速度和效率。

而在 PyTorch 1.0 這個最新版本,Facebook 將現有 PyTorch 框架的靈活性與 Caffe2(今年 5 月宣佈 Caffe2 併入 PyTorch)的生產能力結合,提供從研究到 AI 研究產品化的無縫對接。

PyTorch 1.0 生態的深度支持

除了軟硬件方面的重要更新,Facebook 還介紹了其他廠商對 PyTorch 1.0 生態的深度支持,這些支持來自於亞馬遜、Google 和微軟等軟件、產品和雲服務提供商以及英偉達、高通、英特爾等技術提供方。

其中,亞馬遜、Google 和微軟針對 Pytorch 的雲平臺、產品和服務的框架方面,來加深對 PyTorch 1.0 的支持。例如,亞馬遜大規模訓練、部署機器學習模型的全棧管理平臺 Amazon Sagemaker,現在能為 PyTorch 1.0 提供預配置環境,包括自動模型調優這樣的功能。

Google 宣佈為 AI 開發者制定的多種軟件和硬件工具將與 PyTorch 1.0 實現集成。除了 Google 雲平臺的深度學習虛擬機現在有了一個預安裝了 NVIDIA 驅動與教程的新的 PyTorch 1.0 VM 鏡像文件,Google 還為 PyTorch 提供了用於機器學習的定製化專用集成芯片(ASIC)——張量處理單元(TPU)。目前,在 Google Cloud TPU 團隊和 PyTorch 團隊的合作推動下,基於 PyTorch 1.0 的模型可以使用這種定製化的硬件。

而微軟則早就和 Facebook 開始合作了另一個重要項目——開源的神經網絡交換格式 ONNX。目前,微軟也正進一步在 Azure 機器學習服務、數據科學虛擬機(DSVM)、Azure Notebooks、Visual Studio Code 的 AI 擴展工具等機器學習產品套件中為 PyTorch 提供一流的支持。

而英偉達、高通、英特爾等技術夥伴,正在通過直接優化、kernel 庫集成以及對編譯器和推斷運行時的附加工具進行優化,來支持 PyTorch 1.0。這種支持可以確保 PyTorch 可以在數據中心和邊緣設備的各種硬件上正常運行,並在這些硬件上實現模型訓練和推斷的優化。

通過教育與課程方式推廣 PyTorch

增強 PyTorch 自身的實力以外,Facebook 還致力於通過教育與課程方式推廣 PyTorch 打造深度學習框架。

據雷鋒網瞭解,目前許多教育提供方採用 PyTorch 作為教學框架。同時,PyTorch 也已經通過在線視頻和大學課程為眾多的學生提供深度學習框架,PyTorch 框架以其易用性及與 Python 深度集成的特性可以非常容易實現各種深度學習概念,能讓學生快速理解和實驗深度模型。

例如,Udacity 就正與 Facebook 合作,為開發者提供免費的深度學習入門課程,而這些課程完全使用 PyTorch 作為框架。同時,Facebook 還將贊助 300 名成功完成該中級課程的學生,繼續在 Udacity 中完成深度學習納米學位項目,現在該計劃已經調整為在 PyTorch 1.0 上運行。

值得一提的是,fast.ai 也發佈了首個基於 PyTorch 1.0 構建的開源深度學習庫——fastai 1.0。該學習庫在帶來更高的準確性以及更快的速度的同時,還能使代碼顯著減少,讓深度學習無論是對初學者還是對經驗豐富的開發人員都更加友好。

「1.0 是讓 PyTorch 進入生產環境的第一步,開發者們還會在未來繼續推進它的發展。」Facebook 研究工程師 Soumith Chintala 在發佈會上表示,「PyTorch 1.0 的最終穩定版會在 NIPS2018 大會之前發佈。」


分享到:


相關文章: