GPU 如何為機器學習帶來革命性的變化

作者 Stephen Jones

機器學習是當代最重要的電腦運算發展項目之一。

先進的機器學習技術使得人工智慧出現爆炸性的發展,創造出新一波智慧應用和服務項目。

即時語音翻譯、自動機器人、通過臉孔分析偵測人類情緒,一眼望過去,這些項目全都可以做得到。

但要做到以上事物,得花費不少運算效能來訓練這些嶄新應用方式背後精密的深度神經網路,這可是一項大工程,就算速度最快的超級電腦也得花費數天到數週的時間進行訓練。

毫不意外地,後來每位頂尖機器學習研究人員和開發人員採用 NVIDIA Tesla 加速運算平台和 Deep Learning 軟體開發套件(這是加快深度神經網路運算的工具和元件庫組合)。

針對訓練神經網路,利用 GPU 加速器要較使用 CPU 的速度快上10到20倍。原本需耗上數天或數週的時間,現在減少到只要幾小時就能完成。研究人員和資料科學家便能建立更龐大、更精密的神經網路,創造出無比聰明的下一代應用項目。

業界領先機構將 GPU 用於機器學習

Facebook 是最新宣布打算使用 GPU 的企業。今日稍早Facebook 披露「Big Sur」計劃,這是他們下一代專門用於訓練深度神經網路的系統。

NVIDIA Tesla M40
NVIDIA Tesla M40:設計用於訓練深度神經網路。

Big Sur 採用我們全新的 Tesla M40 GPU 加速器,這是用於在企業資料中心裡訓練深度神經網路的產品。在 GPU 的加持下,Big Sur 的速度較 Facebook 現有系統提高2倍,可訓練兩倍數量的神經網路,讓應用程式更具智慧也更精準。

Facebook 的合作夥伴打算透過開放運算計劃(Open Compute Project),將 Big Sur 的規格源碼開放給社群,讓其他人能將 GPU 用於各種機器學習活動上。

其它機構亦陸續將 GPU 用於機器學習上。

上個月 IBM 宣布旗下的 Watson 認知運算平台開始支援 NVIDIA Tesla K80 GPU 加速器

GPU 與 Watson 的 POWER 架構兩相結合,將擷取和評等 API 速度加快1.7倍,處理能力則是快上10倍,使得 Watson 的自然語言處理及其它重大應用程式的能力更為強大。

NVIDIA 深度學習軟體開發套件(Deep Learning SDK)推動機器學習進步

NVIDIA 的 Deep Learning SDK 是快速推動將 GPU 用於機器學習的關鍵,這組 SDK 內集合多項強大工具和元件庫,資料科學家和研究人員可用於建立訓練和部署深度神經網路所需的區塊。

內有 NVIDIA 的深度學習 GPU 訓練系統「DIGITS」,讓資料科學家和研究人員能運用即時網路特性視覺化內容,快速依資料設計最佳的深度神經網路,重點是過程中無需編寫任何程式碼。

SDK 內還有 NVIDIA CUDA 深度神經網路(cuDNN),其優化後的例行程序使得開發人員能將重心放在設計和訓練神經網路模型上,而非用於低階的調效性能作業上。

它還內含其它元件庫及工具,像是 cuBLAS、cuSPARSE、NCCL 及 CUDA 工具套件,皆加以優化以減輕機器學習的工作量。  

深度學習架構的基礎

NVIDIA GPUs 與深度學習軟體開發套件推動了機器學習領域的發展,而發展及使用 GPU 加速深度學習架構,以訓練深度神經網路的機構數量也不斷增加。

其中包括微軟的 CNTK 架構及 Google 的 TensorFlow,他們的開發人員日前推出這兩項架構的開放源碼解決方案供大眾使用,加入 Caffe、Theano 及 Torch 等其它廣泛用於設計和訓練深度神經網路的開放架構。

人工智慧的競賽己經開跑,機器學習更推波助瀾人工智慧的競賽。GPU 成為推動機器學習發展的強力引擎,日後定會在產業和研究各領域促進發展創新項目。