呂志強, 張 磊, 夏宇琦, 張 寧
1中國科學(xué)院信息工程研究所第四研究室 北京 中國 100093
2中國科學(xué)院大學(xué)網(wǎng)絡(luò)空間安全學(xué)院 北京 中國 100093
隨著國際信息安全形勢的日益嚴峻, 電子信息設(shè)備泄漏信號引起的信息安全和保護問題的危害已引起國內(nèi)外的廣泛關(guān)注?,F(xiàn)代電子信息設(shè)備在運轉(zhuǎn)過程中廣泛存在電磁泄漏, 而泄漏的電磁信號中常常包含大量有用信息, 導(dǎo)致嚴重的安全性問題[1-3]。據(jù)研究表明, 現(xiàn)代計算機正常工作時所產(chǎn)生的信息會發(fā)生泄漏輻射。電磁泄漏信號包含由信息設(shè)備處理的敏感信息, 通過專用信號接收設(shè)備和信息設(shè)備電磁泄漏發(fā)射防護技術(shù)(Telecommunications Electronic Material Protected from Emanations Spurious Transmission, 以下簡稱TEMPEST)可以截獲電磁泄漏信號并恢復(fù)其中攜帶的重要信息。攔截和恢復(fù)機密信息會威脅到國家信息的安全。作為該問題的關(guān)鍵技術(shù), 電磁泄漏發(fā)射防護技術(shù)已經(jīng)成為了全世界主要國家和多個地區(qū)的研究熱點和研究重點。
TEMPEST源自美國政府在20世紀60年代后期開展的一個機密項目, 旨在研究如何利用和防范計算機和電信設(shè)備通過發(fā)射電磁輻射(EMR)導(dǎo)致敏感數(shù)據(jù)被復(fù)現(xiàn)。1985年, 荷蘭學(xué)者Van Eck W.第一次公開分析了電磁信息泄漏的機理和顯示器電磁輻射造成信息泄漏的實驗結(jié)果[1]。從此TEMPEST 技術(shù)引起了各國政府部門的重視, 我國就是從此開始了對TEMPEST技術(shù)的研究。通過TEMPEST技術(shù)[4], 攻擊人員可以突破物理隔離狀態(tài)下的電子信息設(shè)備對其進行攻擊, 對信息安全造成嚴重威脅。
對于顯示信號而言, 其泄漏的嚴重性遠超過其他類型的信號泄漏, 因為計算機的顯示信號中包含以文本信息為主的大量有用信息。2003 年, Markus G. Kuhn 研究實現(xiàn)了利用LCD顯示器的電磁泄漏截獲還原其顯示的內(nèi)容。日本信息通信研究機構(gòu)NICT在2004 年公開演示了如何利用高性能測定裝置還原顯示器中的信息[5]。2005年, 日本學(xué)者H Tanaka, O Takizawa 和A Yamamura使用電流鉗對電源線進行夾持, 利用傳導(dǎo)泄漏的原理實現(xiàn)了對筆記本電腦顯示圖像的截獲[6]。從攻擊角度來看, 通過對泄漏圖像中存在的文本內(nèi)容進行識別, 可以獲取目標計算機上存在的敏感信息; 從防護角度來看, 對泄漏圖像中存在的文本內(nèi)容進行識別可以判斷計算機是否存在泄漏敏感信息的可能, 進而進行針對性的措施。因此, 對顯示信號泄漏圖像中存在的文本信息進行識別就至關(guān)重要。
圖片中的文本能夠比圖片中其他內(nèi)容提供更加豐富的信息。因此, 圖像文本識別能夠?qū)D像中的文本區(qū)域轉(zhuǎn)化成計算機可以讀取和編輯的符號。文本識別技術(shù)具有廣泛用途, 例如, 文字識別系統(tǒng)常用于圖像檢索[7], 目標定位[8], 人機交互[9], 輔助導(dǎo)航[10-11]。另外, 文字識別系統(tǒng)在安防, 工業(yè)自動化[12]等領(lǐng)域還有諸多應(yīng)用。毫無疑問, 文本識別技術(shù)對于獲取與利用圖像中的文本信息至關(guān)重要, 因此文本識別是計算機視覺領(lǐng)域的熱門主題。
傳統(tǒng)的識別模型大多基于手工設(shè)計特征(hand-crafted features)的文字識別[18-19], 但是使用人工設(shè)計的特征模板去匹配數(shù)據(jù)中的隱含的細節(jié)和模式需要大量的先驗知識, 而且對于特征本身具有很高的要求, 難以滿足數(shù)據(jù)多變的情況, 局限性較強。Weinman等人[20]將字典, 相似度和外形信息結(jié)合起來組成聯(lián)合模型, 然后使用稀疏置信傳播[21]計算最可能的字符內(nèi)容。Mishra等人[22]使用自下而上和從上到下的模型進行文本識別, 該模型使用滑動窗檢測可能的字符, 然后將檢測結(jié)果作為自下而上的信息。而從上到下的信息來自一個大型詞典的統(tǒng)計信息。最后通過條件隨機場(CRF)[23]將自下而上和從上到下的信息整合入一個統(tǒng)一模型。
近幾年, 隨著計算機性能的不斷提升, 以及深度學(xué)習(xí)的蓬勃發(fā)展, 逐漸出現(xiàn)了基于深度學(xué)習(xí)的文本識別模型。Tao Wang等人[24]首先提出了基于卷積神經(jīng)網(wǎng)絡(luò)的端到端文本識別。利用神經(jīng)網(wǎng)絡(luò)的自動特征提取從訓(xùn)練數(shù)據(jù)中自動學(xué)習(xí)到隱含的特征, 用于代替?zhèn)鹘y(tǒng)的手工設(shè)計特征, 為后續(xù)的基于神經(jīng)網(wǎng)絡(luò)的文本識別研究打下了基礎(chǔ)。Bissaco等人[25]使用HOG特征[26]代替原始像素訓(xùn)練來深度神經(jīng)網(wǎng)絡(luò)將每個單詞圖像過分割成字符(或部分字符), 每個部分使用神經(jīng)網(wǎng)絡(luò)進行分類, 最后使用集束搜索(Beam Search)[27]和強N元語言模型找到最佳字符序列。Bai等人的模型將卷積神經(jīng)網(wǎng)絡(luò)與循環(huán)神經(jīng)網(wǎng)絡(luò)結(jié)合[28], 實現(xiàn)了卓越的文本識別效果。Yin等人將卷積神經(jīng)網(wǎng)絡(luò)直接與CTC[16-17]結(jié)合, 避免了循環(huán)神經(jīng)網(wǎng)絡(luò)帶來的梯度消失和梯度爆炸問題[29]。Liu等人[30]在識別網(wǎng)絡(luò)中引入殘差結(jié)構(gòu)抑制過擬合。
盡管學(xué)界在文本識別領(lǐng)域取得了極大進展, 但主流模型都只適用于高質(zhì)量圖片中的英文文本識別, 對于電磁泄漏還原圖像中的中文文本序列識別問題仍未得到有效解決。而且學(xué)界也缺乏相關(guān)的研究, Faisel G. Mohammed等人[31]利用慣性矩識別噪聲字符, 但是只能識別簡單背景下的單個英文字符識別。Chanda Thapliyal Nautiyal等人[32]利用感知機識別噪聲字符, 但也只適用于簡單背景下的單個英文字符。Sudipta等人[33]將自動編碼器與卷積神經(jīng)網(wǎng)絡(luò)結(jié)合, 實現(xiàn)了對帶噪手寫數(shù)字圖片的識別, 然而只適用于單個文字的識別, 局限性較大不適用于通用情況下的帶噪中文文本序列的識別。任曉文等人[34]將噪聲抑制與神經(jīng)網(wǎng)絡(luò)相結(jié)合識別帶噪手寫漢字, 但同樣局限于簡單背景下的單個字符。
對于電磁信號泄露圖像中的文本, 其具有以下特點: 文本在圖像中所處區(qū)域及背景多變, 且文本本身字體形狀等特點多變。此外, 通過電磁泄漏還原的圖像質(zhì)量通常不高, 且包含大量隨機噪聲, 其中以高斯噪聲和瑞利噪聲為主[13]。由于識別模型無法做到像人類視覺系統(tǒng)一樣, 在部分圖像信息被破壞或缺失的情況下依然能不受其影響而完成對目標的識別。這就導(dǎo)致常規(guī)的文本識別模型在低質(zhì)量圖像中的識別難度很大[14]。此外, 相比于英文文本, 中文字符種類繁多, 字符的外形更加復(fù)雜[15], 對中文字符的判別很大程度上依賴于字符間的細微差別, 這些細節(jié)極易受噪聲干擾影響模型判別。因此, 對于電磁泄漏還原圖像中的中文文本識別具有挑戰(zhàn)性和實際意義, 也迫切需要對其進行研究。
因此, 針對電磁泄漏還原圖像中的中文文本識別問題, 本文提出了一種利用基于特征強化的識別模型(FENN), 實現(xiàn)對電磁泄漏還原的圖像中存在的中文文本進行識別。模型將去噪自編碼器(Denoising Autoencoder, DAE)與卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN)相結(jié)合形成特征強化模塊, 在訓(xùn)練識別模型的同時訓(xùn)練DAE重建模型, 實現(xiàn)對電磁泄漏還原圖像中魯棒特征的提取; 利用循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network, RNN)學(xué)習(xí)上下文信息并使用連續(xù)時間序列分類(Connectionist temporal classification, CTC)[16-17]實現(xiàn)時序序列標注。此外, 本文還提出了一種新的損失函數(shù), 將CTC損失與均方誤差重建損失的調(diào)和平均值作為聯(lián)合損失函數(shù)實現(xiàn)兩部分的進行端到端訓(xùn)練, 當(dāng)訓(xùn)練使得聯(lián)合損失最小時兩部分同時達到最優(yōu), 此時特征強化模塊能夠提取最佳魯棒特征, 同時識別模塊的識別率最高, 實現(xiàn)針對電磁泄漏重建圖像的精確識別。
本文模型的針對性創(chuàng)新點解決了其他主流識別模型無法抵抗噪聲干擾的缺點, 同時本模型不會造成圖像像素級別的信息損失, 避免了預(yù)處理對圖像信息的先驗修改, 因此能更好地保留原始信息, 提高識別率。實驗表明, 相比于其他主流識別模型, 本文的識別模型能夠有效地從電磁泄漏還原圖像中學(xué)習(xí)中文文本特征, 提升模型識別率。
本文第1 節(jié)介紹背景與相關(guān)工作; 第2 節(jié)介紹模型的原理與構(gòu)建; 第3 節(jié)說明實驗相關(guān)的樣本數(shù)據(jù); 第4 節(jié)給出實驗設(shè)計和結(jié)果分析; 最后第5節(jié)對本文進行總結(jié)。
本文針對電磁泄漏還原圖像中的中文文本識別問題提出了一種新的模型, 模型包括2個主要組成部分: 特征強化模塊和時序序列標注模塊。首先, 帶噪圖像輸入網(wǎng)絡(luò)后通過特征強化模塊得到區(qū)分性的二維特征。然后通過多層雙向LSTM學(xué)習(xí)時序特征的前后相關(guān)性, 最后利用CTC對這些時序特征進行序列標注得到中文類別序列。為了最優(yōu)化該模型, 將特征強化部分的解碼器部分與識別模型分離并通過均方誤差損失評判自編碼器的重建效果以此評估其學(xué)習(xí)到的魯棒特征, 然后將均方誤差損失與CTC損失相結(jié)合組成聯(lián)合損失函數(shù), 對模型進行聯(lián)合訓(xùn)練。當(dāng)聯(lián)合損失最小時模型達到最優(yōu), 此時特征強化模塊能夠提取最佳魯棒特征, 同時序列標注模塊的準確率最高, 整個模型達到最優(yōu), 如圖1所示。
圖1 模型完整架構(gòu)圖 Figure 1 The overall framework of the model
對于文本識別問題, 主流的模型通常采用卷積神經(jīng)網(wǎng)絡(luò)提取圖像的二維特征, 這種模型對于高質(zhì)量的圖像是適用的, 但是對于電磁泄漏還原圖像這種被噪聲污染的低質(zhì)量圖像, 僅使用常規(guī)卷積神經(jīng)網(wǎng)絡(luò)是不夠的。盡管卷積神經(jīng)網(wǎng)絡(luò)能夠通過大量數(shù)據(jù)學(xué)習(xí)其內(nèi)在特征, 因此對一定程度的數(shù)據(jù)變化具有適應(yīng)性, 但需要強調(diào)的是這些數(shù)據(jù)變化不能對區(qū)分性的特征信息造成破壞。 例如平移、旋轉(zhuǎn)等變化確實從一定程度上豐富了數(shù)據(jù)量, 但這是由于沒有對目標本身的區(qū)分性特征造成破壞, 因此這種數(shù)據(jù)變化是有益的。然而, 噪聲污染對圖像中的區(qū)分性特征是具有破壞性的, 噪聲污染從像素級別改變了圖像本身的信息, 使得區(qū)分性特征變得不完整。進而增加了卷積神經(jīng)網(wǎng)絡(luò)對有效特征的學(xué)習(xí)難度, 最終影響識別效果。為了直觀體現(xiàn)上述問題, 采用對比實驗在手寫數(shù)字集MNIST上進行驗證, 結(jié)果如圖2所示, 其中紅色曲線為卷積神經(jīng)網(wǎng)絡(luò)模型在原始MNIST數(shù)據(jù)集上的訓(xùn)練損失, 藍色曲線為相同模型在被均值為0方差為1的隨機高斯噪聲污染的MNIST上的訓(xùn)練損失??梢钥闯? 對于被噪聲污染的圖像, 模型的訓(xùn)練損失明顯高于無噪聲的情況, 對識別效果造成很大影響。
圖2 卷積神經(jīng)網(wǎng)絡(luò)在有無噪聲污染下的訓(xùn)練損失圖 Figure 2 C NN training loss with and without noise
因此, 對電磁泄漏還原圖像而言, 最重要的是從中學(xué)習(xí)到有效特征。實驗表明, 利用無監(jiān)督方式對模型進行預(yù)先優(yōu)化可以最終提升模型的識別性能[52]。因此FENN引入去噪自編碼器, 在使用噪聲污染圖像和無噪聲污染的原始圖像訓(xùn)練去噪自編碼器的過程中, 以無監(jiān)督學(xué)習(xí)的方式最小化重建誤差實現(xiàn)對原始無噪聲污染圖像X和有效特征Y之間互信息的最大化, 此時可以認為去噪自編碼器學(xué)習(xí)到了噪聲污染圖像中的有效特征。然而, 僅依靠去噪自編碼器學(xué)習(xí)的特征是不夠的, 去噪自編碼器的局限在于其僅對訓(xùn)練過程中出現(xiàn)過的噪聲分布表現(xiàn)良好, 這也就意味著, 對于陌生的噪聲污染圖像, 去噪自編碼器不一定能夠得到最有效的特征。考慮到上述原因, FENN將預(yù)訓(xùn)練的去噪自編碼器和卷積神經(jīng)網(wǎng)絡(luò)的特征學(xué)習(xí)部分相結(jié)合, 將二者的損失函數(shù)組成聯(lián)合損失函數(shù)并通過優(yōu)化聯(lián)合損失函數(shù)使得模型能夠在學(xué)習(xí)魯棒特征的同時避免原圖信息的流失, 以此強化文本特征, 弱化噪聲的干擾而非僅利用原始圖像特征或僅利用魯棒特征, 最終有效地從電磁泄漏還原圖像中學(xué)習(xí)文本特征, 提升模型識別率。特征強化模塊完整結(jié)構(gòu)如圖3所示。
2.1.1 特征學(xué)習(xí)
特征學(xué)習(xí)部分通過卷積層將輸入文本圖像轉(zhuǎn)化為具有區(qū)分性的二維特征表示, 如圖4所示。卷積神經(jīng)網(wǎng)絡(luò)是一種層級式神經(jīng)網(wǎng)絡(luò), 通過序列式堆疊多個二維卷積層, 實現(xiàn)對二維圖形特征表達能力, 能夠擬合復(fù)雜和抽象的二維數(shù)據(jù)模式, 在文字識別, 視覺目標識別等領(lǐng)域獲得了極大成功[35-37]。
圖3 特征強化模塊圖 Figure 3 2D feature extracting module
圖4 文本圖像的二維特征示意圖 Figure 4 2D feature maps of a text image
定義1. 卷積層(CONV layer)。對于長度為n的輸入向量 x =( x0, x1, … , xn-1) ∈?n, 卷積層對輸入向量進行卷積操作得到相同長度的輸出向量y =( y0, y1,… , yn-1) ∈?n, 如圖5所示。即輸出向量的每一維yi是對應(yīng)輸入xi及其相鄰元素的加權(quán)和:
其中Ni是xi的鄰域內(nèi)全體元素的索引集合, ωj是鄰域內(nèi)元素的權(quán)重。
圖5 卷積操作示意圖 Figure 5 Concept of convolution
將卷積操作記作“*”, 并將其擴展至二維空間, 則可得到表述二維卷積層的公式:
為應(yīng)對中文文本識別問題具有字符種類繁多, 字體多變且存在大量外形相近的字符等特點。特征學(xué)習(xí)部分采用較深層的卷積層, 以最大限度地學(xué)習(xí)高層次的抽象特征。特征學(xué)習(xí)部分的卷積核尺寸均為3×3, 卷積核數(shù)量從淺層的64個逐漸增加至深層的512個, 最終的特征圖數(shù)量為512。模型引入池化層(POOL)對特征進行下采樣以減小維度, 同時有助于實現(xiàn)卷積神經(jīng)網(wǎng)絡(luò)的局部不變性。
對于噪聲污染的圖像, 模型在判別過程中會由于噪聲特征的作用而產(chǎn)生過擬合, 使得模型在陌生數(shù)據(jù)下表現(xiàn)不佳, 因此模型在設(shè)計時需要盡可能減輕過擬合。模型的特征學(xué)習(xí)采用序列式堆疊的相同尺寸的卷積層[38], 可以有效降低參數(shù)總量從而減輕過擬合。例如, 連續(xù)兩層3×3的卷積核等價于單層5×5卷積核的覆蓋范圍, 而一個5×5的卷積核參數(shù)總量為25, 而與其等效的兩個3×3的卷積核參數(shù)總量只有18, 參數(shù)同比減少了28%。二維特征學(xué)習(xí)模塊部分參數(shù)詳見表1, 其中CONV為卷積層, n為卷 積核個數(shù), k為卷積核尺寸, POOL為池化層, 用于對特征圖的下采樣以降低其維度并實現(xiàn)平移、旋轉(zhuǎn)不變性等特性。
表1 二維特征學(xué)習(xí)模塊部分參數(shù) Table 1 Configurations of 2D feature learning
2.1.2 去噪自編碼器
其中L是損失函數(shù)如均方誤差等。對于自動編碼器, 可以通過有目的地訓(xùn)練可以使其具有圖像去噪與重建的功能, 即模型在輸入圖像部分信息被破壞的情況下盡可能使輸出圖像與未被破壞的原始圖像接近, 也就是去噪自編碼器(DAE), 其結(jié)構(gòu)如圖6所示。
圖6 去噪自編碼器結(jié)構(gòu)圖 Figure 6 The architecture of Denoising Autoencoder (DAE)
去噪自編碼器實現(xiàn)過程如下, 假設(shè)現(xiàn)有輸入圖像x, x被噪聲污染后得到, 即x中的對應(yīng)信息在x~中被修改, 自編碼器需要在訓(xùn)練過程中自動將這些被修改的信息還原。這樣, x~通過自編碼器的映射得到隱藏層表征, 通過該表征可以得到重建圖像
特征強化部分中所用的去噪自編碼器由編碼器和解碼器兩部分構(gòu)成, 其中編碼器部分包含三個階段, 這三個階段得到的特征與特征學(xué)習(xí)部分對應(yīng)階段的輸出特征進行合并。具體參數(shù)見表2, 其中n為卷積核個數(shù), k為模板尺寸。
表2 去噪自編碼器參數(shù) Table 2 Configurations of DAE
UP-CONV為上采樣層, 卷積核通過設(shè)置不同填充和卷積步長實現(xiàn)將小尺寸特征恢復(fù)成原始尺寸, 解碼器將上采樣層與卷積層結(jié)合, 將編碼器的輸出特征還原無噪聲污染的原始圖像, 如圖7所示。
圖7 UP-CONV層上采樣操作示意圖 Figure7 Upsampling of UP-CONV layer
其中, 藍色像素為編碼器部分得到的特征, 綠色像素為上采樣結(jié)果。將特征像素之間分隔開, 使得卷積核的步長得以增加以實現(xiàn)上采樣的效果。當(dāng)去噪自編碼器訓(xùn)練完成后, 可以將其編碼部分單獨取出作為特征提取模塊, 相比于常規(guī)卷積神經(jīng)網(wǎng)絡(luò), 去噪自編碼器從噪聲污染圖像提取的特征更魯棒, 受信息破壞的影響更小。因此, FENN將去噪自編碼器的編碼部分融入識別模型, 在保留輸入圖像全部信息的同時盡可能提取文本本身的特征而抵御噪聲的影響。
2.1.3 特征強化
將特征學(xué)習(xí)部分和去噪自編碼器結(jié)合得到完整的特征強化模塊。特征強化模塊背后的邏輯在于, 電磁泄漏還原的文本圖像中既包含文本信息同時也包含噪聲信息, 文本內(nèi)容與噪聲特征是無關(guān)的。如果僅使用常規(guī)卷積神經(jīng)網(wǎng)絡(luò)提取二維特征, 則模型在訓(xùn)練過程中會同時考慮文本和噪聲信息, 導(dǎo)致文本和噪聲的特征混雜, 阻礙模型學(xué)習(xí)到區(qū)分性的文本特征, 影響識別精度。實際測試中發(fā)現(xiàn), 對于噪聲污染的圖像, 模型極易出現(xiàn)過擬合, 原因是模型在特征學(xué)習(xí)過程中將與文本信息無關(guān)的噪聲特征也作為了判別的依據(jù), 導(dǎo)致卷積特征不夠魯棒。因此, 模型需要盡可能抵御噪聲對特征的影響, 提取更加魯棒, 更加具有區(qū)分性的文本特征。
然而, 對于常規(guī)的基于卷積神經(jīng)網(wǎng)絡(luò)的識別模型而言, 上述功能顯然是難以控制的。因此, 本文不只依靠卷積神經(jīng)網(wǎng)絡(luò)自身學(xué)習(xí)圖像特征, 而是通過在模型上增加去噪自編碼器實現(xiàn)魯棒特征提取。通過引入特征強化部分, 在模型內(nèi)部強化文本特征, 使得識別模型在判別時能夠不受噪聲影響。
從圖3結(jié)構(gòu)上看, 特征學(xué)習(xí)仍包含原始圖像中的完整特征信息, 不會導(dǎo)致原始特征信息的更改或丟失, 特征強化部分包含抑制噪聲后的魯棒文本特征信息。因此, 完整的識別模型同時根據(jù)特征強化部分中的魯棒特征和卷積主干中的原始特征進行判別, 使得完整模型能夠更加充分有效地從噪聲污染的圖像中學(xué)習(xí)到文本的區(qū)分性特征, 提升識別精度。此外, 將特征強化部分融入識別模型內(nèi)部能夠提升模型的整體性, 識別過程是端到端的, 無需經(jīng)過任何單獨的去噪等預(yù)處理, 完全由模型自主學(xué)習(xí)全部特征。
特征強化部分由去噪自編碼器的編碼模塊組成。輸入圖像共經(jīng)過序列式3級去噪自編碼器。特征強化部分與特征學(xué)習(xí)部分的連接方式采用簡化的密集連接[39], 使得去噪自編碼器中各階段的魯棒特征與特征學(xué)習(xí)模塊各階段的常規(guī)特征產(chǎn)生聯(lián)系, 有助于避免梯度消失問題。預(yù)訓(xùn)練去噪自編碼器各階段的輸出特征經(jīng)過后續(xù)的特征維度匹配得到與特征學(xué)習(xí)部分的輸出特征相同維度的特征, 然后沿通道方向進行特征合并之后, 特征圖組中包含特征強化部分各級輸出的多級別魯棒特征, 增加后續(xù)層輸入數(shù)據(jù)的多樣性, 提升模型效率。其中淺層去噪自編碼器的輸出特征對原圖中的信息保留更多, 在卷積部分中會流經(jīng)更深的卷積層, 最終的得到特征抽象程度高, 在判別時的比重高。特征強化模塊的完整數(shù)據(jù)流如下, 圖像經(jīng)過去噪自編碼器和下采樣后的輸出分為兩路, 一路經(jīng)過特征維度匹配與特征學(xué)習(xí)部分的特征合并, 然后進行后續(xù)的特征學(xué)習(xí); 另一路送入后續(xù)的去噪自編碼器進一步得到更加魯棒的二維特征, 然后與特征學(xué)習(xí)部分中的特征學(xué)習(xí)模塊的輸出特征沿通道維度進行合并(channel-wise concat), 如圖8所示。
圖8 特征合并示意圖 Figure 8 Channel-wise concatenation of features
2.1.4 二維特征映射
由于RNN無法直接處理二維特征, 因此卷積特征在送入上下文信息提取模塊之前需要映射成一維的特征序列。圖像局部區(qū)域的特征提取由卷積模塊、下采樣模塊和激活函數(shù)共同實現(xiàn), 特征學(xué)習(xí)部分最終的特征圖具有平移不變性, 因此可以將卷積層得到的這些特征圖組進行維度重置。特征圖組中的每一列及其在通道維度的延伸對應(yīng)原始輸入圖像中的一個矩形區(qū)域, 這些矩形區(qū)域的排列方式和特征圖組中對應(yīng)列的排列方式是一致的, 即從左向右依次排列。映射操作沿卷積特征圖組的通道維度, 將每張?zhí)卣鲌D的第t列取出后組成一個二維特征向量并展開, 然后以首尾相接的形式組成一維特征序列送入RNN, 每個特征向量都與一個感受野相聯(lián)系, 可以描述對應(yīng)區(qū)域的二維特征, 如圖9所示。
圖9 特征序列與感受野示意圖 Figure9 Feature sequence and receptive field
特征學(xué)習(xí)部分最后一個卷積層輸出特征圖組的維度為H×W×D。其中, H, W, D分別為高度, 寬度和深度。 映射后得到W個特征序列對應(yīng)原特征圖的寬度W, 作為上下文信息序列c = (c1, c2, …, cW)送入循環(huán)部分。
輸入圖像經(jīng)過特征強化模塊提取特征得到了時序特征序列, 于是文本圖像識別問題就轉(zhuǎn)化為了序列標注問題。與英文不同, 中文文本沒有單詞級別的顯式分詞, 導(dǎo)致檢測階段得到的文本行普遍較長, 且前后信息關(guān)系緊密。因此, 需要使用RNN學(xué)習(xí)時序特征序列中的上下文信息。RNN通過內(nèi)部自連接的隱藏層保留過往信息, 有效地提升了中文文本識別的準確率。
2.2.1 LSTM
模型使用長-短時記憶體(Long-Short Term Memory, LSTM)實現(xiàn)上下文特征提取。
LSTM[40]是RNN的一個變種, 通過清除或添加內(nèi)部存儲單元中的信息, 避免模型過分參考小范圍內(nèi)的上下文信息, 使其充分學(xué)習(xí)到序列中的長期依賴關(guān)系[41-42]。LSTM具有方向性, 單向的LSTM只能利用一個方向的信息, 但是對于電磁泄漏還原圖像中的中文文本, 上下文兩個方向的信息都有作用, 需要同時考慮。因此, 將兩個方向相反的LSTM結(jié)合在一起形成雙向結(jié)構(gòu), 如圖11所示。正向結(jié)構(gòu)學(xué)習(xí)下文信息, 反向結(jié)構(gòu)學(xué)習(xí)上文信息, 這種結(jié)構(gòu)非常適合于序列識別任務(wù)[43]。
對于被噪聲污染而難以從二維特征判別的字符, 考慮其上下文能夠輔助判別。這里的上下文既包括像素級別的上下文, 也包括字符級別的上下文。從像 素級別來看, 考慮到中文字符的形狀多變, 尺寸不固定的特定, 通常需要結(jié)合多個連續(xù)像素列的信息才能充分描述。因此, 當(dāng)字符的某一部分因為噪聲污染而難以識別時, 可以根據(jù)字符結(jié)構(gòu)的上下文特征進行判斷。從語義級別來看, 利用前后字符之間包含的上下文信息同樣可以幫助判別。例如, 對于“中央*視臺”(“*”代表被噪聲污染而無法識別的字符), 如果考慮上下文信息則該字符有較高概率被預(yù)測為“電”。相比于每個字符單獨識別, 這種考慮序列上下文的方式更適合于文本序列中出現(xiàn)字符因噪聲污染而難以識別的情況。
圖10 雙向RNN結(jié)構(gòu)圖 Figure 10 Bilateral RNN
圖11 噪聲污染文本圖像中的分割情況示意圖 Figure 11 Segmentation in noisy text image
2.2.2 時序?qū)R
在電磁泄漏還原圖像中, 各字符的間隔區(qū)域不明顯, 導(dǎo)致字符對齊困難, 如圖12所示, 其中紅色框為字符區(qū)域, 黃色框為字符間隙區(qū)域。因此, 翻譯模塊采用CTC解碼器, 以無需對齊的方式實現(xiàn)對文本序列的直接判別, 避免了噪聲對分割過程的干擾。CTC[44]將特征輸出轉(zhuǎn)化為所有可能的類別序列的概率分布, 然后最大化正確類別標注的概率。CTC在編解碼過程中引入占位符, 使得模型無需對文本序列進行分割, 也不限定文本序列在圖像中的具體位置, 避免了由于噪聲干擾導(dǎo)致的字符分割困難。對于寬度為W的卷積特征圖, 特征序列x = x1, …, xW共有W個時刻, 每一個時刻t對應(yīng)一個softmax輸出的類別概率分布。令C為所有字符類別集合, 則softmax的輸出類別集合為C′=C∪{占位符}。對于所有時刻的特征輸出矩陣中, 其中橫軸t為時序方向, 縱軸s 為每一幀的類別分布, 包括占位符。特征序列和目標序列之間的對齊方式不唯一, CTC會嘗試所有可能的對齊方式, 然后將每種情況的概率相加并選擇概率最大的路徑。
圖12 RCTW17樣本圖像 Figure 12 Samples from RCTW17
在得到輸出路徑后, CTC通過一種多對一的映射方式?將逐幀序列解碼為最終的類別序列。解碼時?合并無占位符分割的重復(fù)字符并去除占位符。那么令A(yù)為?中包含所有正確解碼路徑的子集, 則輸出目標序列Y的概率為A中所有路徑的概率之和:
對于A中的每條路徑π, 其概率計算如下: 令y為RNN的輸出序列也就是CTC的輸入序列, 則p(t, πt)為y的第t幀判別為路徑π中第t項的概率, 則路徑π的概率為:
其中 πt為路徑π第t幀的類別。對于不包含候選詞典的中文文本識別任務(wù)。根據(jù)上述公式, CTC在尋找概率最大路徑時可以使用貪婪算法[45], 即認為每一個時刻最大概率的類別組成的路徑即為最優(yōu)路徑:
其中, π'= argmaxπp( π|x)
模型最優(yōu)化
模型最優(yōu)化過程就是要找到一組參數(shù)使得對于給定的輸入樣本, 模型輸出正確標注序列的概率最大, 因此可以采用極大似然參數(shù)估計方法將模型的最優(yōu)化問題轉(zhuǎn)化為最小化損失函數(shù)。由于模型的文本識別模塊和去噪自編碼器采用不同的損失函數(shù)進行評判, 因此聯(lián)合訓(xùn)練時需要將二者結(jié)合。對于識別模塊, 沿用2.2.2小節(jié)中的符號, CTC損失的定義為樣本的正確標注的負對數(shù)概率:
對于去噪自編碼器, 采用均方誤差損失函數(shù):
為了解決損失函數(shù)一致性的問題, 對上述兩損失函數(shù)求調(diào)和平均得到聯(lián)合損失, 因此模型訓(xùn)練的目標就是最小化下述聯(lián)合損失函數(shù):
在訓(xùn)練中優(yōu)化聯(lián)合損失的好處在于, 特征強化模塊的編碼器部分將特征輸入識別模塊, 因此識別模塊的CTC損失函數(shù)會從時序序列標注的角度對特征強化模塊得到的魯棒特征進行間接評估, 這樣相比于僅通過均方誤差損失樸素地優(yōu)化去噪自編碼器更能適用于文本識別問題。在反向傳播過程中, 特征強化模塊的編碼器同時考慮均方誤差重建損失和CTC損失, 使得模型的優(yōu)化方向更加明確, 魯棒特征的針對性也更強, 而解碼器部分不參與CTC損失評判, 從一定程度上降低了過擬合。當(dāng)且僅當(dāng)聯(lián)合損失最小時兩部分同時達到最優(yōu), 此時特征強化模塊能夠提取最佳魯棒特征, 同時識別模塊的識別率最高, 整個模型達到最優(yōu)。
圖13 CASIA-10k樣本圖像 Figure13 sample images from CASIA-10k dataset
電磁泄漏還原圖像中的噪聲以高斯噪聲和瑞利噪聲占主導(dǎo)性。其他類型噪聲由于分布較少且對圖像影響甚微, 這里不做討論。因此, 實驗選擇加性高斯白噪聲和瑞利噪聲作為噪聲源代表。
高斯噪聲常見于信號放大原件或信號探測設(shè)備, 由原子的熱運動和物體的熱輻射導(dǎo)致[7]。高斯噪聲的概率密度函數(shù)公式如下。
其中, g是像素值, σ是標準差, μ是均值。概率密度分布瑞利噪聲通常在電磁信道傳輸?shù)膱D像中出現(xiàn), 如雷達探測圖像等[7]。其概率密度函數(shù)公式如下。
為彌補公開數(shù)據(jù)集樣本數(shù)量的不足, 構(gòu)建合成中文圖像數(shù)據(jù)集用于模型預(yù)訓(xùn)練階段, 然后從標準數(shù)據(jù)集RCTW17和CASIA-10k的訓(xùn)練集以及電磁泄漏還原圖像實景數(shù)據(jù)集中截取樣本圖像中的文本區(qū)域并添加噪聲作為微調(diào)訓(xùn)練階段所需的數(shù)據(jù)集。實驗驗證時, 從RCTW17和CASIA-10k的測試集中根據(jù)標注數(shù)據(jù)截取樣本圖像中的文本區(qū)域并添加隨機噪聲與電磁泄漏還原圖像實景數(shù)據(jù)共同作為測試集。
3.2.1 標準數(shù)據(jù)集
RCTW17。該數(shù)據(jù)集來自ICDAR 2017 Competition on Reading Chinese in the Wild競賽[46], 是一個大規(guī)模自然場景數(shù)據(jù)集, 包括街景, 海報, 菜單, 室內(nèi)場景, 截屏等, 數(shù)據(jù)集共包含12 263張的中文文本圖像, 其中8346張為訓(xùn)練圖像, 4229張為測試圖像。圖像經(jīng)過詳細標注, 標注內(nèi)容包括文本區(qū)域的4個頂點坐標以及區(qū)域中的文本內(nèi)容, 每張圖像都至少包含一行中文文本, 評估階段以文本行為單位進行識別, 如圖14所示。
圖14 低中高3種噪聲強度下的樣本圖像 Figure14 Noisy images corrupted by low, medium and high level noise
CASIA-10K。該數(shù)據(jù)集為中科院自動化所PAL團隊提出的中文場景文本數(shù)據(jù)集[9,47], 包含10000張不同場景下的圖像, 其中7000張為訓(xùn)練樣本, 3000張為測試樣本。每張圖片的標注內(nèi)容為文本區(qū)域的4個頂點坐標以及文本區(qū)域的內(nèi)容。評估階段以文本行為單位進行識別, 如圖15所示。
圖15 電磁泄漏還原圖像 Figure 15 Reconstructed image from electromagnetic emission
3.2.2 合成數(shù)據(jù)集
由于公開數(shù)據(jù)集中的樣本數(shù)量有限, 不足以訓(xùn)練出可用的中文識別模型。因此, 首先使用文本圖像合成引擎[48]構(gòu)建中文文本合成圖像用于預(yù)訓(xùn)練階段, 待模型在合成數(shù)據(jù)集上收斂之后, 再遷移到目標數(shù)據(jù)集進行微調(diào)訓(xùn)練(fine-tuning)。合成數(shù)據(jù)集包含100萬個樣本, 每張樣本圖像包含一個文本行, 文本行長度從1字符到10字符不等, 文本內(nèi)容來自人民日報2014年語料庫。每張圖像中文本所使用的字體從46種中文字體中隨機選擇。字符種類為5020, 其中包括10個數(shù)字, 10個常用標點符號, 以及5000個常用漢字。 常用字的選擇根據(jù)現(xiàn)代漢語語料庫漢字頻率表從高到低排列, 到第5000個常用字為止其累計使用頻率為99.95, 足以涵蓋日常場景中的絕大部分中文字符[49]。
3.2.3 樣本加噪
構(gòu)建圖像數(shù)據(jù)集時, 首先根據(jù)標注文件中的文本區(qū)坐標從公開數(shù)據(jù)集RCTW17和CASIA-10k中截取水平方向的文本區(qū)域并進行灰度化處理, 然后添加高斯噪聲和瑞利噪聲對圖像進行污染以模擬電磁泄漏還原的情況, 加噪后的樣本分布情況見表3, 加噪后的樣本如圖16所示。對于加噪后的樣本, 使用峰值信噪比(psnr)和結(jié)構(gòu)相似性(ssim)進行評價。
表3 加噪訓(xùn)練樣本分布表 Table3 Distribution of noisy training samples
3.2.4 實景測試集
針對顯示信號電磁泄漏還原實戰(zhàn)場景, 本文采用如下攻擊場景, 從RCTW17和CASIA-10K數(shù)據(jù)集的訓(xùn)練集和測試集中挑選中帶有文本的圖像信息在目標計算機上顯示, 目標計算機放置在離地1m的平臺上。將電磁泄漏信號接收天線放置于離地高度1m, 距離目標計算機從最近0.5m到最遠3m的位置, 每個位置間距長度為0.5m, 在每個距離上采集50張不同的還原圖像, 如圖17所示。共采集300張作為實景數(shù)據(jù)集并計算平均峰值信噪比與結(jié)構(gòu)相似度, 詳細參數(shù)見表4, 其中70%作為訓(xùn)練集, 30%作為測試集。
表4 電磁還原圖像樣本分布表 Table 4 Distribution of reconstructed image samples
實驗流程如下, 首先, 使用原始未加噪圖像集與加噪圖像集對去噪自編碼器進行預(yù)訓(xùn)練, 然后在構(gòu)建識別模型時使用預(yù)訓(xùn)練的去噪自編碼器中的編碼器模塊構(gòu)建特征強化部分。接著將識別模型在加噪合成樣本訓(xùn)練集上進行預(yù)訓(xùn)練, 待收斂后遷移至目標數(shù)據(jù)集進行微調(diào)(fine-tuning)至再次收斂, 然后在測試集上進行測試, 對比不同模型的結(jié)果。對照組模型與本文模型的訓(xùn)練過程保持一致。
實驗環(huán)境為Ubuntu 14.04系統(tǒng)工作站, 處理器為Intel Xeon E5-2620 v4 @ 2.10GHz, 內(nèi)存容量為64GB, 顯卡型號為NVIDIA Tesla K40c。 實驗所用的程序均使用Python語言在TensorFlow環(huán)境下實現(xiàn)。對于去噪自編碼器部分, 訓(xùn)練時, 模型首先在100萬張合成訓(xùn)練集上進行訓(xùn)練, 待模型收斂后再遷移到目標訓(xùn)練集進行微調(diào)(fine-tuning)直到再次收斂。然后在訓(xùn)練完整識別模型時使用上述預(yù)訓(xùn)練去噪自編碼器的編碼器部分, 同樣在先100萬張合成訓(xùn)練集上進行訓(xùn)練, 待模型收斂后再遷移到目標數(shù)據(jù)集進行微調(diào)(fine-tuning)直到再次收斂。收斂判斷標準為精確率在連續(xù)5個訓(xùn)練周期內(nèi)增長不超過0.01%。訓(xùn)練過程共耗時約50 h。為了加速訓(xùn)練, 訓(xùn)練過程中所有樣本均縮放到128×32, 反向傳播過程使用Adam優(yōu)化器[50], 學(xué)習(xí)率設(shè)置為0.0001。模型中的所有層選擇“Xavier”初始化[51], 批大小為128。完整網(wǎng)絡(luò)的訓(xùn)練環(huán)境等設(shè)置與去噪自編碼器部分保持一致, 訓(xùn)練耗時約80 h。
實驗結(jié)果使用精確率和編輯距離對模型進行評估。
結(jié)果對比
實驗在第3.2節(jié)所述的3個數(shù)據(jù)集上進行, 將 本文模型與其他具有代表性的主流識別模型進行橫向?qū)Ρ? 包括Bai[12], Yin[13]和Liu[14]的模型。作為對照組的Bai[12], Yin[13]和Liu[14]的模型均采用與本模型一致的訓(xùn)練數(shù)據(jù)與訓(xùn)練方法, 評價指標為精確率(Precision)和歸一化平均編輯距離(Normalized Average Edit Distance, NAED)。測試時, 使用前述加噪后的公開數(shù)據(jù)集RCTW17和CASIA- 10k中的測試集。
CASIA-10k測試集在低強度噪聲下平均psnr約為19.1dB,平均ssim約為0.7, 在中強度噪聲下平均psnr約為15.7 dB, 平均ssim約為0.5, 高強度噪聲下平均psnr約為13.0dB, 平均ssim約為0.3。RCTW17測試集在低強度噪聲下平均psnr約為21dB,平均ssim約為0.7, 在中強度噪聲下平均psnr約為17.5 dB, 平均ssim約為0.5, 高強度噪聲下平均psnr約為14.2 dB, 平均ssim約為0.3。表2和表3展示了不同模型在低, 中, 高三種強度的噪聲的圖像中的測試結(jié)果的精確率和歸一化平均編輯距離。
從表5可以看出, 對于CASIA-10k測試集, 主流識別模型中, Bai的模型效果最差, 原因主要在于其卷積結(jié)構(gòu)較淺無法充分學(xué)習(xí)中文字符特征, 且模型無法應(yīng)對噪聲的干擾。此外, 結(jié)構(gòu)中未采用Dropout層以及后續(xù)的Bi-RNN深度較深導(dǎo)致了過擬合。Liu的模型卷積結(jié)構(gòu)較深并且引入了殘差結(jié)構(gòu), 因此對字符結(jié)構(gòu)特征的學(xué)習(xí)能力相比Bai的模型有所提升。此外, 模型中卷積結(jié)構(gòu)更深且引入了大量的Dropout層, 一定程度上抑制了過擬合, 因此性能超過了Bai和Liu的模型, 但仍無法有效應(yīng)對噪聲的干擾。
FENN表現(xiàn)最佳, 得益于特征強化模塊有效地學(xué)習(xí)到魯棒的文本特征, 避免了噪聲對特征學(xué)習(xí)的影響, 使得模型能夠有效地學(xué)習(xí)區(qū)分性的中文字符特征。在低強度的高斯和瑞利噪聲情況下, 盡管FENN性能有所提升但相比于第二名Yin的模型優(yōu)勢不大, Precision/NAED平均提升了0.6%/0.04, 這是因為在低噪時, 相比于噪聲信息, 圖像中的有效文本信息占比較高, 特征強化模塊抑制的噪聲特征所占的比例較低, 導(dǎo)致特征強化模塊的作用不明顯, 因此模型性能提升有限。但隨著噪聲強度的增大, 本文模型的優(yōu)勢逐漸明顯。在中強度噪聲下, Yin的模型精確率高于Liu的模型但編輯距離劣于Liu。因此, 將FENN與Yin的精確率和Liu的編輯距離進行對比, Precision/NAED平均提升2.8%/0.04。在高噪聲強度下, Liu的模型從精確率和編輯距離兩個方面都超過了Yin的模型成為第二名, 此時FENN相比于第二名的Precision/NAED平均提升為3.2%/0.08。
從表6可以看出, 對于RCTW17測試集, 各模型測試結(jié)果的相對關(guān)系與在CASIA-10k上大致相同, 在低強度噪聲下, FENN的精確率略低于Yin的模型但編輯距離更優(yōu), 說明盡管完全正確預(yù)測的樣本略少于Yin的模型, 但就編輯距離而言, 出現(xiàn)錯字的比例更低。在中強度下, Yin的模型精確率高于Liu的模型但編輯距離劣于Liu。因此, 將本文模型與Yin的精確率和Liu的編輯距離進行對比, 本文模型的Precision/NAED平均提升為0.65%/0.065。在高強度高斯噪聲下, Liu的模型在精確率和編輯距離兩方面都位居第二, 本文模型與之相比Precision/NAED平均提升為2.2%/0.03。在噪高強度瑞利噪聲下, Yin的模型的精確率高于Liu但編輯距離劣于Liu。因此, 將本文模型與Yin的精確率和Liu的編輯距離進行對比, 本文模型的Precision/NAED平均提升為1.2%/0.02。
表6 在RCTW17數(shù)據(jù)集上的結(jié)果對比 Table 6 result comparison on RCTW17 dataset
從表7可以看出, 對于實際電磁泄漏場景下的圖像集, 在低噪污染下, 相比于Bai、Liu和Yin的模型, FENN在Precision/NAED方面分別提升了5.4%/0.06, 3.5%/0.05和0.6%/0.02。在中噪污染下, 本文模型相比于Bai、Liu和Yin在Precision/ NAED方面分別提升6.5%/0.11, 3.1%/0.05和0.7%/ 0.07。在高噪污染下, FENN相比于Bai、Liu和Yin的模型在Precision/NAED方面分別提升4.8%/0.1, 2.0%/0.03和2.5%/0.05。上述結(jié)果表明FENN能夠有效應(yīng)對電磁泄漏還原圖像中的噪聲干擾對其中的中文文本進行識別, 證明了模型的有效性。
表7 在電磁泄漏還原圖像集上的結(jié)果對比 Table 7 Result comparison of different methods on reconstructed image samples
此外, 各模型在實際泄漏數(shù)據(jù)集上的性能表現(xiàn)與在加噪公開數(shù)據(jù)集上大致相同, 說明合成數(shù)據(jù)集以及通過樣本加噪模擬實際場景的方法是有效的, 訓(xùn)練數(shù)據(jù)符合實際數(shù)據(jù)分布。
表8展示了本文模型和其他3種被測模型對測試樣本的識別情況。由圖中結(jié)果可見, 對于清晰度較高且長度較短的中文文本, 4種模型都可以正確識別。隨著文本長度以及噪聲污染的增加, 本文模型在識別率和編輯距離上都具有明顯優(yōu)勢。然而, 對于文本中的標點, 本文模型存在漏檢的情況, 這是因為標點尺寸較小, 受噪聲污染影響大, 在CTC解碼時被認為是文字間隔區(qū)而導(dǎo)致丟失。此外, 對于文本內(nèi)容受到部分前景遮擋時, 4種識別模型的結(jié)果都不理想, 說明對于高難度文本圖像, 目前主流的識別模型還有待提升。
綜合上述對比結(jié)果, 本文模型在從低噪到高噪條件下都比主流識別模型有著更好的表現(xiàn), 體現(xiàn)了模型的泛用性。隨著噪聲強度的增加, 模型借助特征強化部分對于魯棒特征的提取, 最大程度地降低了噪聲對圖像特征破壞的影響, 充分說明了該模型在解決電磁泄漏還原圖像中的中文文本識別問題時的有效性。
表8 不同模型對電磁泄漏還原圖像的識別結(jié)果對比 Table 8 Comparison of recognition results between different methods
本文針對電磁泄漏還原圖像的特點提出了一種本識別而無需去噪等常規(guī)預(yù)處理。模型能夠在不進行常規(guī)去噪等預(yù)處理的情況下直接對帶噪中文文本圖像實現(xiàn)無分割識別。在電磁泄漏實景數(shù)據(jù)以及公開數(shù)據(jù)集RCTW17和CASIA-10K上的測試結(jié)果表明, 相比與其他主流識別模型, FENN在電磁泄漏還原圖像中的中文識別率最高提升5.4%, 體現(xiàn)出明顯優(yōu)勢。 對比實景數(shù)據(jù)集與公開數(shù)據(jù)集可以發(fā)現(xiàn), 盡管公開數(shù)據(jù)集對比結(jié)果表明方法雖然更好, 但提高不太明顯, 這是因為實景數(shù)據(jù)中包含大量難以建模的次要噪聲模型, 這些噪聲對模型的識別率造成了影響。由模型結(jié)構(gòu)和實際數(shù)據(jù)測試結(jié)果可知, 模型的識別效果部分程度上局限于去噪自編碼器對圖像噪聲模型的擬合能力, 如果噪聲模型過于復(fù)雜超出去噪自編碼器的擬合能力, 以至于無法達到良好的重建效果, 則其編碼器部分提取的特征就不夠充分, 最終的識別率也會受到影響。