圖片來源: 

AWS

在第二周的Re: Invent大會上,AWS宣布機器學習開發及部署平臺SageMaker運用新技術提升平行運算速度,可加速以EC2執行個體(instance)對大型資料集訓練模型。

隨著機器學習的資料集和模型愈來愈大、愈來複雜,也讓機器學習的訓練專案花的時間愈來愈長,即使以Amazon EC2 p3或p4這類GPU執行個體服務,用公開資料集COCO(Common Objects in Context)來訓練進階物件偵測模型,像是Mask RCNN和Faster RCNN也要花上超過6小時。訓練自然語言處理模型BERT更得耗時超過100小時。而像一間全球汽車大廠甚至得在EC2 GPU叢集上,花好幾天來進行更大型的訓練專案。

為解決這個問題,Amazon SageMaker現在支援一種資料平行運算函式庫,名為SageMaker Data Parallelism(SDP)以縮短分散式訓練的時間,並降低成本。目前支援TensorFlow和PyTorch兩種框架。

簡單而言,資料平行運算,將訓練資料集切分成較小的批次,平均分散到所有GPU上處理,每個GPU只訓練一小部份資料集,再透過網路連線來協同所有GPU將訓練成果集結起來。但是過去的演算法在資料集愈大時就會產生網路頻頸。SageMaker Data Parallelism實作了改良的分散式運算AllReduce演算法,並最佳化網路通訊,也完全利用EC2 p3及p4 GPU執行個體服務的速度。

在re:Invent 2020大會上,AWS機器學習主管Swami Sivasubramanian示範以最新服務來訓練T5-3B及Mask-RCNN的效果。T5-3B為一高精確性的自然語言處理模型,有30億個參數,AWS宣稱以256個P4執行個體,使訓練時間由好幾星期縮短為6天。至於Mask-RCNN,AWS去年在PyTorch和TensorFlow上各花了26及27分鐘來訓練,而今年則只花了6:45及6:12分鐘。

SageMaker Data Parallelism現在已經在各個AWS SageMaker區域上線,現有客戶無需付費即可啟用。


熱門新聞

Advertisement