999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

面向輕量級卷積網絡的激活函數與壓縮模型

2022-05-14 03:28:38徐增敏郭威偉趙汝文蔣占四
計算機工程 2022年5期
關鍵詞:分類深度模型

徐增敏,陳 凱,郭威偉,趙汝文,蔣占四

(1.桂林電子科技大學數學與計算科學學院,廣西桂林 541004;2.杭州海康威視數字技術股份有限公司,杭州 310052;3.桂林安維科技有限公司,廣西 桂林 541010;4.中國通信建設集團設計院有限公司第四分公司,鄭州 450052;5.桂林電子科技大學機電工程學院,廣西桂林 541004)

0 概述

卷積神經網絡的權重共享網絡是用于識別二維圖像的感知器。研究人員不斷增加網絡層數,以獲得更優的識別性能,如從最初僅7層的AlexNet[1]演化到16層的VGG[2]、22 層的GoogleNet[3]和152 層的ResNet[4],且模型訓練時占用大量的硬件資源。

在移動互聯網時代,人們對移動設備的使用頻率已經超過桌面設備。因此,僅利用移動端邊緣設備硬件資源就能快速運行的深度學習模型應運而生,如SqueezeNet[5]、MobileNet[6]、ShuffleNet[7]等 輕量級卷積神經網絡。

傳統的云端部署模型通過移動終端與云端的交互,滿足移動應用場景的需求。由于數據在傳輸過程中受網絡延遲、帶寬等因素的影響,因此該技術的發展受到限制。隨著移動設備計算能力和存儲能力的提升,MobileNet等輕量級卷積神經網絡應運而生,模型可以直接部署在移動設備或嵌入式設備上,并且具有較優的精度。微小的體積和高效的運行速度使得模型在邊緣終端中的應用更易實現。因此,性能較優的邊緣終端輕量級神經網絡成為研究熱點。

2017 年,國內的曠視科技推出一個高效運算且網絡參數較小的輕量級卷積神經網絡ShuffleNet[7],并提出通道混洗和點態組卷積。通道混洗技術使得特征能夠跨通道進行學習;點態組卷積技術能夠加快網絡運算,在提高計算效率的同時使網絡更加輕量化。2018 年,曠視科技推出ShuffleNet 的改進版本ShuffleNet V2[8],利用新標準衡量目標檢測模型的運行速度,在相同復雜度的情況下提升精度并加快運算速度。文獻[9]構建一種輕量型卷積神經網絡,通過對所有的疑似目標切片進行精確分類,以確定目標種類,從而識別空中紅外目標。文獻[10]利用輕量化的YΟLΟ 卷積神經網絡對視頻首幀進行目標識別,通過結合KCF 目標跟蹤算法與感知哈希算法對完成識別的目標進行跟蹤與矯正。優化后的算法能夠對復雜目標進行實時識別,具有較強的自適應能力。文獻[11]提出一種基于輕量化深度網絡的艦船目標識別方法,通過將深度可分離卷積和多尺度語義信息相融合,并對其進行改進,從而完成目標識別。在自建目標數據集保證Top-5 準確率達到93.5%的情況下,該方法降低了模型參數量與計算量。文獻[12]提出一種基于深度分離卷積、分組卷積等輕量化的高效卷積方式,設計用于圖像特征提取的不變分辨率卷積模塊和下采樣模塊,以此構建深度主干網絡,并對網絡進行剪枝。

文獻[13]提出一種面向資源受限平臺應用的輕量化特征提取結構DResNet,該方法的綜合性能均優 于MobileNet、ShuffleNet、MobileNet V2[14]等輕量化方法。文獻[15]提出基于注意力機制的輕量化算法,該算法對網絡進行剪枝后,能夠有效地減少冗余參數。文獻[16]提出一種模型規模小、計算復雜度低的預訓練SqueezeNet 模型。文獻[17]提出一種針對受限環境的輕量級簡化密碼算法LAES,在處理時間和隨機性方面具有一定優勢。文獻[18]提出一種Levy 飛行優化算法,以優化DCNN 的網絡結構,LFΟA 算法減少了DCNN 隱含層的神經元數目和音頻輸入特征的數目,提高了分類精度。該模型提高了6 種故障分類的準確率,為車輛健康狀況識別構建一種新的研究模型。

面向移動終端與嵌入式設備的模式識別,以及輕量級卷積神經網絡的結構調優是目前的研究熱點。本文提出一種改進的激活函數與壓縮模型。基于manifold of interest 分析激活函數,并結合ReLU 函數和swish 函數的優點,設計激活函數ReLU-h-swish,以解決網絡訓練過程中部分神經元無法被激活的問題,同時提出一種剔除卷積核的模型壓縮方法,減少參數量,實現模型壓縮的目的。

1 輕量級卷積神經網絡研究

1.1 MobileNet V1 模型

2017 年,針對移動終端和嵌入式視覺應用,谷歌推出卷積神經網絡模型MobileNet V1[6]。該模型利用深度可分離卷積構造輕量級權重深度神經網絡,其結構呈流線型,包含2 個能夠權衡準確率和延遲的全局超參數。該超參數使得模型構造器可以根據特定問題選擇合適大小的模型。MobileNet 的主要原理是利用深度可分離卷積代替傳統卷積,即利用深度卷積結合逐點卷積的方式,能夠有效保證信息流通暢,并且減少網絡權值參數量,達到模型壓縮的效果。

在以組為單位的傳統卷積神經網絡中,采用group convolution 卷積方式,即一組卷積核負責一組特征圖像。基于group原理,MobileNet將Depth-Wise Convolution看作是特殊的group convolution 操作,一個卷積核作用于一組特征圖像和一個通道,即將每個通道看作一個組,每個卷積核僅在特定的通道上進行卷積,使得卷積計算僅指向特定組的輸入,從而減少卷積的計算量。這樣的設計適用于移動端計算資源不足的情況,提高移動終端正向的計算效率。

1.2 激活函數的改進

1.2.1 ReLU 函數分析

在卷積神經網絡訓練時,ReLU 函數會使實際數據進入網絡時,無法激活部分神經元,即“神經元靜默”現象,同時使用ReLU 函數變換可能存在2 個問題:1)如果當前激活空間內有較完整的manifold of interest 時,經過ReLU 函數變換后可能會使激活空間坍塌,導致特征信息丟失;2)如果經過ReLU 函數變換后輸出非零值,那么在輸入與輸出之間進行線性變換,即輸入空間的一部分映射到全維輸出,因此ReLU 函數具有線性分類器的作用。

經過激活層后的張量被稱為manifold of interest。卷積神經網絡將ReLU 作為激活函數,就不可避免地損失該通道內的部分信息。輸入數據映射的維度越高,還原特征空間分布的效果越好,從而保留更多的原始信息。manifold of interest 的ReLU 變換示例如圖1所示。

圖1 manifold of interest 的ReLU 變換示例Fig.1 ReLU transformations examples of manifold of interest

根據文獻[14],假設有一個2 維的輸入數據,其manifold of interest變換如圖1(a)所示。隨機矩陣T將高維數據嵌入到n維空間中,并與上一個ReLU 進行變換,之后再將T-1投影到2 維平面上。該方法能夠獲得嵌入到n維空間manifold of interest 的圖形,便于與輸入數據的manifold of interest 進行對比。

當n=2 時,將manifold of interest 嵌入到2 維空間中。經過上述變換,可以得到圖1(b)。從圖1(b)可以看出,2 維空間中的manifold of interest 發生了形變,投影到二維平面上的圖像中心點坍塌,從而導致信息丟失。

當n=3 和n=5 時,將高維數據分別嵌入到3 維和5 維空間,經過ReLU 變換后按上述方法投影至2 維平面上,得到圖1(c)和圖1(d),可以看出,丟失的信息逐漸恢復,但是存在信息重疊的問題。

當n=15 和n=30 時,按同樣方法得到圖1(e)和圖1(f),可以看出,相比在2 維空間和3 維空間等低維空間,在高維空間使用ReLU 函數進行變換后恢復了較多的特征信息。

因此,在網絡訓練時使用ReLU 激活函數可能會使激活空間坍塌,造成特征信息丟失。在改進MobileNet網絡結構時,通過對ReLU 激活函數進行改進,或者使用其他性能更優的激活函數替換ReLU 激活函數,以提高模型的精度。

1.2.2 RReLU 函數分析

傳統ReLU 函數將負半軸的響應設置為0,部分神經元在訓練中“靜默”。如果在ReLU 函數的基礎上引入一個額外的可訓練參數,用于控制負半軸的響應,那么其改進函數RReLU(Randomized_Leaky_ReLU)[19]如式(1)所示:

其中:x為非線性激活函數f在第i個通道的輸入;ai控制負值部分斜率的系數,即需要在訓練過程中指定的參數,ai中的下標i為它允許非線性激活函數在不同通道上的變化,該變化可以相同也可以不同。

RReLU 函數需要在訓練過程中確定引入的參數,Leaky_ReLU[20]函數如式(2)所示:

當式(1)中的ai是一個可學習的參數時,RReLU函數如式(3)所示:

當ai=0 時,式(1)為傳統的ReLU 函數;當ai為較小的固定值時(例如ai=0.01),RReLU 函數變為Leaky_ReLU 函數。由于Leaky_ReLU 的導數不為0,因此負值輸入都有一個梯度,減少“神經元靜默”現象的發生。相比整個網絡的參數量,RReLU 激活函數只增加了較少的參數量。

1.2.3 自門控函數分析

自門控函數[21]是谷歌大腦推出的激活函數,如式(4)和式(5)所示:

自門控函數圖像如圖2 所示。當β=1 時,自門控函數等價于Sigmoid加權線性單元,且適用于強化學習。當β=0 時,自門控函數變換成為比例線性函數,f(x)=x/2。當β→∞時,自門控函數變換為ReLU 函數,說明可以將自門控函數swish看作是一個平滑函數。該函數在線性函數和ReLU 函數之間進行線性插值。如果將β設置為可訓練的參數,那么插值度可由模型自身進行控制。

圖2 自門控函數圖像Fig.2 Self-gating function images

swish 函數本質上是Sigmoid 函數的變形,存在收斂緩慢的問題。盡管這種非線性函數能夠有效提高精度,但是對于嵌入式環境,其計算成本較大。因此,本文對swish 函數進行改進,使其適用于輕量級網絡,采用ReLU 函數 替換Sigmoid 函數,如式(6)所示:

ReLU6 函數是最大輸出限制為6 的ReLU 函數,在移動設備float16 低精度時,其具有較優的數值分辨率。如果對ReLU 函數激活范圍不加以限制,其輸出范圍為0 至正無窮。當激活函數的輸出值較大時,float16 難以精確地描述大范圍的數值,從而導致精度降低。改進的swish 自門控函數稱為hard-swish函數[22],如式(7)所示:

hard-swish 函數的圖像與原swish 函數圖像相似。相比swish 函數,在移動設備上部署帶有hard-swish 函數的模型具有更多的優勢。網絡層數越深,分辨率越低,每層的激活內存就會減半,應用非線性函數的成本降低[22]。

1.2.4 ReLU-h-swish 函數

由于修正單元在x神經元輸入的半個區間內為線性函數,在另一半區間為非線性函數,因此ReLU 相當于x的一個分段線性函數[23]。研究人員認為修正神經元具有腦神經的稀疏激活性,盡管其具有嚴格的非線性和在零處的不可微性,但是相比雙曲正切網絡,其具有相等或更優的性能,并接近腦神經接收信號的激活模型[24]。

本文對ReLU、RReLU 和swish 函數進行分析,通過對ReLU 函數引入可訓練參數,以解決神經元靜默的問題。對于swish 函數,本文通過將函數中的Sigmoid 函數替換為ReLU6,以減少在移動設備上的計算成本。因此,本文結合ReLU 函數與hard-swish函數的優點,提出全新的激活函數ReLU-h-swish,如式(8)所示:

其中:當x>0 時,因純線性輸入值x導數固定為1,其收斂速度比Sigmoid、Tanh 函數快,從而解決在訓練過程中swish 函數收斂速度過慢的問題;當x≤0 時,為緩解ReLU 出現神經元靜默,以及激活值過大影響輕量級卷積網絡模型體積的問題,采用hard-swish 函數抑制激活值的線性增長。

雖然hard-swish 函數具有較少的計算量,但是其消除了近似Sigmoid 函數不同可能造成的數值精度損失。而且,當卷積網絡層數加深時,應用非線性的計算開銷會逐漸下降,每層的激活內存通常會在分辨率下降時減半。因此通過減少內存訪問次數,以大幅降低延遲開銷,解決swish 函數在反向傳播時求解誤差梯度涉及大量參數計算的問題,從而達到加快收斂速度的目的[22]。

swish函數、hard-swish 函數和ReLU-h-swish 函數圖像對比如圖3 所示,本文提出的ReLU-h-swish激活函數圖像與swish 函數和hard-swish 函數十分接近。當接收到正值輸入時,ReLU-h-swish 激活函數相比于swish 函數和hard-swish 函數能更快速地收斂;當接收到負值輸入時,函數圖像為非單調凸函數,能夠以較低的計算成本應用在移動設備上。

圖3 3 個函數圖像對比Fig.3 Comparison of 3 function images

1.3 卷積信息完整性分析

一個標準卷積的操作(DK,DK,M,N)表示為:卷積核的寬高為(DK,DK);M為輸入的通道數;N為輸出的通道數,即卷積核個數。卷積前輸入特征尺寸為(DF,DF,M),卷積后輸出特征的尺寸為(DF,DF,N)。在卷積過程中,每個卷積核對圖像區域進行DF×DF次掃描,因此標準卷積參數量為(DK×DK×M)×N,計算量為(DK×DK×M)×N×DF×DF。

根據MobileNet V1 設計的網絡結構,深度可分離卷積將標準卷積操作分解為深度卷積和逐點卷積[6]。其中深度卷積負責濾波,尺寸為(DK,DK,1),共M個輸入通道,作用在輸入的每個通道上,逐點卷積負責轉換通道,尺寸為(1,1,M),共N個輸出通道,作用在深度卷積的輸出特征圖上。MobileNet 的DK=3,且每個卷積層的輸出通道N與下一個卷積層的輸入通道數M相等。

因此,MobileNet V1 中每個深度卷積層的參數量為(DK×DK×1)×M,每個逐點卷積層的參數量為(1×1×M)×N。每個深度可分離卷積層的參數量是標準卷積層的

假設M=N,深度卷積為g=M=N的分組卷積,沒有直接將g組結果進行拼接,因此深度卷積參數量是標準卷積的1/N。然而逐點卷積采用1×1 卷積將g組結果進行拼接,逐點卷積參數量是標準卷積的

MobileNet V1 中不同卷積的參數量所占模型總參數量的比例分別為[6]:1×1 逐點卷積占74.59%,3×3深度卷積占1.06%,3×3 標準卷積占0.02%,全連接層占24.33%。模型95% 的計算時間用于1×1 逐點卷積。

1.4 MobileNet V1 模型的壓縮方法

卷積神經網絡模型的參數量越少,所需的存儲空間就越小,計算量也會減少。隨著參數量的減少,模型的精度也會降低。因此,輕量級卷積神經網絡的模型壓縮需要在精度與參數量之間進行權衡。

MobileNet V1 共有28 層卷積。第1 層標準卷積是3×3 卷積,包含的參數比較少,因此去除這層對于整體參數量的影響不大,不對第1 層卷積進行壓縮。深度卷積比標準卷積的計算量少,并且深度卷積具有相同的輸入通道與輸出通道,因此移除深度卷積核對整體參數量影響較小。本文將模型壓縮的目標放在了逐點卷積上,相應的壓縮流程分為4 個步驟:1)訓練模型原型,記錄參數量;2)從一層逐點卷積開始,核對卷積核大小與輸入尺寸;3)刪去2n(n=1,2,…,n)個卷積核,重新訓練模型并記錄參數量,對比參數減少量;4)重復步驟2,直到模型精度與參數量保持平衡。

綜上所述,本文所提模型壓縮方法僅剔除部分逐點卷積的卷積核個數。如果在模型壓縮過程中刪除的逐點卷積核個數為,那么模型有效信息的完整性可表示為:(總參數量-1×1×M×)/總參數量。隨著被刪去的逐點卷積核個數增加,模型的精度將逐漸下降。

在刪除不必要卷積核的過程中,下一層卷積層的輸入應與上一層的輸出相對應。由于MobileNet V1 輕量網絡結構設計的原因,在深度卷積之后會再接一個批量歸一化層,因此在保持卷積層輸出與下一層卷積層輸入對應的同時,還需注意批量歸一化層中對應的參數。

在訓練模型的權重參數過程中,有些卷積核參數值趨近于0,盡管這些參數對于模型的精度影響較小,但是需要較多的時間學習。因為不必要的網絡參數量會增加模型計算量和存儲空間,所以本文嘗試去除數值較小的卷積核,以達到模型壓縮的目的。

2 實驗結果與分析

本節主要對比模型壓縮前后的效果,以及所提激活函數在模型訓練過程中的性能。

2.1 實驗設置

本文實驗分為2 個部分:根據MobileNet V1 模型結構調整后的實驗和根據改進MobileNet V1 模型成型后的模型壓縮實驗。

針對MobileNet V1 網絡結構的改進,根據1.2.1 節ReLU 函數存在信息丟失的缺點,為避免信息丟失情況的發生,本文對MobileNet V1 的卷積單元進行改進,如圖4 所示。

圖4 MobileNet V1 卷積單元結構Fig.4 Structure of MobileNet V1 convolution unit

從圖4(b)可以看出,改進后的卷積單元將原結構中最后一個影響精度的ReLU 函數層去掉,并且將深度卷積之后的ReLU 函數改為本文提出的全新激活函數ReLU-h-swish 函數。本文將改進后的MobileNet V1 模型稱為MobileNet-rhs,以下實驗與應用設計都用該名稱來區別MobileNet V1。

2.2 基于改進算法的實驗分析

為驗證ReLU-h-swish 算法的有效性,本文分別對swish、hard-swish、RReLU 和ReLU-h-swish 算法的性能進行對比。

2.2.1 CIFAR-10 數據集

CIFAR-10 數據集共包含60 000 張彩色三通道圖片,含有10 個分類,每個分類包含6 000 張圖片。該數據集含有50 000 張適用于神經網絡訓練的圖片,10 000 張適用于神經網絡訓練過程中測試驗證的圖片,兩者構成測試集。

基于MobileNet V1 模型,本文分別引入swish函數、hard-swish 函數、RReLU 函數和ReLU-h-swish激活函數構建MobileNet-swish、MobileNet-hswish、MobileNet-optirelu和MobileNet-rhs模型。在CIFAR-10數據集上,MobileNet V1 模型與其他模型的分類準確率對比如表1 所示,表中加粗數字為最優數據。

表1 在CIFAR-10 數據集上不同模型的分類準確率對比Table 1 Classification accuracy comparison among different models on CIFAR-10 dataset %

本文采用數據打點的方式對表1 中的模型的收斂性進行繪圖分析。在每個epoch 內執行迭代第100 的整數倍時,從測試批的同個標簽下的測試圖片中,隨機抽取一張圖片進行損失值和精度值統計,然后把統計結果輸出到文件中,最后將統計出來的數據打點繪制成折線圖的形式。在測試集上4 種模型的分類準確率對比如圖5 所示(彩色效果見《計算機工程》官網HTML 版)。

圖5 在測試集上不同模型的分類準確率對比Fig.5 Classification accuracy comparison among different models on testing set

從圖5 可以看出,MobileNet-rhs 模型具有最優的分類準確率,其他3 種激活函數的分類準確率較相近。hard-swish 函數相對于swish 函數適當降低了兩種情況下的計算成本,且沒有影響原swish 函數的性能,因此hard-swish 函數更適合移動終端平臺。4 種模型的損失值對比如圖6 所示(彩色效果見《計算機工程》官網HTML 版)。

圖6 在測試集上不同模型的損失值對比Fig.6 Loss values comparison among different models on testing set

從圖6 可以看出,引入ReLU-h-swish 函數構建的MobileNet-rhs 模型的損失值最低,其次是MobileNet-optirelu 模型,但是其收斂速度較慢。損失值最高的是引入swish 函數和hard-swish 函數分別構建 的MobileNet-swish 和MobileNet-hswish 模 型。圖5、圖6說明ReLU-h-swish激活函數均獲得最高分類準確率與最低的損失值,在訓練過程中既沒有較大的波動又能保持較快的收斂速度。ReLU-h-swish激活函數緩解了ReLU 函數神經元靜默的問題,相比swish函數,其計算成本較低,更適合移動終端平臺。

2.2.2 CIFAR-100 數據集

CIFAR-100有100個類別,并且每個類別包含600張圖像,每類別各有500 張訓練圖像和100 張測試圖像。如無特殊說明,本文以下實驗均在CIFAR-100 上進行,采用不同的訓練策略,將epoch 數由10 上調至200,并將每個epoch 中輸入圖像的數量由16 上調至128;學習率設置衰減策略,由CIFAR-10 實驗中的0.001 調整為0.1,并在第60、120、160 個epoch 時衰減至0.02、0.004、0.000 8。因此,在MobileNet V1 上引入6 種激活函數的Top-1、Top-5 測試分類準確率如表2 所示。

表2 在MobileNetV1 模型上引入不同激活函數的分類準確率對比Table 2 Classification accuracy comparison of MobileNetV1 model with different activation functions %

從表2可以看出,改進后的模型分類準確率較原模型都有提升,而在CIFAR-100 數據集上本文提出的MobileNet-rhs模型相比MobileNet-relu模型的Top-1分類準確率上提升了約5個百分點,相對其他模型也均有提升。

除MobileNet V1 模型以外,本文還對其他輕量級卷積神經網絡ShuffleNet[7]、ShuffleNet V2[8]進行實驗,并將這2 個神經網絡中使用的ReLU 函數直接替換為ReLU-h-swish 激活函數,訓練超參數與原文的超參數設置保持一致,最終結果得到小幅度提升,如表3所示。

表3 在ShuffleNet模型上引入不同激活函數的分類準確率對比Table 3 Classification accuracy comparison of ShuffleNet models with different activation functions %

2.3 模型壓縮實驗結果分析

MobileNet V1 設定寬度乘數因子α和分辨率乘數因子β2 個超參數。寬度乘數因子具有降低激活空間維度的作用,分辨率乘數因子可以改變輸入數據的分辨率,也能減少參數。在壓縮MobileNet V1模型之前,本文首先測試模型的精度,以此為基準衡量MobileNet V1 模型的壓縮效果。MobileNet-rhs 模型的性能指標如表4 所示。

表4 MobileNet-rhs 模型的性能指標Table 4 Performance indexs of MobileNet-rhs model

根據1.4 節的壓縮流程,本節超參數的設置與CIFAR-100 實驗保持一致。MobileNet V1 中的逐點卷積結構如表5 所示。其中,s1 表示步長為1,即stride=1,層表示第幾層逐點卷積[6]。為快速得到較理想的壓縮結果,本文從表5 中第13 層逐點卷積開始執行壓縮流程,即卷積核大小為1×1×1 024×1 024的逐點卷積。

表5 MobileNetV1 模型的逐點卷積結構Table 5 Pointwise convolution structure of MobileNetV1 model

經過一輪遍歷搜索之后發現,當n=8時,即第13層逐點卷積剔除256 個卷積核后滿足壓縮流程的要求,壓縮第13 層后MobileNetV1 模型的逐點卷積結構信息如表6 所示,壓縮第13 層后的MobileNet-rhs 性能如表7 所示。

表6 壓縮第13 層后MoblieNetV1 模型的逐點卷積結構Table 6 Pointwise convolution structure of MobileNetV1 model after 13th layer’s compression

表7 壓縮第13 層后的MobileNet-rhs 模型性能指標Table 7 Performance indexs of MobileNet-rhs model after 13th layer’s compression

相比MobileNet-rhs 模型的原始參數,壓縮第13 層后MobileNet-rhs 模型的參數量減少了288 512,即減少約8.7%的參數量。在模型精度方面,Top-1 和Top-5 的精度減少0.91 和0.38 個百分點。因此,壓縮模型具有高精度。

本文對第11 層和第12 層逐點卷積進行壓縮,當n=6 時,即第11 層逐點卷積剔除64 個卷積核,當n=7時,即第12 層逐點卷積剔除128 個卷積核之后滿足壓縮流程,壓縮后MobileNetV1 模型的逐點卷積結構如表8 所示。

表8 壓縮第11 和12 層后MobileNetV1 模型的逐點卷積結構Table 8 Pointwise convolution structure of MobileNetV1 model after 11th,12th layer’s compression

因剔除了第12 層逐點卷積核的數量,導致第2 層輸出通道減少,因此第13 層的輸入通道數也要相應減少至896,之后壓縮實驗卷積核大小變化依此類推。壓縮第11 和12 層后的MobileNet-rhs 模 型Top-1 和Top-5的分類準確率分別為68.89%和87.86%,參數量為2 770 276。相比原模型MobileNet-rhs 的性能指標,壓縮第11、12 層后模型的參數量減少了545 152,即減少了約16.4%的參數量,Top-1 和Top-5 分類準確度分別減少1.21 和0.76 個百分點。

最終停止在第9 層逐點卷積上,再向上剔除卷積核之后的效果可忽略不計。若再從第13 層開始進一步剔除卷積核會導致模型精度大幅降低,因此壓縮流程結束,最終壓縮后MobileNetV1 模型的逐點卷積壓縮結構如表9 所示。

表9 最終壓縮后MobileNetV1 模型的逐點卷積結構Table 9 Pointwise convolution structure of final compressed MobileNetV1 model

當壓縮進行至第9 層逐點卷積時,本文訓練的模型精度和參數量減少比例相對理想,訓練模型的超參數基于2.2.2 節未改變。相比原模型MobileNet-rhs,壓縮后的MobileNet-rhs 模型的參數量減少了592 416,即減少17.9%的參數量,如表10 所示。

表10 壓縮結束后的MobileNet-rhs 性能指標Table 10 Performance index of MobileNet-rhs after final compression

2.4 基于Android 的輕量級卷積網絡應用

根據上述理論和實驗分析,在Android 平臺上,本文將以圖像分類為基礎進行app 開發,實現基于圖像分類的手機相冊圖片自動歸類。

本文app 應用借助Tensorflow[25]平臺實現移動終端的模型部署,整個項目使用多模塊開發,其中除了Tensorflow 核心功能實現的模塊,還有app 的核心功能實現的模塊。開發環境操作系統為macΟS Catalina 10.15.3、集成開發環境為Android Studio 3.6.1、語言為Kotlin 1.3+、深度學習平臺為Tensorflow 2.1.0。

本文采用Kotlin 協程處理數據加載,與線程的區別在于,它是運行在單線程中的并發程序,省去了傳統多線程并發機制中線程切換時帶來的線程上下文切換、線程狀態切換、線程初始化時的性能損耗,能夠大幅提高并發性能。

在本實例協程主要調用Tensorflow 模塊函數對獲取到的圖片進行分類,處理完成后將結果傳遞搭配LiveData 中,UI 層刷新界面,最終效果如圖7 所示。

圖7 圖像分類相冊應用Fig.7 Application of image classifcation album

3 結束語

本文提出一種改進的激活函數和壓縮神經網絡模型。以MobileNet V1 作為骨干網絡,結合ReLU函數和swish 函數的優點,設計激活函數ReLU-hswish,通過優化卷積單元結構,以減少特征信息丟失。為減少輕量級卷積網絡的計算開銷,采用剔除卷積核的方法對模型進行壓縮,從而減少逐點卷積的參數量。在此基礎上,將訓練好的模型部署到安卓平臺,實現圖像分類相冊的應用。在CIFAR-10 和CIFAR-100 數據集上的實驗結果表明,相比swish、hard-swish 等函數,引入ReLU-h-swish 函數構建MobileNet-rhs 模型的Top-1 分類準確率為80.38%,相比MobileNet-rhs 模型,壓縮后MobileNet-rhs 模型的參數量減少了17.9%,其Top-1 分類準確度僅減少2.28 個百分點。后續將結合生物神經學,構建符合類腦神經元的信號稀疏激活模型,并通過結構重參數化技術研究模型推理加速的方法,進一步提高輕量級卷積神經網絡的性能。

猜你喜歡
分類深度模型
一半模型
分類算一算
深度理解一元一次方程
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
分類討論求坐標
深度觀察
深度觀察
深度觀察
數據分析中的分類討論
主站蜘蛛池模板: 99激情网| 免费xxxxx在线观看网站| 久久这里只有精品国产99| 亚洲欧洲日本在线| 一区二区三区毛片无码| 亚洲人成网7777777国产| 日韩精品久久久久久久电影蜜臀| 91久久偷偷做嫩草影院电| 国产成人精品一区二区| 亚洲码一区二区三区| a毛片基地免费大全| 国产成人精品优优av| 精品人妻一区二区三区蜜桃AⅤ| 欧美亚洲国产一区| jizz在线观看| 欧美精品v| 亚洲男人天堂2018| 日日拍夜夜嗷嗷叫国产| 国产成人a在线观看视频| 欧美国产日韩在线| 国产乱子伦视频在线播放| 一本无码在线观看| 日韩无码黄色| 精品视频一区在线观看| 国产又粗又爽视频| 在线精品自拍| 国产在线观看一区精品| 五月婷婷综合网| 国产精品开放后亚洲| 亚洲综合第一区| 91蜜芽尤物福利在线观看| 国产福利一区二区在线观看| 中国一级特黄视频| 成人第一页| 亚洲 日韩 激情 无码 中出| 91黄色在线观看| 亚洲国产精品一区二区第一页免 | 欧洲精品视频在线观看| 天堂亚洲网| 色老头综合网| 成年看免费观看视频拍拍| 97狠狠操| 国产亚洲欧美另类一区二区| 天天摸夜夜操| 久久综合国产乱子免费| 午夜无码一区二区三区| 免费激情网址| 特级毛片免费视频| 久久99热这里只有精品免费看| 五月天婷婷网亚洲综合在线| 亚洲人妖在线| 广东一级毛片| 国产色婷婷| 国产精品亚洲一区二区在线观看| 亚洲熟女中文字幕男人总站| 福利在线不卡| 精品视频一区在线观看| 无码AV日韩一二三区| 欧美综合区自拍亚洲综合天堂| 久久91精品牛牛| 99免费视频观看| 狠狠色噜噜狠狠狠狠色综合久| 日本成人在线不卡视频| 在线国产你懂的| 婷婷午夜影院| AV无码国产在线看岛国岛| 亚洲国产日韩在线观看| 欧美一级99在线观看国产| 久久综合婷婷| 精品国产成人国产在线| www.国产福利| 国产激爽大片在线播放| 国产极品粉嫩小泬免费看| 国产免费黄| 蝴蝶伊人久久中文娱乐网| 欧美精品啪啪一区二区三区| 99这里只有精品6| 国产丝袜91| 欧美精品啪啪一区二区三区| 色婷婷啪啪| 亚洲国产看片基地久久1024 | 亚洲精品爱草草视频在线|