色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

術開發一種硬件高效的RepGhost模塊

CVer ? 來源:極市平臺 ? 作者:CV開發者都愛看的 ? 2022-11-24 09:38 ? 次閱讀

1 RepGhost:重參數化技術構建硬件高效的 Ghost 模塊

GhostNetV2 解讀:NeurIPS'22 Spotlight|華為諾亞GhostNetV2出爐:長距離注意力機制增強廉價操作

G-GhostNet 解讀:想要一個適配GPU端的輕量級網絡?安排!華為諾亞帶著 G-GhostNet 走來

1.1.1 特征復用技術和本文動機

特征復用技術是指:通過簡單地連接來自不同層的已有的一些特征圖,來額外獲得一些其他的特征。比如在 DenseNet[1] 中,在一個 Stage 內,前面層的特征圖被重復使用并被饋送到它們的后續層,從而產生越來越多的特征圖。或者在 GhostNet 中,作者通過一些廉價的操作來生成更多的特征圖,并將它們與原始特征圖 Concat 起來,從而產生越來越多的特征圖。它們都通過 Concat 操作,利用特征復用技術,來擴大 channel 數量和網絡容量,同時保持一個比較低的 FLOPs。似乎 Concat 操作已經成為特性復用的標準操作。

Concat 操作確實是一種 0 Params,0 FLOPs 的操作。但是,它在硬件設備上的計算成本是不可忽略的。 因為參數量和 FLOPs 不是機器學習模型實際運行時性能的直接成本指標。作者發現,在硬件設備上,由于復雜的內存復制,Concat 操作比加法操作效率低得多。因此,值得探索一種更好的、硬件效率更高的方法,以更好地適配特征復用技術。

因此,作者考慮引入結構重參數化方法,這個系列方法的有效性在 CNN 體系結構設計中得到了驗證。具體而言,模型訓練時是一個復雜的結構,享受高復雜度的結構帶來的性能優勢,訓練好之后再等價轉換為簡單的推理結構,且不需要任何時間成本。受此啟發,作者希望借助結構重參數化方法來實現特征的隱式重用,以實現硬件高效的架構設計。

所以本文作者希望通過結構重新參數化技術開發一種硬件高效的 RepGhost 模塊,以實現特征的隱式重用。如前文所述,要把 Concat 操作去掉,同時修改現有結構以滿足重參數化的規則。因此,在推斷之前,特征重用過程可以從特征空間轉移到權重空間,使 RepGhost 模塊高效。

1.1.2 Concat 操作的計算成本

作者將 GhostNet 1.0x 中的所有 Concat 操作替換成了 Add 操作,Add 操作也是一種處理不同特征的簡單操作,且成本較低。這兩個運算符作用于形狀完全相同的張量上。如下圖1所示為對應網絡中所有32個對應運算符的累計運行時間。Concat 操作的成本是 Add 操作的2倍。

950bf328-6b48-11ed-8abf-dac502259ad0.jpg

圖1:在基于 ARM手機上 Concat 操作和 Add 操作處理不同 Batch Size 的數據的運行時間

9517dd5a-6b48-11ed-8abf-dac502259ad0.jpg

圖2:每個操作符在整個網絡中的運行時間的百分比。Diff:Concat 操作和 Add 操作的差值的百分比

1.1.3 Concat 操作和 Add 操作

poYBAGN-y9yAVF5iAAB4FXhsVMo201.jpg

951f1c96-6b48-11ed-8abf-dac502259ad0.jpg

式中, 代表 Concat 操作。它只保留現有的特征映射,將信息處理留給下面的層。例如,在 Concat 操作之后通常會有一個 1×1 卷積來處理信道信息。但是,Concat 操作的成本問題促使作者尋找一種更有效的方法。

通過 Add 操作進行特征復用的過程可以寫成:

9527d0f2-6b48-11ed-8abf-dac502259ad0.jpg

式中, 代表 Add 操作。與 Concat 操作不同,Add 操作還具有特征融合的作用,而且特征融合過程是在權值空間中完成的,不會引入額外的推理時間。

基于此,作者提出了以下 RepGhost 模塊。

1.1.4 RepGhost 模塊

這一小節介紹如何通過重參數化技術來進行特征復用,具體而言介紹如何從一個原始的 Ghost 模塊演變成 RepGhost 模塊。如下圖3所示,從 Ghost 模塊開始:

953118a6-6b48-11ed-8abf-dac502259ad0.jpg

圖3:從一個原始的 Ghost 模塊演變成 RepGhost 模塊的過程

(a) 原始的 Ghost 模塊,這里省去了第一步的 1×1 卷積。

(b) 把原始的 Ghost 模塊的 Concat 操作換成 Add 操作,以求更高的效率。

(c) 把 ReLU 移到 Add 操作之后,這種移動使得模塊滿足結構重新參數化規則,從而可用于快速推理。

(d) 在恒等映射 Identity Mapping 分支中添加 BN 操作,使得在訓練過程中帶來非線性,并且可以被融合用于快速推斷。

(e) 模塊 (d) 可以被融合成模塊 (e),用于快速推斷。RepGhost 模塊有一個簡單的推理結構,它只包含規則的卷積層和ReLU,這使得它具有較高的硬件效率。特征融合的過程是在權重空間,而不是在特征空間中進行,然后把兩個分支的參數進行融合產生快速推理的結構。

與 Ghost 模塊的對比

作用:

Ghost 模塊提出從廉價的操作中生成更多的特征圖,因此可以以低成本的方式擴大模型的容量。

RepGhost 模塊提出了一種更有效的方法,通過重參數化來生成和融合不同的特征圖。與 Ghost 模塊不同,RepGhost 模塊去掉了低效的 Concat 操作,節省了大量推理時間。并且信息融合過程由 Add 操作以隱含的方式執行,而不是留給其他卷積層。

pYYBAGN-y_-AffyNAACAQ8c3rGQ479.jpg

1.1.5 RepGhostNet 網絡

poYBAGN-zBOAPsCiAAJmpgLs8ho857.jpg

953e4e22-6b48-11ed-8abf-dac502259ad0.jpg

圖4:(a) GhostNet 網絡的一個 Block。(b) RepGhost 網絡訓練時的一個 Block。(c) RepGhost 網絡推理時的一個 Block

下圖5所示是 RepGhostNet 的網絡架構。首先是一個輸出通道為16的卷積層處理輸入數據。一堆正常的 1×1 卷積和 AvgPool 預測最終輸出。根據輸入大小將 RepGhost Bottleneck 分成5組,并且為每組中除最后一個 Bottleneck 之外的最后一個 Bottleneck 設置 stride=2。

9556db72-6b48-11ed-8abf-dac502259ad0.jpg

圖5:RepGhost 網絡架構

1.1.6 實驗結果

ImageNet-1K 實驗結果

如下圖所示是 ImageNet-1K 圖像分類任務的實驗結果。NVIDIA V100 GPUs ×8 作為訓練設備,Batch size 開到1024,優化器 SGD (0.9 momentum),基本學習率為 0.6,Epoch 數為 300,weight decay 為1e-5,并且使用衰減系數為0.9999的 EMA (Exponential Moving Average) 權重衰減。數據增強使用 timm 庫的圖像裁剪和翻轉,prob 0.2 的隨機擦除。對于更大的模型 RepGhostNet 1.3×,額外使用 auto augment。

95658280-6b48-11ed-8abf-dac502259ad0.jpg

圖6:ImageNet-1K 實驗結果

實驗結果如上圖6所示。根據 FLOPs,所有模型被分為3個級別。在基于 ARM 的手機上評估每個模型的相應延遲。圖1描繪了所有模型的延遲和精度。可以看到,在準確性-延遲權衡方面,RepGhostNet 優于其他手動設計和基于 NAS 的模型。

RepGhostNet 實現了與其他先進的輕量級 CNN 相當甚至更好的準確性,而且延遲低得多。例如,RepGhostNet 0.5× 比 GhostNet 0.5× 快 20%,Top-1 準確性高 0.5%,RepGhostNet 1.0× 比 MobileNetV3 Large 0.75× 快 14%,Top-1 準確性高 0.7%。在延遲相當的情況下,RepGhostNet 在所有三個量級大小的模型上面都超過所有對手模型。比如,RepGhostNet 0.58× 比 GhostNet 0.5× 高 2.5%,RepGhostNet 1.11× 比MobileNetV3 Large 0.75× 高 1.6%。

目標檢測和實例分割實驗結果

使用 RetinaNet 和 Mask RCNN分別用于目標檢測任務和實例分割任務。僅替換 ImageNet 預訓練的主干,并在8個 NVIDIA V100 GPUs 中訓練12個時期的模型結果如下圖7所示。RepGhostNet 在兩個任務上都優于MobileNetV2,MobileNetV3 和 GhostNet,且推理速度更快。例如,在延遲相當的情況下,RepGhostNet 1.3× 在這兩項任務中比 GhostNet 1.1× 高出 1% 以上,RepGhostNet 1.5× 比 MobileNetV2 1.0× 高出 2% 以上。

956fddac-6b48-11ed-8abf-dac502259ad0.jpg

圖7:目標檢測和實例分割實驗結果

消融實驗1:與 Ghost-Res50 的對比

為了驗證大模型的 RepGhost 模塊的泛化性,作者將其與 GhostNet 模型 Ghost-Res50 進行了比較。用 RepGhost 模塊替換 Ghost-Res50 中的 Ghost 模塊,得到 RepGhost-Res50。所有模型都使用相同的訓練設置進行訓練。對于 MNN 延時,與圖6結果使用相同的手機測得。對于 TRT 延遲,作者首先將模型轉換為 TensorRT,然后在 Batch size 為32的 T4 GPU 上運行框架上的每個模型100次,并報告平均延遲。

結果如下圖8所示。可以看到,RepGhost-Res50 在 CPU 和 GPU 上都明顯快于 Ghost-Res50,但精度相當。特別地,在 MNN 推理和 TensorRT 推理中,RepGhost-Res50 (s=2) 比 Ghost-Res50 (s=4) 分別獲得了 22% 和44% 的加速比。

957bf146-6b48-11ed-8abf-dac502259ad0.jpg

圖8:與 Ghost-Res50 的對比

消融實驗2:重參數化結構

為了驗證重新參數化結構,作者在 RepGhostNet 0.5× 上進行消融實驗,方法是在圖 3(c) 所示的模塊的恒等映射分支中交替使用 BN,1×1 Depth-wise Convolution 和恒等映射本身。結果如下圖9所示。可以看到,帶有 BN 重參數化的 RepGhostNet 0.5× 達到了最好的性能。作者將其作為所有其他 RepGhostNet 的默認重新參數化結構。

作者將這種改善歸因于 BN 的非線性,它提供了比恒等映射更多的信息。1×1 Depth-wise Convolution 之后也是 BN,因此,由于后面的歸一化,其參數對特征不起作用,并且可能使 BN 統計不穩定,作者推測這導致了較差的性能。

95874000-6b48-11ed-8abf-dac502259ad0.jpg

圖9:重新參數化結構消融實驗

消融實驗3:Shortcut 的必要性

盡管 會增加內存訪問成本 (從而影響運行時性能),但對于計算受限的移動設備來說,這種影響可以忽略不計,如表所示。7.考慮到所有這些,我們確認快捷方式對于輕量級CNN是必要的,并在我們的RepGhostNet中保留快捷方式。mageNet 數據集上的準確性,結果如下圖顯示了使用和不使用快捷方式時 RepGhostNet 的準確性和延遲。

很明顯,Shortcut 不會嚴重影響實際運行的延時,但有助于優化過程。另一方面,大模型去掉 Shortcut 對 Latency 的影響要小于小模型,這可能意味著 Shortcut 對于輕量級 CNN 比大型模型更重要,例如 RepVGG 和 MobileOne。

盡管 Shortcut 會增加內存訪問成本 (從而影響運行時性能),但對于計算受限的移動設備來說,這種影響可以忽略不計。考慮到所有這些,我們認為 Shortcut 對于輕量級 CNN 是必要的,并在 RepGhostNet 中保留了 Shortcut 操作。

958edf90-6b48-11ed-8abf-dac502259ad0.jpg

圖10:Shortcut 的必要性消融實驗結果

總結

GhostNet 通過一些廉價的操作來生成更多的特征圖,并將它們與原始特征圖 Concat 起來,從而產生越來越多的特征圖,它利用特征復用技術,來擴大 channel 數量和網絡容量,同時保持一個比較低的 FLOPs。似乎 Concat 操作已經成為特性復用的標準操作。Concat 操作確實是一種 0 Params,0 FLOPs 的操作。

但是,它在硬件設備上的計算成本是不可忽略的。所以本文作者希望通過結構重新參數化技術開發一種硬件高效的 RepGhost 模塊,以實現特征的隱式重用。RepGhostNet 把 Concat 操作去掉,同時修改現有結構以滿足重參數化的規則。最終得到的 RepGhostNet 是一個高效的輕量級 CNN,在幾個視覺任務中都展示出了移動設備的精度-延遲權衡方面良好的技術水平。






審核編輯:劉清

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

    關注

    28

    文章

    4768

    瀏覽量

    129320
  • 機器學習
    +關注

    關注

    66

    文章

    8438

    瀏覽量

    133020
  • cnn
    cnn
    +關注

    關注

    3

    文章

    353

    瀏覽量

    22317
  • ema
    ema
    +關注

    關注

    0

    文章

    3

    瀏覽量

    2400

原文標題:輕量級CNN模塊!RepGhost:重參數化實現硬件高效的Ghost模塊

文章出處:【微信號:CVer,微信公眾號:CVer】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    【WaRP7試用申請】一種高效的協議融合解決方案

    的處理,對SDK開發環境進行封裝,實現小批量,快速定制開發的目的。項目名稱:一種高效的協議融合解決方案項目計劃:在現有的平臺開發環境上封裝自
    發表于 07-03 18:30

    介紹一種高效的汽車電子測試方案

    介紹一種高效的汽車電子測試方案
    發表于 05-19 06:58

    萌新求助,求一種DSP硬件驅動開發方法

    萌新求助,求一種DSP硬件驅動開發方法
    發表于 10-22 06:53

    介紹一種基于硬件的安全模塊

    英飛凌科技開發一種基于硬件的安全模塊,通過其全新的 OPTIGA TPM 2.0 保護聯網汽車與汽車制造商之間的通信,該模塊
    發表于 02-11 07:41

    一種多路溫度儀硬件方案及下位機程序開發方案

    一種多路溫度儀硬件方案及下位機程序開發方案
    發表于 02-24 07:17

    一種高效LLC電源參考設計

    描述PMP10950 是一種高效 LLC 電源參考設計,可將 380VDC 輸入轉換為 85V/7A 和 12V/9.5A 輸出。710W滿載時效率超過94%,半載時效率超過93%。特性
    發表于 09-20 08:09

    一種無線射頻收發模塊的應用

    一種無線射頻收發模塊的應用 摘要:介紹了一種新型廉價的無線收發模塊。通過這種模塊可以實現無線通訊和無線控制等多種功能。首先詳細地介紹了發
    發表于 11-13 20:59 ?114次下載

    開發DSP硬件驅動程序的一種方法

    通過建立硬件驅動程序的開發模式,可使上述現象得到改善。因此,本文介紹一種開發TI公司DSP 片內及片外硬件外設驅動程序的方法,并以C5000
    發表于 12-03 16:49 ?24次下載

    一種模塊高效電子商務推薦系統的設計

    論文提出了一種模塊化的高效電子商務推薦系統的體系結構,詳述了該系統各個模塊的構造、功能以及如何相互協作從而最終完成推薦任務。并著重研究了數據預處理和序列模式挖
    發表于 03-02 11:59 ?19次下載

    一種GPS和GSM模塊的資料

    一種GPS和GSM模塊的資料
    發表于 07-22 15:43 ?62次下載

    一種高效的串行通信協議的制定及實現

    一種高效的串行通信協議的制定及實現
    發表于 11-09 18:08 ?56次下載

    關于一種高效printf打印方式

    一種高效printf打印方式
    的頭像 發表于 02-29 16:29 ?3494次閱讀
    關于<b class='flag-5'>一種</b><b class='flag-5'>高效</b>printf打印方式

    一種基于GaN的超高效功率模塊

    前不久,Hangzhou Zhongheng Electric Co., Ltd(HZZH)就利用Transphorm的TPH3205WS-GaN器件成功開發一種基于GaN的超高效功率模塊
    的頭像 發表于 04-27 16:46 ?4187次閱讀

    一種明場成像細胞(BFIC)技術

    據麥姆斯咨詢報道,來自鄭州大學楊瀟楠教授課題組與中科院微電子所張文昌副研究員課題組聯合提出了一種明場成像細胞(BFIC)技術,以及多幀圖像關聯(MFIC)算法,作為一種潛在的無標記CTC識別和計數方法。
    的頭像 發表于 06-26 10:32 ?2806次閱讀

    一種簡單高效配置FPGA的方法

    本文描述了一種簡單高效配置FPGA的方法,該方法利用微處理器從串行外圍接口(SPI)閃存配置FPGA設備。這種方法減少了硬件組件、板空間和成本。
    的頭像 發表于 10-24 14:57 ?796次閱讀
    <b class='flag-5'>一種</b>簡單<b class='flag-5'>高效</b>配置FPGA的方法
    主站蜘蛛池模板: 战狼4在线观看完免费完整版 | 在线免费中文字幕 | 秋霞电影网午夜一级鲁丝片 | 亚洲高清国产品国语在线观看 | 久久只有这里有精品4 | 久久视热频这里只精品 | 中文字幕欧美日韩VA免费视频 | 在线高清电影理论片4399 | xx在线观看| 韩国羞羞秘密教学子开车漫书 | 国产亚洲精品高清视频免费 | 久久精品国产亚洲AV麻豆欧美玲 | 亲胸吻胸添奶头GIF动态图免费 | 日本午夜精品久久久无码 | 97午夜理论片影院在线播放 | 黄页网址大全免费观看 | 亚洲m男在线中文字幕 | 国产亚洲精品欧洲在线视频 | 亚洲免费va在线观看 | 蜜桃传媒在线观看入口 | 成人毛片一区二区三区 | 日韩黄色软件 | 日本女人bb | 国产产乱码一二三区别免费 | 公粗挺进了我的密道在线播放贝壳 | 恋夜秀场1234手机视频在线观看 | 国产69精品久久久久乱码免费 | 色就色综合 | 亚洲AV无码偷拍在线观看 | 亚洲精品无码成人AAA片 | 99国内精精品久久久久久婷婷 | 国产精品高潮呻吟AV久久96 | 亚洲国产日韩欧美高清片a 亚洲国产日韩a精品乱码 | 国产黄大片在线视频 | 欧美另类videosbest | 99久久免费精品国产免费 | 三级黄色在线视频中文 | 色橹橹欧美在线观看视频高清 | 伊人大香线蕉精品在线播放 | 少妇无套内谢久久久久 | 青青草原直播 |