從入門到沉迷,AI小白如何逆襲年薪“百萬”AI攻城獅

現如今AI技術、概念火爆、落地應用更是繁多,但開發呢?是否困難?到底有多痛?

據瞭解,大部分AI開發者的工作時間並不長,並且十有八九可能不是“科班出身”。從編寫的教材、錄製的課程中就可以看出,所有的教學都不可避免地帶有很強的的學術性,即便有意避免研究導向,仍然離產業界的需求相去甚遠。

並且隨着新一波人工智能的熱潮,人們發現手裏的數據多了,電腦運算的更快了,但實際上,這些AI開發者使用的工具並不順手。

爲幫助開發者更深入地瞭解AI開發,快速上手AI開發必備技能,12月20日,InfoQ聯合華爲雲舉辦了一場以「基於ModelArts平臺的AI 開發實戰」爲主題的現場挑戰Workshop!現場由來自華爲雲深度學習服務團隊負責人洪斯寶爲開發者講解了ModelArts的 相關技術與應用,幫助開發者學習如何從0到1打造一款AI應用模型。

ModelArts——更快的普惠AI開發平臺

ModelArts是面向AI開發者的一站式開發平臺,提供海量數據預處理及半自動化標註、大規模分佈式訓練、自動化模型生成,以及端-邊-雲模型按需部署能力,幫助用戶快速創建和部署模型,管理全週期AI工作流。

同時,ModelArts 能夠在 AI 開發全生命週期中,從原始數據、標註數據、訓練作業、算法、模型、推理服務等,提供全流程可視化管理。支持千萬級模型、數據集以及服務等對象的管理,無需人工干預,自動生成溯源圖,選擇任一模型就可以找到對應的數據集、參數、模型部署在哪裏。其中最實用的訓練斷點接續功能、訓練結果比對功能,在華爲內部開發者中也頗受歡迎。

簡單來說,ModelArts 的特點是“四快”:

數據管理快——讓數據準備效率百倍提升

想象一下,如果你的老闆給了你10萬張無標籤的圖片,並要求你爲這些數據打上標籤。你該怎麼辦呢?

許多公司都在數據的大海里遨遊,不論是交易數據、物聯網傳感器產生的海量數據、安全日誌,還是圖像、語音數據等等,這些都是未標註的數據。

正如洪斯寶所說,“當前做AI開發,最讓開發者頭疼的就是數據的採集和數據的處理。曾有開發者吐槽,光是數據準備就要佔掉整體開發時間的70%。”那麼,爲什麼數據的處理這麼難?效率爲什麼這麼低呢?

人工智能界有一個說法:“有多少人工就有多少智能。”因爲目前實現人工智能的主要方法是機器學習(目前火熱的深度學習也是機器學習的一部分),而機器學習中目前大部分應用都是有監督的學習,即需要大量的標註樣本去訓練人工智能算法模型。

例如圖像識別任務中,必須有大量已經標註好的圖片,比如一張貓的圖片,狗的圖片等,你必須明確的告訴AI算法,這些圖片裏面是什麼東西,它再從中去學習出相應的“知識”。

所以,AI並不像傳統想象的那樣,丟一堆數據給AI算法,AI算法就能夠從中學習到各種有用的知識。而是背後有大量的人工在標註數據。

而ModelArts在數據管理方面,會將數據進行預處理,用AI的數據去標註數據,即自動化標註和半自動化標註。ModelArts可對數據採樣和篩選,預標註,縮減需要標記的數據量,降低工作量。目前, ModelArts 已經在自動駕駛領域有非常多的應用,包括人車模型、信號燈模型等等,這些模型在自動駕駛的場景裏面,可以快速地提升數據處理的效率,實時地處理數據。在未來,ModelArts 也將面向通用計算機的其他領域。

訓練快——模型訓練耗時減低一半

在模型訓練部分,ModelArts通過硬件、軟件和算法協同優化來實現訓練加速。尤其在深度學習模型訓練方面,華爲將分佈式加速層抽象出來,形成一套通用框架——MoXing(“模型”的拼音,意味着一切優化都圍繞模型展開)。


基於 MoXing 和 ModelArts 的訓練速度提升

採用與fast.ai一樣的硬件、模型和訓練數據,ModelArts可將訓練時長可縮短到10分鐘,創造了新的紀錄,爲用戶節省44%的時間。

MoXing是華爲雲ModelArts團隊自研的分佈式訓練加速框架,它構建於開源的深度學習引擎TensorFlow、MXNet、PyTorch、Keras之上,使得這些計算引擎分佈式性能更高,同時易用性更好。


華爲雲MoXing架構圖

MoXing內置了多種模型參數切分和聚合策略、分佈式SGD優化算法、級聯式混合並行技術、超參數自動調優算法,並且在分佈式訓練數據切分策略、數據讀取和預處理、分佈式通信等多個方面做了優化,結合華爲雲Atlas高性能服務器,實現了硬件、軟件和算法協同優化的分佈式深度學習加速。

有了MoXing後,上層開發者可以聚焦業務模型,無需關注下層分佈式相關的API,只用根據實際業務定義輸入數據、模型以及相應的優化器即可,訓練腳本與運行環境(單機或者分佈式)無關,上層業務代碼和分佈式訓練引擎可以做到完全解耦。

另外,衡量分佈式深度學習框架加速性能時,主要看吞吐量和收斂時間。在與吞吐量和收斂時間相關的幾個關鍵指標上,華爲雲 ModelArts 都做了精心處理:

  • 在數據讀取和預處理方面,MoXing通過利用多級併發輸入流水線使得數據IO不會成爲瓶頸;
  • 在模型計算方面,MoXing對上層模型提供半精度和單精度組成的混合精度計算,通過自適應的尺度縮放減小由於精度計算帶來的損失;
  • 在超參調優方面,採用動態超參策略(如momentum、batch size等)使得模型收斂所需epoch個數降到最低;
  • 在底層優化方面,MoXing與底層華爲自研服務器和通信計算庫相結合,使得分佈式加速進一步提升。

那麼,在MoXing一系列的優化之後,實際效果如何?以國際權威成績來參考:

在斯坦福大學發佈DAWNBenchmark 最新成績中,在圖像識別(ResNet50-on-ImageNet,93%以上精度)的總訓練時間上,華爲雲ModelArts排名第一,僅需10分28秒,比第二名提升近40%。

在這個匯聚谷歌、亞馬遜AWS、fast.ai等高水平隊伍的國際權威深度學習模型基準平臺上,華爲雲ModelArts第一次參加國際排名,便實現了低成本、快速又極致的AI開發體驗,其海量數據預處理及半自動化標註、大規模分佈式訓練、自動化模型生成以及端-邊-雲模型按需部署能力,更是體現了當前中國業界深度學習平臺技術的領先性。

上線快——一鍵部署到雲、端、邊,支持各種上線場景

現如今,縱觀整個AI產業,不僅僅是雲,還會有邊和端都需要部署的場景。然而,在 AI 規模化落地的場景下,模型部署會非常複雜,需要寫代碼集成到應用系統,維護、更新。例如在智慧交通領域,更新後的模型,需要一次性同時部署到各種不同規格、不同廠商的攝像頭上,這是一項非常耗時、費力的巨大工程。

對於此類場景,ModelArts可以一鍵推送模型到所有邊緣、端的設備上,雲上的部署還支持在線和批量推理,滿足大併發和分佈式等多種場景需求。

開發者可以在ModelArts上獲得一些高併發、自動彈性伸縮的特性。能夠根據用戶制定的策略,自動調整雲服務器的計算資源,跟隨用戶的業務需求變化。在業務需求下降時自動減少雲服務器,節約資源和成本;在業務需求高峯時自動增加雲服務器,保證業務平穩健康運行。

上手快——自動學習,零AI基礎構建模型

ModelArts 具備自動學習功能,支持模型的自動設計與自動調參等,能夠幫助開發者提升開發效率、快速上手。

爲什麼需要自動學習?

AI開發有兩大類,第一類爲AI認知服務,比如圖像識別和OCR等,這一類門檻很低,但靈活性差,只支持特定類型。當不滿足需求時,只能定製一個模型,週期非常長費用也比較高。第二類就是找AI的算法工程師、算法專家,去做自己的模型;還有一類就是那些直接用AI的框架自己寫代碼以及自己訓練數據,這一類的門檻較高,靈活度也很高。而自動學習就是希望能夠打破這兩者,既有一定的定製化的能力,又能夠降低AI定製化模型的門檻,不需要寫代碼,用戶可以定製化自己的模型的特點。

在自動深度學習裏面,關鍵的技術是能夠做到多維度下的模型的架構自動設計,包含模型的元學習,涉及一些訓練指標,還有推動網絡涉及的推理速度和監控等。另外還包括一些元學習的訓練參數的自動配置、模型訓練的參數配置及搜索等。

另外,由於深度學習向計算機視覺輸入原始數據,整個特徵工程是在神經網絡裏面做的,而機器學習需要很多算法工程師去識別哪些特徵是對業務是起正向作用的,所以自動機器學習的關鍵技術,就是高效自動特徵工程和自動調參。

除此之外,據洪斯寶介紹,華爲雲ModelArts還有一個特色,就是面向應用開發者。對於有經驗的開發者,可以在 ModelArts 上自行編寫並導入算法代碼,核心組件 MoXing SDK 支持豐富的模型庫、優化算法和各類工具庫;支持自動超參數調優;包含訓練 - 驗證 - 預測 - 模型導出的整套框架;開發者只需要編寫一套代碼就能自動實現單機及分佈式化。

對於編程苦手卻想快速生成模型的 AI 初學者,ModelArts 也預置了能夠覆蓋大部分常用應用場景的算法模型(如 RestNet_50、Faster_RCNN、SegNet_VGG_16 等,未來還將上線更多算法模型),所有預置模型的基於開源數據集訓練,模型精度領先。只需配置數據路徑 / 日誌輸出路徑和 Hyper Parameter 自動選擇設置就可以一鍵啓動訓練。

ModelArts應用實例:金融票據OCR識別

金融票據,包括銀行承兌票據和商業承兌票據,目前銀行承兌票據佔了90%以上的票據市場份額,金融票據OCR識別工作重點在於銀行票據的識別。

對於業界普通OCR軟件,在金融票據領域識別準確率不高,對於現有一些針對金融票據做過優化的OCR,識別準確率也算達到90%。由於金融票據金額不低,對於OCR識別要求很高,而金融票據難點在於票據格式多樣且差別細微等。

另外,票據模型開發訓練難點包括數據標註、模型訓練、調參和部署上都有較多難點,對於AI開發水平要求很高,需要非常資深的AI專家進行繁瑣和長時間對於票據AI進行不斷訓練。

通過ModelArts助力金融票據OCR識別的實戰。多位ATN社區使用者使用後認爲:ModelArts適合AI的初學者,通過數據集的分類,可自動學習,無需調參等操作;適用於遷移學習;線上部署便利,逐步集成更多的數據標註工具,擴大應用範圍。

後續,華爲雲ModelArts將進一步整合軟硬一體化的優勢,提供從芯片(Ascend)、服務器(Atlas Server)、計算通信庫(CANN)到深度學習引擎(MindSpore)和分佈式優化框架(MoXing)全棧優化的深度學習訓練平臺。

華爲雲ModelArts會逐步集成更多的數據標註工具,擴大應用範圍,將繼續服務於智慧城市、智能製造、自動駕駛及其它新興業務場景,在公有云上爲用戶提供更普惠的AI服務。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章