CMU 機器人研究所張昊(Hao Zhang)博士論文新鮮出爐,主要圍繞著機器學習并行化的自適應(yīng)、可組合與自動化問題展開。
隨著近年來,機器學習領(lǐng)域的創(chuàng)新不斷加速,SysML 的研究者已經(jīng)創(chuàng)建了在多個設(shè)備或計算節(jié)點上并行機器學習訓練的算法和系統(tǒng)。機器學習模型在結(jié)構(gòu)上變得越來越復(fù)雜,許多系統(tǒng)都試圖提供全面的性能。尤其是,機器學習擴展通常會低估從一個適當?shù)姆植疾呗杂成涞侥P退枰闹R與時間。此外,將并行訓練系統(tǒng)應(yīng)用于復(fù)雜模型更是增加了非常規(guī)的開發(fā)成本,且性能通常低于預(yù)期。 近日,CMU 機器人研究所博士張昊公布了自己的博士學位論文《機器學習并行化的自適應(yīng)、可組合與自動化》,旨在找出并解決并行 ML 技術(shù)和系統(tǒng)實現(xiàn)在可用性和性能方面的研究挑戰(zhàn)。 具體而言,該論文從可編程性、并行化表示、性能優(yōu)化、系統(tǒng)架構(gòu)和自動并行化技術(shù)等幾方面對分布式并行 ML 展開了研究,并認為分布式并行機器學習可以同時實現(xiàn)簡潔性和高效性。此外,該論文表明,并行 ML 的性能可以通過生成自適應(yīng) ML 模型結(jié)構(gòu)和集群資源范式的策略實現(xiàn)大幅度提升,同時通過將「如何并行化」這一核心問題形式化為端到端優(yōu)化目標以及構(gòu)建可組合分布式 ML 系統(tǒng)來自動優(yōu)化這類自適應(yīng)、自定義策略,進而可以解決可用性挑戰(zhàn)。
論文鏈接:https://www.cs.cmu.edu/~hzhang2/files/hao_zhang_doctoral_dissertation.pdf 機器之心對該論文的核心內(nèi)容進行了簡要介紹,感興趣的讀者可以閱讀原論文。 論文內(nèi)容介紹 這篇論文主要由三部分組成,如下圖所示,第 1 部分(第三章 - 第五章):在單個機器學習并行化層面,使用自適應(yīng)并行化理解和優(yōu)化并行機器學習性能;第 2 部分(第六章 - 第七章):為機器學習并行開發(fā)統(tǒng)一的表示和可組合系統(tǒng);第 3 部分(第八章):機器學習并行化的自動化。
論文結(jié)構(gòu)概覽 論文第一部分提出了一個簡單的設(shè)計原則自適應(yīng)并行(adaptive parallelism),根據(jù)模型構(gòu)建要素(比如層)的特定 ML 屬性,將合適的并行化技術(shù)應(yīng)用于模型組成要素中。作者以 BERT 為例,總結(jié)出了實現(xiàn)這種自適應(yīng)的基本原理和三個核心概念,分別是子模型策略組合、多個并行化方面的系統(tǒng)優(yōu)化和資源感知。此外,作者推導出了一系列優(yōu)化和實現(xiàn)方法,從不同層面去提升 ML 并行化。研究結(jié)果表明其顯著提高了 ML 訓練在集群上的效率和可擴展性。 第二部分對這種方法進行了概述,并且面向機器學習并行化任務(wù)的兩個常見范式:單節(jié)點動態(tài)批處理和分布式機器學習并行,作者將機器學習的并行化表述為端到端的優(yōu)化問題,并尋找其自動化的解決方法。作者提出了原則表征來表示兩類機器學習并行,以及可組合的系統(tǒng)架構(gòu) Cavs 與 AutoDist。它們能夠快速組合不可見模型的并行化策略,提升并行化表現(xiàn),并簡化并行機器學習程序。
Facebook AI 提出的 DETR 的架構(gòu)圖 在此基礎(chǔ)上,論文第三部分提出一個自動并行化框架 AutoSync,用于自動優(yōu)化數(shù)據(jù)并行分布訓練中的同步策略。它實現(xiàn)了「開箱即用」的高性能,可以通過提出的表征進行空間導航,并自動識別同步策略,這些策略比現(xiàn)有的手工優(yōu)化系統(tǒng)的速度提高了 1.2-1.6 倍,降低了分布式 ML 的技術(shù)障礙,并幫助更大范圍的用戶訪問它。總結(jié)來說,這篇論文提出的相關(guān)技術(shù)和系統(tǒng)驗證了分布式環(huán)境下面向大規(guī)模機器學習訓練的端到端編譯系統(tǒng)的概念與原型實現(xiàn)。

AutoSync 策略的自動優(yōu)化流程算法

AutoSync 中的策略空間包含了現(xiàn)有系統(tǒng)中的很多高級策略 語言模型的分布式預(yù)訓練示例 預(yù)訓練語言表征已成為 NLP 系統(tǒng)中最普遍、最關(guān)鍵的部分。使用與任務(wù)無關(guān)的語言模型框架,可以對從 web 抓取的未標記文本進行無監(jiān)督的訓練,只需預(yù)測下一個單詞或句子。預(yù)訓練表征可以靈活地應(yīng)用于下游任務(wù),針對特定任務(wù)的損失和數(shù)據(jù)集進行微調(diào),或是通過少量上下文學習。 近年來,人們在開發(fā)更強大的任務(wù)無關(guān) LM 架構(gòu)方面取得了巨大進展,從單層詞向量表征到遞歸神經(jīng)網(wǎng)絡(luò)的多層表征和上下文狀態(tài),以及最新的基于遞歸 transformer 的架構(gòu)。 下圖展示了一個著名的例子——雙深度 Transformer(BERT)——屬于第三類。不管網(wǎng)絡(luò)架構(gòu)如何,語言模型通常包含許多參數(shù),而這些參數(shù)是在大規(guī)模文本語料庫上訓練出來的,這是因為它們的建模能力隨其大小以及文本掃描量成正比。
假設(shè)我們對訓練 BERT 感興趣,在基于 AWS 的 GPU 集群上使用 TensorFlow 等框架實現(xiàn)。我們可以使用最先進的開源訓練系統(tǒng)——Horovod,開始數(shù)據(jù)并行訓練。 應(yīng)用 Horovod 轉(zhuǎn)換單機 BERT 訓練代碼,涉及將原始的框架內(nèi)置優(yōu)化器與 Horovod 修補的優(yōu)化器包裝在一起。然后 Horovod 會在集群節(jié)點上使用 collective allreduce 或 allgather 來平均和應(yīng)用梯度。
這些 TensorFlow+Horovod 代碼片段展示了 Horovod 如何給優(yōu)化器打補丁,以及如何為分布式訓練進行非常小的代碼改變。 雖然可能會在目標集群上部署訓練,但獲得的擴展不太可能隨著添加更多資源而成比例增長(理想情況下,線性擴展與加速器的數(shù)量成比例增長):所有的語言模型都有嵌入層,這些層擁有很多模型參數(shù),但在每個設(shè)備上的每次訓練迭代中訪問很少,減少或聚集其梯度都會導致不必要的網(wǎng)絡(luò)運作;BERT 中的 transformer 是矩陣參數(shù)化、計算密集型的,與 Horovod 中的常規(guī)做法一樣,將梯度分組在一個縮減環(huán)(reduction ring)中,很容易使以太網(wǎng)帶寬或異構(gòu)集群 (如 AWS) 的設(shè)備 Flops 飽和。 在這兩種情況下,設(shè)置都容易出現(xiàn)通信或計算混亂的情況,即訓練時間的縮短無法令人滿意,花費在訓練上的計算資源成本在經(jīng)濟上也不能接受。這表明,并行化的常規(guī)目標并沒有實現(xiàn)。 所以,本文提出的這種自適應(yīng)并行策略,能夠為并行化性能進行適當?shù)膬?yōu)化。 作者介紹 張昊在今年 9 月 2 日完成了博士學位的論文答辯,導師為 CMU 教授、Petuum 創(chuàng)始人邢波(Eric Xing)。獲得 CMU 機器人研究所的博士學位后,他將以博士后身份進入 UC 伯克利的 RISE 實驗室,與計算機科學系教授 Ion Stoica 共同工作。
他的研究興趣包括可擴展的機器學習、深度學習以及計算機視覺和自然語言處理領(lǐng)域的大規(guī)模機器學習應(yīng)用。他還協(xié)同設(shè)計了一系列模型、算法和系統(tǒng),在更大規(guī)模數(shù)據(jù)、問題、應(yīng)用中進行機器學習擴展,以簡化復(fù)雜機器學習模型和算法的原型開發(fā),使機器學習程序分布自動化。
責任編輯:lq
-
計算機視覺
+關(guān)注
關(guān)注
9文章
1713瀏覽量
47385 -
機器學習
+關(guān)注
關(guān)注
66文章
8532瀏覽量
135992 -
自然語言處理
+關(guān)注
關(guān)注
1文章
629瀏覽量
14509
原文標題:229頁,CMU博士張昊畢業(yè)論文公布,探索機器學習并行化的奧秘
文章出處:【微信號:TheBigData1024,微信公眾號:人工智能與大數(shù)據(jù)技術(shù)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
NVIDIA Isaac Lab推動機器人技術(shù)突破
工業(yè)自動化的意義在哪
現(xiàn)代農(nóng)業(yè)自動化的技術(shù)演進與應(yīng)用
富唯智能復(fù)合機器人力控技術(shù):重新定義精準自動化
貿(mào)澤推出全新自動化資源中心
耐達訊自動化EtherCAT轉(zhuǎn)RS232:示波器連接的“開掛秘籍”
自動化計算機的功能與用途
智能舵機:AI融合下的自動化新紀元

機器學習并行化的自適應(yīng)、可組合與自動化問題
評論