對標 PyTorch,清華團隊推出自研 AI 框架“計圖”

「AI技術生態論」 人物訪談欄目是CSDN發起的百萬人學AI倡議下的重要組成部分。通過對AI生態專家、創業者、行業KOL的訪談,反映其對於行業的思考、未來趨勢的判斷、技術的實踐,以及成長的經歷。

2020年,CSDN將對1000+人物進行系列訪談,勾勒出AI生態最具影響力人物圖譜及AI產業全景圖。本文為 「AI技術生態論」系列訪談第3期。

对标 PyTorch,清华团队推出自研 AI 框架“计图”| AI 技术生态论

作者 | Just

頭圖 | CSDN 下載自視覺中國

出品 | AI科技大本營(ID:rgznai100)

在機器學習框架領域,Pytorch、TensorFlow已分別成為目前學界和業界使用最廣泛的兩大實力玩家,而緊隨其後的Keras、Caffe/Caffe2、MXNet等框架也因為自身的獨特性受到相應開發者的喜愛。

如今,AI開源框架之爭再添新入局者。

如你所知,隨著深度學習新技術的出現,任務複雜度不斷提高,由於架構設計和不斷擴充等原因,導致系統複雜,架構優化和移植變得困難,新模型的實際性能還有待提升。

一支清華大學團隊決定研發更加靈活高效的深度學習框架。他們於近日宣佈開源Jittor(計圖),採用元算子融合和動態編譯技術,深度優化內存,有效提升了系統的運行性能和通用性,確保實現和優化分離,大幅提升應用開發的靈活性、可拓展性和可移植性。

Github地址:

https://github.com/Jittor/Jittor

对标 PyTorch,清华团队推出自研 AI 框架“计图”| AI 技术生态论

Jittor的研發團隊是清華大學計算機系的圖形學實驗室,負責人現為胡事民教授,長期從事可視媒體智能處理的研究。2006年-2015年間,實驗室得到兩期國家973計劃項目的資助,在可視媒體的認知計算、機器學習、幾何計算、智能算法等方面開展研究。

2009年起,實驗室開展系統軟件研究,逐步佈局AI平臺的研發。期間,實驗室奠定了在圖形圖像應用、機器學習算法和底層系統軟件三大優勢,2018年,在胡事民教授帶領下,以梁盾、楊國燁、楊國煒和周文洋等一批博士生為主力的團隊開始搭建Jittor平臺。Jittor團隊核心開發成員梁盾告訴AI科技大本營(ID:rgznai100),2019年底他們完成了Jittor的基本功能,隨後經過內部測試,於3月20日正式對外發布並開源。

作為一個採用元算子表達神經網絡計算單元、完全基於動態編譯(Just-in-Time)的深度學習框架,Jittor在三大新的設計理念下進行開發:

1.易用且可定製:用戶只需要數行代碼,就可定義新的算子和模型,在易用的同時,不喪失任何可定製性。

深度學習採用的卷積神經網絡是由算子(Operator)組成的一個計算網絡,當前深度學習框架有多達2000種算子。Jittor將算子運算進一步分解,形成了更加底層的三類20餘種元算子閉包,目前神經網絡常用算子均可以使用元算子的組合進行表達。

什麼是元算子?梁盾解釋,元算子是Jittor的基本算子,主要包括三類:重索引算子(如填補、切分等),是一種一對多的關係;重索引化簡算子(如累乘、累加等),是一種多對一的關係;元素級算子(如常見的元素級加減乘除等),是一種多對多的關係。

常見的神經網絡算子,如卷積、池化、批歸一化等操作可由元算子組合表達。元算子的提出主要是為了適應神經網絡算子增長的需求,使得新算子的優化可以分解為元算子的融合和優化,避免單獨對新算子優化,確保實現與優化的分離,提升可擴展性。

对标 PyTorch,清华团队推出自研 AI 框架“计图”| AI 技术生态论

Jittor通過元算子融合實現深度神經網絡模型2.實現與優化分離:用戶可以通過前端接口專注於實現,而實現自動被後端優化。從而提升前端代碼的可讀性,以及後端優化的魯棒性和可重用性。3.所有都是即時的:Jittor的所有代碼都是即時編譯並且運行,包括Jittor本身。用戶可以隨時對Jittor的所有代碼進行修改,並且動態運行。

面向未來深度學習框架的發展趨勢,Jittor利用元算子組合表達的優勢,提出統一計算圖進行優化,並從底層開始設計了一個全新的動態編譯架構。

Jittor團隊稱,該架構支持多種編譯器,確保實現和優化分離,大幅提升了應用開發靈活性、可拓展性和可移植性,與其他主流框架相比,具有多項先進特性。

对标 PyTorch,清华团队推出自研 AI 框架“计图”| AI 技术生态论

這些領先的特性背後具體如何體現?

梁盾介紹,基於元算子組合表達神經網絡的優勢,Jittor提出統一計算圖,融合靜態計算圖和動態計算圖,提供高性能的計算:統一管理前向反向計算圖,自動支持任意高階導數的計算;統一調度CPU和GPU內存,支持超大模型的訓練;統一同步異步運行接口,使得數據讀取、內存拷貝、模型計算可以同時進行;統一管理多次迭代的計算圖,實現跨迭代的融合優化。

基於此,Jittor團隊在平臺實現了ResNet、VGG、SSD、DeepLab、LSGAN等多個網絡模型,根據他們提供的數據,與Pytorch相比,Jittor的推理和訓練速度達到10%-50%的性能提升。

对标 PyTorch,清华团队推出自研 AI 框架“计图”| AI 技术生态论

梁盾表示,Jittor在性能上的提升,主要得益於Jittor提出的元算子融合和統一計算圖,優化計算,節省計算資源,提升訪存效率。同時,Jittor設計的全新編譯架構將元算子動態編譯成高性能的C++/CUDA代碼,並進一步通過與LLVM兼容的優化編譯遍(complier pass),生成對計算設備友好的可執行代碼。

無論是提到先進特性還是性能提升,從Jittor核心開發團隊的官方口徑,他們無疑要對標的是業內最主流的深度學習框架Pytorch。

Jittor開源消息發佈後,開發者們在社交媒體平臺上對其滿是讚譽,不過要與Pytorch競爭,顯然還有很長的路要走。

“中國作為人工智能產業發展和應用的最大市場,我們應該在人工智能生態的全產業鏈上佔有一席之地。”

從國家科技戰略層面,梁盾對AI科技大本營稱,我國目前深度學習研究和應用主要依賴於國外平臺,的確面臨著卡脖子的風險,所以一些國內的IT企業也推出了自己的平臺,希望Jittor和國內同行一起努力,為中國人工智能產業發展貢獻一份力量。

最後,你怎麼看Jittor?AI科技大本營將邀請業務專家做進一步解讀,也歡迎在留言區發表你的觀點。

【AI技術生態論】第一期:新冠全球蔓延,AI+大數據拿什麼拯救全人類?

【AI技術生態論】第二期:投資體量至少 40 萬億元,普通人如何“抓住”新基建?


分享到:


相關文章: