【AI理論】深度解讀華為云一站式AI 開(kāi)發(fā)平臺(tái) ModelArts 技術(shù)架構(gòu)
雖然人工智能浪潮已經(jīng)熱火朝天地進(jìn)行了若干年,但對(duì)于很多企業(yè)來(lái)說(shuō),機(jī)器學(xué)習(xí)依然很遙遠(yuǎn),聽(tīng)起來(lái)既昂貴,又困難,還需要大量高科技人才。不過(guò)目前這個(gè)復(fù)雜的領(lǐng)域有一個(gè)趨勢(shì):一切皆服務(wù)(everything-as-a-service)——無(wú)需太多投資,即可快速將機(jī)器學(xué)習(xí)用到實(shí)際業(yè)務(wù)中。通過(guò)使用機(jī)器學(xué)習(xí)云平臺(tái)提供的服務(wù),你可以開(kāi)始構(gòu)建第一個(gè)模型,只要一個(gè)小團(tuán)隊(duì),就可以從機(jī)器學(xué)習(xí)的預(yù)測(cè)中獲得有價(jià)值的信息。機(jī)器學(xué)習(xí)服務(wù)(Machine learning as a service, MLaaS)指的是包含機(jī)器學(xué)習(xí)大多數(shù)基礎(chǔ)問(wèn)題(比如數(shù)據(jù)預(yù)處理、模型訓(xùn)練、模型評(píng)估以及預(yù)測(cè))的全自動(dòng)或者半自動(dòng)云平臺(tái)的總體定義。
就目前國(guó)內(nèi)市場(chǎng)來(lái)看,已有不少企業(yè)布局機(jī)器學(xué)習(xí)云平臺(tái)并對(duì)外提供服務(wù),也有很多公司基于開(kāi)源組件著手開(kāi)發(fā)自己的機(jī)器學(xué)習(xí)云平臺(tái),便于更好地開(kāi)展企業(yè)內(nèi)部的機(jī)器學(xué)習(xí)應(yīng)用。在競(jìng)爭(zhēng)激烈的 AI 框架和平臺(tái)市場(chǎng),去年下半年問(wèn)世的華為云 AI 平臺(tái) ModelArts 憑什么脫穎而出?開(kāi)發(fā)者為什么要選擇 ModelArts?本文將深度解讀 ModelArts 的技術(shù)架構(gòu)和具體實(shí)踐,希望你能從中找到答案。
華為AI平臺(tái)ModelArts定位
ModelArts 是華為全棧全場(chǎng)景AI 解決方案面向用戶和開(kāi)發(fā)者的門(mén)戶,作為一站式 AI開(kāi)發(fā)平臺(tái),提供海量數(shù)據(jù)預(yù)處理及半自動(dòng)化標(biāo)注、大規(guī)模分布式訓(xùn)練、自動(dòng)化模型生成,及端 - 邊 - 云模型按需部署能力,幫助用戶快速創(chuàng)建和部署模型,管理全周期 AI工作流。
繁多的AI工具安裝配置、數(shù)據(jù)準(zhǔn)備、模型訓(xùn)練慢等是困擾AI工程師的諸多難題。ModelArts最初是從華為內(nèi)部衍生出來(lái)的一個(gè)產(chǎn)品,因?yàn)槿A為內(nèi)有很多算法工程師、AI 開(kāi)發(fā)工程者,這些痛點(diǎn)都會(huì)遇到,我們就把這些已經(jīng)遇到的 AI 開(kāi)發(fā)問(wèn)題找到了對(duì)應(yīng)的解決方案,積累下來(lái),最后做成了ModelArts這個(gè)平臺(tái)。目標(biāo)是提供一站式的 AI 開(kāi)發(fā)平臺(tái)給開(kāi)發(fā)者,從數(shù)據(jù)準(zhǔn)備到算法開(kāi)發(fā),訓(xùn)練模型,最后把模型部署起來(lái),集成到生產(chǎn)環(huán)境。因此,ModelArts 平臺(tái)在華為云上開(kāi)放給開(kāi)發(fā)者之前,已經(jīng)是被內(nèi)部眾多AI工程師錘煉出來(lái)的AI平臺(tái),以下是ModelArts功能總覽:
ModelArts功能與架構(gòu)詳解
01 數(shù)據(jù)處理
AI開(kāi)發(fā)過(guò)程中經(jīng)常需要處理海量數(shù)據(jù),數(shù)據(jù)準(zhǔn)備與標(biāo)注往往耗費(fèi)整體開(kāi)發(fā)一半以上時(shí)間。ModelArts數(shù)據(jù)處理框架包含數(shù)據(jù)采集、數(shù)據(jù)篩選、數(shù)據(jù)標(biāo)注、數(shù)據(jù)集版本管理功能,支持自動(dòng)化和半自動(dòng)化的數(shù)據(jù)篩選功能,自動(dòng)化的數(shù)據(jù)預(yù)標(biāo)注及輔助自動(dòng)化標(biāo)注工具。AI 開(kāi)發(fā)者可基于框架實(shí)現(xiàn)數(shù)據(jù)標(biāo)注全流程處理,如下圖所示:
ModelArts支持各種AI場(chǎng)景,如計(jì)算機(jī)視覺(jué)、自然語(yǔ)言處理、音視頻場(chǎng)景等;支持圖片、文本、語(yǔ)音、視頻多種標(biāo)注任務(wù),如圖片分類(lèi)、對(duì)象檢測(cè)、圖片分割、語(yǔ)音分割、文本分類(lèi)等場(chǎng)景的數(shù)據(jù)標(biāo)注任務(wù);同時(shí)支持面向自動(dòng)駕駛、醫(yī)療影像、遙感影像等領(lǐng)域標(biāo)注的數(shù)據(jù)處理和預(yù)標(biāo)注。
ModelArts 平臺(tái)提供涵蓋以上場(chǎng)景的標(biāo)注工具,提供滿足個(gè)人開(kāi)發(fā)者獨(dú)立標(biāo)注、業(yè)余小團(tuán)隊(duì)小規(guī)模協(xié)作標(biāo)注,和專(zhuān)業(yè)團(tuán)隊(duì)的大規(guī)劃標(biāo)注協(xié)同的項(xiàng)目化管理。針對(duì)大規(guī)模團(tuán)隊(duì)的標(biāo)注,提供專(zhuān)業(yè)的項(xiàng)目管理、人員管理、數(shù)據(jù)管理,實(shí)現(xiàn)從項(xiàng)目創(chuàng)建、分配、管理、標(biāo)注、驗(yàn)收全流程。針對(duì)個(gè)人小團(tuán)隊(duì)小規(guī)模協(xié)作標(biāo)注,提供便捷易用的標(biāo)注工具,最小化項(xiàng)目管理開(kāi)銷(xiāo)。
標(biāo)注平臺(tái)確保用戶數(shù)據(jù)安全性,確保用戶數(shù)據(jù)僅在授權(quán)范圍內(nèi)使用,標(biāo)注對(duì)象分配策略確保用戶數(shù)據(jù)的隱私性,實(shí)現(xiàn)標(biāo)注數(shù)據(jù)脫敏需求。
標(biāo)注工具提供 2D 框、3D 框、多邊形、點(diǎn)、直線、mask、曲線等標(biāo)注圖形。支持像素級(jí)的分割,支持?jǐn)?shù)據(jù)的預(yù)標(biāo)注功能,通過(guò)預(yù)置算法和用戶自定義算法實(shí)現(xiàn)數(shù)據(jù)在加載后自動(dòng)標(biāo)注,人工僅需要少量手工修正;如下圖例子支持?jǐn)?shù)據(jù)的自動(dòng)輔助標(biāo)注能力,標(biāo)注員可通過(guò)簡(jiǎn)單標(biāo)識(shí)后,由工具自動(dòng)化標(biāo)識(shí)準(zhǔn)確信息(如輪廓信息),在特定領(lǐng)域可提升人工標(biāo)注效率10倍。
02 算法開(kāi)發(fā)
在 AI 開(kāi)發(fā)過(guò)程中搭建開(kāi)發(fā)環(huán)境、選擇 AI 算法框架、選擇算法、調(diào)試代碼、安裝相應(yīng)軟件或者硬件加速驅(qū)動(dòng)庫(kù)都不是容易的事情,使得學(xué)習(xí) AI 開(kāi)發(fā)上手慢門(mén)檻高。為了解決這些問(wèn)題,ModelArts 算法開(kāi)發(fā)平臺(tái)簡(jiǎn)化了整個(gè)開(kāi)發(fā)過(guò)程,以降低開(kāi)發(fā)門(mén)檻,算法開(kāi)發(fā)過(guò)程如下圖所示:
機(jī)器學(xué)習(xí)和深度學(xué)習(xí)領(lǐng)域,主流開(kāi)源的訓(xùn)練和推理計(jì)算框架包括 TensorFlow、PyTorch、MXNet 等。ModelArts 平臺(tái)為適應(yīng)不同開(kāi)發(fā)者的開(kāi)發(fā)習(xí)慣及不同應(yīng)用場(chǎng)景,支持所有主流 AI 計(jì)算框架,并提供友好易用的開(kāi)發(fā)和調(diào)測(cè)環(huán)境。支持傳統(tǒng)機(jī)器學(xué)習(xí)算法運(yùn)行,如邏輯回歸,決策樹(shù),聚類(lèi)算法等;支持 CNN,RNN, LSTM 等多種類(lèi)型的深度學(xué)習(xí)算法執(zhí)行。
深度學(xué)習(xí)需要大規(guī)模的加速計(jì)算,往往需要大規(guī)模 GPU 集群進(jìn)行分布式加速。而現(xiàn)有的開(kāi)源框架需要算法開(kāi)發(fā)者寫(xiě)大量的代碼實(shí)現(xiàn)在不同硬件上的分布式訓(xùn)練,而且不同框架的加速代碼都不相同。為了解決這些痛點(diǎn),需要一種輕型的分布式框架或者 SDK,構(gòu)建于 TensorFlow、PyTorch、MXNet 等深度學(xué)習(xí)引擎之上,使得這些計(jì)算引擎分布式性能更高,同時(shí)易用性更好,ModelArts 的 MoXing 可以很好地解決這些痛點(diǎn),開(kāi)發(fā)者基于 MoXing 開(kāi)發(fā)的代碼如下圖所示:
簡(jiǎn)化調(diào)參,集成多種調(diào)參技巧包,如數(shù)據(jù)增強(qiáng)的調(diào)參策略,可簡(jiǎn)化 AI 算法工程師的模型調(diào)優(yōu)痛苦。
簡(jiǎn)化分布式,支持將單機(jī)代碼自動(dòng)分布式,使算法工程師不需要學(xué)習(xí)分布式相關(guān)的知識(shí),在自動(dòng)化分布式的同時(shí),也優(yōu)化了分布式的性能,自動(dòng)化和高性能是相輔相成的。
03 模型訓(xùn)練
模型訓(xùn)練中除了數(shù)據(jù)和算法外,開(kāi)發(fā)者花了大量時(shí)間在模型參數(shù)設(shè)計(jì)上。模型訓(xùn)練的參數(shù)直接影響模型的精度以及模型收斂時(shí)間,參數(shù)的選擇極大依賴于開(kāi)發(fā)者的經(jīng)驗(yàn),參數(shù)選擇不當(dāng)會(huì)導(dǎo)致模型精度無(wú)法達(dá)到預(yù)期結(jié)果,或者模型訓(xùn)練時(shí)間大大增加。
為了降低開(kāi)發(fā)者的專(zhuān)業(yè)要求,提升開(kāi)發(fā)者模型訓(xùn)練的開(kāi)發(fā)效率及訓(xùn)練性能,ModelArts 基于機(jī)器學(xué)習(xí)算法及強(qiáng)化學(xué)習(xí)的模型訓(xùn)練自動(dòng)超參調(diào)優(yōu),如 learning rate、batch size 等自動(dòng)的調(diào)參策略;預(yù)置和調(diào)優(yōu)常用模型,簡(jiǎn)化模型開(kāi)發(fā)。
當(dāng)前大多數(shù)開(kāi)發(fā)者開(kāi)發(fā)模型時(shí),為了滿足精度需求,模型往往達(dá)到幾十層,甚至上百層,參數(shù)規(guī)模達(dá)到百兆甚至在 G 規(guī)格以上,導(dǎo)致對(duì)計(jì)算資源的規(guī)格要求極高,主要體現(xiàn)在對(duì)硬件資源的算力及內(nèi)存、ROM 的規(guī)格的需求上。端側(cè)資源規(guī)格限制極為嚴(yán)格,以端側(cè)智能攝像頭為例,通常端側(cè)算力在 1TFLOPS,內(nèi)存在 2G 規(guī)格左右,ROM 空間在 2G 左右,需要將端側(cè)模型大小控制在百 K 級(jí)別,推理時(shí)延控制在百毫秒級(jí)別。在端側(cè)手機(jī)場(chǎng)景下,對(duì)功耗發(fā)熱都有更為嚴(yán)格的限制,所以邊、端側(cè)場(chǎng)景需要極輕量的小型化模型。
這就需要借助模型精度無(wú)損或微損下的壓縮技術(shù),如通過(guò)剪枝、量化、知識(shí)蒸餾等技術(shù)實(shí)現(xiàn)模型的自動(dòng)壓縮及調(diào)優(yōu),進(jìn)行模型壓縮和重新訓(xùn)練的自動(dòng)迭代,以保證模型的精度損失極小。無(wú)需重新訓(xùn)練的低比特量化技術(shù)實(shí)現(xiàn)模型從高精度浮點(diǎn)向定點(diǎn)運(yùn)算轉(zhuǎn)換,多種壓縮技術(shù)和調(diào)優(yōu)技術(shù)實(shí)現(xiàn)模型計(jì)算量滿足端、邊小硬件資源下的輕量化需求,模型壓縮技術(shù)在特定領(lǐng)域場(chǎng)景下實(shí)現(xiàn)精度損失 <1%,模型大小壓縮 10 倍。
當(dāng)訓(xùn)練數(shù)據(jù)量很大時(shí),深度學(xué)習(xí)模型的訓(xùn)練將會(huì)非常耗時(shí)。在計(jì)算機(jī)視覺(jué)中,ImageNet-1k(包含 1000 個(gè)類(lèi)別的圖像分類(lèi)數(shù)據(jù)集,以下簡(jiǎn)稱(chēng) ImageNet)是最經(jīng)典、常用的一個(gè)數(shù)據(jù)集,如果我們?cè)谠摂?shù)據(jù)集上用一塊 P100 GPU 訓(xùn)練一個(gè) ResNet-50 模型,則需要耗時(shí)將近 1 周,這嚴(yán)重阻礙了深度學(xué)習(xí)應(yīng)用的開(kāi)發(fā)進(jìn)度。因此,深度學(xué)習(xí)訓(xùn)練加速一直是學(xué)術(shù)界和工業(yè)界所關(guān)注的重要問(wèn)題。
分布式訓(xùn)練加速需要從軟硬件兩方面協(xié)同來(lái)考慮,僅單一的調(diào)優(yōu)手段無(wú)法達(dá)到期望的加速效果。所以分布式加速的調(diào)優(yōu)是一個(gè)系統(tǒng)工程,需要從芯片、硬件設(shè)計(jì)階段從硬件角度考慮分布式訓(xùn)練架構(gòu),如系統(tǒng)的整體計(jì)算規(guī)格、網(wǎng)絡(luò)帶寬、高速緩存、功耗、散熱等因素,充分考慮計(jì)算和通信的吞吐量關(guān)系,以實(shí)現(xiàn)計(jì)算和通信時(shí)延的隱藏。
軟件設(shè)計(jì)需要結(jié)合高性能硬件特性,充分利用硬件高速網(wǎng)絡(luò)實(shí)現(xiàn)高帶寬分布式通信,實(shí)現(xiàn)高效的數(shù)據(jù)集本地?cái)?shù)據(jù)緩存技術(shù),通過(guò)訓(xùn)練調(diào)優(yōu)算法,如混合并行,梯度壓縮、卷積加速等技術(shù),實(shí)現(xiàn)分布式訓(xùn)練系統(tǒng)軟硬件端到端的高效協(xié)同優(yōu)化,實(shí)現(xiàn)多機(jī)多卡分布式環(huán)境下訓(xùn)練加速。ModelArts 在千級(jí)別資源規(guī)格多機(jī)多卡分布式環(huán)境下,典型模型 ResNet50 在 ImageNet 數(shù)據(jù)集上實(shí)現(xiàn)加速比 >0.8,是行業(yè)領(lǐng)先水平。
衡量分布式深度學(xué)習(xí)的加速性能時(shí),主要有如下 2 個(gè)重要指標(biāo):
吞吐量,即單位時(shí)間內(nèi)處理的數(shù)據(jù)量。
收斂時(shí)間,即達(dá)到一定的收斂精度所需的時(shí)間。
吞吐量一般取決于服務(wù)器硬件(如更多、更大 FLOPS 處理能力的 AI 加速芯片,更大的通信帶寬等)、數(shù)據(jù)讀取和緩存、數(shù)據(jù)預(yù)處理、模型計(jì)算(如卷積算法選擇等)、通信拓?fù)涞确矫娴膬?yōu)化。除了低 bit 計(jì)算和梯度(或參數(shù))壓縮等,大部分技術(shù)在提升吞吐量的同時(shí),不會(huì)造成對(duì)模型精度的影響。為了達(dá)到最短的收斂時(shí)間,需要在優(yōu)化吞吐量的同時(shí),對(duì)調(diào)參方面也做調(diào)優(yōu)。調(diào)參不到位會(huì)導(dǎo)致吞吐量難以優(yōu)化,當(dāng) batch size 超參不足夠大時(shí),模型訓(xùn)練的并行度就會(huì)相對(duì)較差,吞吐量難以通過(guò)增加計(jì)算節(jié)點(diǎn)個(gè)數(shù)而提升。
對(duì)用戶而言,最終關(guān)心的指標(biāo)是收斂時(shí)間,因此 ModelArts 的 MoXing 實(shí)現(xiàn)了全棧優(yōu)化,極大縮短了訓(xùn)練收斂時(shí)間。在數(shù)據(jù)讀取和預(yù)處理方面,MoXing 通過(guò)利用多級(jí)并發(fā)輸入流水線使得數(shù)據(jù) IO 不會(huì)成為瓶頸;在模型計(jì)算方面,MoXing 對(duì)上層模型提供半精度和單精度組成的混合精度計(jì)算,通過(guò)自適應(yīng)的尺度縮放減小由于精度計(jì)算帶來(lái)的損失;在超參調(diào)優(yōu)方面,采用動(dòng)態(tài)超參策略(如 momentum、batch size 等)使得模型收斂所需 epoch 個(gè)數(shù)降到最低;在底層優(yōu)化方面,MoXing 與底層華為服務(wù)器和通信計(jì)算庫(kù)相結(jié)合,使得分布式加速進(jìn)一步提升。
在斯坦福大學(xué)發(fā)布的最新結(jié)果 DAWNBench(An End-to-End Deep Learning Benchmark and Competition),在圖像識(shí)別(ResNet50-on-ImageNet,93% 以上精度)的總訓(xùn)練時(shí)間上,ModelArts 排名第一,僅需 4 分 8 秒,排名結(jié)果(https://dawn.cs.stanford.edu/benchmark)
ModelArts 高性能分布式訓(xùn)練優(yōu)化點(diǎn):
自動(dòng)混合精度訓(xùn)練(充分發(fā)揮硬件計(jì)算能力)
動(dòng)態(tài)超參調(diào)整技術(shù)(動(dòng)態(tài) batch size、image size、momentum 等)
模型梯度的自動(dòng)融合、拆分
基于 BP bubble 自適應(yīng)的計(jì)算 - 通信算子調(diào)度優(yōu)化
分布式高性能通信庫(kù)(nstack、HCCL)
分布式數(shù)據(jù) - 模型混合并行
訓(xùn)練數(shù)據(jù)壓縮、多級(jí)緩存
04 模型部署
通常 AI 模型部署和規(guī)模化落地非常復(fù)雜。如智慧交通,在獲得訓(xùn)練好的模型后,需要部署到云、邊、端多種場(chǎng)景。如在端側(cè)部署,需要一次性部署到不同規(guī)格、不同廠商的攝像機(jī)上,這是一項(xiàng)非常耗時(shí)、費(fèi)力的巨大工程,ModelArts 支持將訓(xùn)練好的模型一鍵部署到端、邊、云的各種設(shè)備上和各種場(chǎng)景上,并且還為個(gè)人開(kāi)發(fā)者、企業(yè)和設(shè)備生產(chǎn)廠商提供了一整套安全可靠的一站式部署方式:
在線推理服務(wù),可以實(shí)現(xiàn)高并發(fā),低延時(shí),彈性伸縮,并且支持多模型灰度發(fā)布,A/B 測(cè)試。
支持各種部署場(chǎng)景,既能部署為云端的在線推理服務(wù)和批量推理任務(wù),也能部署到端,邊等各種設(shè)備。
一鍵部署,可以直接推送部署到邊緣設(shè)備中,選擇智能邊緣節(jié)點(diǎn),推送模型。
ModelArts 基于華為自研 Ascend 310 高性能 AI 推理芯片的深度優(yōu)化,具有 PB 級(jí)別的單日推理數(shù)據(jù)處理能力,支持發(fā)布云上推理的 API 百萬(wàn)個(gè)以上,推理網(wǎng)絡(luò)時(shí)延毫秒。
隨著 AI 在技術(shù)發(fā)展中的不斷突破和使用,如視覺(jué)場(chǎng)景的很多 AI 場(chǎng)景中,面臨數(shù)據(jù)云上云下傳輸成本過(guò)高,端側(cè)芯片能力無(wú)法支撐多模型運(yùn)算,芯片響應(yīng)速度不足,場(chǎng)景要求越來(lái)越復(fù)雜的困難。為此 ModelArts 平臺(tái)推出針對(duì)端云協(xié)同的 AI 應(yīng)用開(kāi)發(fā)平臺(tái)能力,為個(gè)人開(kāi)發(fā)者、企業(yè)和設(shè)備生產(chǎn)廠商提供了一整套應(yīng)用能力庫(kù)(人臉、語(yǔ)音、視頻、文字等 Skill 庫(kù),有控制代碼和模型組成),可以從云端下發(fā)部署到端側(cè),使端側(cè)智能。
ModelArts 平臺(tái)端云協(xié)同關(guān)鍵技術(shù)點(diǎn)包括:
針對(duì)不同類(lèi)型的端側(cè)平臺(tái),支持模型拆分、任務(wù)拆分,從而讓端云協(xié)同起來(lái)。
利用模型管理能力,進(jìn)行版本管理、模型搜索、模型復(fù)用。
支持對(duì)第三方平臺(tái)的管理,針對(duì)模型安全進(jìn)行權(quán)限認(rèn)證,計(jì)費(fèi)管理。
ModelArts 端云結(jié)合方案,在圖片清晰度檢測(cè)、智慧小區(qū)人臉識(shí)別等實(shí)際場(chǎng)景進(jìn)行了應(yīng)用。如在交警場(chǎng)景就使用 ARM 架構(gòu)邊緣云進(jìn)行信控和流量檢測(cè),優(yōu)化了交通燈、路燈等市政設(shè)施的控制,如對(duì)燈光亮度調(diào)整達(dá)到了 40% 節(jié)能的水平。
05 AI市場(chǎng)
AI 開(kāi)發(fā)中數(shù)據(jù)、模型、API 無(wú)法在有效范圍共享,是 AI 開(kāi)發(fā)資源的極大浪費(fèi)。那么要如何便捷、高效、安全地實(shí)現(xiàn) AI 開(kāi)發(fā)資源復(fù)用技術(shù),滿足企業(yè)內(nèi)部和外部開(kāi)發(fā)者場(chǎng)景下對(duì)共享和隔離的需求?
AI 市場(chǎng)是在 ModelArts 的基礎(chǔ)上構(gòu)建的開(kāi)發(fā)者生態(tài)社區(qū),提供模型、API 的交易,數(shù)據(jù)、競(jìng)賽案例等內(nèi)容的共享功能,為高校科研機(jī)構(gòu)、AI 應(yīng)用開(kāi)發(fā)商、解決方案集成商、企業(yè)及個(gè)人開(kāi)發(fā)者等群體,提供安全、開(kāi)放的共享及交易環(huán)境,加速 AI 產(chǎn)品的開(kāi)發(fā)與落地,保障 AI 開(kāi)發(fā)生態(tài)鏈上各參與方高效地實(shí)現(xiàn)各自的商業(yè)價(jià)值
支持企業(yè)團(tuán)隊(duì)內(nèi)部數(shù)據(jù)、模型、API 的共享管理,提升團(tuán)隊(duì)協(xié)同開(kāi)發(fā)效率。同時(shí)也為廣大外部開(kāi)發(fā)者提供數(shù)據(jù)、模型、API 共享交易平臺(tái),實(shí)現(xiàn)開(kāi)發(fā)者的知識(shí)到價(jià)值變現(xiàn)。AI 市場(chǎng)支持百萬(wàn)數(shù)量級(jí)的數(shù)據(jù)、模型、API 的云端存儲(chǔ)規(guī)模,萬(wàn)級(jí)用戶高并發(fā)訪問(wèn)。
06 自動(dòng)學(xué)習(xí)
AI 要規(guī)模化走進(jìn)各行各業(yè),必須要降低 AI 模型開(kāi)發(fā)難度和門(mén)檻。當(dāng)前僅少數(shù)算法工程師和研究員掌握 AI 的開(kāi)發(fā)和調(diào)優(yōu)能力,并且大多數(shù)算法工程師僅掌握算法原型開(kāi)發(fā)能力,缺少相關(guān)的原型到真正產(chǎn)品化、工程化的能力。而對(duì)于大多數(shù)業(yè)務(wù)開(kāi)發(fā)者來(lái)說(shuō),更是不具備 AI 算法的開(kāi)發(fā)和參數(shù)調(diào)優(yōu)能力。這導(dǎo)致大多數(shù)企業(yè)都不具備 AI 開(kāi)發(fā)能力。
ModelArts 通過(guò)機(jī)器學(xué)習(xí)的方式幫助不具備算法開(kāi)發(fā)能力的業(yè)務(wù)開(kāi)發(fā)者實(shí)現(xiàn)算法的開(kāi)發(fā),基于遷移學(xué)習(xí)、自動(dòng)神經(jīng)網(wǎng)絡(luò)架構(gòu)搜索實(shí)現(xiàn)模型自動(dòng)生成,通過(guò)算法實(shí)現(xiàn)模型訓(xùn)練的參數(shù)自動(dòng)化選擇和模型自動(dòng)調(diào)優(yōu)的自動(dòng)學(xué)習(xí)功能,讓零 AI 基礎(chǔ)的業(yè)務(wù)開(kāi)發(fā)者可快速完成模型的訓(xùn)練和部署。依據(jù)開(kāi)發(fā)者提供的標(biāo)注數(shù)據(jù)及選擇的場(chǎng)景,無(wú)需任何代碼開(kāi)發(fā),自動(dòng)生成滿足用戶精度要求的模型。可支持圖片分類(lèi)、物體檢測(cè)、預(yù)測(cè)分析、聲音分類(lèi)場(chǎng)景。可根據(jù)最終部署環(huán)境和開(kāi)發(fā)者需求的推理速度,自動(dòng)調(diào)優(yōu)并生成滿足要求的模型。
ModelArts 的自動(dòng)學(xué)習(xí)不止為入門(mén)級(jí)開(kāi)發(fā)者使用設(shè)計(jì),它還提供了“自動(dòng)學(xué)習(xí)白盒化”的能力,開(kāi)放模型參數(shù),實(shí)現(xiàn)模板化開(kāi)發(fā)。在調(diào)研開(kāi)發(fā)者需求時(shí),很多資深的開(kāi)發(fā)者說(shuō),希望有一款工具,可以自動(dòng)生成模型,然后在這個(gè)基礎(chǔ)上修改,這很像普通軟件的模板化開(kāi)發(fā),在一個(gè)半成品的基礎(chǔ)上調(diào)優(yōu),重新訓(xùn)練模型,提高開(kāi)發(fā)效率。
自動(dòng)學(xué)習(xí)的關(guān)鍵技術(shù)主要是基于信息熵上限近似模型的樹(shù)搜索最優(yōu)特征變換和基于信息熵上限近似模型的貝葉斯優(yōu)化自動(dòng)調(diào)參。通過(guò)這些關(guān)鍵技術(shù),可以從企業(yè)關(guān)系型(結(jié)構(gòu)化)數(shù)據(jù)中,自動(dòng)學(xué)習(xí)數(shù)據(jù)特征和規(guī)律,智能尋優(yōu)特征 &ML 模型及參數(shù),準(zhǔn)確性達(dá)到甚至專(zhuān)家開(kāi)發(fā)者的調(diào)優(yōu)水平。自動(dòng)深度學(xué)習(xí)的關(guān)鍵技術(shù)主要是遷移學(xué)習(xí)(只通過(guò)少量數(shù)據(jù)生成高質(zhì)量的模型),多維度下的模型架構(gòu)自動(dòng)設(shè)計(jì)(神經(jīng)網(wǎng)絡(luò)搜索和自適應(yīng)模型調(diào)優(yōu)),和更快、更準(zhǔn)的訓(xùn)練參數(shù)自動(dòng)調(diào)優(yōu)自動(dòng)訓(xùn)練。
華為與世界雨林保護(hù)組織的合作項(xiàng)目里,采用了 ModelArts 自動(dòng)學(xué)習(xí)聲音分類(lèi)功能,實(shí)現(xiàn)對(duì)電鋸和卡車(chē)噪音的精準(zhǔn)識(shí)別,結(jié)果比很多博士手工調(diào)參精度還要高。
07 AI 開(kāi)發(fā)流程管理
AI 開(kāi)發(fā)過(guò)程中,如果開(kāi)發(fā)者手動(dòng)管理 AI 開(kāi)發(fā)數(shù)據(jù)集、模型、訓(xùn)練參數(shù),當(dāng)需要大量的調(diào)優(yōu)迭代時(shí),實(shí)驗(yàn)過(guò)程難以追蹤,結(jié)果難以復(fù)制。現(xiàn)有的代碼管理產(chǎn)品不適合管理 AI 資產(chǎn)如圖片、視頻類(lèi)的數(shù)據(jù)集,二進(jìn)制的模型,部署后的 Web Services 等。為了解決這些問(wèn)題,ModelArts 提供 AI 開(kāi)發(fā)全生命周期管理,從原始數(shù)據(jù)、標(biāo)注數(shù)據(jù)、訓(xùn)練作業(yè)、算法、模型、推理服務(wù)等,提供全流程可視化管理服務(wù)。
深度學(xué)習(xí)經(jīng)常需要大量的數(shù)據(jù)去做模型訓(xùn)練,一次訓(xùn)練會(huì)用到百萬(wàn)張,甚至上億張的圖片(如 OCR 場(chǎng)景)。整個(gè)模型訓(xùn)練過(guò)程是不斷的迭代調(diào)優(yōu)的過(guò)程,期間要經(jīng)常對(duì)數(shù)據(jù)集進(jìn)行修改、調(diào)整以訓(xùn)練出精度更高的模型,所以需要對(duì)這樣大體量的數(shù)據(jù)集進(jìn)行版本管理,使得試驗(yàn)過(guò)程可追蹤回溯。ModelArts 提供了面向深度學(xué)習(xí)大體量數(shù)據(jù)集的版本管理,如圖所示:
模型開(kāi)發(fā)過(guò)程中會(huì)需要大量的試驗(yàn)、迭代、調(diào)優(yōu)。每一次迭代都會(huì)產(chǎn)生大量的 Log 和結(jié)果數(shù)據(jù)。AI 開(kāi)發(fā)者需要工具對(duì)這些數(shù)據(jù)進(jìn)行系統(tǒng)的管理,ModelArts 對(duì)所有訓(xùn)練任務(wù)進(jìn)行管理,如下圖所示,并且通過(guò)可視化的訓(xùn)練任務(wù)結(jié)果比對(duì),大大提升了開(kāi)發(fā)效率。
AI 開(kāi)發(fā)過(guò)程中,需要大量的調(diào)優(yōu)迭代,經(jīng)常會(huì)出現(xiàn)訓(xùn)練完了,結(jié)果很滿意,但卻找不到原始數(shù)據(jù)來(lái)自于哪個(gè)版本。ModelArts 基于華為 EYWA 圖計(jì)算引擎,實(shí)現(xiàn)在 AI 開(kāi)發(fā)全生命周期中,從原始數(shù)據(jù)、標(biāo)注數(shù)據(jù)、訓(xùn)練作業(yè)、算法、模型、推理服務(wù)等,提供全流程可視化管理,如下圖所示,支持千萬(wàn)級(jí)模型、數(shù)據(jù)集以及服務(wù)等對(duì)象的管理,無(wú)需人工干預(yù),自動(dòng)生成溯源圖,選擇任一模型,就可以找到對(duì)應(yīng)的數(shù)據(jù)集、參數(shù)、模型部署在哪里。
AI 模型是AI開(kāi)發(fā)過(guò)程的核心產(chǎn)物,是企業(yè) AI 開(kāi)發(fā)者需要管理的重要資產(chǎn)。ModelArts 提供一系列的模型管理能力以滿足AI開(kāi)發(fā)者對(duì)于模型的工程管理需求和企業(yè)對(duì)于模型的審計(jì)需求。
模型版本管理:管理模型版本變化,進(jìn)行模型比對(duì)和評(píng)估。
模型溯源:通過(guò)模型溯源圖,直觀地回溯模型生成的完整流程,滿足企業(yè)模型審計(jì)的需求。
模型轉(zhuǎn)換:可以將不同框架訓(xùn)練出來(lái)的模型轉(zhuǎn)化為在Ascend芯片環(huán)境下可運(yùn)行的模型。也會(huì)通過(guò)支持ONNX標(biāo)準(zhǔn)實(shí)現(xiàn)常用 AI 框架模型間的無(wú)縫轉(zhuǎn)化。
模型精度追蹤:模型部署上線之后,可以追蹤模型在生產(chǎn)環(huán)境下的精度浮動(dòng)。當(dāng)模型的精度下降超過(guò)設(shè)定的閾值時(shí),可以實(shí)現(xiàn)自動(dòng)提醒功能,并且開(kāi)啟重訓(xùn)練過(guò)程。
ModelArts 集成了 Jupyter Notebook,可為 AI 開(kāi)發(fā)者提供在線的交互式開(kāi)發(fā)調(diào)試工具。開(kāi)發(fā)者通過(guò)創(chuàng)建開(kāi)發(fā)環(huán)境,可以自行編寫(xiě)和調(diào)測(cè)模型訓(xùn)練代碼,然后基于該代碼進(jìn)行模型的訓(xùn)練。開(kāi)發(fā)者還可以使用華為自研的分布式訓(xùn)練加速框架 MoXing 來(lái)編寫(xiě)訓(xùn)練腳本,讓代碼編寫(xiě)更加高效、代碼更加簡(jiǎn)潔。
MoXing 使用手冊(cè)請(qǐng)參見(jiàn):
https://github.com/huawei-clouds/modelarts-example/tree/master/moxing-apidoc
ModelArts Notebook 開(kāi)發(fā)環(huán)境非常適合作為人工智能教學(xué)的工具,當(dāng)前已有多個(gè)知名教育機(jī)構(gòu)基于ModelArts開(kāi)設(shè)人工智能專(zhuān)業(yè)課程。
ModelArts 下一步計(jì)劃
我們將圍繞自研 Ascend 910、310 芯片和 Atlas AI 服務(wù)器做深度垂直優(yōu)化,為廣大開(kāi)發(fā)者提供更高效、更優(yōu)性價(jià)比的一站式 AI 開(kāi)發(fā)平臺(tái),降低 AI 開(kāi)發(fā)過(guò)程中每一層的開(kāi)發(fā)門(mén)檻,把復(fù)雜留給華為云 ModelArts,把簡(jiǎn)單留給開(kāi)發(fā)者。同時(shí)也會(huì)在強(qiáng)化學(xué)習(xí)、小樣本訓(xùn)練、分布式二階優(yōu)化器、模型計(jì)算和通信算子的靜態(tài)調(diào)度、設(shè)備感知驅(qū)動(dòng)的多級(jí)流水線自適應(yīng)優(yōu)化、大規(guī)模芯片多級(jí)互聯(lián)等新技術(shù)領(lǐng)域上持續(xù)進(jìn)步。
EI 人工智能 AI
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。