利用 OpenCL? 平台和英特爾 Stratix 10 FPGA 加快深度學習發展
在這個高度依賴圖像的時代,英特爾? FPGA 可利用 OpenCL? 平台滿足巨大的圖像處 理和分類需求
簡介
從 2015 年到 2020 年,互聯網視頻流量將增長四倍。[1] 鑒於可視數據的爆炸性增長, 找到有效的圖像排序、分類和識別方法變得至關重要。
卷積神經網路(CNNs)是一種基 於人腦功能的機器學習方法,通常用於圖像分析。軟體可將圖像分為多個部分(通常采 取重疊操作),然後通過分析圖像形成可視空間的整體示意圖。該流程需要採用多個復 雜的數學運算步驟以分析、比較和識別圖像,同時保持較低的錯誤率。
開發人員使用計算密集型演算法創建 CNN,並在各種平台上對其進行實施。本白皮書介紹 了 CNN 在英特爾? Stratix? 10 FPGA 上的實施方案。對於大批量任務,該方案能以每瓦 每秒 70 幅圖像的速度每秒處理 14,000 幅圖像;對於批量大小為 1 的任務,該方案能 以每瓦每秒 18 幅圖像的速度每秒處理 3,015 幅圖像。? 這些數字表明,英特爾 Stratix 10 FPGA 在處理大批量任務時完全可媲美其他高性能計算(HPC)器件(如 GPU), 在處理小批量任務時則比其他器件更快。
CNN 性能指標評測
自 2010 年以來,Stanford Vision Lab 便開始舉辦 ImageNet Large Scale Visual Recognition Challenge(ILSVRC)比賽。參賽者需開發一款 CNN 演算法對包含數百 萬個圖像或視頻剪輯的數據集中的對象進行分析和分類。相比之前的演算法,2012 年 的獲獎演算法 AlexNet* [2] 在降低分類錯誤率方面實現了巨大飛躍。[3] 2014 年的獲獎 演算法(GoogLeNet*)進行了相應改進,能夠進一步降低錯誤率。[4] 英特爾開發了一 種新型設計來實施經過修改的性能指標評測演算法,從而提升基於英特爾 FPGA 的CNN 運算性能。
CNN 演算法包括一系列運算或層級。例如,AlexNet 演算法包括:
? 卷積層,負責在 3D 數據陣列(稱為特徵圖譜)和 3D 濾波器上實施卷積運算。該運 算將修正線性單元(ReLU)用作激活函數。
? 跨通道局部響應歸一化層,負責按一個因子對特徵圖譜元素進行擴展,該係數是鄰近 通道中與歸一化中元素處於相同位置的元素的函數。
? 最大值池化層,負責讀取 2D 窗口中的數據,並輸出最大值。
圖 1. Alexnet 演算法層
? 全連接層,負責實施特殊的卷積函數,其中每個節點連接至上 一層的每個節點。藉助扁平化濾波器,輸出可表示為扁平化版 本(2D)輸出特徵圖譜的矩陣點積。
? softmax 層,負責使用 softmax 函數(歸一化指數函數)對輸 入特徵圖譜值進行歸一化處理。該層可輸出 1,000 個元素的矢 量,可能包含屬於原始ILSVRC 圖像集中 1,000 個可能類別中 的一個的概率。
GoogLeNet 包含卷積、池化和 softmax 層,以及不同配置的 inception層組成。
將英特爾 Stratix 10 FPGA 用於 CNN
CNN 演算法為計算密集型演算法,開發人員通常可使用矩陣乘法獲 取結果。該乘法需要大量外部內存帶寬來回傳輸大型數據集。此 外,多數 FPGA CNN 設計存在各種低效問題:
? 許多設計僅實施卷積層,致使其餘層的處理成為瓶頸。
? 在 FPGA 和外部內存之間傳輸大量數據成為瓶頸。
? 許多設計未能發揮 FPGA 的最高運行性能,導致較低的演算法 性能。
藉助 OpenCL§ 平台,英特爾創建了一種新型深度學習加速器 (DLA)架構,該架構為實現出色性能進行了優化。在多數 CNN 中,卷積層使用大量的浮點運算。DLA 通過實施並行計 算實現最大的卷積層吞吐量,並行使用儘可能多的 FPGA DSP 模塊。DLA 構建模塊被編寫為可獨立和同時執行的 OpenCL 內核
利用並行計算
使用並行性提高總體吞吐量。卷積層有四部分可利用 DLA 進行 矢量化處理:
? 輸出特徵列(Q)
? 輸出特徵圖譜(K)
? 輸入特徵圖譜(C)
? 輸入特徵列(W)
DLA 使用點積對矢量進行運算。將卷積運算分解為單獨的點積有 助於更高效地使用 FPGA 的 DSP 模塊。此外,將輸入和輸出特 征列轉化為矢量有助於 DLA 使用 Winograd* 轉換簡化演算法,後 面將談到這一點。
圖 2. DLA 架構
圖 3 . 流緩衝區
在晶元上對數據進行高速緩存
DLA 可在片上 RAM 中對特徵數據進行高速緩存,將其流傳輸至 並行處理組件(PE)的菊花鏈,以計算卷積層和完全連接層。 為避免空轉的計算周期,DLA 對數據進行了雙緩衝,並同時實 施卷積與 PE 高速緩存更新。在卷積層執行時,DLA 將特徵數據 流傳輸至 PE,同時將輸出存回 RAM 緩衝區。該架構可減少不必 要的外部內存訪問,以免影響帶寬。此外,高速緩存有助於 DLA 再次使用輸入特徵圖譜和濾波器權重。
使用 Winograd* 轉換簡化計算
Shmuel Winograd 開發了創新型最小濾波演算法,相比傳統的卷 積運算,該演算法可將 CNN 的複雜性降低至 1/4。[5] 這些演算法尤 其能與小型濾波器高效配合。AlexNet 和 GoogLeNet 拓撲結構 在多數卷積層中使用 3x3 小型濾波器,目前建模的其他 CNN 架 構也使用小型濾波器。通過 Winograd 轉換,DLA 可減少卷積 運算中所需的乘積累加運算。例如,DLA 在每個時鐘周期內僅使 用 6 次乘法和加法,而非標準卷積運算所需的 12 次。
圖 4 . 使用 Winograd 轉換
最佳架構建模
開發人員可使用輸入/輸出特徵圖譜和列矢量化因子(Qvec、 Kvec、Cvec 和 Wvec)對 DLA 性能建模。例如,下列方程式可 用於對所需的 DSP 模塊數量建模(未使用 Winograd 轉換):
NDSPblocks =(Wvec – Qvec + 1)× Qvec × Kvec × Cvec × 0.5
同樣,開發人員可對下列信息建模:
? 為任何指定層存儲最大輸入和輸出特徵圖譜所需的 M20K RAM 模塊數量。
? 處理一個卷積層的一幅圖像所需的周期數。
? 每秒圖像數的吞吐量。
該建模可幫助開發人員確定目標 FPGA(具有指定 fMAX、Wvec 和 Qvec)的最佳 Cvec 和 Kvec 值。建模和實證檢驗結果非常一致,如 圖 5 所示
圖 5. 比較建模和實證檢驗
DLA 性能結果
圖 6 - 9 提供了預測的 AlexNet 和 GoogLeNet 數據性能指標評 測結果。它比較了在英特爾 Arria? 10 和英特爾 Stratix 10 FPGA 上運行的 DLA 和使用 nVidia* Tesla* P4 與 P40 GPU(基於 nVidia Pascal* 架構[6])的 GPU 的性能。性能指標評測的實施使 用了下列軟硬體:
? 英特爾 Arria 10 GX1150 FPGA
? 英特爾 Stratix 10 GX2800 FPGA
? 帶有 OpenCL 的英特爾 Quartus? Prime 設計套件 v16.1
? nVidia P40 和 P4 GPU[7]
? nVidia TensorRT* 神經網路推理引擎[8]
nVidia P4 和 P40 性能數據發布在 nVidia 開發人員網站上,並 在 2016 年 GPU 技術大會上進行了演示,英特爾在實驗中也進 行相關計算。
如圖 6-9 所示,英特爾 Arria 10 和英特爾 Stratix 10 FPGA 能 與最新一代的 nVidia GPU 一較高下。
圖 6. 比較 AlexNet 性能,大於等於 32 的大批量任務
圖 7. 比較 AlexNet 效率,大於等於 32 的大批量任務
圖 8. 比較 GoogLeNet 性能,批大小為 1
圖 9. 比較 GoogLeNet 效率,批大小為 1
公司信息: Intel-英特爾
關於電子創新網
電子創新網及時發布有關創新設計的最新全球半導體產業信息、半導體供應商最新動態、展會研討會信息、技術趨勢信息以及人物訪談等相關新聞,關注公眾號獲取更多資訊。
掃描二維碼,關注更多精彩
【推介】ELEXCON2017深圳國際電子展暨嵌入式系統展:是華南地區規模最大的專業電子和嵌入式技術展,ELEXCON2017將於2017年12月21-23日在深圳會展中心舉行。從元件到系統,從設計到製造,ELEXCON2017將匯聚超過800家重要供應商提供的最新技術和產品,覆蓋的熱點涵蓋:嵌入式、物聯網、電力電子、人機交互與生物識別、無線充電、醫療電子、感測器、電動汽車、智能製造等。
點擊閱讀原文鏈接可以了解展會詳情
※Strategy Analytics:多用途機器人對消費者最有價值
※Silicon Labs新型EFM32GG11 Gecko系列產品為低功耗MCU市場提供最先進的功能和最大的內存空間
TAG:電子創新設計 |
※諾基亞收購 Unium,希望利用 Mesh Wi-Fi 技術推動家庭網路發展 | MWC 2018
※Pac-Man 256向PC和控制台方向發展 火箭聯盟增加了Xbox One
※郭明基:2018年MacBook系列產品比iPhone、iPad發展得更好
※2018年Automechanika Ho Chi Minh City盛大開幕,為發展蓬勃的越南汽車服務業注入新動力
※亂侃:RT-Thread、Alios Things、Huawei LiteOS誰家強?國產RTOS迎發展新機遇
※SM&JYP&BigHit三社合作 攜手促進音樂產業發展
※多元化發展?Husqvarna Svartpilen 701 flat tracker測試捕獲
※澳大利亞的船舶製造業繁榮發展Australian Ships for China and the World?
※為刺激VR/AR領域發展 Digital Catapult再次啟動Augmentor項目
※RT-Thread 3.0 驅動物聯網快速發展
※React VR正式更名為React 360推進VR視頻發展
※Aus評級表明ZombiU來到Xbox Kerbal太空計劃飛速發展到PS4
※一部關於俄羅斯 Hip-Hop 的發展史 | NOISEY
※NetSpeed與Esperanto合作推動人工智慧系統級晶元的發展
※音樂流媒體平台 Pandora 斥資 1.45 億美元收購 AdsWizz,進一步發展廣告技術
※前有iPhone7後有iPhoneX,iPhone8該如何發展?
※神評論|理性評價Twice、BLACKPINK、GFriend未來的可能性及發展路線?網友:喜歡black pink
※澳洲Aurora Labs與CSIRO合作,共同推進金屬3D列印及服務的發展
※諾基亞收購 Unium,希望利用 Mesh Wi-Fi 技術推動家庭網路發展
※Materialise亮相TCT亞洲展,攜手合作夥伴為3D列印發展助力