?

針對身份證文本識別的黑盒攻擊算法研究

2024-02-03 10:41徐昌凱馮衛棟張淳杰鄭曉龍王飛躍
自動化學報 2024年1期
關鍵詞:黑盒掩碼范數

徐昌凱 馮衛棟 張淳杰 鄭曉龍 張 輝 王飛躍

近年來,以深度學習為核心的人工智能技術得到了快速的發展,廣泛應用到了刷臉支付,自動駕駛,內容生成等多種生產生活場景.自從2012 年Krizhevsky 等[1]利用深度學習模型AlexNet 贏得ImageNet 競賽冠軍后,對于深度學習模型的研究開始呈現井噴式增長,在計算機視覺[2],語音識別[3],自然語言處理[4],強化學習[5]等領域不斷刷新著性能表現.如第一個擊敗人類職業選手的圍棋高手Alpha-Go[6],觀測水平可以和人類利用冷凍電鏡相媲美的蛋白質結構預測模型AlphaFold[7],以及當下非?;鸨纳墒街悄芰奶鞕C器人ChatGPT[8].海量數據和強大算力支撐了深度學習模型在人工智能技術中的核心地位,并深刻影響著人工智能技術的發展.隨著人工智能技術的發展,各種檢測和識別模型引起了人們對隱私問題的擔憂.各種包含隱私信息的圖片在傳輸過程中很容易被其他人獲取,并借助深度學習模型迅速獲取其中的隱私信息,存在很大的隱私泄露隱患.

深度學習模型在不同領域和任務上取得了優異表現,但是其在對抗場景下的脆弱性同樣值得關注.許多研究表明[9-14],深度學習模型容易受到對抗樣本的干擾,從而給出錯誤的預測結果.對抗樣本是由攻擊者在正常樣本的基礎上,通過添加人類難以發現的細微對抗噪聲所惡意構造的樣本數據.以圖像分類模型為例,如圖1 所示,在正常樣本上表現良好的模型,在對抗樣本上卻給出了錯誤的預測結果.對抗樣本廣泛存在于圖像、文本、語音等不同模態,且針對各個模態的具體模型,如目標檢測,文本識別,語音識別等都表現出較強的攻擊性能.不僅如此,數字世界中的對抗樣本還可以通過不同的方式(如印刷、噴繪、3D 打印等)轉換到物理世界[15-17],并且對環境因素的干擾具有一定的魯棒性.

圖1 針對圖像分類模型的對抗樣本[14] (左: 正常樣本,中: 對抗噪聲,右: 對抗樣本)Fig.1 Adversarial examples for the image classification model[14] (Left: normal samples,Middle: Adversarial noise,Right: Adversarial examples)

對抗樣本是在特定的攻擊條件下生成的,目前大多數工作將其分為白盒條件和黑盒條件.兩者的區別在于攻擊者掌握被攻擊對象(模型)信息的多少,白盒條件下攻擊者可以獲取被攻擊對象的全部資料,黑盒條件下只能獲取部分資料.黑盒條件較白盒條件的攻擊難度更高,且更貼近實際的攻擊場景.針對目標檢測(2D/3D),文本識別,語音識別等模型的對抗攻擊算法已經涌現出了許多研究工作,大多數工作都可以在白盒條件下達到較高的攻擊成功率(接近100%),但在黑盒條件下攻擊成功率依然較低.除此之外,目前大多數工作集中于單模態的模型架構,缺少對跨模態模型的探索.已有的針對跨模態模型(主要是光學字符識別模型)的對抗攻擊算法大多只考慮了簡單背景(如印刷體)的數據集和白盒條件的攻擊設定,不適用于復雜背景的圖像數據和更為嚴苛的黑盒攻擊條件.此外,大多數工作在生成物理世界中的對抗樣本時,攻擊設定都是白盒條件;很少有工作同時考慮了物理世界和黑盒條件的攻擊設定.物理世界和黑盒條件的組合是一種攻擊難度極高的攻擊設定,非常具有挑戰性,卻也最貼近實際場景,具有較高的理論與應用價值.

針對上述問題,本文對身份證隱私保護方法進行研究,提出了一種針對身份證文本識別模型的黑盒對抗攻擊算法.身份證文本識別模型是由圖像到文本的跨模態模型,同時涉及到圖像特征提取和文本序列建模.與已有的針對文本識別模型的研究工作相比: 1) 本文同時考慮黑盒條件和物理世界攻擊設定,并且在商用身份證識別模型(百度身份證識別模型)上達到100%攻擊成功率;2) 針對黑盒條件下對抗樣本攻擊成功率較低的問題,本文探索了對抗樣本在不同范數限制下的攻擊能力上限,并在保證攻擊成功率的前提下使用二值化掩碼來改善對抗樣本的視覺效果;3) 針對物理世界中環境因素干擾的問題,本文在生成對抗樣本的過程中引入了空間變換,使得方法對于拍攝距離、光照等環境因素的干擾具有一定的魯棒性.

1 相關工作

本節將介紹相關研究工作.以圖像分類模型為例,闡述對抗樣本的定義,概述黑盒條件下的對抗攻擊算法,并梳理總結現有針對文本識別模型的對抗攻擊算法.

1.1 黑盒攻擊算法

本節首先給出對抗樣本的定義.令f(x;θ):x∈[0,1]d-→z∈Rn表示一個圖像分類模型,類別數為n,參數為θ.其中,x表示一張維度為d的圖像,取值范圍為0 到1,z表示一個n維的概率矩陣.假設f(x;θ) 可以正確識別輸入圖像x,預測結果為圖像x對應的標簽y.則對抗樣本x adv可以定義為:

式(1)中,δ表示對抗噪聲.在原始圖像x上添加δ之后,就生成了對抗樣本x adv,其必須滿足兩個限制條件:x adv必須導致分類器f輸出錯誤的預測結果;x adv必須滿足一定的數值范圍T(x,?),如式(2)所示.首先限制了x adv的取值范圍為0 到1,保證對抗樣本和原始圖像的數值范圍相同;其次規定了對抗噪聲δ的lp范數小于等于范數限制?,目的是保證對抗噪聲的幅值較小,使得人類難以發現,且不影響人類對于對抗樣本的判斷結果.在目前大多數研究工作中,p有三種取值,分別為0,2 和無窮.

黑盒條件下,攻擊者掌握被攻擊對象的資料信息有限,只能與被攻擊對象做特定形式的交互.例如,攻擊者想要攻擊某網站的圖像識別模型,攻擊者無法獲取模型結構,參數等信息,而只能上傳圖像或通過指定的程序接口(Application programming interface,API)調用其服務.此時,攻擊者能得到的信息只有模型返回的識別結果.黑盒條件是最不利于攻擊者的條件,但也是最貼近現實的攻擊條件.在黑盒條件下實現較高的攻擊成功率,其難度和挑戰性遠遠大于白盒條件.

黑盒條件下的對抗攻擊算法主要分為三類,基于分數的對抗攻擊算法,基于決策的對抗攻擊算法和基于遷移的對抗攻擊算法,分類的依據是被攻擊對象輸出信息的多少.假設被攻擊對象是圖像分類模型,其輸出信息包含以下三種情況: 1)分類結果和每一類的概率(置信度);2)只有分類結果;3)只有分類結果,且攻擊者和被攻擊對象的交互次數會受到客觀限制,例如付費識別時的經濟成本.這三種情況中,攻擊者可以獲取到被攻擊對象的信息逐漸減少,攻擊難度逐漸增加.其中,基于分數的算法適用于第一種情況,代表性算法有Zeroth order optimization (ZOO)[18],Natural evolution strategies gradient estimate (NES)[19],Simultaneous perturbation stochastic approximation (SPSA)[20]和Nattack[21];基于決策的算法適用于第二種情況,代表性算法有Boundary[22],Evolutionary[23]和 Geometric decision-based attack (GeoDA)[24];基于遷移的算法適用于第三種情況,代表性方法有Momentum iterative fast gradient sign method (MI-FGSM)[25],Nesterov iterative fast gradient sign method (NIFGSM)[26],Diverse inputs iterative fast gradient sign method (DI-FGSM)[27],Combination of translation-invariant method and the fast gradient sign method (TI-FGSM)[28],Variance tuning MIFGSM (VMI-FGSM)[29].

這幾種典型的基于遷移的黑盒攻擊算法可以大致分為兩類: 修改梯度更新過程,增加輸入變化來提升對抗樣本的泛化性.其中,MI-FGSM,NIFGSM,VMI-FGSM 和Variance tuning NI-FGSM(VNI-FGSM)屬于第一種.MI-FGSM 引入了動量項,修改了梯度的累積過程;NI-FGSM 利用Nesterov 來加速梯度的計算過程;VMI-FGSM 和VNIFGSM 分別在MI-FGSM 和NI-FGSM 的基礎上,通過采樣一定鄰域內樣本的平均梯度,對動量項做修正,更改了動量的累積過程.Scale-invariant fast gradient sign method (SI-FGSM),TI-FGSM 和DI-FGSM 屬于第二種.SI-FGSM 增加了輸入樣本的幅值變化,創建了i個輸入樣本的副本,每個副本的幅值在原始幅值上縮小 2i倍;TI-FGSM 利用卷積神經網絡的平移不變性,引入了符合高斯分布的卷積核,通過和梯度做卷積計算來增強梯度的泛化性;DI-FGSM 則通過輸入空間變換,即隨機縮放和填充,來增強輸入樣本的泛化性.這幾種典型的基于遷移的黑盒攻擊算法都是在基于梯度的對抗攻擊算法I-FGSM 的基礎上演化而來的,并且可以通過超參數的調整互相轉換,例如,當VMI-FGSM 中的采樣鄰域范圍β變為0 時,VMI-FGSM 就轉換為了MI-FGSM;當MI-FGSM 中的動量累積項系數μ變為0 時,MI-FGSM 就變為I-FGSM.同時,這幾種算法也可以加入一系列的輸入變換方法,達到更好的攻擊性能.這幾種典型的對抗攻擊算法關系圖如圖2 所示.其中,VM(N)I-FGSM 分別表示VMI-FGSM 和VNI-FGSM,D(T,S)I-FGSM 分別表示DI-FGSM,TI-FGSM 和SI-FGSM.

圖2 幾種典型的黑盒遷移攻擊算法關系圖[29]Fig.2 Relationships among several transfer-based black-box adversarial attacks[29]

基于分數和基于決策的黑盒攻擊算法雖然可以保證成功攻擊目標模型,但是其需要大量訪問被攻擊對象的輸出結果(這一過程也稱之為查詢),導致攻擊成本不可控.目前,這兩個方向的研究工作集中于在保證攻擊性能的前提下,提升查詢效率,降低攻擊成本.基于遷移的黑盒攻擊算法攻擊成本較低,但之前的研究工作大多都假設替代模型和目標模型的訓練集相同,導致可能存在數據泄露的問題.而且這樣的設定與實際情況相悖,導致其在實際應用中需要較強的對抗噪聲才可以實現較為滿意的攻擊效果.目前,這一方向的研究集中于更加貼近實際情況的攻擊設定和提升對抗樣本的視覺效果.

1.2 針對文本識別模型的對抗攻擊算法

文本識別模型屬于光學字符識別(Optical character recognition,OCR)模型中的一個組件,是由圖像到文本的跨模態模型.OCR 模型分為兩階段和端到端兩種設計架構.兩階段的OCR 模型包括文本檢測和文本識別,具體來說包括四個步驟:文本檢測,檢測框對齊,方向矯正和文本識別.其中,文本檢測用來檢測圖像中存在的文本位置;檢測框對齊將傾斜或者不規則排列的文本位置變為水平位置;方向矯正可以保證字體的角度是0 度,防止出現字體顛倒的情況.在保證字體位置水平且字體角度為0 度之后,將其送入文本識別模型進行識別.端到端的OCR 模型在一個網絡中同時進行文本檢測和文本識別,相比兩階段的OCR,其模型更小,速度更快,但性能也會出現下降.相比于端到端的OCR 模型,兩階段的OCR 模型更加成熟,在實際場景中應用更加廣泛.

兩階段的OCR 模型中,基于CRNN+CTC架構[30]的文本識別模型速度快,準確率較高,且由于CTC 獨特的解碼方式,這種模型架構可以識別任意長度的文字序列,不會受到不定長文字序列的影響,是一種主流的文本識別模型架構.如圖3 所示,模型架構主要包含三部分,圖像特征提取模塊CNN,圖像上下文信息提取模塊BLSTM 和CTC損失.其中,CNN 一般使用主流的卷積神經網絡,如ResNet (桌面端),MobileNet (移動端)等.文本圖像中存在大量的上下文信息,尤其是較長的文字序列.由于卷積神經網絡更關注于圖像局部特征的建模,缺乏全局特征和上下文建模的能力,只使用卷積神經網絡很難有效挖掘到文本圖像中的上下文信息.因此,CRNN 引入了雙向長短時記憶網絡(Bidirectional long short-term memory,BLSTM),不僅提供了上下文信息建模的能力,還解決了傳統循環神經網絡中存在的長距離依賴問題.得到BLSTM 輸出的特征序列后,由于訓練數據中文本圖像的標簽不包含每個字符在圖像中的位置,無法將對應時刻的輸出和CNN 的感受野進行對齊,不能使用常見的交叉熵損失函數訓練模型.為了解決這一問題,引入了CTC 損失,CTC 是一種不需要對齊的編碼方法,廣泛應用于語音識別等領域[31].

圖3 CRNN 文本識別模型架構圖[30] (CNN 表示卷積神經網絡.“-”表示空字符)Fig.3 CRNN text recognition model architecture diagram[30] (CNN stands for convolutional neural network.“-”indicates a null character)

近年來,針對文本識別模型的對抗攻擊算法涌現出了許多工作.我們簡要介紹幾篇代表性的研究工作,并總結分析已有工作與本工作的區別.

工作1[32]最先提出了針對文本識別模型的對抗攻擊算法.該算法采用基于優化的白盒攻擊方法,其損失函數采用了與CW 算法相同的形式,目的是在保證攻擊成功率的前提下最小化對抗噪聲,使得生成的對抗樣本較為隱蔽.該工作探索了不同字體和字號對攻擊成功率的影響,并將對抗樣本嵌入到文本段落中,使其在其他下游任務(如郵件識別和影評等)展現攻擊效果.

工作2[33]采用基于梯度的白盒攻擊算法和全局性水印,通過計算梯度的權重確定水印的位置,再將對抗噪聲隱藏到水印中,可以在保證攻擊性能的前提下進一步提升對抗樣本的隱蔽性.該工作探索了單詞級別和字符級別對抗樣本的攻擊性能,并探索了不同的水印形式對攻擊成功率的影響.值得關注的是,工作1 和工作2 都只考慮了白色背景的圖像數據和白盒條件,且沒有針對商用模型和物理世界進行試驗.這樣的設定導致其攻擊難度大大降低,不利于算法在復雜背景數據和黑盒條件下的泛化.

工作3[34]提出了一種針對場景文本識別模型的對抗攻擊算法,可以自然地應用到基于CTC 和基于注意力機制這兩種不同的場景文本識別模型架構中.與之前的工作相比,該工作進一步考慮了背景更加復雜的場景文本圖像,而不是簡單的白色背景圖像.但該算法只考慮了白盒條件,沒有考慮攻擊難度更高的黑盒條件.實驗證明,該算法在白盒條件下可以達到非常高的攻擊成功率,但在黑盒條件下其攻擊成功率較低,只有20%左右.

工作4[35]在工作3 的基礎上,考慮了黑盒條件,提出了一種針對場景文本識別模型的黑盒攻擊算法,旨在更改更少的擾動像素個數(即lp范數限制)下提高對抗樣本的攻擊成功率.為了確定被操縱像素的位置和值,作者提供了一個有效的自適應-離散微分進化框架,將連續搜索空間縮小到一個離散空間,有效地提高了查詢效率,在本地的黑盒模型上實現了較高的攻擊成功率.但由于其需要黑盒模型的部分先驗知識,即需要輸出每個字符和預測概率,導致其在攻擊商用模型時受限,在百度的場景文本識別模型上只實現了40%左右的攻擊成功率.

工作5[36]利用了對抗樣本的攻擊性和視覺友好性,將其轉換為魯棒性的驗證碼,用于攻擊驗證碼破解系統.具體地,該算法針對驗證碼破解系統中的不同步驟,設計了不同攻擊方法組合的形式,包括多目標攻擊,集成對抗訓練,可微逼近和期望順序組合.與之前的工作不同,該工作在系統層面設計了對抗樣本的生成算法,而不僅僅在模型層面.

工作6[37]將對抗樣本和圖像隱寫結合起來,提出了一種基于對抗攻擊的字符級隱寫算法.具體地,該工作通過攻擊局部模型來實現隱寫消息嵌入,通過捕獲發送方和接收方局部模型識別的結果與參考模型不同的字符來提取信息.該工作的重點在于圖像隱寫策略的創新性設計,規定了發送方和接收方必須使用相同的OCR 模型這一應用場景,而不在于提高對抗樣本的攻擊成功率.

工作7[38]第一次將對抗攻擊引入場景文本的識別,研究其對基于attention 的場景文本識別模型的影響.具體地,該工作通過將針對圖像分類、語義分割和圖像檢索等非序列任務設計的目標函數調整為序列形式,然后,提出了一種新穎且有效的目標函數,以進一步減少擾動量,同時實現更高的攻擊成功率.

工作8[39]提出了一種水印攻擊方法,利用水印的偽裝來產生自然失真,從而避開人眼的檢測.具體地,此工作重點研究白盒,有針對性的攻擊,生成自然的水印樣式擾動.水印不會妨礙文本的可讀性,使得對抗樣本看起來更自然,并獲得與現有攻擊方法相似的攻擊性能.

工作9[14,40]提出了一種高效的基于優化的對抗攻擊方法.具體地,此工作對抗攻擊目標定義為找到一個與普通樣本非常相似(人眼幾乎不能發現差異)但識別結果卻差異很大的樣本.此工作通過優化的方式生成對抗樣本,并在一些主流的場景文本識別模型上達到了較高的攻擊成功率.

當前工作集中于一般類型的文本圖像,并沒有針對具體OCR 任務做優化,且缺乏物理世界中的相關實驗.工作4 考慮到了黑盒條件和商用模型,但由于其需要部分黑盒模型的先驗知識(即每個字符的識別概率),當被查詢的商用模型不滿足輸出先驗知識的要求或查詢成本較高時,其在實際場景中的應用就會受到限制,泛化性較差.物理世界和黑盒條件的組合攻擊難度較高,極具挑戰性,卻也最貼近實際場景,具有極高的應用價值.本文在圖4中展示了當前工作生成的對抗樣本示例,并且在表1中總結了當前工作和本工作的區別.

表1 本工作與已有工作的對比Table 1 Comparison of this work with existing work

圖4 當前工作生成的對抗樣本示例圖[32-37]Fig.4 Adversarial examples generated by recent work[32-37]

2 針對身份證識別模型的黑盒攻擊算法

本節將詳細介紹針對身份證識別模型的黑盒攻擊算法.首先,在基于遷移的黑盒攻擊算法框架下,給出了問題定義;其次,同時考慮黑盒條件和物理世界攻擊,在算法中分別設計了二值化掩碼和空間變換兩個組件來提升對抗樣本視覺效果和物理世界的魯棒性;最后,通過在本地身份證模型和百度身份證模型上的攻擊實驗證明了本算法的有效性.

2.1 問題定義

本文將兩階段OCR 模型中的文本識別模型作為攻擊對象,原因如下: 1)文本檢測模型屬于目標檢測模型的一個子類,涉及的模態類型只有圖像.而文本識別模型需要同時處理圖像和文字序列,更加符合對于跨模態模型對抗攻擊算法的探索.2)目前針對目標檢測模型的對抗攻擊算法需要較強的局部擾動(常以對抗補丁的形式存在[41-43])才能達到較高的攻擊成功率.這種較強的局部擾動適用于圖像中面積較大的一般物體,但不適用于文字等結構性較強的對象.例如,在圖像中某人的胸前生成擾動性很強的圖案,并不影響人類判斷他是一個人;但是在某個字的局部生成擾動性很強的圖案,就會干擾到人類對其的判斷,這與對抗樣本的定義相違背.3)相比文本檢測模型,文本識別模型的架構更加統一,在不同場景下的通用性更強.因此,針對文本識別模型的對抗攻擊算法在不同的OCR 模型間的泛化性更好.

下面給出問題定義: 假設有兩個身份證文本識別模型f1(θ1) 和f2(θ2),其參數分別為θ1和θ2.其中,f1的結構和參數θ1是已知的,f2的結構和參數θ2是未知的,分別代表替代模型與目標模型.此外,攻擊者只能與f2(θ2) 做有限制次數的交互,得到f2(θ2)的輸出結果,且結果中不包含每個字符識別的概率值.針對輸入樣本x和對應的標簽y,兩個識別模型均可以將其正確識別.本文目標是設計一種攻擊算法,求解對抗噪聲δ,生成對抗樣本x adv,使得f1(θ1) 和f2(θ2) 均識別出錯,且限制對抗噪聲的范數在一定范圍之內,如式(3)所示.

2.2 算法設計

2.2.1 二值化掩碼

由于目標模型f2(θ2) 的參數和結構都是未知的,且攻擊者只能與f2(θ2) 做有限制次數的交互,得到不包含概率值的識別結果,這樣的設定適用于基于遷移的黑盒攻擊算法.即先訓練一個替代模型f1(θ1),使用白盒攻擊算法生成針對f1(θ1) 的對抗樣本,再使用基于遷移的黑盒攻擊算法將其攻擊性遷移到未知的f2(θ2).

對抗樣本的特點是在不影響人類判斷的前提下,干擾目標模型的判斷.上述基于遷移的黑盒攻擊算法在生成對抗樣本時,大多基于l ∞范數限制,即采用全局的對抗噪聲擾動,這有利于提升對抗樣本的攻擊性能.同時,為了保證對抗樣本的隱蔽性,范數限制?通常較小,不會干擾到人類的判斷.針對身份證圖像,如果采用全局的對抗噪聲,那么關鍵字段上也會疊加噪聲,干擾人類的判斷.特別是當增大范數限制之后,覆蓋在關鍵字段上的噪聲會更加明顯;而如果范數限制較小,就會降低對抗樣本的攻擊性能.如何平衡對抗樣本的攻擊性能和視覺效果,特別是在保證攻擊性能的前提下提升視覺效果,是本文重點考慮的問題之一.

為了緩解上述問題,更好地平衡對抗樣本的攻擊性能和視覺效果,本文引入了二值化掩碼M,并將其加入到對抗樣本的生成過程中,參與梯度的迭代計算.具體地,當輸入樣本x的維度為(h,w,c)時,定義二值化掩碼M如下:

其中,(h,w,c) 表示輸入樣本的(長,寬,通道數).二值化掩碼M的維度和輸入樣本的維度相同,只包含0 和1,其作用是分割身份證圖像的前景和背景.其中,前景為關鍵字段對應的圖像區域,如姓名、性別和身份證號等,背景是除了前景文字以外的全部區域.由于身份證的前景和背景區域差異較為明顯,分割難度并不大,二值化掩碼的計算非常便捷,可以通過自適應或者傳統的閾值分割方法計算得到,如自適應閾值分割算法或大津法等.

在得到二值化掩碼M后,將其加入到對抗樣本的梯度計算過程中,通過點乘操作“⊙”就可以將對抗噪聲的覆蓋區域限制在背景上,避免全局的對抗噪聲對關鍵字段的覆蓋.以MI-FGSM 為例,加入二值化掩碼M后,對抗樣本x adv的計算過程如下:

2.2.2 空間變換

物理世界中對抗樣本的魯棒性是指對抗樣本在受到一定環境因素干擾后,保持其攻擊性能的能力.在物理世界中,對抗樣本可能會受到多種環境因素的干擾,如拍攝的角度、距離、光線的變化等,此時,對抗樣本的攻擊性能和其對抗魯棒性成正比.受到期望損失函數的啟發[44],本文通過在生成對抗樣本的過程中引入一系列的輸入變換,增強了其在物理世界中的對抗魯棒性.具體地,本文考慮了三種輸入變換: 隨機縮放,亮度變化和高斯噪聲.隨機縮放不僅可以模擬拍攝距離的遠近,還可以模擬攝像頭變焦的效果.由于CRNN 模型架構對輸入圖像的長寬比例有一定的要求,隨機縮放需要限制縮放比例在一定范圍內.亮度變化模擬了拍攝環境光線的影響.高斯噪聲模擬了在拍攝時可能存在的噪點的影響.這些輸入變換以集合的形式存在,即針對一個輸入樣本,會以概率p將其順序做這三種變換,記為T(·;p).這些輸入變換可以與基于遷移的黑盒攻擊算法結合,提升對抗樣本在這些變換下的魯棒性.以MI-FGSM 為例,在加入二值化掩碼M和輸入變換T(·:p) 后,對抗樣本x adv的計算過程如下:

由于身份證文本識別模型需要特定的前處理流程,即在經過文本檢測模型后,會將待識別的圖像區域通過仿射變換處理為水平的圖像,本文沒有考慮旋轉和平移這一類的空間變換.除此之外,由于文本圖像經過旋轉或平移后可能會導致上下文信息的丟失.在這種情況下,即使不加對抗噪聲干擾,模型也無法給出正確的判斷結果,此時生成的對抗樣本是沒有意義的.

綜上,針對身份證識別模型的黑盒對抗攻擊算法流程圖如圖5 所示.以一張身份證圖像為例,在經過文本檢測模型后,會輸出關鍵字段的圖像區域對應的位置,之后會將關鍵字段的文本圖像裁剪下來.在裁剪完關鍵字段的文本圖像后,會同時生成對應的二值化掩碼,一同送入本地的基于CRNN架構的文本識別模型f1(θ1).利用本文提出的攻擊算法,同時考慮遷移性和對抗魯棒性,生成只包含背景噪聲的對抗樣本,具體流程見算法1.之后,將生成的對抗樣本復制到對應的關鍵字段區域.最后利用生成的包含對抗樣本字段的身份證攻擊黑盒模型f2(θ2).圖5 中,為了簡潔表示,只畫出了姓名和身份證號字段的對抗樣本,其他字段的對抗樣本同理.

圖5 針對身份證識別模型的黑盒對抗攻擊算法流程圖(身份證信息為隨機生成)Fig.5 Pipeline of the black-box adversarial attack algorithm for ID card recognition model (Information on ID card is randomly generated)

算法1.針對身份證識別模型的黑盒對抗攻擊算法

2.3 實驗設置與結果分析

2.3.1 數據集與實驗設置

為了避免使用真實身份證數據帶來的隱私問題,本文自制了一批身份證數據用于模型的訓練和攻擊算法的測試.身份證圖像共包含姓名、性別、民族、出生日期、住址和身份證號6 個關鍵字段信息,這6 個字段的信息包含中文,數字和一個特殊字符(身份證號中的X)三種字符類型.本文按照表2 中的標準生成關鍵字段信息所對應的文本圖像.

表2 身份證關鍵字段文本圖像生成標準Table 2 ID card key field text image generation standard

如表2 所示,本文首先將關鍵字段信息分為兩大類,文字和數字(包括特殊字符X).其中,文字部分包括姓名和住址,對應的字典長度為6 270,涵蓋了絕大部分的常用漢字和生僻字.姓名的長度為2到4,地址的長度為1 到11,均為隨機挑選.由于民族和性別字段的字體,字號和住址相同,且長度也在1 到11 之間,所以這兩部分字段的信息可以由住址代替,對文本識別模型的訓練和算法測試沒有影響.數字部分包括出生日期和身份證號兩部分,對應的字典長度為11 (數字0 到9 和一個特殊字符X),出生日期長度為1 到4,身份證號長度為18.其中,頻率代表字典中的每個字符出現的次數,確保數據集中字符的分布不會出現長尾效應.訓練集和測試集按照10 比1 的比例劃分,整個字段共包含297 625 張訓練圖像和29 763 張測試圖像.此外,本文生成的關鍵字段信息符合身份證標準中字體,字號和身份證號編碼規則.圖6 展示了4 份身份證數據集樣張.

圖6 身份證數據集樣張Fig.6 Examples of the ID card dataset

本文首先在本地訓練了兩個身份證文本識別模型,這兩個模型均采用CRNN 架構和CTC 損失函數,區別是應用了兩種不同的卷積神經網絡作為圖像特征提取模塊(ResNet-34 和MobileNet-v3).為了簡化表述,本文將這兩個模型分別記為res34 和mbv3.其次,本文在本地的黑盒條件下,進行了兩組實驗.第一組實驗中,替代模型為res34,黑盒模型為mbv3;第二組實驗中,替代模型為mbv3,黑盒模型為res34.兩組實驗互為對照,可以更好地測試本文所提出的算法在不同實驗設置中的性能.為了驗證本文提出方法對基于attention 方法和基于transformer 方法的文本識別模型的有效性,在本地訓練了一個基于attention 方法的文本識別模型和一個基于transformer 的文本識別模型,以黑盒條件進行了第三組實驗.基于attention 方法的文本識別模型將res34 模型的解碼器改為seq2seq 結構,并基于attention 方法進行解碼,為了簡化表述,將該模型稱為res34-att.基于transformer 方法的文本識別模型采用NRTR 方法,記為NRTR.第三組實驗,黑盒模型分別為res34-att 和NRTR,替代模型為mbv3.為了驗證不同的基于遷移的黑盒攻擊算法的性能,本文共測試了7 種基于遷移的黑盒攻擊算法,分別為MI-FGSM,TMI-FGSM,SI-NITMI,DMI-FGSM,SI-NI-DMI,DI-TIM 和VNI-SIDI-TIM.算法中涉及到的具體參數設置如下: 迭代次數K=10,動量因子μ=1,幅值縮放次數m=5,空間變化T(·;p) 的概率p=0.5,鄰域采樣數量N=20,鄰域采樣閾值β=1.5.之后,本文針對梯度卷積核ω尺寸進行了消融實驗,用于選擇合適的卷積核來平衡視覺效果和攻擊成功率.為了測試本算法在實際場景中的表現,本文將百度身份證識別模型作為攻擊對象,從測試集中挑選了合適的樣本作為新的攻擊數據集,并且針對二值化掩碼進行了消融實驗,驗證二值化掩碼對于視覺效果的提升作用.最后,本文在物理世界中驗證了空間變換對于提升魯棒性的作用.

實驗用的評價指標包括攻擊成功率和編輯距離.其中,攻擊成功的標準是模型輸出和原始標簽不同.編輯距離是指兩個字符串之間,由一個字符串轉換為另一個字符串所需要的最少操作次數.可用的操作包括替換,插入和刪除.它可以量化模型輸出和原始標簽之間的差異性,編輯距離越大,差異性越大,編輯距離越小,差異性越小.攻擊成功率(Attack sueccess rate,ASR)和平均編輯距離(Average edit distance,AED)的計算公式分別如式(7)和式(8)所示.

式(7)和(8)中,N代表樣本總數,d[f(xadv)→y]表示對抗樣本的輸出結果和原始標簽之間的編輯距離,l(y) 代表原始標簽的長度.此處,平均編輯距離經過了歸一化處理.

2.3.2 實驗結果

經過模型訓練,res34 和mbv3 在測試集上分別達到了99.99%和99.81%的識別準確率,滿足攻擊算法的測試要求.本文將所采用的基于遷移的黑盒攻擊算法VNI-D(T,S)I-FGSM 記為VNI-SI-DITIM.為了更加全面地評估算法的性能,實驗中采用了不同大小的l ∞范數限制,對每種范數限制下的攻擊成功率和平均編輯距離都進行了統計,并且給出了這兩個指標在不同范數限制下的均值.白盒條件下的兩組實驗結果如表3 和表4 所示,黑盒條件下的兩組實驗結果如表5 和表6 所示.這四個實驗中,均采用了7 種不同大小的范數限制,從4 到80(以輸入圖像范數為0 到255 為量綱).

表3 第一組實驗中針對替代模型res34 的白盒攻擊結果Table 3 White-box attack results against the surrogate model res34 in the first set of experiments

表4 第二組實驗中針對替代模型mbv3 的白盒攻擊結果Table 4 White-box attack results against the surrogate model mbv3 in the second set of experiments

表6 第二組實驗中針對黑盒模型res34 的黑盒攻擊結果Table 6 Black-box attack results against the black-box model res34 in the second set of experiments

由表3 和表4 可知,在白盒條件下,所測試算法的平均攻擊成功率都達到了97%,平均編輯距離大于0.6.平均編輯距離和攻擊成功率成正比關系,攻擊成功率越高,平均編輯距離也越大.即使是在較小的范數限制下,如4 或8,攻擊成功率幾乎都在90%以上.通過白盒條件下的這兩組實驗,充分說明了基于遷移的黑盒攻擊算法的有效性,同時也揭示了身份證識別模型在白盒條件下的脆弱性.

由表5 和表6 可知,在黑盒條件下,所測試算法的平均攻擊成功率在35%到65%之間,平均編輯距離在0.15 到0.45 之間.在兩組實驗中,VNI-SIDI-TIM 的性能表現都是最好的,平均攻擊成功率分別為56.83% 和62.69%,平均編輯距離分別為0.28 和0.43.值得注意的是,在較小的范數限制下,如4 和8,所測試算法的攻擊成功率均較低,都在10%以下.而當范數限制增加到一定閾值時,如32或48,攻擊成功率才有了明顯的提升.

由表7 和表8 可知,在黑盒條件下,所測試算法的平均攻擊成功率在83%到88%之間,平均編輯距離在0.82 到0.83 之間.在兩組實驗中,VNI-SIDI-TIM 的性能表現都是最好的,平均攻擊成功率分別為87.65%和87.04%,平均編輯距離分別為0.8340和0.8243.值得注意的是,ocr-att 模型和NRTR 模型在身份證數據集上的魯棒性表現弱于CRNN 結構的識別模型,其具體表現為ocr-att 模型和NRTR模型很容易將擾動噪聲誤解碼.

表7 第三組實驗中針對黑盒模型res34-att 的黑盒攻擊結果Table 7 Black-box attack results against the black-box model res34-att in the third set of experiments

表8 第三組實驗中針對黑盒模型NRTR 的黑盒攻擊結果Table 8 Black-box attack results against the black-box model NRTR in the third set of experiments

為了更加直觀地比較不同算法的攻擊效果,本文展示了不同范數限制下的各個算法的攻擊成功率,如圖7 所示.由圖7 可知,攻擊成功率與范數限制成正比關系,范數限制越大,攻擊成功率越高.VNI-SI-DI-TIM 與其他算法相比,在較小的范數限制下,如4 和8 時,優勢并不明顯;而在較大的范數限制下,如32 及以上,才具有較為明顯的攻擊成功率優勢.由于范數限制和視覺效果成反比,即范數限制越大,對抗噪聲就會越明顯,視覺效果越差.在達到相似的攻擊成功率時,VNI-SI-DI-TIM 需要的范數限制較小,生成的對抗樣本視覺效果較好.

圖7 不同范數限制下的攻擊成功率趨勢圖 (上: 針對mbv3 的黑盒攻擊實驗,下: 針對res34 的黑盒攻擊實驗)Fig.7 Trend graph of attack success rate under different norm constraints (Top: Black-box attack experiment for mbv3;Bottom: Black-box attack experiment for res34)

為了測試梯度卷積核尺寸對于攻擊成功率的影響,本文進行了兩組消融實驗.第一組實驗中,黑盒模型為res34,第二組實驗中,黑盒模型為mbv3.這兩組實驗均選取了大小為5×5 和15×15 的兩種高斯卷積核,所選擇的基準方法為TMI,因為其只包含對梯度的卷積這一項輸入變化,排除了其他輸入變化的干擾.實驗結果如表9 和表10 所示.

表9 卷積核尺寸消融實驗,第一組實驗中針對黑盒模型res34 的攻擊結果Table 9 Convolution kernel size ablation experiment,the attack results against the black-box model res34 in the first set of experiments

表10 卷積核尺寸消融實驗,第二組實驗中針對黑盒模型mbv3 的攻擊結果Table 10 Convolution kernel size ablation experiment,the attack results against the black-box model mbv3 in the second set of experiments

由表9 和表10 可得,卷積核尺寸由5×5 增加到15×15 后,平均攻擊成功率升高.第一組實驗中,TMI 的平均攻擊成功率增加了8.66%,VNI-SI-DITIM 增加了5.85%;第二組實驗中,TMI 的平均攻擊成功率增加了7.37%,VNI-SI-DI-TIM 增加了7.32%.為了更加直觀地觀察到這一現象,本文展示了不同卷積核尺寸下的攻擊成功率趨勢圖,如圖8所示.從圖中可以看出,在較大的范數限制下(大于16),增大卷積核可以明顯提升攻擊成功率.為了清晰地觀察到不同卷積核尺寸下生成對抗樣本的視覺效果,本文以姓名為“康憊憑”的文本圖像為例,在圖9 中展示了大小為5×5 和15×15 的兩組卷積核在不同范數限制下所生成的對抗樣本.可以觀察到,隨著范數限制的增大,對抗噪聲的幅值增加,顏色加深,生成的對抗樣本視覺效果變差.而較大的卷積核尺寸,使得生成的對抗噪聲更加平滑,提升了視覺效果.基于此,本文在后續實驗中將高斯卷積核尺寸設置為15×15.

圖8 不同卷積核大小下的攻擊成功率趨勢圖 (左: 針對res34 的黑盒攻擊結果,右: 針對mbv3 的黑盒攻擊結果)Fig.8 Trend chart of attack success rate under different convolution kernel sizes (Left: Black-box attack results against res34;Right: Black-box attack results against mbv3)

圖9 不同卷積核尺寸生成的對抗樣本示例圖Fig.9 Adversarial examples generated with different convolution kernel sizes

為了測試本文的方法在實際場景中的攻擊性能,本文針對百度身份證識別模型進行了實驗.首先,本文在測試集中挑選了兩種關鍵字段的文本圖像,姓名和身份證號,每種類型的圖像各100 張,還有100 張相應的身份證圖像,作為攻擊數據集.挑選的標準是關鍵字段的文本圖像可以被替代模型mbv3 正確識別.由于姓名和身份證號包含了幾乎是最重要的個人信息(出生,性別,住址的省市均可以由身份證號獲取),且同時含有文字,數字和特殊字符X,選擇這兩部分字段的文本圖像作為攻擊數據集不僅可以全面地分析算法的性能,而且可以控制百度身份證模型的調用成本.之后,利用VNI-SIDI-TIM 算法生成關鍵字段的對抗樣本,再將其替換回原有的關鍵字段區域,生成身份證圖像.最后,調用百度身份證識別模型接口進行識別.由于在之前的實驗中,范數限制大小在48 及以上時,針對本地黑盒模型的攻擊成功率才達到了90%以上,本實驗采用了48 到128 的5 種范數限制.此外,為了測試二值化掩碼對于視覺效果的提升作用,同步設計了消融實驗,實驗結果如表11 所示.其中,? 表示加入二值化掩碼,×表示剔除二值化掩碼.

表11 針對百度身份證識別模型的攻擊結果Table 11 Attack results against Baidu ID card recognition model

由表11 可得,在較小的范數限制下,如48 和64,攻擊成功率均較低.當范數限制增加到80 時,攻擊成功率有了明顯的提高.當范數限制達到128 時,不論是否加入二值化掩碼,攻擊成功率均達到了100%.這說明,范數限制大小是影響攻擊成功率的主要因素.范數限制越大,對抗噪聲的搜索空間越大,攻擊成功率越高.然而,增大范數限制會降低視覺效果,如圖10 所示.尤其對于文本圖像而言,全局的范數限制會導致對抗噪聲覆蓋在字體上,嚴重干擾人類的判斷,這與對抗樣本的定義相違背,二值化掩碼的加入可以極大地改善這一問題.

圖10 二值化掩碼消融實驗中生成的對抗樣本示例圖Fig.10 Adversarial examples generated in the ablation experiment of the binarized mask

如圖10,針對姓名字段,加入二值化掩碼的算法,平均攻擊成功率下降了1.4%;針對身份證號字段,平均攻擊成功率下降了1.2%.從實驗結果看出,通過加入二值化掩碼,對抗樣本在視覺效果與攻擊效果之間達到一個平衡,在不顯著影響攻擊成功率的同時,有效地增強視覺效果.

為了更加直觀地觀察到二值化掩碼對視覺效果的影響,本文在圖10 中展示了“康憊憑”這一姓名字段的對抗樣本,并且在圖11 中展示了其完整身份證圖像和百度身份證識別模型的輸出結果.

圖11 身份證對抗樣本及百度身份證模型識別結果(第一行: 加入二值化掩碼,第二行:剔除二值化掩碼)Fig.11 ID card adversarial examples and Baidu ID card recognition results (The first line: Add binarization mask;The second line: Cancel binarization mask)

從圖10 可以觀察到,加入二值化掩碼對于提升對抗樣本的視覺效果有較為顯著的作用.尤其是在較大的范數限制下,將對抗噪聲限制在背景區域是非常有必要的.從圖中可以觀察到,二值化掩碼是否存在,影響了生成的對抗噪聲的顏色和形狀.這說明,加入二值化掩碼并不是簡單地將字體上的對抗噪聲消除,而是在背景區域產生相似攻擊性的對抗噪聲.這樣的實驗結果也從側面說明,基于CRNN 架構的文本識別模型,其決策邊界容易受到所學的背景特征的影響.

如圖11 所示,百度身份證識別模型將這兩張身份證圖像中的姓名字段全部判斷出錯,而身份證號字段由于沒有檢測到,所以并沒有返回識別結果,其范數限制均為128.雖然這兩張對抗樣本身份證均可以攻擊成功,但剔除二值化掩碼所生成的對抗樣本,已經顯著影響到了人類的觀察,而加入二值化掩碼可以有效地改善視覺效果,降低對人類觀察的影響.對于百度身份證識別模型的攻擊實驗充分說明,模型架構的差異對于攻擊成功率的影響非常大.由于本地的替代模型和訓練用的數據集與百度的存在較大的差異性,在本地范數限制48 就可以達到90%以上攻擊成功率的算法,在百度身份證識別模型上需要幾乎兩倍的范數限制,才能達到類似的攻擊成功率.這說明在實際應用場景中,替代模型和黑盒模型之間的差異性對于基于遷移性的黑盒攻擊算法影響非常大.

為了驗證本方法在物理世界中的攻擊性能和空間變換對于對抗魯棒性的提升作用,本文在物理世界中進行了實驗.首先,本文在數字世界中挑選了十張范數限制為128 的對抗身份證圖像,圖像分辨率為2 120×1 370 像素,且這十張圖像均可以成功攻擊百度身份證識別模型.之后,將其保存為便捷文檔格式(Portable document format,PDF)并利用打印機打印出來.最后用手機分別在三組不同拍攝距離和光照條件下進行拍攝,共得到90 張對抗身份證圖像,利用其攻擊百度身份證識別模型.手機型號為小米9,鏡頭參數為默認長焦,圖像分辨率均為4 000×2 250 像素.圖12 展示了其中一張身份證圖像對應的9 張物理世界的對抗樣本.

圖12 不同拍攝距離和光照下的身份證對抗樣本Fig.12 ID card adversarial examples under different shooting distances and lighting conditions

如圖12 所示,在較強的亮度和較近的拍攝距離下,對抗樣本的視覺效果最好.圖中的9 張對抗樣本及全部的90 張對抗樣本均可以成功攻擊百度身份證識別模型,攻擊結果是姓名和身份證號全部識別出錯,其他的關鍵字段均可以正確識別.該實驗充分證明了本方法在物理世界中的攻擊性能,并且說明了空間變換可以有效地增強對抗魯棒性.

3 總結

本文提出了針對身份證文本識別模型的黑盒攻擊算法,同時考慮了黑盒條件和物理世界兩種高難度的攻擊設定,在對比分析基于遷移的黑盒攻擊算法的基礎上,引入了二值化掩碼和空間變換,改善了較大范數限制下對抗樣本的視覺效果和其在物理世界中的魯棒性.二值化掩碼的加入,將對抗噪聲的搜索空間限制在了背景區域,只通過背景的改變就影響到了文本識別模型的決策邊界,從側面揭示了文本識別模型對字體所處的背景特征具有較強的依賴性.空間變換在數字世界建模了物理世界中光照,噪聲和拍攝距離的影響,使得對抗樣本對環境因素的干擾具有一定的魯棒性.在本地的黑盒身份證文本識別模型和商用的百度身份證文本識別模型上均達到了100%的攻擊成功率.與已有的針對文本識別模型的對抗攻擊算法不同,本算法在較復雜背景的數據集,黑盒攻擊條件,物理世界三個方面均具有良好的泛化優勢,攻擊設定更加貼近現實場景,實用價值較高.未來我們將在駕駛證,社??ê豌y行支票等自然場景文字識別應用上進一步將本文的結論進行擴展,以適應更多的應用場景.

猜你喜歡
黑盒掩碼范數
一種基于局部平均有限差分的黑盒對抗攻擊方法
低面積復雜度AES低熵掩碼方案的研究
基于布爾異或掩碼轉算術加法掩碼的安全設計*
基于加權核范數與范數的魯棒主成分分析
矩陣酉不變范數H?lder不等式及其應用
基于掩碼的區域增長相位解纏方法
基于掩碼的AES算法抗二階DPA攻擊方法研究
一類具有準齊次核的Hilbert型奇異重積分算子的范數及應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合