陶 銳,孫彥景,劉衛(wèi)東
(中國(guó)礦業(yè)大學(xué),江蘇省煤礦電氣與自動(dòng)化工程實(shí)驗(yàn)室,江蘇 徐州 210046)
深度學(xué)習(xí)的理論研究最早可以追溯至上個(gè)世紀(jì)四十年代,早期所提出的感知器模型只能處理線性分類問題,而無法做到正確分類非線性問題。為了使神經(jīng)網(wǎng)絡(luò)更好地適應(yīng)非線性問題,Geoffry Hinton等人在1986年提出了BP誤差反向傳播算法,有效地解決了非線性分類和學(xué)習(xí)的問題。但由于這一時(shí)期,神經(jīng)網(wǎng)絡(luò)一直缺少相應(yīng)的嚴(yán)格的數(shù)學(xué)理論支持,沒有龐大數(shù)據(jù)量和強(qiáng)大計(jì)算能力的軟硬件做后盾,沒有引起足夠的重視。隨后,針對(duì)神經(jīng)網(wǎng)絡(luò)層數(shù)過深導(dǎo)致難以訓(xùn)練的問題,Hinton在2006年提出了無監(jiān)督預(yù)訓(xùn)練和深度信念網(wǎng)絡(luò),通過無監(jiān)督預(yù)訓(xùn)練對(duì)權(quán)值進(jìn)行初始化及有監(jiān)督訓(xùn)練微調(diào)這種貪婪的方式逐層添加和訓(xùn)練網(wǎng)絡(luò)層,直到神經(jīng)網(wǎng)絡(luò)的層數(shù)足夠深。使用這種策略,可以訓(xùn)練比以前更深的網(wǎng)絡(luò),也使得神經(jīng)網(wǎng)絡(luò)層數(shù)邁向更深的階段,使深度學(xué)習(xí)得到了長(zhǎng)足的發(fā)展。隨著無監(jiān)督預(yù)訓(xùn)練重新引起人們的興趣,越來越多的研究人員又開始重新關(guān)注這項(xiàng)技術(shù)。深度神經(jīng)網(wǎng)絡(luò)開始超越傳統(tǒng)方法,在越來越多的領(lǐng)域開始大展身手。此后,各大研究機(jī)構(gòu)和公司紛紛投入到深度學(xué)習(xí)的研究與應(yīng)用中[1-7]。
本文中,我們深入分析了電子票據(jù)容易被篡改的高風(fēng)險(xiǎn)案例,利用深度學(xué)習(xí)技術(shù)和卷積神經(jīng)網(wǎng)絡(luò)CNN(Convolutional Neural Networks)組成圖像深度傳感器網(wǎng)絡(luò),針對(duì)特定的票據(jù)內(nèi)容區(qū)域進(jìn)行重點(diǎn)加密。傳統(tǒng)的水印加密方法不能有效地在魯棒性和安全性之間做好平衡。因此,我們重點(diǎn)針對(duì)票據(jù)中的數(shù)字,金額和簽名等字符區(qū)域,進(jìn)行基于深度神經(jīng)網(wǎng)絡(luò)的檢測(cè)定位,再結(jié)合水印技術(shù)進(jìn)行多重的票據(jù)加密,使得篡改的檢測(cè)更加高效。
圖1 改進(jìn)的CNN網(wǎng)絡(luò)結(jié)構(gòu)圖
近年來,一些學(xué)者開始將卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用于包括計(jì)算機(jī)視覺、圖像識(shí)別、自然語言處理等領(lǐng)域,已經(jīng)產(chǎn)生了與人類專家相媲美并且在某些情況下更優(yōu)越的結(jié)果[8-12]。一個(gè)典型的卷積神經(jīng)網(wǎng)絡(luò)由多個(gè)不同的層,以一定順序前后級(jí)聯(lián)構(gòu)成,包括一個(gè)輸入層,多個(gè)卷積層及池化層,一定數(shù)量的全連接層和最后一層輸出層(損失層)[13-14]。卷積神經(jīng)網(wǎng)絡(luò)引入了一種特殊的組織隱層單元的方式——卷積,這使得網(wǎng)絡(luò)可以很好地對(duì)輸入數(shù)據(jù)的局部特征進(jìn)行抽取。隱層之間局部連接的權(quán)重被稱為卷積核(卷積濾波器),處于同一層的所有隱層單元共享同一卷積核,因此該層輸出的結(jié)果即是該卷積核所抽取出的局部特征,也稱為特征圖[15]。
在卷積神經(jīng)網(wǎng)絡(luò)中,低層卷積層所抽取的特征,更接近原始輸入數(shù)據(jù),故而層次相對(duì)較低。而位于相對(duì)較頂層的高層卷積層,其抽取的特征源于低層卷積層抽取出的特征,故層次相對(duì)較高。卷積神經(jīng)網(wǎng)絡(luò)正是通過逐層抽取前一層網(wǎng)絡(luò)的輸出(特征圖),完成抽取全局特征的工作。
傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)采用串行堆疊結(jié)構(gòu),而這樣的網(wǎng)絡(luò)結(jié)構(gòu)會(huì)導(dǎo)致網(wǎng)絡(luò)最終提取出的特征中缺失低層次特征。針對(duì)這一問題,通過將網(wǎng)絡(luò)中的所有卷積層的輸出連接為一層,把網(wǎng)絡(luò)中所有的特征圖連接在一起,使得卷積網(wǎng)絡(luò)最終提取出的特征包含來自各層的特征,從而最大程度上保留了特征信息,也可避免傳統(tǒng)卷積網(wǎng)絡(luò)中因?yàn)槌鼗瘜拥慕稻S作用而損失一些邊緣信息。
傳統(tǒng)的深度卷積神經(jīng)網(wǎng)絡(luò)同樣存在一些弊端,最常見的問題就是梯度消失、參數(shù)數(shù)量和體積較大、需要大量訓(xùn)練數(shù)據(jù)等。針對(duì)小數(shù)據(jù)集上的識(shí)別問題,由于領(lǐng)域不同,問題的解決方式同樣不一,本文針對(duì)電子票據(jù)關(guān)鍵區(qū)域的識(shí)別問題,在數(shù)據(jù)較少的情況下,提出了一種特殊的網(wǎng)絡(luò)結(jié)構(gòu)方式,使得網(wǎng)絡(luò)在有效學(xué)習(xí)數(shù)據(jù)的情況下不至于過擬合。實(shí)驗(yàn)證明了本文網(wǎng)絡(luò)結(jié)構(gòu)的有效性。
首先將網(wǎng)絡(luò)中的所有卷積層的輸出連接為一層,使得卷積網(wǎng)絡(luò)最終提取出的特征包含來自各層的特征,從而最大程度上保留了特征信息。通過參考DeepID的網(wǎng)絡(luò)連接方式,構(gòu)建出適用于小樣本的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。用Kl表示該網(wǎng)絡(luò)第l層卷積層的卷積核,Il和Fl分別表示該層的輸入和特征圖。
(1)
然后按式(3)將特征圖平展為一維特征:
(2)
式中:m,n表示第l層卷積核的尺寸。再將展平的各層特征圖累加,得到最終的融合特征圖:
(3)
本文網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示,第1個(gè)卷積層采用卷積核64@2×2,第2個(gè)卷積層采用卷積核96@2×2,第3個(gè)卷積層采用卷積核128@2×2,池化層均采用均值池化大小為2×2。網(wǎng)絡(luò)訓(xùn)練參數(shù)設(shè)定如下:batch=16,epoch=100,學(xué)習(xí)率λ=0.000 01,使用隨機(jī)梯度下降算法進(jìn)行優(yōu)化,交叉熵作為損失函數(shù)。本文對(duì)所有卷積層以及全連接層都施加了Dropout,卷積層采用Dropout比例為0.2,全連接層則為0.5。
在本節(jié)中,將提出一種利用可見水印和不可見水印的多重加密方法,能夠達(dá)到對(duì)金融票據(jù)來源信息的標(biāo)識(shí)和對(duì)篡改的定位檢測(cè)。其結(jié)構(gòu)如圖2所示。
圖2 基于可見水印和不可見水印的多重電子票據(jù)加密
傳統(tǒng)的分塊DCT變換計(jì)算公式如下:
(4)
(5)
如果考慮圖像明暗對(duì)視覺容忍的影響,計(jì)算公式可進(jìn)一步修正如下:
(6)
(7)
式中:DC是直流分量,max代表最大值,Xc0是分塊直流系數(shù)。
嵌入可見水印圖像的DCT系數(shù)變?yōu)?
(8)
水印疊加公式如下:
cij=αncij(n)+βnwij(n),n=1,2,…
(9)
式中:αn和βn是塊n的拉伸系數(shù),圖像和水印的DCT系數(shù)分別是cij(n)和wij(n)。
(10)
(11)
算法1可見水印嵌入算法
輸入:ArrayN×N水印圖像矩陣,ImageN×N水印圖像矩陣,x[0]迭代初始密鑰
輸出:Result嵌入水印的圖像
1:y=WATERMARK(Array)
2:DCT變換獲得文理信息
3:計(jì)算嵌入系數(shù)α,β
4:H=GENMATRIX(Image)
5:DCT圖像分塊ArrayNi×Ni
6:嵌入DCT系數(shù)
7:Result=y+H
本實(shí)驗(yàn)中,我們采集了1 200多張票據(jù)的數(shù)字圖像,進(jìn)行了水印的多重加密。我們?cè)跇?gòu)造特征時(shí),重點(diǎn)考慮針對(duì)灰度圖像的特征構(gòu)造,將普通的圖像進(jìn)行差分特征的分析,根據(jù)縱向以及橫向的一階和二階差分特征,與原圖圖像構(gòu)成5通道的圖像輸入特征。
實(shí)驗(yàn)采用深度學(xué)習(xí)框架Tensorflow進(jìn)行搭建并訓(xùn)練網(wǎng)絡(luò),最終的網(wǎng)絡(luò)超參數(shù)值見表1。
表1 訓(xùn)練超參數(shù)表
在圖像信號(hào)中添加高斯白噪聲,多種信噪比條件下,采用改進(jìn)的CNN模型以及多種通道關(guān)鍵區(qū)域的識(shí)別結(jié)果如圖3所示,其中,圖3(a)、圖3(c)、圖3(e)、圖3(g)以及圖3(i)分別為20 dB、10 dB、0 dB、-10 dB和-20 dB時(shí)模型對(duì)應(yīng)的識(shí)別率訓(xùn)練曲線,圖3(b)、圖3(d)、圖3(f)、圖3(h)以及圖3(j)分別為20 dB、10 dB、0 dB、-10 dB和-20 dB時(shí)模型對(duì)應(yīng)的損失函數(shù)訓(xùn)練曲線。圖中的Epoch表示一個(gè)完整的票據(jù)數(shù)據(jù)訓(xùn)練集通過神經(jīng)網(wǎng)絡(luò)模型的次數(shù)。
圖3 CNN模型在訓(xùn)練過程中的收斂曲線
在相同特征的基礎(chǔ)上(五通道圖),將本文網(wǎng)絡(luò)與多種不同的分類器上進(jìn)行了比較[16-19]。對(duì)比分類器及其參數(shù)如下:隨機(jī)森林RF(Random Forest),森林中決策樹個(gè)數(shù)為400,每棵決策樹的最大深度為6,行采樣率為0.75,列采樣率為0.8;CNN共有兩層卷積層,卷積核分別為和,還有兩層具有5 000個(gè)神經(jīng)元的全連接層以及Softmax層作為分類器,為了防止過擬合,卷積層與全連接層均采用了Dropout,比例為0.5;深度神經(jīng)網(wǎng)絡(luò)DNN(Deep Neural Networks),共5層全連接層,每層網(wǎng)絡(luò)的神經(jīng)元數(shù)目為384,同時(shí)每層均采用了Dropout,系數(shù)為0.5,最后一層為Softmax層。SVM,懲罰系數(shù)C=1,采用RBF核以及One VS One的多分類策略;K近鄰算法KNN(K-Nearest Neighbor),近鄰個(gè)數(shù)N=8,采用KD樹進(jìn)行搜索,并且樹的度量距離為歐式距離;循環(huán)神經(jīng)網(wǎng)絡(luò)RNN(Recurrent Neural Networks),共有兩層網(wǎng)絡(luò)層,每層共1 024個(gè)神經(jīng)元,每層的Dropout比例為0.5。
表2給出了7種分類器在理想無噪聲環(huán)境下的實(shí)驗(yàn)結(jié)果。與隨機(jī)森林、KNN以及SVM相比,本文模型識(shí)別率分別提升了9.8%、21.3%、14.5%,證明了在處理圖像類多維特征時(shí),卷積神經(jīng)網(wǎng)絡(luò)所表現(xiàn)出的性能優(yōu)于SVM、KNN等傳統(tǒng)分類器。
表2 多種分類器的識(shí)別率
水印圖像的漏檢測(cè)率和誤檢測(cè)率如表3和表4所示,其基于本文改進(jìn)算法的圖像檢測(cè)效果明顯優(yōu)于傳統(tǒng)的CNN算法。使用深度神經(jīng)網(wǎng)絡(luò)能夠有效的定位關(guān)鍵區(qū)域,在保證安全性的同時(shí),提高對(duì)圖像水印檢測(cè)的效率。圖4中進(jìn)一步可以看到在采用圖像內(nèi)容定位后對(duì)篡改區(qū)域的加密效率明顯提高,計(jì)算時(shí)間得以顯著降低。
圖4 不同的圖像尺寸下的計(jì)算時(shí)間
圖像通道數(shù)改進(jìn)CNN傳統(tǒng)CNN單通道0.1020.133二通道0.0910.102三通道0.0610.089四通道0.0420.078五通道0.0320.045
表4 圖像水印的誤檢測(cè)率
本文研究了針對(duì)票據(jù)關(guān)鍵區(qū)域的基于卷積神經(jīng)網(wǎng)絡(luò)的識(shí)別方法,對(duì)CNN網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行了改進(jìn),提出了一種改進(jìn)的適用票據(jù)內(nèi)容定位的CNN網(wǎng)絡(luò)。與傳統(tǒng)CNN網(wǎng)絡(luò)相比,本文提取出的多階差分特征,與原圖圖像構(gòu)成5通道圖像特征,有效地挖掘了內(nèi)在特征,并且結(jié)合卷積神經(jīng)網(wǎng)絡(luò)作為分類器,發(fā)揮了圖像的多通道優(yōu)勢(shì),使得輸入數(shù)據(jù)包含更多的靜態(tài)與動(dòng)態(tài)特征,從而減少了加密處理的圖像像素,提高了水印加密的計(jì)算效率。