從硬體到框架,30+巨頭參與的AI基準競爭結果公布(第一回合)
MLPerf 是一項機器學習公開基準,展示了每個參與機構在特定任務上利用自有資源所能達到的最佳性能。該基準於今年 5 月啟動,已經得到了來自 30 多個公司的研究者和科學家的支持,包括英特爾、英偉達、百度和谷歌等。此外,MLPerf 還獲得了來自 7 所高校的研究者的支持。今天,該項目背後的科學家公布了第一個回合的競賽結果,同時 Facebook 和微軟也宣布支持 MLPerf。
MLPerf 結果展示地址:?https://mlperf.org/results/?from=timeline&isappinstalled=0?
在歷史上,基於清晰指標的技術競爭帶來了快速的進步,例如 SPEC 基準推動了 CPU 在 15 年內以每年 1.6 倍的速度提升性能。MLPerf 希望在機器學習社區做同樣的事情,以推動 ML 系統性能的快速提升。由於大規模機器學習實驗仍然需要耗費數天或數星期的時間,提升 ML 系統性能對於釋放機器學習潛力而言非常關鍵。
今天,支持 MLPerf 的研究者和工程師們公布了他們第一個回合的競賽結果。他們測量了多種機器學習任務在主流機器學習硬體平台上的訓練時間,包括谷歌的 TPU、英特爾的 CPU 和英偉達的 GPU。其結果還反映了機器學習軟體框架(如 TensorFlow、PyTorch 和 MXNet)的訓練速度對比。MLPerf 結果旨在幫助決策者評估現有產品並關注未來發展。
基準測試與開源
1.Nvidia
英偉達在其提交的六個 MLPerf 基準測試結果中取得了最佳性能。它們涵蓋了各種工作負載和基礎架構規模:從一個節點上的 16 個 GPU 到 80 個節點上的多達 640 個 GPU。
這六個類別包括圖像分類、目標實例分割、目標檢測、非循環翻譯、循環翻譯和推薦系統。英偉達在其中表現特別出色的一個基準是語言翻譯,僅需 6.2 分鐘即可完成 Transformer 神經網路的訓練。
測試平台:
- 圖像分類和翻譯(非循環)——DGX-1V 集群。
- 目標檢測(重量級)、檢測(輕量級)和翻譯(循環)——DGX-2H 集群。
- 每個 DGX-1V 包含:雙插槽 Xeon E5- 2698 V4、512GB 系統 RAM、8 x 16 GB Tesla V100 SXM-2 GPU。
- 每個 DGX-2H 包含:雙插槽 Xeon Platinum 8174、1.5TB 系統 RAM、16 x 32 GB Tesla V100 SXM-3 GPU,通過 NVSwitch 連接。
2.Intel
英特爾提交了 Intel Xeon Scalable 處理器的 MLPerf 結果,並表示「我們致力於深度學習的用戶端和計算機系統開發」。結果顯示,Intel Xeon Scalable 處理器已超過性能閾值:對於希望在其基礎架構上運行多個工作負載而無需投資專用硬體的數據科學家而言,它們可以成為一種有效的選擇。
英特爾表示,CPU 如今已經能夠進行深度學習訓練和推理。MLPerf Intel Xeon Scalable 處理器結果與 MLPerf 參考 GPU 相比,在各種 MLPerf 深度學習訓練工作負載上的效果相當。例如,英特爾提交的單系統雙插槽 Intel Xeon Scalable 處理器結果在 MLPerf 圖像分類基準測試(Resnet-50)上得分為 0.85;在推薦系統基準(Neural Collaborative Filtering NCF)上的得分為 1.6;在強化學習基準(mini GO)的得分為 6.3。
在所有這些分數中,1.0 被定義為參考 GPU 上參考實現的分數。對於前面的所有結果,英特爾都使用了 FP32,這是當今市場上常用的數值精度。根據這些 MLPerf 結果,英特爾表示遊戲測試機器人可以輕鬆地在 Intel Xeon Scalable 處理器上進行訓練。
3.Facebook
Facebook 未參與這次的 MLPerf,但已經聲明將提供針對邊緣推理的兩個 ML 模型在開源數據集上訓練的基準參考實現。對於圖像分類,Facebook 將提供當前最佳的 ShuffleNet 模型的實現。對於姿態估計,Facebook 將提供由 Facebook 的移動視覺研究人員開發的 Mask R-CNN2Go 模型的實現。
Facebook 還將開源 Mask R-CNN2Go,並稱其為「針對嵌入式和移動設備優化的領先計算機視覺模型」。Mask R-CNN2Go 構成了各種設備 ML 應用的基礎:目標檢測、分類、人物分割和身體姿態估計,實現準確、實時的推理。
為什麼基準實現這麼重要
MLPerf 這樣的基準實現對於整個工業界都是非常重要的:
- 百度王海峰說:「我們很高興 MLPerf 從一個概念發展成由各公司和學術機構支持的社區,今天發布的結果將為行業改進和 AI 的發展開闢新的先例。」
- Facebook Bill Jia 表示:「如 MLPerf 和 ONNX 這樣的開放標準是推動整個行業機器學習創新和協作的關鍵,我們很期待參與 MLPerf,並標準化基準測試。」
- 微軟 Eric Boyd 說:「開放的生態系統能使 AI 開發者更快地實現創新,除了 ONNX 外,微軟很高興參與 MLPerf 以支持開放和標準的性能基準測試。」
近日發布的 MLPerf 訓練基準套件包含七部分,即圖像分類、目標檢測、翻譯、推薦、語音識別、情感分析和強化學習。度量的方法即訓練一個模型以達到目標準確率所需要的時間。MLPerf 的所需時間同樣會根據模型在單塊 NVIDIA Pascal P100 GPU 的性能歸一化,這些作為參考的 P100 GPU 實現沒有優化超參數。
MLPerf 的結果根據專區和給定的產品或平台進行分類,目前有兩種專區,即封閉專區(Closed Division)和開放專區(Open Division)。其中封閉專區會指定使用的模型,並限制批量大小或學習率等超參數的值,它對於對比硬體和軟體系統非常公平。而開放模型專區會只會限制使用相同的數據解決相同的問題,其它模型或平台都不會限制。
提交到封閉專區的基準測試必須使用相同模型和優化器,提交到開放專區的模型可以使用任意模型。在每一個專區內,提交的測試結果又可以分為雲端、企業預置型、預覽型和研究型。研究型系統需要包含實驗性硬體或軟體,或者還沒大規模開放。
度量標準是訓練時間
每個 MLPerf 訓練基準測試的度量標準是:在特定數據集上訓練一個模型使其達到特定性能的總體時間。眾所周知,機器學習任務的訓練時間有很大差異,因此,MLPerf 的最終訓練結果是由指定次數的基準測試時間平均得出的,其中會去掉最低和最高的數字。
所有結果都會被轉換為加速比(Speedups),因為不同的基準測試需要不同的時間進行訓練。加速比是和模型在未優化條件下應用在一塊 Pascal P100 上的訓練時間比值。因此,MLPerf 的結果若是數字 10,則表示被測試系統的訓練速度是在一塊 Pascal P100 上訓練同一個機器學習模型速度的 10 倍,訓練時間是其 1/10。
當然,即使是多個結果平均的情況也無法消除所有方差。MLPerf 圖像處理基準測試結果大約有+/- 2.5% 的浮動範圍,而 MLPerf 基準測試則為+/-5%。
完整測試結果
MLperf 的結果表格首先按照 Division 分類,然後按照 Category 分類。結果表格中的每一行都是由單個提交者使用相同軟體堆棧和硬體平台生成的一組結果。每行包含以下信息:
- Submitter(提交者):提交結果的組織。
- Hardware(硬體):使用的 ML 硬體類型,例如加速器或高性能 CPU。
- Chip Count and Type(晶元數量和類型):使用的 ML 硬體晶元的數量,以及它們是加速器(a)還是 CPU(c)。
- Software(軟體):使用的 ML 框架和主要 ML 硬體庫。
- Benchmark Results(基準測試結果):默認情況下,基準測試結果表示為相對於 Pascal P100 的加速。
- Cloud Scale(雲規模,僅適用於可用雲系統):雲規模源自幾家主要雲提供商的按需定價,並提供相對系統規模/成本的粗略指標。參考單個 Pascal P100 系統的雲規模為 1。雲規模為 4 的系統大約需要四倍的成本。
- Power(功率,僅適用於非可用雲系統):可用內部部署系統的信息。由於標準化功率測量的複雜性,此版本 MLPerf 只允許自願報告任意非官方功率信息。
- Details(詳細信息):鏈接到提交的元數據。
以下展示了封閉專區完整的基準測試結果,開放專區目前還沒有基準測試的提交結果。每一個專區又可以分為加速比度量和時間度量,它們之間是可以轉換的。
如下圖所示,在 Closed Division Speedups 表格中的部分結果。參考基準為單個 Pascal P100,雲規模為 1,在各種基準測試上的分數都為 1(參考值)。谷歌使用的硬體為 4 個 TPUv2.8,雲規模為 2.6,在圖像分類任務的 ImageNet 數據集上訓練 ResNet-50 v1.5 的相對訓練加速比為 29.3。切換到後一張 Closed Division Times 的表可以看到對應的具體訓練時間。
我們可以看到,TPUv3.8 的效率非常高,單個晶元數量基本上是加速比最高的(24.1),且雲價格還和單塊 Pascal P100 差不多。在七項任務中,強化學習的基準測試是最少的,這也可能是它比較難標準化,且硬體的加速效果也不明顯。
此外,土豪英偉達展示了大規模 GPU 並行的效果,它們使用 80 個 DGX-1(260 塊 V100)在 ImageNet 數據集上實現了 1424.4 的加速比。Intel Xeon Scalable(2S SKX8180)實現了近似 P100 的效果,這也是 CPU 在訓練上的應用。
除了加速比,下圖展示了使用各個框架和硬體平台的實際訓練時間,其單位為分鐘。
※DeepMind推出深度學習與強化學習進階課程
※Waymo首次公開自動駕駛技術:讓AI學會「危機想像力」
TAG:機器之心 |