自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

超越谷歌MobileNet!華為提出端側神經(jīng)網(wǎng)絡架構GhostNet|已開源

新聞 深度學習
同樣精度,速度和計算量均少于此前SOTA算法。這就是華為諾亞方舟實驗室提出的新型端側神經(jīng)網(wǎng)絡架構GhostNet。

本文經(jīng)AI新媒體量子位(公眾號ID:QbitAI)授權轉載,轉載請聯(lián)系出處。

 同樣精度,速度和計算量均少于此前SOTA算法。這就是華為諾亞方舟實驗室提出的新型端側神經(jīng)網(wǎng)絡架構GhostNet。

GhostNet的核心是Ghost模塊,與普通卷積神經(jīng)網(wǎng)絡相比,在不更改輸出特征圖大小的情況下,其所需的參數(shù)總數(shù)和計算復雜度均已降低,而且即插即用。

在ImageNet分類任務中,GhostNet在各種計算復雜度級別上始終優(yōu)于其他競爭對手,比如谷歌的MobileNet系列、曠視的ShuffleNet系列、IGCV3、ProxylessNAS、FBNet、MnasNet等等。

關于GhostNet的論文已經(jīng)被CVPR 2020收錄,模型與代碼也已經(jīng)在GitHub上開源。華為諾亞方舟實驗室是如何做到的?我們根據(jù)作者團隊的解讀,一一看來。

核心理念:用更少的參數(shù)來生成更多特征圖

通常情況下,為了保證模型對輸入數(shù)據(jù)有全面的理解,訓練好的深度神經(jīng)網(wǎng)絡中,會包含豐富甚至冗余的特征圖。

如下圖所示,ResNet-50中,將經(jīng)過第一個殘差塊處理后的特征圖,會有出現(xiàn)很多相似的“特征圖對”——它們用相同顏色的框注釋。

這樣操作,雖然能實現(xiàn)較好的性能,但要更多的計算資源驅動大量的卷積層,來處理這些特征圖。

超越<span><span><span><i style=

在將深度神經(jīng)網(wǎng)絡應用到移動設備的浪潮中,怎么保證性能不減,且計算量變得更少,成為研究的重點之一。

谷歌的MobileNet團隊,以及曠視的ShuffleNet團隊,最近想了不少辦法來構建低計算量的深度神經(jīng)網(wǎng)絡。但他們采取的深度卷積或混洗操作,依舊是在卷積上下功夫——用較小的卷積核(浮點運算)。

華為諾亞實驗室的團隊沒有沿著這條路前進,而是另辟蹊徑:

“特征圖對”中的一個特征圖,可以通過廉價操作(上圖中的扳手)將另一特征圖變換而獲得,則可以認為其中一個特征圖是另一個的“幻影”。

這是不是意味著,并非所有特征圖都要用卷積操作來得到?“幻影”特征圖,也可以用更廉價的操作來生成?

于是就有GhostNet的基礎——Ghost模塊,用更少的參數(shù),生成與普通卷積層相同數(shù)量的特征圖,其需要的算力資源,要比普通卷積層要低,集成到現(xiàn)有設計好的神經(jīng)網(wǎng)絡結構中,則能夠降低計算成本。

具體的操作在這里就不詳細敘述了,如果你有興趣,可以去看下論文(地址在文末)。

構建新型端側神經(jīng)網(wǎng)絡架構GhostNet

利用Ghost模塊的優(yōu)勢,研究團隊提出了一個專門為小型CNN設計的Ghost bottleneck(G-bneck)。其架構如下圖所示,與ResNet中的基本殘差塊(Basic Residual Block)類似,集成了多個卷積層和shortcut。

超越<span><span><span><i style=

Ghost bottleneck主要由兩個堆疊的Ghost模塊組成。第一個用作擴展層,增加了通道數(shù)。第二個用于減少通道數(shù),以與shortcut路徑匹配。然后,使用shortcut連接這兩個Ghost模塊的輸入和輸出。

研究團隊表示,這里借鑒了MobileNetV2中的思路:第二個Ghost模塊之后不使用ReLU,其他層在每層之后都應用了批量歸一化(BN)和ReLU非線性激活。

這里說的Ghost bottleneck,適用于上圖Stride= 1情況。對于Stride = 2的情況,shortcut路徑由下采樣層和Stride = 2的深度卷積(Depthwise Convolution)來實現(xiàn)。

此外,而且出于效率考慮,Ghost模塊中的初始卷積是點卷積(Pointwise Convolution)。

在Ghost bottleneck的基礎上,研究團隊提出了GhostNet——遵循MobileNetV3的基本體系結構的優(yōu)勢,用Ghost bottleneck替換MobileNetV3中的bottleneck。

超越<span><span><span><i style=

第一層是具有16個卷積核的標準卷積層,然后是一系列Ghost bottleneck,通道逐漸增加。

Ghost bottleneck根據(jù)輸入特征圖的大小分為不同的階段,除了每個階段的最后一個Ghost bottleneck是Stride = 2,其他所有Ghost bottleneck都以Stride = 1進行應用。

最后,會利用全局平均池和卷積層將特征圖轉換為1280維特征向量以進行最終分類。SE模塊也用在了某些Ghost bottleneck中的殘留層。與MobileNetV3相比,這里用ReLU換掉了Hard-swish激活函數(shù)。

研究團隊表示,這里的架構只是一個基本的設計參考,進一步的超參數(shù)調整或基于自動架構搜索的Ghost模塊將進一步提高性能。

ImageNet分類任務超過谷歌MobileNet

如此思路設計出來的神經(jīng)網(wǎng)絡架構,性能到底如何?研究團隊從各個方面驗證。

首先,在CIFAR-10數(shù)據(jù)集上,他們將Ghost模塊用在VGG-16和ResNet-56架構中,與幾個代表性的最新模型進行了比較。

超越<span><span><span><i style=

Ghost-VGG-16 ( s=2)以最高的性能(93.7%)勝過競爭對手,但算力消耗(FLOPs)明顯減少。在比VGG-16小得多的ResNet-56上,基于Ghost模塊的模型,將計算量降低一半,還能獲得可比的精度。

在論文中,他們提供了Ghost模塊生成的特征圖。下圖展示了Ghost-VGG-16的第二層特征,左上方的圖像是輸入,左紅色框中的特征圖來自初始卷積,而右綠色框中的特征圖是經(jīng)過廉價深度變換后的幻影特征圖。

超越<span><span><span><i style=

研究團隊表示,盡管生成的特征圖來自原始特征圖,但它們之間確實存在顯著差異,這意味著生成的特征足夠靈活,可以滿足特定任務的需求。

其次,在ImageNet數(shù)據(jù)集的分類任務上,他們測試了整個神經(jīng)網(wǎng)絡架構的性能,衡量的指標,是ImageNet驗證集上single crop的top-1的性能。

下圖展示了GhostNet與現(xiàn)有最優(yōu)秀的幾種小型網(wǎng)絡結構的對比,參賽選手包括MobileNet系列、ShuffleNet系列、ProxylessNAS、FBNet、MnasNet等。

超越<span><span><span><i style=

模型分為3個級別的計算復雜性,即~50,~150和200-300MFLOPs。通常FLOPs較大,這些小型網(wǎng)絡的準確性會更高——表明了它們的有效性。

GhostNet在各種計算復雜度級別上始終優(yōu)于其他競爭對手。研究團隊解釋稱,這主要是因為GhostNet在利用計算資源生成特征圖方面效率更高。

由于GhostNet是為移動設備設計,他們還使用TFLite工具,遵循MobileNet中的常用設置,使用Batch size為1的單線程模式,在基于ARM的手機(華為P30 Pro)上進一步測量GhostNet的實際推理速度,并與其他模型進行比較。

超越<span><span><span><i style=

如上圖所示,與具有相同延遲的MobileNetV3相比,GhostNet大約提高了0.5%的top-1的準確性,另一方面GhostNet需要更少的運行時間來達到相同的精度。

例如,精度為75.0%的GhostNet僅具有40毫秒的延遲,而精度類似的MobileNetV3大約需要46毫秒來處理一張圖像。

因此,研究團隊表示,GhostNet總體上勝過其他最新模型,例如谷歌MobileNet系列,ProxylessNAS,F(xiàn)BNet和MnasNet等等。

華為諾亞方舟實驗室研究成果

這一研究的核心作者,主要來自于華為諾亞實驗室。

第一作者是韓凱,此前研究機構為北京大學。第二作者是王云鶴,同樣畢業(yè)于北京大學。第三位作者是田奇,諾亞方舟實驗室首席計算機視覺科學家,也是這篇稿件的通訊作者。

這篇論文,是華為計算機視覺方向的最新研究成果之一。

此前在CVPR 2020年放榜時,王云鶴就曾在知乎上透露,其團隊一共有7篇論文被收錄。

他說,這些是他們小組辛辛苦苦攢了大半年的工作。emmm…

如果你對這一研究感興趣,可以收好下面的傳送門:

論文地址:

https://arxiv.org/abs/1911.11907

項目開源地址:

https://github.com/huawei-noah/ghostnet

 

責任編輯:張燕妮 來源: 量子位
相關推薦

2024-03-11 09:31:46

開源神經(jīng)網(wǎng)絡架構

2021-07-28 15:35:58

谷歌神經(jīng)網(wǎng)絡AI

2019-07-22 16:55:46

神經(jīng)網(wǎng)絡數(shù)據(jù)圖形

2024-02-22 16:19:20

2017-06-20 14:41:12

google神經(jīng)網(wǎng)絡

2020-03-16 10:16:19

代碼開發(fā)工具

2018-07-03 16:10:04

神經(jīng)網(wǎng)絡生物神經(jīng)網(wǎng)絡人工神經(jīng)網(wǎng)絡

2025-02-25 10:50:11

2018-07-25 09:36:34

開源技術 項目

2025-02-19 15:12:17

神經(jīng)網(wǎng)絡PyTorch大模型

2023-05-19 13:49:17

神經(jīng)網(wǎng)絡AI

2020-03-17 10:01:22

人工智能神經(jīng)網(wǎng)絡技術

2017-07-03 10:55:48

神經(jīng)網(wǎng)絡深度學習

2009-08-10 14:24:02

2017-05-22 14:45:51

大數(shù)據(jù)神經(jīng)網(wǎng)絡架構

2017-06-30 16:24:40

大數(shù)據(jù)神經(jīng)網(wǎng)絡NNabla

2017-09-10 07:07:32

神經(jīng)網(wǎng)絡數(shù)據(jù)集可視化

2025-02-25 14:13:31

2021-11-16 09:31:24

神經(jīng)網(wǎng)絡AI算法

2021-08-18 15:48:03

神經(jīng)網(wǎng)絡數(shù)據(jù)圖形
點贊
收藏

51CTO技術棧公眾號