舒睿俊,趙生捷
(1.同濟大學電子與信息工程學院,上海 201804;2.中國科學院上海微系統(tǒng)與信息技術研究所仿生視覺系統(tǒng)實驗室,上海 200050)
近年來,DNN 在機器視覺應用中表現(xiàn)出了非常出色的性能[1-4]。在物聯(lián)網(wǎng)系統(tǒng)中,由于移動邊緣設備通常無法支撐計算密集型的DNN 處理,所以通常將DNN 模型劃分成邊緣子模型和云端子模型兩部分,分別部署在移動邊緣設備和云服務器,由它們協(xié)作完成推理過程。在推理過程中,邊緣子模型生成的深度特征需要先進行壓縮再通過無線信道傳輸,以降低傳輸開銷。以往研究[5-15]提出的深度特征壓縮方法通常復雜度較高,壓縮率也受限。為了應對上述挑戰(zhàn),提出了一種基于輕量級卷積神經(jīng)網(wǎng)絡的協(xié)作智能深度特征壓縮方法。該方法設計了一種簡單高效的深度特征壓縮器,稱為LCFC,它利用輕量級卷積神經(jīng)網(wǎng)絡和均勻量化器對深度特征進行有效壓縮和重構,能顯著提升深度特征的壓縮率并合理控制了計算開銷。
協(xié)作智能系統(tǒng)的整體結(jié)構如圖1 所示。在協(xié)作推理中,DNN 模型劃分為邊緣子模型(記為Medge)和云端子模型(記為Mserver)兩部分,分別部署在移動邊緣設備和云服務器上。
圖1 協(xié)作智能系統(tǒng)整體架構
由于DNN 模型中的深度特征通常包含較大的信息冗余,而且DNN 模型本身具有很強的容錯特性,所以設計了深度特征壓縮器對深度特征進行壓縮后再傳輸,以降低傳輸開銷。深度特征壓縮器由深度特征壓縮模塊(記為Dedge)和深度特征重構模塊(記為Dserver)組成,分別部署在移動邊緣設備和云服務器上。同時,為了避免增加過多計算和存儲開銷,設計的Dedge和Dserver是輕量級的。
邊緣設備采集的輸入數(shù)據(jù)(如圖片、視頻等)依次經(jīng)過Medge、Dedge、無線通道、Dserver和Mserver的處理,最終生成推理結(jié)果。
Dedge的整體結(jié)構如圖2 所示。Dedge部署在移動邊緣設備端,包括三個子模塊:深度特征空間維度壓縮子模塊(記為Ds)、深度特征通道維度壓縮子模塊(記為Dc)和量化子模塊(記為Q)。其中,Ds和Dc分別用于壓縮深度特征張量的空間維度和通道維度,以減少深度特征張量的規(guī)模;Q 則是使用更少比特數(shù)目來傳輸特征值。
圖2 深度特征壓縮模塊結(jié)構
Ds的結(jié)構由卷積層(卷積核大小為c×c×3×3,卷積步長為s)、BN 層和ReLU 激活層組成。Ds接收到Medge生成的待壓縮的原始深度特征張量f∈?c×h×w,其中,c、h和w分別表示特征張量的通道數(shù)、高度和寬度,對f進行處理,生成空間維度壓縮特征,其中h′和w′分別表示壓縮后特征張量的高度和寬度。h′、w′和h、w之間的關系如式(1)所示:
Dc的結(jié)構由卷積層(卷積核大小為c×c′×1×1,c′<c,卷積步長為1)、BN 層和Sigmoid 激活層組成。Dc接收到Ds生成的特征fs后,對fs進行處理,生成通道維度壓縮特征。在Dc中,使用Sigmoid 函數(shù)作為激活函數(shù),目的是使特征值被限制在(0,1)之間,以降低特征異常值對后續(xù)量化子模塊的影響。
Q 接收到模塊Dc生成的特征fc后,對fc進行處理,將原來使用32 bit 表示的浮點型特征值轉(zhuǎn)換為使用nbit 表示的整型特征值,生成量化壓縮特征。處理過程如式(2)所示:
式中,n表示量化所用的位寬,Vmax和Vmin分別表示fc中所有特征的最大值和最小值,round 表示舍入操作。
Dserver的結(jié)構如圖3 所示。Dserver部署在云服務器,包括三個子模塊:去量化子模塊(記為Q*)、深度特征通道維度重構子模塊(記為)和深度特征空間維度重構子模塊(記為)。其中,Q*用于恢復使用32 bit 表示的浮點型特征值,和則分別用于恢復深度特征的原始通道維度和空間維度。
圖3 深度特征重構模塊結(jié)構
Q*收到Q 生成的量化壓縮特征fq后,執(zhí)行去量化過程,生成去量化壓縮特征。處理過程如式(3)所示:
由于量化過程(參考式(2))中的舍入操作會產(chǎn)生舍入誤差,所以特征是fc的近似。
根據(jù)對2.1 節(jié)中深度特征壓縮模塊各個子模塊的分析可知,模型切分點位置決定了待壓縮深度特征f的c、h和w,只要給定Ds中卷積步長s、Dc中卷積核數(shù)目c′和Q 中的量化位寬n,就可以計算出深度特征壓縮模塊對深度特征f∈?c×h×w進行壓縮處理的整體壓縮率(Compression Rate,CR)。具體的計算方法如式(4)所示:
3.1.1 數(shù)據(jù)集
選擇CIFAR-100 圖片分類任務作為智能協(xié)作推理的應用場景,該數(shù)據(jù)集有100 個類,每個類有600張大小為32×32 的彩色圖像,其中500 張作為訓練集,100 張作為測試集。實驗中,將在CIFAR-100 的訓練集上訓練DNN 模型和深度特征壓縮模塊,并在CIFAR-100 的測試集上測試推理性能。
3.1.2 基礎模型
為了評估提出的方法,選擇一種廣泛使用的DNN 結(jié)構ResNet 網(wǎng)絡[16]作為圖片分類任務的基礎模型。選擇ResNet 族中ResNet-50 和ResNet-18 這兩個模型作為評估模型,分別代表復雜模型和輕量化模型兩種類型。ResNet-50 和ResNet-18 的網(wǎng)絡配置大致遵循文獻[16]中的描述,但是針對CIFAR-100應用,在conv1 層中將卷積核大小更改為3×3 并將卷積操作的步幅修改為1。
3.1.3 切分點位置
在協(xié)作推理的實際部署中,為了盡可能降低移動邊緣設備的處理能耗和推理延遲,切分點通常選擇在DNN 模型的淺層。因此,在實驗中,選擇了ResNet-18 和ResNet-50 淺層的四個切分點,分別記為P1、P2、P3 和P4,如表1 所示。
表1 切分點
3.1.4 訓練設置
在訓練過程中,每個樣本首先隨機水平翻轉(zhuǎn),然后將維度擴充到40×40,最后隨機裁剪到32×32,以進行數(shù)據(jù)增強。同時,將凍結(jié)預先訓練好的DNN 模型的參數(shù),只訓練深度特征壓縮器的參數(shù),這樣能夠消除DNN 模型參數(shù)變化對深度特征壓縮帶來的影響。
使用交叉熵損失(Cross-Entropy loss,CE)作為優(yōu)化目標,優(yōu)化器是Adam,學習率設為0.001。
為了盡可能地壓縮中間特征,又不損失太多的準確性,在實驗中,將推理精度退化容忍門限設置為1%。
為了評估所提出的深度特征壓縮器的壓縮性能,選擇文獻[15]中提出的深度特征壓縮器bottlenet作為基線。兩個壓縮器都配置使用8位均勻量化器。
先通過訓練使得ResNet-18 達到了76.31%的準確率,ResNet-50 達到了78.7%的準確率。盡管它們不能在CIFAR-100 上達到最先進的分類性能,但重點是基于這兩個基礎模型測試該方法的壓縮能力。
LCFC 深度特征壓縮器和bottlenet 深度特征壓縮器在ResNet-18 上的四個切分點的深度特征壓縮率的比較如圖4 所示。與bottlenet 相比,LCFC 在四個切分分點上的深度特征壓縮率都超過了bottlenet,具體而言,在切分點P1 和P2 上特征壓縮率提升了43%,在切分點P3 上特征壓縮率提升了29%,在切分點P4 上,特征壓縮率提升了11%,四個切分點上特征壓縮率平均提升了31.5%,說明LCFC 壓縮性能更有效。
圖4 ResNet-18上特征壓縮器性能比較
LCFC 深度特征壓縮器與bottlenet 深度特征壓縮器在ResNet-50 上的四個劃分點的深度特征壓縮率的比較如圖5 所示。與bottlenet 相比,LCFC 在四個切分點上的特征壓縮率都超過了bottlenet,具體而言,在切分點P1、P2 和P3 上特征壓縮率提升了33%,在切分點P4 上特征壓縮率提升了20%,四個切分點上特征壓縮率平均提升了29.8%,說明LCFC 壓縮性能更有效。
圖5 ResNet-50上特征壓縮器性能比較
文中提出了一種面向物聯(lián)網(wǎng)系統(tǒng)機器視覺應用的協(xié)作智能深度特征壓縮方法。具體而言,設計了一種基于輕量級卷積神經(jīng)網(wǎng)絡的深度特征壓縮方法,其能夠在帶來少量計算開銷的情況下更有效地壓縮深度特征。同時,進行了充分的實驗來驗證提出方法的有效性。實驗結(jié)果表明,提出的方法能顯著提升深度特征的壓縮率。