清華大學陳文光:爲什麼需要人工智能算力基準測試程序?

6 月 21 日,由北京智源人工智能研究院主辦的 2020 北京智源大會正式開幕(直播入口: https://2020.baai.ac.cn ),會期四天。智源大會是北京創建全球人工智能學術和創新最優生態的標誌性學術活動,定位於“內行的 AI 盛會”,探索人工智能的下一個十年。InfoQ 將進行全程跟蹤報道,爲 AI 領域的從業人員帶來更多前沿觀點,以下內容根據清華大學智源學者陳文光的演講整理而來。

爲什麼需要一個人工智能算力基準測試程序?陳文光表示,公衆需要一個指標來回答:哪套系統的人工智能算力更強?整個領域的發展狀況如何?好的指標可以引領領域的健康發展。

傳統高性能計算機的測試結果與人工智能需要的性能不完全一致:高精度計算算力測試程序主要使用雙精度浮點數運算,人工智能訓練以單精度浮點數或16位浮點數爲主,推理以Int8爲主。

對人工智能算力來說,制定這樣一個指標和測試方法並不容易。陳文光在演講中表示,一是單個人工智能訓練任務很可能達不到全機規模,即使能達到,可能在訓練時間和準確率上沒有改進,因此使用全機規模是沒有意義的;二是如果要測試規模變化巨大的人工智能集羣計算機,測試程序必須是規模可變的,試想什麼樣的主流人工智能應用是規模可以大幅變化的;三是準確率,殘差是不是要少於某個標準,還是將準確度計入分數。對人工智能而言,是否可以符合一個較高的準確率,如果給定的準確率較低是不是很快就可以達到。

現有算力benchmark舉例

首先,我們來介紹NAS kernels,這是NASA(美國航空航天局)開發的,其從計算流體力學程序中抽取kernel(LU,FFT,CG,IS,BT,EP,MG,SP),使用GFLOPS作爲性能量度,並行版本NPB(NAS Parallel Benchmark),這種方式的算法是固定的,在測不同規模的機器時可以自由選擇。

接下來是Linpack,最大的好處是N是可變的,缺點是沒有I/O操作,只有稠密矩陣運算。沒有I/O操作對端到端的性能有很大影響,只有稠密矩陣運算導致無法很好支持稀疏矩陣,但這依舊是目前的主流基準。

在Linpack的基礎上,HPCC做了一些補充(如下圖),有的方法具備很好的時間局部性,有的具備很好的空間局部性。

SPEC CPU很大程度上主導了CPU核的設計,現在發佈一款新的CPU,一定要看其SPEC CPU的數,其使用最廣泛的單CPU性能測試Benchmark,每隔一段時間還會更改程序和問題規模。

此外還有TPC-C,這主要是數據庫領域的基準,是國際上評測在線事務處理的事實標準。

人工智能基準測試程序

目前,全球很多公司都在這方面有所嘗試,百度提出的DeepBench也是國際上比較認可的方式,hpl-ai則是一種混合精度的算法,先用單精度計算得到近似解,再用雙精度得到準確解,但和人工智能領域的關係不直接。現有這些方式最大的問題是都屬於固定規模,無法滿足不同規模機器上的測試;多個應用,思路與NASA類似;有多個分數,但公衆最容易理解的是一個分數。

那麼,預期的人工智能算力基準測試程序應該具備哪些特性呢?首先是一個分數,分數近似具有線性;其次是可變問題規模,可以適應單卡內存規模的變化,也可以適應多卡;然後,計算要有人工智能意義,比如神經網絡運算;最後,多機通信可以少,但不能沒有,不能是EP類型的。

設計思路——AutoML

AutoML是通過算法自動搜索合適的神經網絡模型結構,找到針對特定任務效果最好的解:所需的計算資源極高,基礎算法也包含訓練模型本身。

AutoML+NN現有兩個主要方面:超參數搜索、網絡結構搜索:超參數搜索易於實現,但搜索空間存在一定限制(-100);網絡結構搜索的搜索空間往往較大(-10000)。

AutoML具有足夠的並行度,常常需要同時訓練大量候選模型來對結構進行評估:搜索的結果雖然有一定的隨機性,但整體上能找到的解的優劣程度隨着搜索所消耗的計算量而逐漸改善。

結構搜索工作流程

如下圖所示,Master節點將模型歷史及其達到的精度發送至Slave節點;Slave節點根據模型歷史及其精度,搜索出一個新的模型,並進行訓練;Slave節點將根據某種策略(如連續10個Epoch的測試集精度沒有提升)停止訓練,並將此模型及其達到的精度發送至Master節點;Master節點接收並更新模型歷史及精度。

測試環境(廣州超算中心)

測試結果

隨着網絡越來越大 ,效率會越來越高,出現了超線性加速的情況,後續開銷越來越大,需要通過超參數搜索解決這個問題。

超參數搜索具有網絡結構穩定性和生成時間穩定性的特點。網絡結構穩定性:超參數的設定一般不影響網絡結構,從而使得在整個搜索過程中網絡結構保持相對穩定。

生成時間穩定性:生成新的超參數所需時間與已經評測的超參數個數(歷史無關),僅與搜索空間相關。

未來一段時間,陳文光表示主要工作將會集中在提高模型生成與搜索的效率,可支持千卡量級,包括並行化模型生成算法,優化模型生成算法(不需要看全部歷史,如遺傳算法),優化起點,使用更大規模數據集;結合參數搜索,並行性乘10,可支持萬卡量級;在多種和更大平臺上開展測試;流程管理,包括運行規則,輔助工具,報告與審查機制。

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