采用與 fast.ai 一樣的硬件、模型和訓(xùn)練數(shù)據(jù),ModelArts 可將訓(xùn)練時長可縮短到 10 分鐘,創(chuàng)造了新的紀(jì)錄,為用戶節(jié)省 44% 的時間。
MoXing 是華為云 ModelArts 團隊自研的分布式訓(xùn)練加速框架,它構(gòu)建于開源的深度學(xué)習(xí)引擎 TensorFlow、MXNet、PyTorch、Keras 之上,使得這些計算引擎分布式性能更高,同時易用性更好。
MoXing 內(nèi)置了多種模型參數(shù)切分和聚合策略、分布式 SGD 優(yōu)化算法、級聯(lián)式混合并行技術(shù)、超參數(shù)自動調(diào)優(yōu)算法,并且在分布式訓(xùn)練數(shù)據(jù)切分策略、數(shù)據(jù)讀取和預(yù)處理、分布式通信等多個方面做了優(yōu)化,結(jié)合華為云 Atlas 高性能服務(wù)器,實現(xiàn)了硬件、軟件和算法協(xié)同優(yōu)化的分布式深度學(xué)習(xí)加速。
有了 MoXing 后,上層開發(fā)者可以聚焦業(yè)務(wù)模型,無需關(guān)注下層分布式相關(guān)的 API,只用根據(jù)實際業(yè)務(wù)定義輸入數(shù)據(jù)、模型以及相應(yīng)的優(yōu)化器即可,訓(xùn)練腳本與運行環(huán)境(單機或者分布式)無關(guān),上層業(yè)務(wù)代碼和分布式訓(xùn)練引擎可以做到完全解耦。
另外,衡量分布式深度學(xué)習(xí)框架加速性能時,主要看吞吐量和收斂時間。在與吞吐量和收斂時間相關(guān)的幾個關(guān)鍵指標(biāo)上,華為云 ModelArts 都做了精心處理:
在數(shù)據(jù)讀取和預(yù)處理方面,MoXing 通過利用多級并發(fā)輸入流水線使得數(shù)據(jù) IO 不會成為瓶頸;
在模型計算方面,MoXing 對上層模型提供半精度和單精度組成的混合精度計算,通過自適應(yīng)的尺度縮放減小由于精度計算帶來的損失;
在超參調(diào)優(yōu)方面,采用動態(tài)超參策略(如 momentum、batch size 等)使得模型收斂所需 epoch 個數(shù)降到最低;
在底層優(yōu)化方面,MoXing 與底層華為自研服務(wù)器和通信計算庫相結(jié)合,使得分布式加速進一步提升
那么,在 MoXing 一系列的優(yōu)化之后,實際效果如何?以國際權(quán)威成績來參考:
在斯坦福大學(xué)發(fā)布 DAWNBenchmark 最新成績中,在圖像識別(ResNet50-on-ImageNet,93% 以上精度)的總訓(xùn)練時間上,華為云 ModelArts 排名第一,僅需 10 分 28 秒,比第二名提升近 40%。
在這個匯聚谷歌、亞馬遜 AWS、fast.ai 等高水平隊伍的國際權(quán)威深度學(xué)習(xí)模型基準(zhǔn)平臺上,華為云 ModelArts 第一次參加國際排名,便實現(xiàn)了低成本、快速又極致的 AI 開發(fā)體驗,其海量數(shù)據(jù)預(yù)處理及半自動化標(biāo)注、大規(guī)模分布式訓(xùn)練、自動化模型生成以及端 – 邊 – 云模型按需部署能力,更是體現(xiàn)了當(dāng)前中國業(yè)界深度學(xué)習(xí)平臺技術(shù)的領(lǐng)先性。
上線快——一鍵部署到云、端、邊,支持各種上線場景
現(xiàn)如今,縱觀整個 AI 產(chǎn)業(yè),不僅僅是云,還會有邊和端都需要部署的場景。然而,在 AI 規(guī)?;涞氐膱鼍跋?,模型部署會非常復(fù)雜,需要寫代碼集成到應(yīng)用系統(tǒng),維護、更新。例如在智慧交通領(lǐng)域,更新后的模型,需要一次性同時部署到各種不同規(guī)格、不同廠商的攝像頭上,這是一項非常耗時、費力的巨大工程。
對于此類場景,ModelArts 可以一鍵推送模型到所有邊緣、端的設(shè)備上,云上的部署還支持在線和批量推理,滿足大并發(fā)和分布式等多種場景需求。
開發(fā)者可以在 ModelArts 上獲得一些高并發(fā)、自動彈性伸縮的特性。能夠根據(jù)用戶制定的策略,自動調(diào)整云服務(wù)器的計算資源,跟隨用戶的業(yè)務(wù)需求變化。在業(yè)務(wù)需求下降時自動減少云服務(wù)器,節(jié)約資源和成本;在業(yè)務(wù)需求高峰時自動增加云服務(wù)器,保證業(yè)務(wù)平穩(wěn)健康運行。
上手快——自動學(xué)習(xí),零 AI 基礎(chǔ)構(gòu)建模型
ModelArts 具備自動學(xué)習(xí)功能,支持模型的自動設(shè)計與自動調(diào)參等,能夠幫助開發(fā)者提升開發(fā)效率、快速上手。
為什么需要自動學(xué)習(xí)?
AI 開發(fā)有兩大類,第一類為 AI 認(rèn)知服務(wù),比如圖像識別和 OCR 等,這一類門檻很低,但靈活性差,只支持特定類型。當(dāng)不滿足需求時,只能定制一個模型,周期非常長費用也比較高。第二類就是找 AI 的算法工程師、算法專家,去做自己的模型;還有一類就是那些直接用 AI 的框架自己寫代碼以及自己訓(xùn)練數(shù)據(jù),這一類的門檻較高,靈活度也很高。而自動學(xué)習(xí)就是希望能夠打破這兩者,既有一定的定制化的能力,又能夠降低 AI 定制化模型的門檻,不需要寫代碼,用戶可以定制化自己的模型的特點。
在自動深度學(xué)習(xí)里面,關(guān)鍵的技術(shù)是能夠做到多維度下的模型的架構(gòu)自動設(shè)計,包含模型的元學(xué)習(xí),涉及一些訓(xùn)練指標(biāo),還有推動網(wǎng)絡(luò)涉及的推理速度和監(jiān)控等。另外還包括一些元學(xué)習(xí)的訓(xùn)練參數(shù)的自動配置、模型訓(xùn)練的參數(shù)配置及搜索等。
另外,由于深度學(xué)習(xí)向計算機視覺輸入原始數(shù)據(jù),整個特征工程是在神經(jīng)網(wǎng)絡(luò)里面做的,而機器學(xué)習(xí)需要很多算法工程師去識別哪些特征是對業(yè)務(wù)是起正向作用的,所以自動機器學(xué)習(xí)的關(guān)鍵技術(shù),就是高效自動特征工程和自動調(diào)參。
除此之外,據(jù)華為云EI深度學(xué)習(xí)服務(wù)團隊負責(zé)人介紹,華為云 ModelArts 還有一個特色,就是面向應(yīng)用開發(fā)者。對于有經(jīng)驗的開發(fā)者,可以在 ModelArts 上自行編寫并導(dǎo)入算法代碼,核心組件 MoXing SDK 支持豐富的模型庫、優(yōu)化算法和各類工具庫;支持自動超參數(shù)調(diào)優(yōu);包含訓(xùn)練 – 驗證 – 預(yù)測 – 模型導(dǎo)出的整套框架;開發(fā)者只需要編寫一套代碼就能自動實現(xiàn)單機及分布式化。
對于編程苦手卻想快速生成模型的 AI 初學(xué)者,ModelArts 也預(yù)置了能夠覆蓋大部分常用應(yīng)用場景的算法模型(如 RestNet_50、Faster_RCNN、SegNet_VGG_16 等,未來還將上線更多算法模型),所有預(yù)置模型的基于開源數(shù)據(jù)集訓(xùn)練,模型精度領(lǐng)先。只需配置數(shù)據(jù)路徑 / 日志輸出路徑和 Hyper Parameter 自動選擇設(shè)置就可以一鍵啟動訓(xùn)練。
ModelArts 應(yīng)用實例:金融票據(jù) OCR 識別
金融票據(jù),包括銀行承兌票據(jù)和商業(yè)承兌票據(jù),目前銀行承兌票據(jù)占了 90% 以上的票據(jù)市場份額,金融票據(jù) OCR 識別工作重點在于銀行票據(jù)的識別。
對于業(yè)界普通 OCR 軟件,在金融票據(jù)領(lǐng)域識別準(zhǔn)確率不高,對于現(xiàn)有一些針對金融票據(jù)做過優(yōu)化的 OCR,識別準(zhǔn)確率也算達到 90%。由于金融票據(jù)金額不低,對于 OCR 識別要求很高,而金融票據(jù)難點在于票據(jù)格式多樣且差別細微等。
另外,票據(jù)模型開發(fā)訓(xùn)練難點包括數(shù)據(jù)標(biāo)注、模型訓(xùn)練、調(diào)參和部署上都有較多難點,對于 AI 開發(fā)水平要求很高,需要非常資深的 AI 專家進行繁瑣和長時間對于票據(jù) AI 進行不斷訓(xùn)練。
通過 ModelArts 助力金融票據(jù) OCR 識別的實戰(zhàn)。多位 ATN 社區(qū)使用者使用后認(rèn)為:ModelArts 適合 AI 的初學(xué)者,通過數(shù)據(jù)集的分類,可自動學(xué)習(xí),無需調(diào)參等操作;適用于遷移學(xué)習(xí);線上部署便利,逐步集成更多的數(shù)據(jù)標(biāo)注工具,擴大應(yīng)用范圍。
后續(xù),華為云 ModelArts 將進一步整合軟硬一體化的優(yōu)勢,提供從芯片(Ascend)、服務(wù)器(Atlas Server)、計算通信庫(CANN)到深度學(xué)習(xí)引擎(MindSpore)和分布式優(yōu)化框架(MoXing)全棧優(yōu)化的深度學(xué)習(xí)訓(xùn)練平臺。
華為云 ModelArts 會逐步集成更多的數(shù)據(jù)標(biāo)注工具,擴大應(yīng)用范圍,將繼續(xù)服務(wù)于智慧城市、智能制造、自動駕駛及其它新興業(yè)務(wù)場景,在公有云上為用戶提供更普惠的 AI 服務(wù)。