MindSpore開源一周年:量子機器學習、深度分子模擬等新特性正在「刷新」

尋夢新聞LINE@每日推播熱門推薦文章,趣聞不漏接❤️

加入LINE好友

MindSpore開源一周年:量子機器學習、深度分子模擬等新特性正在「刷新」 科技 第1張

大家好,在MindSpore開發團隊和社區開發者共同努力下,MindSpore很多的新特性馬上要與大家見面了,比如動態圖分布式訓練效率的大幅提升、一鍵模型遷移、模型魯棒性檢測、深度分子模擬及量子機器學習等,無論是在效率提升、易用性,還是創新方面,都是乾貨滿滿。下面就給大家快速預覽即將到來的這些關鍵特性的文字描述,歡迎大家在3月29日MindSpore官方B站觀看直播講解,點擊文章底部「閱讀原文」可快速跳轉至直播講解哦~

一、效率提升

大幅提升動態圖下分布式訓練的效率

在深度學習中,當數據集和參數量的規模越來越大,訓練所需的時間和硬件資源會隨之增加,最後會變成制約訓練的瓶頸。分布式並行訓練,可以降低對記憶體、計算性能等硬件的需求,是進行訓練的重要優化手段。當前MindSpore動態圖模式已經支持數據並行,通過對數據按batch維度進行切分,將數據分配到各個計算單元中進行模型訓練,從而縮短訓練時間。

基於ResNet50 v1.5+ImageNet數據集測試,在昇騰計算硬件平臺,MindSpore動態圖模式分布式的表現,可以達到PyTorch典型分布式場景的1.6倍, 靜態圖模式分布式的表現也可以達到TensorFlow典型分布式場景的2倍。

PyNative快速入門:

https://www.mindspore.cn/tutorial/training/zh-CN/r1.2/advanced_use/debug_in_pynative_mode.html

數據預處理加速Dvpp

數據是機器學習的基礎。在網路推理場景中,我們需要針對不同的數據進行數據的預處理,從中過濾出核心資訊放入我們訓練好的模型中進行推理預測。在實際應用場景中,我們往往需要對大量的原始數據進行推理,比如實時的視訊流等。因此,我們在昇騰推理平臺引入了Dvpp模塊,來針對網路推理數據預處理流程進行加速。

Dvpp數據預處理模塊提供C++接口,提供圖片的解碼、縮放,中心摳圖、標準化等功能。在Dvpp模塊的設計中,考慮到整體的易用性,其功能與MindData現有CPU算子有重疊,我們將其API統一,通過推理執行接口設置運行設備來進行區分。用戶可以根據自身硬件設備環境來選擇最佳的執行算子。Dvpp數據預處理流程如下圖所示:

MindSpore開源一周年:量子機器學習、深度分子模擬等新特性正在「刷新」 科技 第2張

我們在一臺昇騰推理服務器上測試了Dvpp系列算子的性能收益。該服務器擁有128個主頻為2.6GHz的CPU核心,以及128Gb的記憶體空間。在實驗中,我們選取yoloV3網路,同時選取coco2017推理數據集40504張圖片進行推理,最終得到模型輸入尺寸為[416, 416]的圖片。

我們分別使用Dvpp算子和CPU算子進行數據預處理,得到如下性能對比:

可以看到Dvpp系列算子相較於CPU算子在處理大量數據時性能優勢明顯,在本實驗中處理40504張圖片性能FPS提升129%。

查看教程:

https://www.mindspore.cn/tutorial/inference/zh-CN/r1.2/multi_platform_inference_ascend_310_mindir.html#ascend-310

二、創新性

分子模擬庫(SPONGE),來自社區分子動力學工作組

MindSpore版的SPONGE是在社區中的分子動力學工作組(MM WG)中,由北大、深圳灣實驗室高毅勤課題組與華為MindSpore團隊聯合開發的分子模擬庫,具有高性能、模塊化等特性。

為何需要開發SPONGE

分子動力學模擬是用牛頓定律近似來描述微觀原子和分子尺度演化的計算機模擬方法。其既可用於基礎科學研究也可用於工業實際應用。在基礎科學領域,分子動力學方法有助於科研學者從微觀研究體系的物理化學性質。

在工業生產中,其可以利用大規模計算的能力輔助藥物分子的設計和蛋白靶點的搜尋[1,2]。由於模擬的時間和空間尺度限制,傳統分子動力學軟體的應用範圍受到較大限制。科研工作者也在不斷的開發新的力場模型[3,4]、抽樣方法[5,6]以及嘗試結合新興的人工智慧[7,8]來進一步拓展分子動力學模擬的適用領域。

由此,新一代的分子動力學軟體就需要被提上日程。其應該具有模塊化的特性,能夠支持科學家高效的創造和搭建出能夠驗證其理論模型的結構。同時,它還需要兼顧傳統模擬方法的高效性,能夠兼容其在傳統領域上的使用。此外,為實現分子模擬+機器學習的自然融合,其還應該擁有嵌入人工智慧框架的形態。SPONGE就是基於這些理念而被創造出的全新的,完全自主的分子模擬軟體。

相比於之前在傳統分子模擬軟體上結合SITS方法進行生物分子增強抽樣[9],SPONGE原生支持SITS並對計算流程進行優化使得其使用SITS方法模擬生物體系更加高效。針對極化體系,傳統分子模擬採用結合量化計算等方式來解決電荷浮動等問題[10]。即使採用機器學習降低計算量也會浪費大量時間在程序數據傳送的問題上。而SPONGE利用模塊化的特點可支持記憶體上直接與機器學習程序通訊大大降低了整體計算時間。

MindSpore開源一周年:量子機器學習、深度分子模擬等新特性正在「刷新」 科技 第3張圖1:結合SITS等方法可進行Na[CpG], Lys生物分子模擬

MindSpore開源一周年:量子機器學習、深度分子模擬等新特性正在「刷新」 科技 第4張圖2:機器學習+分子模擬方法可更快更準確地模擬極化體系,圖為[C1MIm]Cl離子液體模擬

MindSpore + SPONGE

基於MindSpore自動並行、圖算融合等特性,SPONGE可高效地完成傳統分子模擬過程。SPONGE利用MindSpore自動微分的特性,可以將神經網路等AI方法與傳統分子模擬進行結合。

MindSpore開源一周年:量子機器學習、深度分子模擬等新特性正在「刷新」 科技 第5張SPONGE模塊化設計結構圖

隨MindSpore1.2版本開源的SPONGE具備以下優勢:

1、全模塊化分子模擬。模塊化構建分子模擬算法,易於領域研發人員進行理論和算法的快速實現,並為外部開發人員貢獻子模塊提供友好的開源社區環境。

2、傳統分子模擬與MindSpore結合的人工智慧算法的全流程實現。在MindSpore中,研發人員能便利的將AI方法作用於分子模擬中。全算子化的SPONGE將與MindSpore進一步結合成為新一代端到端可微的分子模擬軟體,實現人工智慧與分子模擬的自然融合。

教程文檔:

https://www.mindspore.cn/tutorial/training/zh-CN/r1.2/advanced_use/hpc_sponge.html

MindSpore+SPONGE展望

近期展望:在後續的版本更新中會陸續加入已經理論驗證好的MetaITS模塊、有限元計算模塊等功能。這些模塊將幫助SPONGE能更好的從事相變和金屬表面相幹的模擬。同時,MindSpore版SPONGE各模塊逐步支持自動微分和自動並行,對於銜接機器學習方案提供更友好的支持。

遠期展望:拓展SPONGE的各種特色模塊,使其能夠描述大部分微觀體系並同時具有較高的計算和采樣效率。對特定工業需求,如藥物篩選或晶型預測,將基於SPONGE衍生出完整的流程化計算方案,能夠滿足大規模並行計算的需求。在MindSpore框架下,SPONGE具有元優化功能,從而實現更準確和更快的力場擬合。

量子機器學習(MindQuantum),來自社區量子力學工作組

MindQuantum是結合MindSpore和HiQ開發的量子機器學習框架,支持多種量子神經網路的訓練和推理。得益於華為HiQ團隊的量子計算模擬器和MindSpore高性能自動微分能力,MindQuantum能夠高效處理量子機器學習、量子化學模擬和量子優化等問題,性能達到業界TOP1(Benchmark),為廣大的科研人員、老師和學生提供了快速設計和驗證量子機器學習算法的高效平臺。

MindSpore開源一周年:量子機器學習、深度分子模擬等新特性正在「刷新」 科技 第6張

MindSpore開源一周年:量子機器學習、深度分子模擬等新特性正在「刷新」 科技 第7張

查看教程:

https://www.mindspore.cn/tutorial/training/zh-CN/r1.2/advanced_use/parameterized_quantum_circuit.html

多跳知識推理問答(TPRR)

TPRR是華為泊松實驗室與華為MindSpore團隊提出的解決開放域多跳問題的通用模型。相比於傳統問答僅需從單個文檔中檢索答案,多跳知識推理問答需要從多個佐證文檔得到最終答案,並返回問題到答案的推理鏈。TPRR基於MindSpore混合精度特性,可以高效地完成多跳問答推理過程。

全路徑建模:

TPRR模型在多跳問題推理鏈的每一個環節中基於全部推理路徑的條件概率建模,模型以「全局視角」進行知識推理。

動態樣本選取:

TPRR模型採用動態樣本的建模方式,通過更強的對比學習提升模型多跳問答的能力。

算法流程圖如下:

MindSpore開源一周年:量子機器學習、深度分子模擬等新特性正在「刷新」 科技 第8張

查看教程:

https://www.mindspore.cn/tutorial/inference/zh-CN/r1.2/nlp_tprr.html

三、易用性

一鍵模型遷移(MindConverter)

腳本遷移工具(MindConverter)旨在幫助算法工程師將存量的基於三方框架開發的模型快速遷移至MindSpore生態。根據用戶提供的TensorFlow PB或ONNX模型文件,工具通過對模型的計算圖(Computational Graph)解析,生成一份具備可讀性的MindSpore Python模型定義腳本(.py)以及相應的模型權重(.ckpt)。

MindSpore開源一周年:量子機器學習、深度分子模擬等新特性正在「刷新」 科技 第9張

一鍵遷移:

通過MindConverter CLI命令即可一鍵將模型遷移為MindSpore下模型定義腳本以及相應權重文件,省去模型重訓以及模型定義腳本開發時間;

100%遷移率:

在MindConverter具備跨框架間算子映射的情況下,遷移後腳本可直接用於推理,實現100%遷移率;

支持模型列表:

目前工具已支持計算機視覺領域典型模型、自然語言處理BERT預訓練模型腳本及權重的遷移,詳細模型列表見 README。

BERT模型定義遷移結果展示(部分代碼):

MindSpore開源一周年:量子機器學習、深度分子模擬等新特性正在「刷新」 科技 第10張

查看教程:

https://www.mindspore.cn/tutorial/training/zh-CN/r1.2/advanced_use/migrate_3rd_scripts_mindconverter.html?highlight=mindconverter

四、可靠性

魯棒性評測工具助力OCR服務達成首個AI C4魯棒性標準要求

MindSpore魯棒性測試工具MindArmour,基於黑白盒對抗樣本(20+方法)、自然擾動(10+方法)等技術提供高效的魯棒性評測方案,幫助客戶評估模型的魯棒性性,識別模型脆弱點。

OCR是指利用光學設備去捕獲圖像並識別文字,減少人工成本,快速提升工作效率;如果攻擊者通過對待識別的文字做出人眼不易察覺的修改,而模型無法對其正確識別或處理,就會導致OCR服務對文字識別的準確率下降,且使用人員不清楚問題背後的原因。測評團隊使用MindArmour對OCR服務的魯棒性進行測評,發現OCR服務中部分模型對自然擾動和對抗樣本的防禦能力較差,如文檔框檢測模型在校驗噪聲、PGD、PSO(粒子群)等攻擊算法下準確率小於66%;並以此指導模型開發團隊通過對抗樣本檢測、數據增強訓練等技術,使得模型對惡意樣本的識別準確率達到95+%,提高了模型及OCR服務的魯棒性。

MindSpore開源一周年:量子機器學習、深度分子模擬等新特性正在「刷新」 科技 第11張

AI C4標準鏈接:

https://www.bsi.bund.de/SharedDocs/Downloads/EN/BSI/CloudComputing/AIC4/AI-Cloud-Service-Compliance-Criteria-Catalogue_AIC4.html

五、更多值得期待

其實MindSpore即將帶來的大量新特性,不止於文中所展示的舉例,比如超大規模參數模型、可解釋AI、MindSpore IoT支持等更加前衛的特性,將在4月底的華為開發者大會2021(Cloud)大會亮相,而社區也會在近期發布一款新的開源工具集,敬請關註!開源一周年的MindSpore社區,將為大家帶來源源不斷的驚喜!

About 尋夢園
尋夢園是台灣最大的聊天室及交友社群網站。 致力於發展能夠讓會員們彼此互動、盡情分享自我的平台。 擁有數百間不同的聊天室 ,讓您隨時隨地都能找到志同道合的好友!