王繼良,周四望,金燦燦
(1.湖南大學信息科學與工程學院,湖南長沙 410082;2.長沙環境保護職業技術學院,湖南長沙 410004)
壓縮感知是研究數據采樣壓縮與重構的信號處理新理論[1-3].壓縮感知理論突破了奈奎斯特采樣定理的限制,能降低圖像獲取成本、節省圖像的存儲空間和傳輸開銷,在圖像處理領域已經取得了成功應用.迄今為止,已有多種圖像壓縮感知算法被提出,目標是獲得更高的圖像重構質量.經典的圖像壓縮感知重構算法包括基于消息傳遞AMP 框架的算法[4,5]、應用于二進制圖像的壓縮感知算法[6]、自適應壓縮感知算法[7].我們則提出了基于分塊的圖像壓縮感知算法[8,9].壓縮感知理論有著嚴謹、完備的數學基礎,但圖像重構算法復雜度高,運行時間長.
受深度學習研究進展的鼓舞,近年來研究人員開始探索基于深度神經網絡的圖像壓縮感知算法[10-12].深度學習壓縮感知利用深度神經網絡的學習能力,在有標簽的訓練集中學習從原始輸入樣本到重構樣本的映射,實現壓縮感知重構.ReconNet 是較早提出的壓縮感知深度網絡模型[13],文獻[14]對此網絡模型做了改進,通過聯合學習測量進程和重構進程來優化壓縮感知測量矩陣,在低采樣率下有更好的重構性能.受分塊壓縮感知算法的啟發,文獻[15-16]提出CSNet 網絡結構,圖像壓縮采用分塊方法,但用一個深度網絡實現整體圖像重構,從而提高了圖像重構質量.我們對CSNet 做了深入研究,根據圖像各塊的重要性自適應分配采樣率,進一步提高了CSNet 的重構效果[17].和傳統壓縮感知方法相比,深度學習算法有顯著更快的重構速度,在低采樣率時有更好的圖像重構效果.
然而,高質量的重構圖像更容易被圖像分類算法自動識別,帶來了隱私保護問題.圖像識別是指通過特征提取算法提取圖像樣本的特征,再通過分類器將圖像樣本劃分到一定的類別中,從而實現自動分類.Hinton 和A.Krizhevsky 設計的深度神經網絡AlexNet 是機器識別發展的一個里程碑[18].在此基礎上,VGG[19]、ResNet[20]和EfficientNet[21]等深度網絡陸續被提出,獲取了更高的分類識別精度.以人臉圖像識別為例,目前分類算法的識別精度已經超過了人類本身,“刷臉”進站、“刷臉”支付等極大地方便了人們的生活.然而,圖像自動識別是一把“雙刃劍”.更高的圖像識別率往往意味著更多的圖像隱私被暴露.圖像被隱藏于網絡中的機器模型自動識別,帶來安全隱患.
本文研究圖像壓縮感知中的安全問題.我們注意到深度學習模型存在某種程度的脆弱性.在文獻[22]中,一個“鯨魚”圖像樣本被對抗算法修改,雖然視覺上依然是“鯨魚”,但識別算法失效了,“鯨魚”樣本被誤識別成了“烏龜”.對抗算法的核心思想是擾動樣本,生成對抗樣本,迷惑圖像分類模型,使之失效[23-24].從中受到啟發,本文提出對抗的圖像壓縮感知方法,利用機器模型的脆弱性來保護圖像重構樣本.我們提出的壓縮感知方法同時兼具壓縮和對抗的功能,其生成的重構圖像也是一個對抗樣本,在保證圖像質量的同時,能對抗圖像分類算法,保護圖像隱私.
本文的主要內容組織如下:第1 節提出一種基于對抗樣本的圖像壓縮感知方法;第2 節設計實驗以驗證所提方法的性能;在第3節給出結論.
我們的目標是將安全性融入壓縮感知網絡,使得壓縮感知算法同時兼具壓縮和對抗兩項功能.壓縮感知算法的安全性通過對抗樣本技術加以實現,重構圖像不會影響視覺效果,但能對抗圖像分類算法,降低圖像分類算法的識別率,客觀上起到保護圖像隱私的效果.
現有的深度學習壓縮感知方法通常用一個壓縮子網來實現圖像的采樣壓縮,再用一個重構子網實現圖像重構.一般地,壓縮感知算法的深度網絡模型如圖1所示.

圖1 壓縮感知算法的深度網絡模型Fig.1 Deep learning model for compressed sensing
網絡由壓縮子網S和重構子網G組成.壓縮子網S以原始景象xi為輸入,輸出采樣測量值si:

重構子網則努力由采樣測量值si恢復原始景象xi,即

用|si|和|xi|分別表示|si|和|xi|的大小,則|si|/|xi|的比值即為壓縮子網S 的采樣率,或者稱為壓縮比.壓縮感知深度網絡模型期待xi’能夠以最小重構誤差逼近原始圖像xi,即重構圖像xi’有好的重構質量和視覺效果.
根據雷達圖的特點,我們可以把學生生活數據中不僅需要一目了然看出差距,還要看出其在整體中所占的比重的數據信息繪制為雷達圖的形式。例如:學生在一段時間區間中的各項支出數據,以及其在整體中的占比情況。
在現有壓縮感知深度網絡模型的基礎上,本小節提出一種對抗策略,使得重構子網G 生成的壓縮感知重構圖像xi’成為一個對抗本.
1.2.1 針對圖像分類模型C的對抗模型
設C 代表某一個圖像分類網絡.針對C,我們設計相應的壓縮感知網絡對抗模型,命名為Adv-G-C,如圖2 所示.Adv-G-C 的目標是G 網絡生成的重構圖像xi’能對抗模型C.換句話說,模型C 能正常識別一般的圖像,但不能識別xi’.

圖2 針對模型C的壓縮感知對抗模型Adv-G-C Fig.2 Adversarial Adv-G-C against model C
正式地,針對圖像分類模型C 的壓縮感知重構網絡的對抗模型可定義為一個神經網絡:

式中:“→”指神經網絡的輸出操作.該模型由壓縮感知重構子網絡G 和一個已知的分類模型C 組成.模型的輸入是壓縮感知測量值si,輸出則是重構圖像xi’.在這里,C 是預訓練好的分類網絡,C 本身不參與對抗模型的訓練.從另一角度說,我們提出的對抗模型Adv-G-C 對圖像分類模型沒有額外的要求,即不需要改變現有的圖像分類模型來適應本節提出的對抗模型.
為實現對抗,需要為Adv-G-C 模型設計合理的損失函數.設為訓練集,B為一個批次訓練集的數量.Adv-G-C的損失函數Ladv定義為

式中:α和β表示損失函數中LG和LC的相對重要性.LG表示重構子網G的重構損失,定義為

式中:d(?,?)為距離函數.最小化LG將保證圖像的重構質量.LC是分類損失,定義為

式中:lce(?,?)表示計算交叉熵的函數,Yi是圖像xi對應的真實分類值.
2.2.2 生成對抗模型
在Adv-G-C 的基礎上,本小節提出一種更一般化的生成對抗模型Adv-G.Adv-G 不只是針對模型C,而是能對抗任意的圖像分類模型.
Adv-G 模型如圖3 所示.在此模型中,壓縮感知G 網絡稱為重構樣本的生成網絡,生成重構圖像.同時,我們引入一個新的被稱為區分網絡的D 網絡.D網絡由子網絡Drec和子網絡Drf組成,Drec和Drf有相同的前面一部分卷積層,最后一層則由各自專屬.D 網絡有兩個設計目標:一是區分真圖和假圖,真圖是訓練集中的圖像xi,假圖是生成網絡G網絡輸出的重構圖像xi′;二是區分真圖和假圖的標簽,將真圖分類到正確的類別中,但將假圖歸類為錯誤的類別.也就是說,D 網絡一方面讓G 網絡生成高質量的重構圖像,另一方面則讓該圖像被分類錯誤,從而實現對抗.在本文的實驗部分,Drec和Drf的網絡層結構各自設計成4層,卷積核大小為5×5.

圖3 生成對抗壓縮感知網絡模型Adv-G Fig.3 Generative adversarial Adv-G model
為此,Adv-G 模型中D 網絡的損失函數Ltot定義為

式中:λD和γD分別表示網絡Drec和Drf在整個損失函數中所占的比重.在式(7)中,子網Drf的損失函數定義為

式中:1 代表真圖,0 代表假圖,lce(?,?)的定義和式(6)相同.子網Drec的損失函數則定義為

即Drec將真圖歸類為真實標簽Yi的概率.
Adv-G模型中G網絡的損失函數定義為

式中:α、λG和γG分別表示G 網絡在整個損失函數中所占的比重,以及Drec和Drf對G 網絡的影響程度.式(10)由三個子項組成,其中LG與式(5)的定義一致,用于保證圖像的重構質量定義為

即G 網絡試圖讓D 網絡將生成圖像G(si)識別為真圖.LG-Drec定義為

即G網絡同時試圖讓D網絡將生成圖像G(si)分類到正確的標簽.注意到式(10)中第三項取值為負.也就是說,最小化會使得D 網絡分類錯誤,這正是我們設計Adv-G 模型的目的.不像Adv-G-C 模型,Adv-G 模型不針對任何特定的圖像分類網絡,希望Drec和Drf的引入能實現泛化的效果.為此,在訓練過程中,G網絡、Drec、Drf交替訓練,努力保證圖像重構質量,同時讓Drec網絡分類錯誤,達到對抗的目的.
以最新的深度學習壓縮感知算法CSNet[16]為例,本小節闡述對抗模型Adv-CSNet-C 和生成對抗模型Adv-CSNet 的對抗性能.在實驗中,兩個經典的分類網絡VGG-16 和ResNet-110 被用來測試原始圖像和相應對抗樣本的識別率.更低的識別率表明更高的對抗性能,從而達到更好的圖像隱私保護效果.為敘述簡單起見,后續描述中分別略去了這兩個分類網絡的網絡層數16 和110.實驗平臺采用Tensor?flow1.14,硬件配置為NVIDIA GeForce GXT 1070 單GPU,Intel Core i7-4790K 4.00GHz 單處理器,配備32GB內存.
訓練數據集為MNIST 和Cifar-10 數據集.MNIST數據集是由手寫數字圖像和它們相對應的標簽共同組成,共10 個類別,分別對應阿拉伯數字的0~9.MNIST 一共包含55 000 張訓練圖像和10 000 張測試圖像,每張圖像為28×28 大小的灰度圖.Cifar-10 數據集則包含10 個類別的圖像,分別是“飛機”“汽車”“鳥”“貓”“鹿”“狗”“青蛙”“馬”“船”和“卡車”.Cifar-10 數據集用50 000 張圖像用于網絡模型的訓練集,剩下的10 000 張圖像用于模型的測試集.基于本實驗平臺,在Cifar-10 數據集上訓練一個Adv-G-C 模型約需12 h,其中訓練一個采樣率完成2 個epoch 需要1 min,模型大約訓練500 個epoch,耗時約4 h,共訓練了3 個采樣率,總計3×4=12 h.訓練Adv-G 模型的時間類似.
為了便于圖像壓縮性能和圖像分類性能的比較,所有訓練圖像均處理成灰度圖,并且將其原始標簽采用熱編碼形式表示.我們也對網絡的輸入進行了統一的處理,將輸入進網絡的圖像進行歸一化處理,使灰度值范圍從[0,255]區間線性映射到[0,1]區間.為公平比較性能,CSNet 網絡分別用MNIST 和Cifar-10重新訓練,且訓練過程中超參數的設置與文獻[16]保持一致.同樣地,我們用這兩個數據集重新訓練了兩個分類網絡VGG 和ResNet,獲取這兩個網絡對原始圖像的初始分類準確率.
對于2.2.1 小節式(4)中的α和β參數,均設置為1,式(7)中的參數λD設為1 而γD設為0,式(10)中的α、λG和γG則分別設置為1、1和0.1.本實驗設置α=β=1,原因是本文將圖像重構效率和識別效率看成同等重要,因此設置了相同大小.我們設置α=λG=1但γG=0.1,將D網絡對G網絡的影響降低了一個數量級,主要是考慮D 網絡和G 網絡在對抗訓練時能逐漸增強,以達到訓練效果.在對抗模型Adv-CSNet-Ck的訓練過程中,我們預先訓練好CSNet 模型參數,以避免對抗模型陷入局部最優解.實驗使用Adam 優化器,其中兩個參數beta1 和beta2 分別設置為beta1=0.9,beta2=0.999.使用Cifar-10 數據集進行訓練時,訓練周期設置為300,每個周期迭代200 次,批量大小為250.前125 個周期的學習率設置為0.001,126到225 個周期的學習率設置為0.000 1,剩下的訓練周期學習率設置為0.000 01.使用MNIST數據集進行訓練時,訓練周期設置為500,每個周期迭代220 次,批量大小為250.前200 個周期的學習率設置為0.001,201 到350 個周期的學習率設置為0.000 1,剩下的訓練周期學習率設置為0.000 01.對于MNIST的訓練,我們先將式(4)中的α和β參數均設置為1,待訓練過程中訓練集的分類準確率降低到0.1之下,再修改α為1,β為0.1,目的是將MSE 重構loss 和交叉熵分類loss 平衡在一個數量級上,這有利于穩定重構圖像質量.
表1 給出了重構圖像的平均識別精度對比結果,數據集為Cifar-10,識別率數值是VGG 和ResNet的識別率平均值,值越小表示對抗性能越好.從表1可以看出,我們提出的對抗方案有明顯更低的識別率,而Adv-CSNet 則有最低的識別精度.這表明我們提出的兩種對抗學習方案均獲得了預期的對抗性能.其中,生成對抗模型Adv-CSNet 因為不針對指定的識別算法,平均識別率下降了74.7%,獲得了更好的對抗性能.

表1 平均識別率對比Tab.1 Comparison of recognition accuracy %
表2 測試對抗模型Adv-CSNet-C 和Adv-CSNet的泛化能力,評價指標是識別精度,測試數據集為Cifar-10.從表2 可以看出,對抗識別算法VGG 的模型Adv-CSNet-VGG 在ResNet 上也有很低的重構圖像識別率,表明該模型能遷移到不同的識別算法中,具有泛化性.但是,對抗ResNet 的模型Adv-CSNet-ResNet 在VGG 上的重構識別率卻明顯高于ResNet,這說明模型Adv-CSNet-C 的泛化能力受到限制.從表2 也容易看出,生成對抗模型Adv-CSNet 對VGG和ResNet 都取得了很低的識別率度,即Adv-CSNet比Adv-CSNet-C有更好的泛化性能.

表2 泛化能力對比Tab.2 Comparison of generalization capacity %
表3 對比CSNet 和相應對抗方案的重構圖像質量,數據集為Cifar-10.從表3 中的數據可以看出,相比于原始的CSNet,我們提出的對抗方案Adv-CSNet-C 和Adv-CSNet在重構質量方面均有所降低.相比之下,生成對抗模型降低幅度稍大,為10.6%.這表明,我們提出的方案在取得對抗性能的同時,損失了一定的圖像重構質量.

表3 圖像重構質量對比(PSNR,dB)Tab.3 Comparison of image reconstruction quality %
圖4 和圖5 展示對抗模型重構圖像的視覺效果.圖4 以對抗模型Adv-CSNet-ResNet 為例,數據集為手寫數字MNIST,圖5則是Adv-CSNet生成的重構圖像,數據集為Cifar-10.采樣率均為0.1.從圖4可以看見,我們提出的對抗方案也能清晰地重構出手寫數字,視覺效果完全可以接受.從圖4 可以看出,本文提出的Adv-CSNet 重構圖像的視覺效果則略差于原始的CSNet模型,這與表3的結果基本一致.

圖4 MNIST重構圖像視覺效果Fig.4 Visual effect of the recovered MNIST images

圖5 Cifar-10重構圖像視覺效果Fig.5 Visual effect of the recovered Cifar-10 images
從上述實驗結果可以看出,相比于原始的CS?Net,本文提出的對抗模型達到了預期的對抗性能.主要原因是我們在設計對抗模型時將對抗損失通過損失函數反向傳播給生成網絡,使得生成網絡在訓練的過程中自動學習對抗性能,從而達到對抗的效果.這樣,模型生成的圖像能夠欺騙識別算法,使之識別錯誤,從而達到圖像隱私保護的效果.
我們將安全性融入壓縮感知重構算法,算法生成的重構圖像同時也是一個對抗樣本,對抗機器分類模型.本文基于對抗樣本的思想,提出了一種新的深度學習圖像壓縮感知方法.降低分類模型的識別率,從而起到保護圖像隱私的效果.也就是說,分類模型會識別錯誤,從而起到保護圖像隱私的效果.實驗結果表明,我們提出的對抗模型在Cifar-10 數據集中有10.6%重構圖像PSNR 下降,但獲得了74.7%的對抗性能提升.同時,我們提出的對抗模型體現出了較好的泛化能力,能對抗不同的分類模型.