剛剛,中國AI獨角獸曠視宣布開源其深度學習框架曠視天元(MegEngine),力圖為中國AI應用打造一個新基石。6年前3名實習生從第一行代碼寫起,艱難創業中在全球AI競賽斬獲27項冠軍,今日天元開源,敢與TensorFlow等全球主流深度學習框架爭雄。這個絕密武器又解決了開發者哪些痛點?
剛剛,中國AI領軍企業曠視舉辦了一場令業界震撼的線上發布會,向全球開發者開源其AI生產力平臺Brain++的核心組件——天元(MegEngine) 。天元也成為首個由中國AI公司研發的國產深度學習框架。
天元項目負責人兼曠視研究院高級技術總監田忠博指出,這次開源的天元是一套訓練推理一體化、動靜態合一的工業級深度學習框架,采用訓練與推理在同一個框架、同一個體系內完整支持的設計,讓開發者真正體驗到“訓得好”、“訓得動”、“訓得快”。
過去幾年,曠視在研發過程中遇到了很多痛點,這些痛點也是行業共通的痛點,而這些痛點天元都可以解決。
曠視天元架構上具體分為計算接口、圖表示、優化與編譯、運行時管理和計算內核五層。在頂層的計算接口上,天元配置了C++和Python接口,解決框架學習接口各異,模型難以復現的問題;在圖表示層,天元內置動靜態轉換功能,支持開發者混合使用動態圖和靜態圖模式進行編程。
曠視為MegEngine起中文名字的時候有過很多思考。田忠博介紹:最后選定的“天元”有很多的寓意,首先”天元“在圍棋中,是棋盤的正中心,一方面我們希望用這種方式,來表達出MegEngine不僅是曠視技術戰略大圖的最核心的“布局”,也是說明深度學習框架這樣的AI底層基礎設施對整個人工智能產業來說都是非常關鍵而重要的點;其次,在古代數學的概念中,”天元“代表一元方程式,是復雜方程的基礎;而在古代天文學中,“天元”的地位與“太一”一樣指代北極星,是萬物本源和開始。總之,將MegEngine命名為”天元“是希望這個系統真正成為大家共同的基石,成為AI系統中重要的組成部分,能夠促進各個領域能夠更好的應用和落地AI。
本著“深度學習、簡單開發”的理念,天元有四大優勢:
1. 訓練推理一體化
曠視天元既可支持研究員進行算法訓練,同時訓練得到的模型和產物是可以直接進行用于產品的推理、封裝。省去模型轉換不僅極大簡化算法開發流程,更實現了速度和精度的無損遷移,即使是模型的跨設備部署,天元依然能夠做到精度的對齊。在部署時,天元還可以幫助開發者自動刪除冗余代碼,實現模型自動優化。
2. 動靜合一
靜態圖性能高、占用資源少且易于部署;動態圖簡單靈活、方便調試且易于上手。曠視天元整合了動態圖與靜態圖各自的優勢,在充分利用動態圖模型訓練優勢時,通過動靜態一鍵轉換功能,以靜態圖的形式完成生產和部署;此外,天元還支持動靜態的混合編程,靈活性更強。
3. 兼容并包
曠視天元具備Pythonic的API,這對習慣用Python進行傳統機器學習的開發者來說非常友好,學習成本更低、易于上手,同時天元還支持PyTorch Module功能,可以直接導入模型,遷移成本低且極大方便模型復現;天元內置高性能計算機視覺算子和算法,可為計算機視覺相關模型訓練和應用實現深度優化。
4. 靈活高效
曠視天元具備很強的多平臺多設備適應能力,可通過類似匯編和指令重排等技術,使得天元內置算子能夠在推理或生產環境中充分利用多核優勢,靈活調用設備的計算力,尤其適用于大模型算法訓練。
孫劍:曠視1400+名研發人員全員使用,天元就像我們的孩子
曠視首席科學家、研究院院長孫劍介紹了如何使用曠視天元做更好的研究。
曠視有1400多名研發人員,全員使用曠視天元引擎,在上百個產品、幾十種計算平臺上用。孫劍親切的將天元比做他們的“孩子”,并介紹了這個“孩子”的三大特色優點:
優點一,框架與算法的協同。當前計算平臺差異非常大,很難只設計一種網絡,能夠滿足所有的需求。曠視以天元框架成為中間橋梁,根據不同設備的計算特性,協同設計網絡結構和框架算子,從而獲得最好的性能。而ShuffleNet就是協同設計的成果,最近幾年的在端上運行非常高效的一個神經網絡的設計,效果優異。
優點二,高效訓練系統。在COCO物體檢測和識別挑戰賽上,曠視取得了2017年、2018年、2019三連冠的佳績。其中一個非常關鍵的優勢,就是曠視天元這樣一個訓得快的系統。從第一次從框架上引入Synced BN技術,它能支持非常大的Mini-Batch訓練,以至于曠視可以非常高速的訓練一個系統。
優點三,大規模能力。孫劍表示這與曠視數據大規模有關,并發布了最新版的Objects365V2版本。這是世界上最大或者更大的物體檢測數據集,這個數據集有365種常見物體,超過200萬張圖象,超過2800萬個人工標志的框。
來自AI業務的深度學習框架
從2012年到2013年, AlexNet寫了一套東西,那時候也不叫框架,而是一套軟件,可以在擴大的NV的GPU上跑。后來賈揚清博士在伯克利做了一套Caffe的開源系統,這個系統成為第一代廣泛使用的深度學習框架。
MegEngine算是第二代深度學習框架的訓練演進,是基于計算圖理念開發的。這種方式非常靈活,讓很多的計算求導完全自動,使整個編程容易很多。
2014年曠視基本完成了MegEngine的開發,也借鑒了之前的開源軟件。直到2015年TensorFlow宣布開源,才發現大家殊途同歸,都是基于計算圖的方式來做。但當時TensorFlow剛發出來的開源軟件很不完善,曠視內部也和它做了比較,發現自己做的好處更大,所以就一版一版堅持做下來了。到現在,曠視內部的版本已經迭代到8.0了。曠視的框架結合了很多在實際應用時的深度學習、人工智能落地的問題。從實際問題出發,也是曠視做這個框架的初衷。
與Google、Facebook這些大平臺公司開發的深度學習框架不同,曠視是一家100%的AI公司,曠視的深度學習框架是生長在自身的核心業務上的,所以AI公司的深度學習框架和平臺公司的深度學習框架,在考慮的點、方位、方向上都是不同的。曠視希望從這個方向能夠對AI特定化的方向給開發者提供實用的平臺和便利工具。
目前主流框架的開源時間、開發主體和框架特性
除了曠視新開源的天元,當前全世界主流深度學習框架包括蒙特利爾理工學院2007年推出的Theano、加州大學伯克利2013年推出的Caffe、谷歌大腦2015年開源TensorFlow、谷歌的人工智能研究員Franois Chollet 2015年推出的Keras、Amazon 2015年底開源的MXNet、Facebook 2016年開源的PyTorch、微軟2016年開源的CNTK、百度2016年開源的飛槳等。
其中,TensorFlow和PyTorch是兩個極端,PyTorch采取動態圖靈活方便好調試適合學術科研,而TensorFlow采用靜態圖利于部署,更適合工業界使用,曠視希望能夠為開發者找到一個又要好調試,又要好部署的方案。
這次曠視天元開源,可以說為國產深度學習框架打了一針強心劑。相比市面主流深度學習框架,曠視天元上手更快,學習成本和遷移成本都更低。作為一家將AI成功落地的企業,實踐是曠視最寶貴的經驗。相比已經實現開源的框架,曠視開源框架最大的差異性,就是曠視是唯一一家AI本業的企業,曠視本身就是做AI Solution的,曠視的框架最能從AI實踐解決方案出發。
天元是怎么誕生的?
眾所周知,曠視是中國領軍的AI企業之一。近年來橫掃全球各大CV競賽,獲得27 項全球 AI 競賽冠軍。曠視數據、算法和算力三個核心組件都集成在Brain++體系里。作為一套伴隨曠視自身6年AI產業實戰經驗的框架,天元不僅能夠在AI競賽擂臺賽為曠視打怪升級加Buff,更撐起了曠視工程化、產品化的半邊天。2020年,疫情當前,曠視為何突然選擇把鎮宅之寶公開,把絕密武器分享給業界呢?這還要從天元的起源說起。
天元誕生——清華宿舍里研發人臉算法,3名實習生寫下框架第一行代碼
曠視成立于2011年,由三位清華“姚班”學霸創立。早期,曠視使用傳統論文方法進行算法研發。2013 年中深度學習剛剛興起,曠視研究院開始嘗試使用深度學習檢測器,清華宿舍中一名實習生埋首兩周,研發出一套人臉識別檢測算法,即便在暗光條件下也能精準檢測人臉,前所未有的算法性能技驚四座,于是曠視正式走上了神經網絡(NN)解一切的道路。
當時曠視條件艱苦,服務器、主板、顯卡等設備都需要人肉從美國一件件背回,第一臺用來訓練神經網絡的機器,是手拼組裝而成的4卡游戲臺式機。起初,曠視用Theano框架寫模型代碼,訓練神經網絡,跑一次訓練要編譯好幾個小時,隨著網絡越訓越大,越來越復雜,低效耗時的框架不僅令人崩潰,更限制了曠視中一些頂尖人才的創造力,曠視中的一些大牛開始摩拳擦掌嘗試各種方式,比如在Theano等早期開源框架上簡單包一層代碼,解決代碼冗長的問題,以期“煉丹工作更快捷一點”,但訓練效率仍舊滿足不了曠視發展需求,一套煉丹程序成不成可能需要3-5周才能得到驗證。
2013年底,曠視當時的研發負責人曹志敏提出打造一套能夠打通數據、訓練和業務的自動化算法研發系統Cycle++,不需要投入過多人力和時間就可以實現算法從研發到應用的自循環體系(曠視Brain++的早期設想)。于是,2014年初,曠視研究院3名實習生(賈開,李百恩,魏銘)第一行代碼寫起,不到半年的時間,正式誕生了曠視自研的初版深度學習框架——MegEngine。接下來為了追趕曠視發展的進度,研究院不斷與業務深入溝通了解一線需求,并復現業務所需神經網絡,又用了半年時間,在2015年年中完成了自研框架與曠視內部所有業務的接軌,曠視業務線上的模型全部換成了自研框架訓練出來的版本。
2015年11月9日,Google正式發布并開源TensorFlow。而曠視研究院的幾名實習生坐不住了,因為他們驚奇地發現,TensorFlow接口、理念等設計思路上竟驚奇地一致。TensorFlow的開源給曠視的自研框架造成了一個巨大的沖擊,那就是留存問題。既然大廠都開源了,曠視是否仍然有必要堅持做自己的框架?對此曠視內部分成了兩派并進行了一場曠日持久的大討論,最終決定通過科學的方式來進行決策,經過一次大規模評測,曠視研究員發現剛剛開源的TensorFlow性能并不理想,竟比曠視自研框架要慢10倍。這個結果讓曠視更加堅定地走上自研道路。
27 項全球 AI 競賽冠軍背后,曠視絕密武器是“三位一體”Brain++
隨著曠視業務的加速擴張,曠視自研框架在業務實踐中的優勢已經凸顯,算法訓練周期從兩三周縮減至3-5天。彼時TensorFlow還沒有解決多卡擴展性問題,一張卡和八張卡的計算效率沒有太大差別。但曠視的自研框架效率已經接近線性的加速比,于是開始瘋狂購入八卡機。當時曠視環境艱苦,炎夏時節框架研發小組為了保障服務器能夠穩定運行,甚至請制冰公司每天放置冰塊進行物理降溫,但高速運行的服務器太過于吃電,仍被大廈物業視為“定時炸彈”而反復警告。
曠視從研發到業務全面向自有深度學習框架和自有計算集群的遷移,標志著曠視數據、算法和算力三個核心組件正式完成“大一統”,自此曠視AI生產力平臺Brain++雛形初現。
2017-2019年間,依托曠視Brain++大規模分布式訓練能力,以及業界領先的分布式計算技術訓練出的超大規模深度學習模型,曠視累計斬獲 27 項全球 AI 競賽冠軍,并開發出大量部署于云端、移動端、邊緣端全計算平臺的先進深度神經網絡,為個人物聯網、城市物聯網、供應鏈物聯網三大垂直場景賦能提供強有力的支撐。
為了推動AI技術加速落地,讓更多的開發者和企業用戶使用 AI “源力”,曠視于2019年開始籌備將Brain++最核心的深度學習框架開源,并為 MegEngine 起了一個中文名字——天元。這期間框架研發團隊可以說是經歷了一場浴火重生,需要把原來封裝好的代碼分解再重組,以適應廣大開源用戶的使用體驗。
授人以魚不如授人以漁。曠視開源深度學習框架的原因很簡單,就是希望把自己用著好的東西拿出來分享給大家,讓有志于學習 AI、用 AI 改變世界的開發者們,可以更加簡單高效地用 AI 去創造,實現AI+產業降本增效釋放生產力,另一方面,框架代碼開源意味著接受群眾檢驗的同時,也能夠激發出更多的技術貢獻者讓它變得更好用。目前,為了進一步提高研究員在訓練上的便捷性,曠視天元(MegEngine)正從傳統的靜態圖計算模式向動態的方向轉變,未來隨著天元的開源,Brain++各項能力會逐步向外開源開放。
深度學習簡單,為普通開發者打造AI界的“煉丹爐”
曠視認為要想解決無限場景中層出不窮的新問題,就需要無限的算法。而要獲得無限的算法就要先建設AI的基礎設施,在曠視眼中,只有兩樣東西能夠被稱為AI基礎設施:AI芯片和AI底層的平臺級產品。
AI芯片大家都很清楚是AI的計算平臺,而對于AI底層的平臺級產品,曠視聯合創始人兼CTO唐文斌給出了一個具體的定義:AI生產力平臺。在曠視內部,已經有了這樣一個生產力平臺——Brain++。
Brain++是集數據、算法和算力為一體的大平臺概念,核心能力包括數據的處理、清洗和管理能力,算力的共享、調度和分布式能力,算法的訓練、推理及部署能力,可覆蓋從 AI 生產(輸出算法模型)到應用(實現算法工程化封裝)各環節。
簡單來說,Brain++就是曠視為AI打造的一套Visual Studio,是一個開發工具集,目的是有效解決 AI 研發門檻高、成本高和效率低的問題,為產學研各界提供一站式、全流程的人工智能專業解決方案。曠視在發布會中提到,將通過開源和開放的形式逐步將Brain++的能力與業界共享。
業內喜歡用“煉丹”來比喻算法研究,那么數據就是金木水火土等各種礦物或自然元素,而框架就是用來煉丹的爐子,算力就是煉丹爐下的火。元素全不全,爐子好不好,火旺不旺決定了AI開發者能不能練出一顆的AI的靈丹妙藥。
從曠視的開源發布會可以看出,曠視的院里已經有了一套設施完備的煉丹房——Brain++,而今天,他們打算把他們的煉丹爐開源,免費給大家使用,至于煉丹的原材料和柴火可以根據用戶需求合作使用。
開源不意味著完美。曠視研究院高級技術總監田忠博表示,此次開源所發布的是天元Alpha版本,并計劃在6月份的時候提供第一個里程碑版本Beta版本,在這個過程中曠視號召更多人能夠對天元提出批評、給出建議、貢獻code,唐文斌指出:“也許下一代天元并不是由曠視的研發團隊做出來的,而是與你一起共創出來的Beta和正式版本,所以我們也希望跟大家一起來共建更好的深度學習框架。”
所有深度學習框架的存在都是為了方便開發者,天元站在前人的肩膀上是青出于藍而勝于藍,拓展了深度學習開源框架的新版圖,也為開發者們提供了新的選擇。
天元開源地址和交流社區
那么曠視的這個煉丹爐究竟好不好用?
發布會上,曠視公布了天元在GitHub和OpenI的代碼托管地址,同時發布了一個叫做MegStudio的在線深度學習工具和一個模型中心ModelHub,支持開發者開箱即用。其中,ModelHub匯聚了全球頂尖算法的一些預訓練的模型,和曠視研究院一些最新的技術、研發成果。曠視表示,更多 SOTA 的模型正在增加中。
-
一體化
+關注
關注
0文章
256瀏覽量
14443 -
深度學習
+關注
關注
73文章
5510瀏覽量
121343 -
曠視
+關注
關注
0文章
77瀏覽量
6592
發布評論請先 登錄
相關推薦
評論