GPUNet 由 AI 為 AI 精心打造,是一類卷積神經(jīng)網(wǎng)絡(luò),旨在使用 NVIDIA TensorRT 最大化 NVIDIA GPU 的性能。
使用新的神經(jīng)架構(gòu)搜索( NAS )方法構(gòu)建, GPUNet 展示了最先進的推理性能,比 EfficientNet-X 和 FBNet-V3 快兩倍。
NAS 方法有助于為廣泛的應(yīng)用構(gòu)建 GPUNet ,以便深度學(xué)習(xí)工程師可以根據(jù)相對精度和延遲目標(biāo)直接部署這些神經(jīng)網(wǎng)絡(luò)。
GPUNet NAS 設(shè)計方法
高效的體系結(jié)構(gòu)搜索和部署就緒模型是 NAS 設(shè)計方法的關(guān)鍵目標(biāo)。這意味著幾乎不與領(lǐng)域?qū)<疫M行交互,并且有效地使用集群節(jié)點來培訓(xùn)潛在的架構(gòu)候選。最重要的是,生成的模型已準(zhǔn)備好部署。
人工智能制作
為目標(biāo)設(shè)備尋找性能最佳的架構(gòu)搜索可能很耗時。 NVIDIA 構(gòu)建并部署了一種新型的 NAS AI 代理,該代理可以有效地做出構(gòu)建 GPUNET 所需的艱難設(shè)計選擇,使 GPUNET 比當(dāng)前的 SOTA 模型領(lǐng)先 2 倍。
此 NAS AI 代理在中自動協(xié)調(diào)數(shù)百個 GPU Selene 超級計算機 而不需要領(lǐng)域?qū)<业娜魏胃深A(yù)。
使用 TensorRT 為 NVIDIA GPU 優(yōu)化
GPUNet 通過相關(guān)的 TensorRT 推理延遲成本,提升 GPU 友好的運算符(例如,較大的篩選器)而不是內(nèi)存綁定運算符(例如花哨的激活)。它在 ImageNet 上提供了 SOTA GPU 延遲和精度。
部署就緒
GPUNet 報告的延遲包括 TensorRT 發(fā)貨版本中可用的所有性能優(yōu)化,包括融合內(nèi)核、量化和其他優(yōu)化路徑。構(gòu)建的 GPune 已準(zhǔn)備好部署。
構(gòu)建 GPune :端到端 NAS 工作流
在高層次上,神經(jīng)架構(gòu)搜索( NAS ) AI 代理分為兩個階段:
根據(jù)推理延遲對所有可能的網(wǎng)絡(luò)架構(gòu)進行分類。
使用適合延遲預(yù)算的這些網(wǎng)絡(luò)的子集,并優(yōu)化其準(zhǔn)確性。
在第一階段,由于搜索空間是高維的,代理使用 Sobol 采樣來更均勻地分布候選。使用延遲查找表,然后將這些候選對象分類到子搜索空間,例如, NVIDIA V100 GPU 上總延遲低于 0.5 毫秒的網(wǎng)絡(luò)子集。
此階段中使用的推斷延遲是一個近似成本,通過將延遲查找表中每個層的延遲相加來計算。延遲表使用輸入數(shù)據(jù)形狀和層配置作為鍵來查找查詢層上的相關(guān)延遲。
在第二階段,代理建立貝葉斯優(yōu)化損失函數(shù),以在子空間的延遲范圍內(nèi)找到性能最佳的高精度網(wǎng)絡(luò):

圖 2. NVIDIA NAS AI 代理端到端工作流
AI 代理使用客戶端 – 服務(wù)器分布式訓(xùn)練控制器來跨多個網(wǎng)絡(luò)架構(gòu)同時執(zhí)行 NAS 。 AI 代理在一個服務(wù)器節(jié)點上運行,提出并訓(xùn)練在集群上多個客戶端節(jié)點上運行的網(wǎng)絡(luò)候選。
根據(jù)結(jié)果,只有滿足目標(biāo)硬件的準(zhǔn)確度和延遲目標(biāo)的有前途的網(wǎng)絡(luò)體系結(jié)構(gòu)候選者得到排名,從而產(chǎn)生了一些性能最佳的 GPUNET ,可以使用 TensorRT 部署在 NVIDIA GPU 上。
GPUNet 模型體系結(jié)構(gòu)
GPUNet 模型架構(gòu)是一個八級架構(gòu),使用 EfficientNet-V2 作為基線架構(gòu)。
搜索空間定義包括搜索以下變量:
操作類型
跨步數(shù)
內(nèi)核大小
層數(shù)
激活函數(shù)
IRB 擴展比
輸出通道濾波器
擠壓激勵( SE )
表 1 顯示了搜索空間中每個變量的值范圍。

前兩個階段使用卷積搜索磁頭配置。受 EfficientNet-V2 的啟發(fā),第二級和第三級使用融合 IRB 。然而,融合的 IRB 會導(dǎo)致更高的延遲,因此在第 4 至 7 階段,這些被 IRB 取代。
專欄層顯示階段中的層范圍。例如,階段 4 中的[1 , 10]表示該階段可以具有 1 到 10 個 IRB 。專欄過濾器顯示階段中各層的輸出通道濾波器范圍。該搜索空間還調(diào)整 IRB /融合 IRB 內(nèi)部的擴展比( ER )、激活類型、內(nèi)核大小和壓縮激勵( SE )層。
最后,在步驟 32 ,從 224 到 512 搜索輸入圖像的尺寸。
來自搜索空間的每個 GPUNet 候選構(gòu)建被編碼為 41 寬的整數(shù)向量(表 2 )。

在 NAS 搜索結(jié)束時,返回的排序候選是這些性能最佳的編碼的列表,這些編碼又是性能最佳的 GPUNET 。
總結(jié)
鼓勵所有 ML 從業(yè)人員閱讀 CVPR 2022 GPUNet 研究報告 ,并在 NVIDIA /深度學(xué)習(xí)示例 GitHub repo ,并在 協(xié)作實例 在可用云上 GPU 。 GPUNet 推理也可在 PyTorch hub colab 運行實例使用 NGC 集線器上托管的 GPUNet 檢查點。這些檢查點具有不同的準(zhǔn)確性和延遲折衷,可以根據(jù)目標(biāo)應(yīng)用程序的要求應(yīng)用。
關(guān)于作者
Satish Salian 是 NVIDIA 的首席系統(tǒng)軟件工程師,為開發(fā)人員利用 NVIDIA GPU 的能力構(gòu)建端到端技術(shù)和解決方案。他目前專注于神經(jīng)架構(gòu)搜索( NAS )方法,為 NVIDIA GPU 搜索高性能神經(jīng)架構(gòu)。
Carl (Izzy) Putterman 最近加入 NVIDIA ,擔(dān)任深度學(xué)習(xí)算法工程師。他畢業(yè)于加利福尼亞大學(xué),伯克利在應(yīng)用數(shù)學(xué)和計算機科學(xué)學(xué)士學(xué)位。在 NVIDIA ,他目前致力于時間序列建模和圖形神經(jīng)網(wǎng)絡(luò),重點是推理。
Linnan Wang 是 NVIDIA 的高級深度學(xué)習(xí)工程師。 2021 ,他在布朗大學(xué)獲得博士學(xué)位。他的研究主題是神經(jīng)架構(gòu)搜索,他的 NAS 相關(guān)著作已在 ICML 、 NeurIPS 、 ICLR 、 CVPR 、 TPMAI 和 AAAI 上發(fā)表。在 NVIDIA , Lin Nan 繼續(xù)進行 NAS 的研發(fā),并將 NAS 優(yōu)化模型交付給 NVIDIA 核心產(chǎn)品。
審核編輯:郭婷
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4838瀏覽量
107823 -
NVIDIA
+關(guān)注
關(guān)注
14文章
5594瀏覽量
109778 -
gpu
+關(guān)注
關(guān)注
28文章
5194瀏覽量
135503
發(fā)布評論請先 登錄
英特爾FPGA 助力Microsoft Azure機器學(xué)習(xí)提供AI推理性能
NVIDIA擴大AI推理性能領(lǐng)先優(yōu)勢,首次在Arm服務(wù)器上取得佳績
NVIDIA打破AI推理性能記錄
NVIDIA 在首個AI推理基準(zhǔn)測試中大放異彩
在Ubuntu上使用Nvidia GPU訓(xùn)練模型
充分利用Arm NN進行GPU推理
求助,為什么將不同的權(quán)重應(yīng)用于模型會影響推理性能?
如何提高YOLOv4模型的推理性能?
利用NVIDIA模型分析儀最大限度地提高深度學(xué)習(xí)的推理性能
NVIDIA A100 GPU推理性能237倍碾壓CPU
使用GPUNet在NVIDIA GPU上擊敗SOTA推理性能
評論