華為全場景 AI 計算框架MindSpore開源!
華為Mindspore AI計算框架正式開源,標志著華為向自己的AI夢想,邁出了新的一步,而深度學習開源領域,又迎來了一位重量級的玩家。全場景適用、端云邊協(xié)同、低門檻開發(fā)、高效分布式并行計算,MindSpore將為AI領域帶來一場怎樣的革命?
一家做硬件起家的公司,進入AI領域后也是專撿硬骨頭啃。
起初,他們造芯,一做就是10年,一投就是4000億,誕生了天罡、麒麟、昇騰等我們耳熟能詳?shù)男酒?/p>
如今,他們做AI框架,想要降低AI開發(fā)門檻,讓開發(fā)者可以輕松的移植代碼,并實現(xiàn)全場景按需協(xié)同。
這背后,只為了一個目的:萬物互聯(lián)。
是的,這家公司就是華為。
距離2018年10月10日華為輪值董事長徐直軍在華為全連接大會上公布MindSpore,已經(jīng)一年多了。
一年多前,華為讓大家知道,在AI框架江湖將出現(xiàn)一個后起之秀;一年多后的今天,華為MindSpore首席科學家陳雷宣布,國內(nèi)首個全場景AI計算框架MindSpore正式開源!
如此好用的框架將于4月份正式開始公測,到時開發(fā)者就可以親身體驗了。
MindSpore降世:為華為在2萬億美元大藍海中保駕護航
華為副董事長胡厚崑曾經(jīng)在華為全連接大會上表示:“我們面臨的是一個2萬億美元的計算產(chǎn)業(yè)大藍海。”
目前華為已經(jīng)有了在這片巨大的藍海中遠航的硬件基礎,那么接下來就要在軟件上跟進。
然而,海上風浪大。
第一股風浪,就是技術戰(zhàn)和貿(mào)易戰(zhàn),因此華為必須擁有自主可控的全場景計算框架來抵御這股足以掀翻整艘大船的風浪。
第二股風浪,是目前計算框架存在開發(fā)門檻高、運行成本高、部署難度大等等亟待解決的問題。
作為華為支持端、邊、云全場景的開源深度學習訓練推理框架,MindSpore一出生就承擔著這個年紀不該有的重大使命。
往小處說,MindSpore當前主要應用于計算機視覺、自然語言處理等AI領域,能夠為數(shù)據(jù)科學家和算法工程師提供設計友好、運行高效的開發(fā)體驗,同時解決了昇騰AI處理器原生支持及軟硬件協(xié)同優(yōu)化的問題。
往大處說,它的戰(zhàn)略意義在于構筑面向全球的人工智能開源社區(qū),推動人工智能軟硬件應用生態(tài)繁榮發(fā)展。
強大的核心特性,助力高效實戰(zhàn)開發(fā)
開發(fā)者只需要掌握張量(Tensor)、算子(Operator)、單元(Cell)以及模型(Model)這4個基本概念及Python編程基礎,即可利用MindSpore提供的高級API進行實戰(zhàn)開發(fā)。
陳雷介紹了Mindspore的關鍵特性路標的變化,并且承諾會不斷根據(jù)開發(fā)者的需求,對Mindspore進行改進,力求滿足開發(fā)者最關心、最核心的需求。
接下來我們看下MindSpore的核心特性。
自動微分
當前主流的深度學習框架主要有三種自動微分技術:網(wǎng)絡在編譯時轉(zhuǎn)換為靜態(tài)數(shù)據(jù)流圖(TensorFlow),在靜態(tài)圖上做自動微分;以記錄操作符重載的方式,動態(tài)生成數(shù)據(jù)流圖(PyTorch),在動態(tài)圖上自動微分。
而 MindSpore 采用基于源碼轉(zhuǎn)換的通用自動微分:以即時編譯(JIT)的方式在中間表達(編譯過程中程序的表達形式)上做自動微分變換,支持while/if/for等復雜的控制流結構、支持高階函數(shù)和閉包等靈活的函數(shù)式編程方式。
自動并行
MindSpore自動并行能夠用串行算法代碼,自動實現(xiàn)分布式并行訓練,并且保持高性能。分布式并行訓練的范式有數(shù)據(jù)并行和模型并行,以及由這兩種范式組合出來的混合并行。
MindSpore自動并行采用了一種全新的分布式并行訓練模式,融合了數(shù)據(jù)并行、模型并行和混合并行。
高效數(shù)據(jù)處理
MindSpore中的MindData負責完成訓練過程中數(shù)據(jù)的pipeline處理,包括數(shù)據(jù)加載、數(shù)據(jù)增強、導入訓練,并提供簡單易用的編程接口和覆蓋CV/NLP等全場景的豐富數(shù)據(jù)處理能力。MindData提供c_transforms模塊和py_transforms模塊,來進行數(shù)據(jù)增強,用戶也可以自定義算子來做數(shù)據(jù)增強。
高效圖執(zhí)行引擎
MindSpore的圖處理操作,縱向看總共分為三層,分別是執(zhí)行控制層、業(yè)務功能層、數(shù)據(jù)管理層。橫向展開分析,可細分為六大步驟,分別是圖準備、圖拆分、圖優(yōu)化、圖編譯、圖加載和圖執(zhí)行。通過上述圖操作,MindSpore圖引擎可以將前端下發(fā)的圖轉(zhuǎn)換為一種可以在昇騰硬件上高效運行的圖模式。
深度優(yōu)化的模型集市
MindSpore計劃2020年Q4提供超過30+的深度優(yōu)化模型,可供開發(fā)者直接使用。
此外,MindSpore還提供了可視化工具,可以對單次訓練可視化以及多次訓練的模型溯源,幫助開發(fā)者快速發(fā)現(xiàn)模型訓練過程的問題。
先進的設計理念,低門檻分布式全場景
MindSpore的推出,是基于華為對行業(yè)痛點的深刻洞察,即AI研究與應用之間存在巨大的鴻溝。
為了跨越這個鴻溝,MindSpore提出了三大設計理念。
新編程范式
基于數(shù)學原生表達的AI編程新范式,讓開發(fā)者可以聚焦AI創(chuàng)新和探索,一行代碼實現(xiàn)自動搜索并行策略,無需關注底層架構即可實現(xiàn)并行。
新執(zhí)行模式
On-Device整圖卸載執(zhí)行,深度圖優(yōu)化,充分發(fā)揮算力。和友商相比,MindSpore上Resnet50圖像分類的訓練時間降低了23%,Bert中文預訓練時間降低了62%,訓練時間大幅縮短。
全場景按需協(xié)同
MindSpore實現(xiàn)了一套框架端邊云全場景部署,一次開發(fā)多處高效執(zhí)行,開發(fā)和部署效率直線上升。
全力服務好開發(fā)者、高校和開源社區(qū),制定有針對性的扶持計劃
華為深知,開發(fā)者、高??蒲?、開源社區(qū)是整個生態(tài)中,最關鍵的角色。針對三個不同的群體,華為分別給出了非常具體的定制化扶持計劃。
針對開發(fā)者,提供:
- 線上免費資源
- 全年不少于10場的技術沙龍
- 舉辦MindSpore開發(fā)者大賽
針對高校,提供:
- 專項創(chuàng)新基金激勵
- MindSpore教學扶持
針對開源社區(qū),提供:
- 聘請頂級專家入駐社區(qū)
- 招募committer參與社區(qū)核心項目
- 歡迎企業(yè)和組織參與社區(qū)建設
MindSpore初露端倪,前景可期
光說不練假把式,MindSpore應用前景如何,市場檢驗了才知道。
或許你已經(jīng)享受到了MindSpore帶來的好處,對此卻毫無覺察,比如銷量爆棚的榮耀、NOVA等系列手機,都是MindSpore商用的成功案例。