女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

專門構建的“計算有效”神經網絡模型的優點和挑戰

YCqV_FPGA_EETre ? 來源:Quenton Hall ? 作者:Quenton Hall ? 2021-03-18 14:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在本系列的前幾篇文章中 ( "人工智能引發能源問題,我們該怎么辦 (一) “ 和”在 "人工智能引發能源問題,我們該怎么辦 (二)"),我們討論了 Dennard Scaling 和摩爾定律的細目以及對專用和適應性加速器的需求。然后,我們深入研究了功耗問題,并討論了網絡壓縮的高級優勢。

在這第三篇文章中,我們將探討專門構建的“計算有效”神經網絡模型的優點和挑戰。

神經網絡可以被歸類為一組大致模仿人腦建模方式的算法,能夠通過引入新數據來完成“學習”過程。事實上,開發專用的“計算高效型”神經網絡模型能提供大量優勢。然而,為了確保模型的有效性,需要考慮幾項關鍵需求。

關鍵點之一是在實現推斷加速器(或就此點而言,廣義的硬件加速器)時應采用何種方式訪問存儲器。在機器學習 (ML) 推斷范疇內,我們特別需要考慮如何將權重和中間激活值一起存儲。過去幾年里已有多種方法投入使用并獲得不同程度的成功。相關的架構選擇帶來的影響十分顯著:

時延:對 L1、L2 和 L3 存儲器的訪問表現出相對較低的時延。如果與下一個圖形運算有關的權重和激活值被緩存起來,那么我們就能保持合理水平的效率。然而,如果我們要從外部 DDR 提取數據,就會發生流水線停頓,進而影響時延和效率。

功耗:訪問外部存儲器的能耗至少比訪問內部存儲器大一個數量級。

計算飽和:一般而言,應用要么受計算限制,要么受存儲器限制。這可能會影響給定推斷范式中可實現的 GOP/TOP,而且在某些情況下,這種影響不可小視。如果被部署的具體網絡的實際性能是 1 TOP,那么使用能達到 10 TOP 峰值性能的推斷引擎價值就不大。

在此基礎上更進一步,考慮到訪問現代賽靈思器件里的內部 SRAM(熟悉賽靈思 SoC 的人也稱其為 BRAM 或 UltraRAM)的能耗大約在幾微微焦耳,與訪問外部 DRAM 的能耗相比,低大約兩個數量級。

我們可以考慮將 TPUv1 作為架構示例。TPUv1 內置有一個 65,536 INT8 MAC 單元,與 28MB 的片上存儲器結合,用于存儲中間激活值。權重從外部 DDR 提取。TPUv1 的理論峰值性能是 92 TOPS。

圖 1:TPUv1 架構

參考資料:Jouppi 等,2017 年,https://arxiv.org/ftp/arxiv/papers/1704/1704.04760.pdf

TPU 是其中一種非常普遍的 Tensor 加速器。它使用復雜的編譯器來調度圖形運算。這種 TPU 對于特定工作負載(引用 CNNO 的速率達到 86 TOPS)體現出極為優異的吞吐效率。然而,CNN 的計算/內存引用比低于 MLP 和 LSTM。因此我們可以看出這些特定的工作負載受存儲器限制。在必須將新權重加載到矩陣單元中時,會導致流水線停頓,CNN1 性能也就會隨之劣化(14.1 TOPS)。

圖 2:各種網絡拓撲下 TPUv1 的極限性能水平

參考資料:Jouppi 等,2017 年,

https://arxiv.org/ftp/arxiv/papers/1704/1704.04760.pdf

神經網絡架構對性能有巨大影響,而且對于選擇推斷解決方案而言,峰值性能指標的價值微乎其微(除非我們能為需要加速的特定工作負載實現高水平的效率)。如今,眾多 SoC、ASSP 和 GPU 廠商繼續為 LeNet、AlexNet、VGG、GoogLeNet 和 ResNet 等經典圖像分類模型推廣性能測試基準。然而,圖像分類任務的實際用例數量有限,而許多時候這種模型只是用作對象檢測與分割等更復雜的任務的后臺特征提取器。

更貼近現實的實際可部署模型的示例包括對象檢測與分割。盡管眾多市售半導體器件標榜可提供數十 TOP 的性能,而這又與不得不花長時間為 YOLOv3 和 SSD 等網絡辛苦找尋正式的 IPS 性能基準測試的現狀有何關聯?開玩笑的說,如果只是要在云存儲中簡單查找照片,比如找出您的貓的照片,我看這真不是什么問題:

圖 3:作者收養的家貓“TumbleWeed”

大量開發者在首次嘗試設計帶有 AI 功能的產品時往往以不能滿足性能要求而告終,迫使他們在設計中途遷移到不同的架構上。這不足為奇。如果這么做意味著需要同時對 SOM 基板的軟硬件進行重新構建,難度將不可小覷。選擇賽靈思 SoC 的主要原因在于,與競爭對手的解決方案不同的是,賽靈思推斷解決方案能在保持處理器和推斷加速器架構不變的情況下,直接提供超過一個數量級的性能縮放。

2017 年谷歌的一個研發團隊(Howard 等,《MobileNet:面向移動視覺應用的高效卷積神經網絡》https://arxiv.org/pdf/1704.04861.pdf )發表了針對移動應用的一類新的模型。MobileNet 的優勢在于它能在保持高精度水平的同時,顯著降低計算成本。MobileNet 網絡采用的重大創新之一是深度可分卷積。在經典卷積中,每個輸入通道對每個輸出通道都有影響。如果我們有 100 個輸入通道和 100 個輸出通道,就有 100x100 條虛擬路徑。然而對深度卷積而言,我們將卷積層劃分為 100 個群組,因此只得到 100 條路徑。每個輸入通道僅與一個輸出通道相連接,這樣就能節省大量計算。

圖 4:經典卷積和深度卷積的連接方式

參考資料:Song Yao,Hotchips Hc30,第 8 節:

https://www.hotchips.org/archives/2010s/hc30/

其結果之一就是 MobileNet 的計算/內存引用比得以下降,這意味著存儲器帶寬和時延對實現高吞吐量來說起著至關重要的作用。

可惜的是,計算效率高的網絡未必適合用硬件實現。在理想情況下,時延應隨 FLOP 的降低而呈線性比例下降。然而誠如老話所言,天下沒有免費的午餐。例如,根據下面的比較,MobileNetv2 的計算工作負載不足 ResNet50 的計算工作負載的十分之一,然而時延并未體現出相同的降幅。

圖 5:MobileNet 與 ResNet50 的計算量及時延對比

參考資料:Song Yao,Hotchips Hc30,第 8 節:

https://www.hotchips.org/archives/2010s/hc30/

從上面的分析中可以看出,時延并未隨 FLOP 的降低發生成比例的 12 倍下降。

那么我們如何解決這個問題?如果我們比較片外通信/計算比,會發現 MobileNet 的模式與 VGG 有很大不同。就 DWC 層而言,我們可以看到該比例為 0.11。因為 PE 陣列中的眾多單元猶如數據中心內的“黑暗”服務器,不從事任何有用的工作,只純粹消耗功耗并占用晶片面積,導致加速器受存儲器限制,效率水平下降。

圖 6:VGG16 與 MobileNetv1 的片外通信/計算比

參考資料:Song Yao,Hotchips Hc30,第 8 節:

https://www.hotchips.org/archives/2010s/hc30/

賽靈思之所以推出 DPUv1,是為了加速常規卷積(以及其他運算)。常規卷積要求縮減輸入通道數量。這種縮減更適合用于硬件推斷,因為它提高了計算/權重存儲比及計算/激活值存儲比。從計算能耗與存儲能耗相權衡的角度來看,這是一種非常優秀的做法。基于 ResNet 的網絡在高性能應用中得到如此廣泛的部署的原因之一在于,與眾多傳統的主干架構相比,使用 ResNet 能提高計算/內存引用比。

深度卷積無法實現這樣的通道數縮減。存儲器性能變得更加重要。

為了開展推斷,我們一般將 DWC 卷積與 PWC 卷積融合,并將 DWC 激活值存儲在片上存儲器里,然后立即啟動 1x1 PWC。就原始 DPU 而言,沒有為 DWC 提供專門的硬件支持,因此效率低于理想水平:

圖 7:MobileNet 與 ResNet50 的運算與時延對比 – DPUv1(無原生 DWC 支持)

參考資料:Song Yao,Hotchips Hc30,第 8 節:

https://www.hotchips.org/archives/2010s/hc30/

為了在硬件中提高 DWC 性能,我們對賽靈思 DPU 中的處理單元 (PE) 的功能進行了修改,并將 DWC 運算符與點卷積融合。第一層處理完畢一個輸出像素后,激活值立即流水線到 1x1 卷積(通過 DPU 中的片上 BRAM 存儲器),而無需寫入到 DRAM。我們可以運用這種專用方法顯著提高部署在 DPU 上的 MobileNet 的效率。

圖 8:DPUv2,專用 DWC 處理單元

參考資料:Song Yao,Hotchips Hc30,第 8節:

https://www.hotchips.org/archives/2010s/hc30/

采用這種改進型 DPUv2 架構,我們能夠顯著提高 MNv1 推斷的效率。此外,通過提高片上存儲器的容量,我們還能進一步提高它的效率,使之與我們在 ResNet50 上獲得的結果相媲美。所有這些都是在 CPU 和硬件架構不變的情況下實現的!

圖 9:MobileNet 與 ResNet50 的時延比較,DPUv1 對比 DPUv2(支持 DWC)

參考資料:Song Yao,Hotchips Hc30,第 8 節:

https://www.hotchips.org/archives/2010s/hc30/

廣泛采用的做法是互不關聯地分別優化推斷硬件和神經網絡模型。應該注意到的是,網絡一般使用 GPU 進行訓練,然后在邊緣部署在架構顯著不同的 SoC 或 GPU 上。為真正優化性能,我們必須適配硬件,才能高效完成模型(不一定對硬件友好)部署。在這種情況下,自適應硬件的主要優勢在于賽靈思器件提供在流片后繼續聯合演進軟硬件的特有能力。

為進一步理解這個問題,不妨考慮題為《彩票假說》的一篇獨創論文(Frankle 和 Carbin,2019 年https://arxiv.org/pdf/1803.03635.pdf)的寓意。在該論文(摘得 2019 年國際學習表征大會桂冠的兩篇論文之一)中,作者“詳細闡述了一種假說”,即“含有子網絡(中獎彩票)的密集隨機初始化前饋網絡,如果單獨訓練,測試精度可媲美經過類似數量(訓練)迭代的原始網絡”。顯然根據這個假說,網絡剪枝的前景仍然光明,AutoML 等技術將很快為我們指明網絡發現與優化過程中的“中獎彩票”。

同樣地,為保證在邊緣實現高效、高精度的部署,當今最優秀的解決方案仍保留著傳統主干架構的通道剪枝。這些主干架構的部署效率也許不高,但這些主干架構的半自動化通道剪枝可提供極為高效的結果(參見賽靈思 VGG-SSD 示例)。因此,我可以將這個假說解釋成:只要您選擇的下一個推斷架構能讓您的設計永不過時,您就可以在今天輕松地找到“中獎彩票”。它能幫助您充分發揮未來網絡架構和優化技術的優勢,同時向您的客戶保證產品經久不衰。

圖 9:我個人的“中獎彩票”假說

我可以非常肯定的是,從“彩票假說”衍生出的未來研究有望引領我們開發出新一代剪枝技術,贏得更大程度的效率提升。此外,我感覺只有采用可提供多維度可擴展性的自適應硬件才能收獲這樣的成果。這并非純粹是我的直覺。

購買ZCU104,下載Vitis-AI,立刻開啟您駛向未來 AI 的旅程吧。

責任編輯:lq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 存儲器
    +關注

    關注

    38

    文章

    7648

    瀏覽量

    167284
  • 神經網絡
    +關注

    關注

    42

    文章

    4814

    瀏覽量

    103525
  • 人工智能
    +關注

    關注

    1806

    文章

    48996

    瀏覽量

    249187

原文標題:人工智能引發能源問題,我們該怎么辦?(三)

文章出處:【微信號:FPGA-EETrend,微信公眾號:FPGA開發圈】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    無刷電機小波神經網絡轉子位置檢測方法的研究

    摘要:論文通過對無刷電機數學模型的推導,得出轉角:與三相相電壓之間存在映射關系,因此構建了一個以三相相電壓為輸人,轉角為輸出的小波神經網絡來實現轉角預測,并采用改進遺傳算法來訓練網絡
    發表于 06-25 13:06

    神經網絡專家系統在電機故障診斷中的應用

    摘要:針對傳統專家系統不能進行自學習、自適應的問題,本文提出了基于種經網絡專家系統的并步電機故障診斷方法。本文將小波神經網絡和專家系統相結合,充分發揮了二者故障診斷的優點,很大程度上降低了對電機
    發表于 06-16 22:09

    BP神經網絡的優缺點分析

    BP神經網絡(Back Propagation Neural Network)作為一種常用的機器學習模型,具有顯著的優點,同時也存在一些不容忽視的缺點。以下是對BP神經網絡優缺點的分析
    的頭像 發表于 02-12 15:36 ?906次閱讀

    什么是BP神經網絡的反向傳播算法

    BP神經網絡的反向傳播算法(Backpropagation Algorithm)是一種用于訓練神經網絡有效方法。以下是關于BP神經網絡的反向傳播算法的介紹: 一、基本概念 反向傳播算
    的頭像 發表于 02-12 15:18 ?760次閱讀

    如何訓練BP神經網絡模型

    BP(Back Propagation)神經網絡是一種經典的人工神經網絡模型,其訓練過程主要分為兩個階段:前向傳播和反向傳播。以下是訓練BP神經網絡
    的頭像 發表于 02-12 15:10 ?896次閱讀

    深度學習入門:簡單神經網絡構建與實現

    深度學習中,神經網絡是核心模型。今天我們用 Python 和 NumPy 構建一個簡單的神經網絡神經網絡由多個
    的頭像 發表于 01-23 13:52 ?520次閱讀

    人工神經網絡的原理和多種神經網絡架構方法

    在上一篇文章中,我們介紹了傳統機器學習的基礎知識和多種算法。在本文中,我們會介紹人工神經網絡的原理和多種神經網絡架構方法,供各位老師選擇。 01 人工神經網絡 ? 人工神經網絡
    的頭像 發表于 01-09 10:24 ?1178次閱讀
    人工<b class='flag-5'>神經網絡</b>的原理和多種<b class='flag-5'>神經網絡</b>架構方法

    卷積神經網絡與傳統神經網絡的比較

    在深度學習領域,神經網絡模型被廣泛應用于各種任務,如圖像識別、自然語言處理和游戲智能等。其中,卷積神經網絡(CNNs)和傳統神經網絡是兩種常見的模型
    的頭像 發表于 11-15 14:53 ?1854次閱讀

    RNN模型與傳統神經網絡的區別

    神經網絡是機器學習領域中的一種強大工具,它們能夠模擬人腦處理信息的方式。隨著技術的發展,神經網絡的類型也在不斷增加,其中循環神經網絡(RNN)和傳統神經網絡(如前饋
    的頭像 發表于 11-15 09:42 ?1122次閱讀

    如何使用Python構建LSTM神經網絡模型

    構建一個LSTM(長短期記憶)神經網絡模型是一個涉及多個步驟的過程。以下是使用Python和Keras庫構建LSTM模型的指南。 1. 安裝
    的頭像 發表于 11-13 10:10 ?1560次閱讀

    如何選擇神經網絡種類

    在人工智能和機器學習領域,選擇適合的神經網絡種類是構建高效、準確模型的關鍵步驟。這一過程涉及對任務類型、數據特性、計算資源及模型性能要求等多
    的頭像 發表于 07-24 11:29 ?1189次閱讀

    UNet模型屬于哪種神經網絡

    U-Net模型屬于卷積神經網絡(Convolutional Neural Network, CNN)的一種特殊形式 。它最初由德國弗萊堡大學計算機科學系的研究人員在2015年提出,專為生物醫學圖像
    的頭像 發表于 07-24 10:59 ?5516次閱讀

    如何構建多層神經網絡

    構建多層神經網絡(MLP, Multi-Layer Perceptron)模型是一個在機器學習和深度學習領域廣泛使用的技術,尤其在處理分類和回歸問題時。在本文中,我們將深入探討如何從頭開始構建
    的頭像 發表于 07-19 17:19 ?1551次閱讀

    深度神經網絡模型量化的基本方法

    深度神經網絡模型量化是深度學習領域中的一種重要優化技術,旨在通過減少模型參數的精度(即從高精度浮點數如32位浮點數FP32降低到低精度整數如8位整數INT8或更低)來降低模型
    的頭像 發表于 07-15 11:26 ?1320次閱讀

    神經網絡專用硬件實現的方法和技術

    神經網絡專用硬件實現是人工智能領域的一個重要研究方向,旨在通過設計專門的硬件來加速神經網絡的訓練和推理過程,提高計算效率和能效比。以下將詳細介紹神經
    的頭像 發表于 07-15 10:47 ?2312次閱讀