冼卓瀅,陳國明,羅家梁,梁偉堂
(廣東第二師范學院計算機學院,廣州 510303)
隨著深度學習理論的不斷發展,特別是深度神經網絡(deep neural network,DNN)算法取得的巨大成功,人工智能在自動駕駛以及人臉識別等圖像領域的應用越來越廣泛。如自動駕駛中對交通標志、障礙物等圖像的識別,安保系統中對人臉圖像的檢測,以及場景識別中對各場景圖片的分類等。與此同時,數據投毒[1]、模型竊取、后門攻擊、對抗樣本[2]等攻擊也層出不窮。其中,對抗樣本攻擊最為流行,指的是在原始圖像數據中添加肉眼無法察覺的干擾噪聲。這些細微的干擾極易使深度分類模型受到干擾而得出錯誤結果。分類器把構造對抗樣本對深度神經網絡的分類識別進行干擾稱為對抗攻擊(adversarial attack)。相關研究表明對抗攻擊不僅可以在數字域產生攻擊效果,在物理域也被用來攻擊深度學習系統[3]。例如,攻擊者將路標改造成相應的對抗樣本,造成自動駕駛系統對路標產生錯誤判斷。同時,對抗樣本具有遷移性,同一個對抗樣本可以對不同的分類器模型進行“誘騙”,對抗樣本的存在嚴重影響到智能系統的分類與判斷。
為了提高識別準確率,深度模型需要調整參數或繼續增加自身網絡層數,深度網絡通常層數多且結構復雜,需要花費大量的精力和時間進行調參,同時要求較高的資源配置。靈活高效的寬度學習系統應運而生,其不但可以應用到圖像分類領域,還可以通用到其它網絡結構中。充分識別并挖掘輸入數據中的有效信息后,能夠在保證原始網絡性能的基礎上進行網絡重構。寬度學習的提出為人工智能的研究開辟了新的思路,具有良好的發展前景。
針對深度網絡黑箱,前人在圖像分類可解釋性[4]方面得到了許多研究成果。比如,基于CAM 模型并通過熱力圖解釋網絡關注區域的優化算法Grad-CAM[5],首先對可解釋的代理模型進行訓練,在此基礎上再對預測結果行為進行解釋的局部可解釋模型(local interpretable modelagnostic explanations,LIME)[6];將深度模型的輸出對輸入圖像的梯度作為解釋結果,并對原始梯度進行處理提升可視化效果的敏感性分析算法Saliency Map。本文提出基于位平面切割的可解釋性方法,能夠從不同的角度解釋分類器的工作過程,提高分類系統的可靠性。
Chen 等[7]率先研究并提出了寬度學習系統(broad learning system,BLS),這是一種新的基于隨機的學習算法[8],由三層系統結構——輸入層、隱藏層和輸出層組成,與傳統的深度學習方法有很大區別。BLS 傾向于以“廣度”為導向擴展網絡,首先對輸入數據進行隨機特征映射,分別提取特征節點和擴展節點。然后在輸入層中合并這兩個節點來連接輸出層,最后用嶺回歸逆求出輸出層與輸入層之間的連接權重。BLS 的學習過程可以分為無增量學習和增量學習過程。無增量學習的BLS 無異于大多數常見的神經網絡,導致網絡模型與數據集的訓練過程擬合性很差,所以增量學習算法應運而生。圖1 表示無增量學習的具體運算方法與過程,首先將輸入的原始數據X乘以隨機權重W,再映射到映射特征(Mapped Feature)。與此同時,一個Mapped Feature 包含多個映射節點,第i組Mapped Feature可以表示為

圖1 無增量學習的BLS的學習過程

圖2 增量學習的過程
其中,Zi∈Rn×G,βi表示偏置,d表示特征節點的組數,G表示每組特征節點的維度,φ(?)表示激活函數。映射特征Z乘以隨機權重W,再加上偏置β,經過激活函數φ,得到增強節點特征(Enhancement Nodes),從而實現橫向拓寬網絡。公式表示為
其中,q表示增強節點數,H表示增強節點特征且H∈Rn×q,n代表特征映射數。最終得出無增量學習的網絡輸出結果為
設定無增量學習原始的網絡結構由d組特征映射節點和q組增強節點組成,網絡結構就可以表示成Aq=[Zd|Hq]。在該基礎上添加m個增強節點,那么特征映射節點和新添加的增強節點之間的關系可以表達為
并且隨機產生特征映射節點與新增m個增強節點間的權重Wq+1∈Rnk×m和偏置βq+1∈Rm,k為每個特征映射包含的特征節點數。最終添加增強節點后的網絡結構可表示為
本節將公共對抗樣本DAmageNet[9]與寬度學習系統相結合,提出一種將深度神經網絡GoogleNet 的Inception 部分進行縮減,并將最后一個block 逐級進行橫向拓寬,依次進行訓練從而找到最優解的寬度學習方法。DAmageNet 是具有高度可轉移性的通用對抗性數據集,被深度學習模型分類的錯誤率高達90%,可以作為研究和提高DNN 魯棒性的基準。充分利用寬度學習系統無須迭代與執行高效的特點,最終解決深度學習模型在訓練對抗樣本時由于不斷加深網絡而導致模型過擬合、計算復雜度過高等問題。
STM32有USART_CR1~3三個串口控制寄存器,USART_CR1是最常用的,其中RXNEIE為接受緩沖區非空中斷使能.系統采用串口中斷法進行串口通信.首先在程序中啟用USART中斷功能,當數據接收完之后,USART_CR1寄存器中的RXNEIE置為‘1’,然后產生中斷,可以在中斷函數中將數據讀出,然后清除中斷標志.串口中斷法的優點在于擺脫了對CPU的實時依賴,當數據接收完畢之后,自動進入中斷函數,然后CPU去執行數據處理,通過中斷法,大大提高了CPU的執行速率.同時串口中斷法大大降低了CPU的占用率,各個串口按照中斷優先級協調工作,數據有條不紊地進行接收處理顯示.
首先減少GoogleNet 的Inception 部分作為初始網絡,然后對初始網絡的最后一個block 塊結構進行橫向擴寬從而構成新的寬度網絡,驗證寬度學習對于對抗數據集的有效分類,初始網絡結構如圖3所示。

圖3 初始網絡結構
實驗采用公共對抗數據集DAmageNet,挑選的測試樣本數量有500個。首先初始網絡對該數據集進行分類訓練,把圖像分成兩部分,分別為訓練集和測試集,比例為3∶7。將數據集輸入分類器中,經過210次迭代,圖像的分類準確率為57.33%,初始的網絡對抗數據集分類準確率較低,準確率曲線呈上升趨勢但未達到收斂狀態,不能有效抵御攻擊,網絡結構仍有改進余地。
接下來逐步對初始網絡的最后一個塊結構block3 進行多個節點橫向擴寬,構成新的網絡進行多次訓練,探究不同寬度的網絡對驗證準確率的影響,寬度網絡最優解的網絡結構如圖4所示。實驗結果見表1。

表1 加寬前后實驗準確率對比

圖4 橫向加寬后的網絡結構
由實驗結果可知,隨著寬度的不斷增加,圖像分類的驗證準確率總體呈現遞增的趨勢。對比于初始網絡結構,在block3 結構橫向分別增加一個、兩個、三個、四個、五個和六個block3 時,驗證準確率比初始網絡依次提高了13.34、15.3、16.00、20.00、18.67 和23.34 個百分點。實驗結果見表1,訓練結果表明,網絡加寬后圖像分類的驗證準確率有顯著提高,對于公共的對抗數據集DAmageNet 最高驗證準確率能夠達到80.67%,準確率曲線呈上升趨勢并呈現收斂狀態,對比初始網絡的驗證準確率最高可提升23.34 個百分點。同時,隨著寬度的增加,其訓練損失率也呈現下降的趨勢,加寬后損失率最多可下降1.20%。
本文對初始網絡結構的block3 進行橫向擴寬操作,一共進行了數十次實驗,實驗結果見表1。其中,橫向增加六個block3 的網絡結構效果最顯著,相比原始網絡結構的驗證準確率最多可提高23.34 個百分點。而且與深度網絡結構相比,訓練時間上也有一定的優勢。
在此基礎上再往后擴寬并進行了多次實驗,驗證準確率沒有明顯提高,訓練時長卻有所增加。對此可得出,橫向拓寬六個block3 的網絡結構是本文進行寬度學習得出的最優解。根據該結果可分析出,寬度學習對于抵御對抗數據集的攻擊具有顯著效果,但并不是越寬越好。當寬度達到一定數量時再進行加寬,分類準確率沒有提高且具有下降趨勢,同時訓練時長也有所增加。
融合攻擊是指采用多種攻擊方法對一個類別的數據集進行攻擊,并形成按照攻擊方法分類的對抗數據集。對該類型數據集進行訓練,有利于提升分類器對于攻擊方法的識別準確率,從而更好地抵御現實場景中各種各樣的攻擊。本文提出的融合攻擊采用三分類的乳腺攝影圖(MIAS)數據集,分別為正常、異常良性、異常惡性。在該數據集中,選取異常良性(Bb)和異常惡性(Mb)這兩個類別,分別用FGSM、CW、JSMA、Deepfool 四種攻擊方法對這兩個類別的圖像進行攻擊,從而形成兩個按照攻擊方法分類的四分類測試數據集,分別命名為融合攻擊Bb數據集、融合攻擊Mb數據集。
快速梯度符號法(fast gradient sign method,FGSM)是一種基于梯度的對抗樣本產生方法,由Goodfellow 等[10]提出。在近幾年出現的各種對抗攻擊算法中,以梯度算法最為經典,也最為流行。該方法既可以在白盒模型上生成對抗樣本,又可以在黑盒模型上有較強的攻擊性。
基于雅可比矩陣的顯著圖攻擊方法(Jacobianbased saliency map attack,JSMA)是一種包含前向導數計算、對抗顯著圖計算、對抗干擾添加三個過程的對抗攻擊算法,可以將其應用到圖像識別中,實現對分類模型的“誘騙”。Papernot等[11]認為,神經網絡模型的輸出受輸入特征的影響,為了提高產生的對抗樣本屬于預定目標類的概率,可以在輸入樣本中添加相應的輸入特征。
Deepfool算法是由Moosavi-Dezfooli 等[12]提出的一種白盒攻擊方法,利用幾何的思想來增加干擾。使用二分類問題舉例,若決策邊界是一條直線,那么直線兩側就代表兩個不同的分類標簽,跨越界線代表著分類結果的改變。Deepfool算法通過向樣本添加擾動向量使得模型將其誤分類為另一側,以達到跨越邊界的目的。擾動向量增加的距離則經過計算目標樣本和邊界之間的距離求得。
C&W(Carlini and Wagner attack methods)攻擊方法是由Carlini 等[13]提出的以優化為目的的攻擊方法,該算法將對抗樣本看作一個變量,認為攻擊成功不僅要使對抗樣本和原始樣本差距盡可能小,而且要使模型分類錯的概率盡可能高。
防御與攻擊應該是相互促進的,本節將使用加寬后的網絡結構進行遷移學習,并在此基礎上進行調整與不斷優化。探究寬度學習對于混合多種攻擊的對抗數據集的有效分類。
我們在寬度學習優化后的網絡基礎上進行遷移學習,分別用初始網絡以及加寬后的神經網絡對融合攻擊Bb 數據集、融合攻擊Mb 數據集進行訓練,把圖像分為訓練集和測試集,劃分比例為3∶7。將數據集輸入分類器中,分別經過了84次、108次迭代,融合攻擊Bb數據集、融合攻擊Mb 數據集最終訓練的驗證準確率結果分別如表2 和表3 所示。將表2、表3 中驗證準確率最高的寬度網絡進行對比可得出,對于不同的數據集,寬度網絡結構的最優解有所不同,網絡結構并不是越寬越好。對于融合攻擊Bb 數據集,加寬后的網絡相比于初始網絡驗證準確率最多可提高25.75 個百分點,融合攻擊Mb 數據集最多可提高25.33 個百分點,其中融合攻擊Bb數據集用GoogleNet 網絡結構進行分類時驗證準確率僅有50%。實驗結果均表明寬度學習對于攻擊方法分類的有效性。

表2 融合攻擊Bb數據集加寬前后驗證準確率對比圖

表3 融合攻擊Mb數據集加寬前后驗證準確率對比圖
實驗結果表明,在混合了多種攻擊的乳腺癌數據集中,寬度學習對于抵御對抗樣本的攻擊均有較好的效果。在使用第一節優化后的網絡進行遷移學習訓練時驗證準確率有顯著的提高。在此基礎上再次進行加寬優化,加寬的部分如圖5 所示,命名為add_block。按照圖示部分為一組進行加寬形成新的網絡并進行訓練,由實驗結果可知,融合攻擊Bb 數據集和融合攻擊Mb 數據集在第一節的寬度網絡上再次增加add_block后驗證準確率都有所提高并趨于穩定。對于不同的對抗數據集寬度的最優解有所不同,不是越寬越好,當寬度達到一定數量再進行加寬時驗證準確率沒有提高并且訓練時間有所增加。其中,對于融合攻擊Bb 數據集,寬度網絡block_5+2add_block 訓練效果最好,該網絡表示在拓寬五個block 的基礎上再增加兩組add_block,與初始網絡相比準確率最多可提高25.75個百分點。而對于融合攻擊Mb 數據集,寬度網絡block_5+1add_block 訓練效果最好,該網絡表示在拓寬五個block 的基礎上再增加一組add_block,與初始網絡相比準確率最多可提高25.33 個百分點。同時,該對抗數據集用深度網絡GoogleNet 進行訓練時,驗證準確率僅有50.00%,加寬后能夠達到82.00%并趨于穩定,與深度網絡相比準確率提高了32.00 個百分點。由此可見,寬度學習與融合攻擊的對抗樣本相結合,再次驗證了寬度學習對于抵御對抗樣本的攻擊具有顯著的效果。在抵御對抗攻擊上有了新的突破,同時在訓練時間上較深度網絡具有一定的優越性。在節約時間和資源的同時,使智能系統更加可靠,具有極高的研究價值。
針對神經網絡“黑盒子”的不透明性,其中隱藏的層數目、神經元數目、激活函數等難以應用[14]。對深度神經網絡進行解釋有利于理解該模型的學習分類過程、決策結果以及依據的合理,提高智能系統性能的效果。本文創新性地提出了基于位平面分割的可解釋性,是針對優化后的寬度網絡結構進行訓練,把訓練結果導出并針對不同攻擊強度的對抗樣本進行解釋,驗證寬度網絡對攻擊方法分類的有效性。該方法從圖像的多個角度進行解釋,使分類過程更加清晰,一定程度上提高了分類系統的可靠性。
對于混合攻擊的數據集,不同攻擊方法分類過程的解釋顯得尤為重要。對網絡分類操作的解釋有助于我們更好地了解目標網絡對于不同的攻擊方法如何進行對抗和識別。本文旨在通過遮擋輸入解釋方法去解釋加寬效果最優網絡的分類操作,首先采用快速梯度符號方法對融合攻擊Bb 數據集進行四種不同強度的攻擊,并隨機選取一張圖片,對該圖片及其經過不同強度攻擊后的副本分別進行位平面分解,最后通過遮擋輸入的解釋方法對分類行為進行解釋。
通過運用可視化的方式觀察圖像的重要特征,從而判斷寬度網絡對于攻擊方法的分類依據是否正確,使加寬后網絡的分類行為更加透明清晰,易于理解。這對寬度網絡識別對抗樣本的不同攻擊方法以及優化寬度網絡具有重要意義。
位平面分解[15]是將每個灰度值都分解為二進制,然后把具有同一權值的位進行重新組合,最后構成圖像的不同位平面。本文創新性地提出將位平面分解與FGSM 的四種攻擊強度相結合,構成如圖6所示的表格,對于原始圖像,攻擊強度不斷增加,我們肉眼并不能察覺圖像發生的細微變化。而在選取不同的位平面時,就能夠觀察到不同攻擊強度圖像之間的區別,其中位平面5~8 最為明顯。因此,不同的位平面對于對抗樣本具有不同程度的重要性,要從多個角度來觀察圖像。

圖6 圖像的位平面分解

圖7 網絡解釋結果圖
如圖6所示,縱坐標表示快速梯度符號方法(FGSM)對圖像的四種不同攻擊強度,圖中增加了我們肉眼無法識別的干擾,橫坐標表示位平面復雜度的變化。沿著橫坐標方向的b7~b0 代表位平面8~1,位平面圖像的特征隨著位平面復雜度的變化而不斷改變,同時干擾噪聲也逐漸增加。由圖6可以看出,原始圖像的輪廓漸漸變得模糊直至徹底消失,當選取位平面4時,背景噪聲完全覆蓋圖像原有的輪廓。由此得出,不同的位平面對原始圖像的重要性不同,不能只從一個平面來觀察圖像。
遮擋敏感度[16]用于分析圖像哪些部分對深度網絡分類的影響具有重要作用。采用深度學習系統中的occlusionSensitivity 函數對神經網絡的閉塞敏感圖進行計算。該函數通過閉塞掩碼對輸入的小區域進行替換以達到干擾的目的。當圖像的重要特征部分被遮擋時,預測類別的結果將急劇下降。遮擋敏感圖中紅色區域的數值最高,當紅色部分被遮擋時,分類結果的準確率顯著下降,表明該區域的圖像特征對分類具有積極作用。而當圖中的藍色區域被遮擋時,分類結果準確率有所提高,這些區域會混淆網絡,對圖像分類具有消極作用。
本文使用上述加寬效果最優的網絡block_5+1add_block對不同攻擊強度下的不同位平面采用可視化的遮擋敏感度圖進行解釋,并對結果進行分析。由解析結果圖可知,對于不同攻擊強度的原始圖像,紅色區域的關鍵特征集中在干擾部分,而且隨著攻擊強度的增加,紅色區域關注的錯誤特征也不斷增加,這表明寬度網絡能夠有效識別FGSM攻擊的強度。與此同時,對原始圖像進行位平面分解并解釋,由解釋結果圖可知,當位平面選取6~8 時,紅色區域集中在圖像的關鍵區域而不是噪聲干擾的區域,表明寬度網絡正在對圖像的錯誤特征進行學習。顯然,這與該寬度網絡的高度分類準確性相矛盾。當選取位平面5時,隨著攻擊強度不斷加強,紅色區域也朝著噪聲干擾區域靠近,表明FGSM攻擊強度越強,寬度網絡對于攻擊方法的分類就越準確。當選取位平面1~4時,原始圖像的輪廓已經無法用肉眼識別,根據敏感度圖可以分析出,寬度網絡正在對噪聲干擾部分進行正確的學習分類,能夠有效地對攻擊方法進行區分,同時說明訓練結果的準確性。采用位平面分解的可解釋性方法,當分類結果有誤時,可以通過遮擋圖分析錯誤原因。尤其是對于經過處理的對抗樣本,可以根據遮擋圖找出該網絡強烈關注的干擾部分,從而分析出該網絡學習了哪些攻擊方法的錯誤特征并進行對應的抵御[17]。
由上述解釋結果可知,寬度學習能夠學習對抗樣本的重要特征并進行有效分類。同時,本文提出在融合攻擊中,對攻擊方法進行分類以及位平面切割解釋方法也為抵御混合攻擊提供了可靠的依據,能夠更有針對性地優化網絡。將寬度學習系統應用于對抗數據集來抵御圖像的干擾和攻擊[18],能夠有效減少人工智能操作過程中對抗數據集帶來的威脅。借用寬度學習思想,擴展神經網絡的寬度能夠有效解決深度學習訓練過程中耗時的不足,但提高分類器的準確率要以消耗一定時間為代價。靈活高效的寬度學習系統十分具有研究價值[19],運用寬度網絡不僅能夠有效抵御對抗樣本的攻擊,還能有效識別不同的攻擊方法。在節約資源配置的同時優化智能系統的性能,提高系統可靠性,具有十分重要的研究意義。