于 杰
(廈門大學(xué)嘉庚學(xué)院 信息科學(xué)與技術(shù)學(xué)院,福建 漳州 363105)
卷積神經(jīng)網(wǎng)絡(luò)是現(xiàn)如今一種較為高效的識(shí)別方法,尤其是在圖像識(shí)別分類領(lǐng)域更為明顯,因?yàn)樵撋窠?jīng)網(wǎng)絡(luò)無需對(duì)圖像做復(fù)雜的前期預(yù)處理,所以現(xiàn)如今獲得了更為廣泛的實(shí)際應(yīng)用。而圖像隱寫技術(shù)是一種基于內(nèi)容和非密碼機(jī)制的載體信息隱藏技術(shù),基本應(yīng)用于防偽溯源、版權(quán)保護(hù)、隱藏標(biāo)識(shí)、認(rèn)證以及安全隱蔽通信等領(lǐng)域。將二者相結(jié)合,卷積神經(jīng)網(wǎng)絡(luò)直接處理二維圖像,與像素進(jìn)行卷積,對(duì)有無圖像隱寫進(jìn)行分類,擁有著重要的應(yīng)用價(jià)值和意義。
時(shí)間延遲網(wǎng)絡(luò)和LeNet-5是最早出現(xiàn)的卷積神經(jīng)網(wǎng)絡(luò)。在21世紀(jì)后,隨著深度學(xué)習(xí)理論的提出和計(jì)算設(shè)備的改進(jìn),卷積神經(jīng)網(wǎng)絡(luò)得到了快速發(fā)展,陸續(xù)出現(xiàn)了ZFNet、VGGNet、GoogLeNet以及ResNet等優(yōu)秀模型算法。近年,隨著對(duì)防偽溯源、版權(quán)保護(hù)及隱藏標(biāo)識(shí)等領(lǐng)域的重視,圖像隱寫技術(shù)作為一種基于內(nèi)容與非密碼機(jī)制的計(jì)算機(jī)信息隱藏技術(shù)得到了廣泛關(guān)注和發(fā)展,如空域算法、Patchwork算法以及變換域算法等層出不窮,與此相對(duì)的圖像隱寫分析算法也得以被關(guān)注研究。
最為傳統(tǒng)的圖像隱寫分析方法是通過提取相應(yīng)的圖像特征規(guī)律,再進(jìn)行分類器的分類,如富模型+集成分類器,而卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)因?yàn)樯疃葘W(xué)習(xí)在圖像識(shí)別的優(yōu)異表現(xiàn),使得其逐漸成為一種較為重要的圖像隱寫分析算方法,如由Guang-shuoXu等人構(gòu)建了的一個(gè)5層CNN隱寫分析模型,對(duì)S-UNIWARD算法的檢測(cè)準(zhǔn)確率高達(dá)80.24%,還有由高培賢等人提出的S-DRN模型通過利用殘差神經(jīng)網(wǎng)絡(luò)(Residual Network,RestNET)來加深網(wǎng)絡(luò)深度,提供準(zhǔn)確率[1-5]。
本課題研究是在S-DRN模型基礎(chǔ)上進(jìn)一步加深網(wǎng)絡(luò)深度,通過卷積神經(jīng)網(wǎng)絡(luò)來全面有效提取隱寫后擁有數(shù)字水印的圖像特征,從而進(jìn)行對(duì)其分類。因?yàn)閳D像隱寫特殊的“不可見性”,使得其失去了一般圖像肉眼可見的“淺表特征”,所以需要更深的網(wǎng)絡(luò)結(jié)構(gòu)以獲取更加抽象的特征。而在本次研究設(shè)計(jì)中特選擇ResNet殘差神經(jīng)網(wǎng)絡(luò)模型算法,通過其模型“跳躍連接”的結(jié)構(gòu),緩解深度加深帶來的梯度消失問題,不斷實(shí)驗(yàn)加深網(wǎng)絡(luò),使得最終獲得擁有較好網(wǎng)絡(luò)分類能力的圖像隱寫分類模型[6]。
目前,國(guó)內(nèi)外隱寫分析技術(shù)在數(shù)字圖像載體方面的相關(guān)研究大可分兩塊,一是對(duì)隱寫圖像分析特征的傳統(tǒng)檢測(cè)技術(shù),二是基于深度學(xué)習(xí)的隱寫分析檢測(cè)技術(shù)。前者傳統(tǒng)的隱寫分析算法則又包含特征提取和特征分類兩步,第一步是數(shù)字圖像特征的提取,通過分析隱寫操作前后的圖像載體中統(tǒng)計(jì)量差異來搭建能夠描繪隱寫數(shù)字圖像載體相關(guān)統(tǒng)計(jì)規(guī)律的特征。后者基于深度學(xué)習(xí)的隱寫分析技術(shù),通過構(gòu)建關(guān)于隱寫分析的深度學(xué)習(xí)模型來得以實(shí)現(xiàn)圖像隱寫信息的端對(duì)端檢測(cè)分類。由于深度學(xué)習(xí)網(wǎng)絡(luò)模型可以自行進(jìn)行圖像隱寫特征的提取,無需像傳統(tǒng)隱寫分析一樣人工提取特征,有效減少了時(shí)間復(fù)雜度,提高了效率。基于深度學(xué)習(xí)模型的隱寫分析研究已成信息隱藏領(lǐng)域的熱點(diǎn)討論問題之一,并取得了較好的成果。
2015年的國(guó)內(nèi),Qian等人提出將傳統(tǒng)隱寫分析算法的兩步機(jī)器學(xué)習(xí)換成以深度學(xué)習(xí)模型代替的構(gòu)想,并以此提出了一個(gè)五層CNN深度學(xué)習(xí)模型,其模型第一層先以高通濾波器(High Pass Filter,HPF)對(duì)圖片卷積進(jìn)行預(yù)處理去除圖像的低頻干擾,池化層使用avg()函數(shù)來平均池化,并在卷積層之間使用Gaussian激活函數(shù)。該模型通過在BOSSbase數(shù)據(jù)集上測(cè)試,獲得的準(zhǔn)確率僅比傳統(tǒng)隱寫分析算法中的空域富模型+集成分類器低3%,而僅僅在一年后Xu等人也同樣提出了一個(gè)五層的CNN模型,該模型為了增加網(wǎng)絡(luò)的卷積學(xué)習(xí)能力以提取出更加完善的隱寫特征,在第一個(gè)卷積層后加入了絕對(duì)值層,同時(shí)為了防止學(xué)習(xí)能力加強(qiáng)帶來的網(wǎng)絡(luò)模型過擬合問題,他們?cè)诰W(wǎng)絡(luò)模型的開頭提前約束了數(shù)據(jù)的范圍,而在更深度的卷積層中使用大小1×1的卷積核。最終試驗(yàn)表明,該模型在透視環(huán)境下對(duì)S-UNIWARD隱寫算法的檢測(cè)準(zhǔn)確率超過以往的傳統(tǒng)隱寫分析算法,達(dá)到80.24%。
卷積神經(jīng)網(wǎng)絡(luò)是深度學(xué)習(xí)的代表算法之一,是一類擁有卷積層,利用卷積核進(jìn)行卷積矩陣相乘計(jì)算且擁有網(wǎng)絡(luò)深度增加功能結(jié)構(gòu)的前饋神經(jīng)網(wǎng)絡(luò)。其最早期的網(wǎng)絡(luò)模型有時(shí)間延遲網(wǎng)絡(luò)(Time-Delay Neural Network,TDNN)、平移不變?nèi)斯ど窠?jīng)網(wǎng)絡(luò)(Shift-Invariant Artificial Neural Networks,SIANN)以及手寫字體模型LeNet5等,其最基本的網(wǎng)絡(luò)結(jié)構(gòu)包括于輸入層、隱含層及輸出層3層,而其中最為關(guān)鍵重要的核心是隱含層,由卷積層、池化層以及全連接層3層組成。
由于深度卷積神經(jīng)網(wǎng)絡(luò)理論的出現(xiàn),卷積神經(jīng)網(wǎng)絡(luò)的深度網(wǎng)絡(luò)構(gòu)架使得其在圖像識(shí)別分類上獲得一系列的突破發(fā)展,使得網(wǎng)絡(luò)隱藏層可以提取獲得更加抽象的圖像特征,從而來提高網(wǎng)絡(luò)模型的識(shí)別分類準(zhǔn)確率。但與此同時(shí),網(wǎng)絡(luò)深度的增加又帶來了其他方面的問題,即梯度消失/爆炸問題,該問題阻礙了網(wǎng)絡(luò)的收斂,深度加深反而使準(zhǔn)確率下降,而殘差神經(jīng)網(wǎng)絡(luò)的提出則解決了此重大難題。
殘差神經(jīng)網(wǎng)絡(luò)是2015年ILSVRC圖像分類和物體識(shí)別算法的優(yōu)勝者,其是使用殘差學(xué)習(xí)塊(如圖1所示)建立的大規(guī)模卷積神經(jīng)網(wǎng)絡(luò),在殘差塊的內(nèi)部使用批量規(guī)范化(Batch Normalization,BN),通過利用隨機(jī)梯度下降(Stochastic Gradient Descent,SGD)緩解了隨深度增大帶來的梯度問題,使得網(wǎng)絡(luò)快速收斂[7]。在兩兩殘差塊之間使用跳躍連接,使得網(wǎng)絡(luò)的輸出為H(X)=F(X)+X,從而使擬合恒等映射變得更加簡(jiǎn)單,深度神經(jīng)網(wǎng)絡(luò)的退化問題也得以解決,形成了最為經(jīng)典的殘差學(xué)習(xí)結(jié)構(gòu)。而經(jīng)典的殘差學(xué)習(xí)結(jié)構(gòu)在探索更深網(wǎng)絡(luò)過程之中考慮到時(shí)間花費(fèi)問題,在ResNet50之后就將原來的殘差學(xué)習(xí)結(jié)構(gòu)building block(如圖2(a)所示)更改成了瓶頸結(jié)構(gòu)Bottleneck design(如圖2(b)所示),即將兩層3×3,64的卷積層更改至1×1,64、3×3,64以及1×1,256的3層卷積層結(jié)構(gòu),通過卷積核大小為1×1的卷積層來增加恢復(fù)或減少維度,使得3×3的卷積層的輸入或輸出維度減小,因此在更換成瓶頸結(jié)構(gòu)以后,網(wǎng)絡(luò)的參數(shù)減少了很多,使得訓(xùn)練也就相對(duì)容易一些,花費(fèi)時(shí)間相對(duì)減少。

圖1 殘差學(xué)習(xí)模塊

圖2 經(jīng)典模塊和瓶頸模塊
空域隱寫算法中最為常用的典型圖像隱寫算法就是LSB圖像隱寫算法,將隱寫信息隨機(jī)嵌入至選擇的圖像最不重要的像素位,這就了保證嵌入的隱寫信息不可見,不易被肉眼識(shí)別發(fā)現(xiàn)。而本次項(xiàng)目研究所針對(duì)的圖像隱寫算法就主要是LSB圖像隱寫。現(xiàn)如今,針對(duì)的LSB隱寫算法僅僅只有3種,在日后實(shí)驗(yàn)測(cè)試中將通過增加隱寫算法數(shù)量來嘗試對(duì)LSB隱寫加密進(jìn)行訓(xùn)練分類,擴(kuò)大模型分類的范圍[8]。
在訓(xùn)練圖片數(shù)據(jù)進(jìn)入網(wǎng)絡(luò)模型進(jìn)行特化訓(xùn)練之前,因?yàn)殡[寫圖像特征的特殊性,要避免網(wǎng)絡(luò)模型受到各種圖像本身內(nèi)容的影響,導(dǎo)致模型分類識(shí)別準(zhǔn)確率下載,一般會(huì)先對(duì)隱寫圖像進(jìn)行預(yù)處理,意圖模糊訓(xùn)練圖像的內(nèi)容,突出隱寫圖像特征,如特定的嵌入痕跡等,而本次進(jìn)行隱寫分析的隱寫算法是LSB空域隱寫算法[9]。同上文所介紹的一樣,LSB隱寫算法是將隱寫信息嵌入圖像載體的不重要像素位置上,本文選擇的圖像載體是位圖深度為24的JPG圖像,那LSB算法嵌入的位置即為是像素點(diǎn)RGB。通過更改像素點(diǎn)的RGB數(shù)值來進(jìn)行隱寫信息的隱藏,因此為凸顯圖像嵌入痕跡,本項(xiàng)目設(shè)計(jì)將JPG格式圖像中所有像素點(diǎn)的RGB數(shù)值進(jìn)行8位的二進(jìn)制化,并將轉(zhuǎn)換后的二進(jìn)制關(guān)于前后4位顛倒,最后在轉(zhuǎn)化成整數(shù)值,根據(jù)LSB算法的特性將最低有效位轉(zhuǎn)化成最高有效位以此突出隱寫圖像特征,增加圖像的噪聲比。
S-DRN模型是由高培賢等人提出的一種用于圖像隱寫分析的深度殘差神經(jīng)網(wǎng)絡(luò)模型,在該模型中共有34層的3種不同卷積層,分別為高斯濾波器層,特征提取卷積層以及殘差學(xué)習(xí)卷積層,但僅有殘差學(xué)習(xí)卷積層是通過反向傳播算法(BP算法)來進(jìn)行權(quán)值的更新[6]。
本次項(xiàng)目是在S-DRN模型的基礎(chǔ)上更改進(jìn)行網(wǎng)絡(luò)的加深及部分卷積層的變動(dòng),濾波器層仍使用高通濾波器。高通濾波器實(shí)質(zhì)是一種信號(hào)濾波,來用于圖像邊緣更突出,增加噪聲,通過高通濾波預(yù)處理后的圖像在事后的網(wǎng)絡(luò)訓(xùn)練中能使網(wǎng)絡(luò)加快自身收斂。
在S-DRN模型中,特征提取卷積層是兩層已經(jīng)提前通過訓(xùn)練擬合好的卷積層,分別為3×3,64和1×1,16,用于提取出輸入圖像不同維度的代表特征,縮短訓(xùn)練時(shí)間和避免模型的過擬合,但因?yàn)橐由罹W(wǎng)絡(luò)深度,所以在本項(xiàng)目中特征提取卷積層更改成3層提前擬合好的卷積層3×3,64、3×3,64以及3×3,16。去除1×1,16的卷積層是因?yàn)榻酉聛淼臍埐顚W(xué)習(xí)卷積層是ResNet50的網(wǎng)絡(luò)結(jié)構(gòu),無需降維操作。
在S-DRN模型中,殘差學(xué)習(xí)模塊的卷積層是由數(shù)個(gè)3×3大小的卷積核組成,每?jī)蓪泳矸e層為一組殘差模塊,兩層之間用ReLU損失函數(shù)相連,并且將輸入和殘差兩函數(shù)通過捷徑連接來進(jìn)行相加,從而實(shí)現(xiàn)一組的殘差學(xué)習(xí)模塊,共構(gòu)造了16組的殘差學(xué)習(xí)模塊。
在網(wǎng)絡(luò)結(jié)構(gòu)的最后采用兩層維度為1 000的全連接層及一層用于圖像分類的損失函數(shù)層,神經(jīng)元的全連接可以提取出用作區(qū)分圖像標(biāo)簽類型的局部特征,給下一層的損失函數(shù)層作為依據(jù)對(duì)原圖像進(jìn)行分類,而損失函數(shù)層采用的是softmaxLoss函數(shù),實(shí)際上是softmax和cross-entropy loss組合版本,但計(jì)算數(shù)值更加穩(wěn)定。通過對(duì)比噪聲比將圖片分類成兩類。
因?yàn)長(zhǎng)SB隱寫后的圖像特征并未明顯的肉眼可見特征,所以需要通過隱藏層的加深來獲取更多抽象程度高的特征,而越高的抽象特征越是在某些特定任務(wù)上有著更好的效果,這也是為什么深度神經(jīng)網(wǎng)絡(luò)可以做出很多只有人類才能做到的需要高度抽象理解能力的事情[10]。而ResNet殘差神經(jīng)網(wǎng)絡(luò)因?yàn)槠鋬?nèi)部的殘差塊之間使用捷徑連接算法結(jié)構(gòu),得以緩解了在增加模型深度所帶來的梯度消失問題,因此ResNet模型算法更適合需要足夠網(wǎng)絡(luò)深度來提取深層抽象特征的隱寫圖像分類,并且由于ResNet模型算法的網(wǎng)絡(luò)結(jié)構(gòu)簡(jiǎn)潔,更適合于優(yōu)化和加深。
本文研究在S-DRN模型上意圖構(gòu)架了一個(gè)具有更深網(wǎng)絡(luò)結(jié)構(gòu)的殘差卷積神經(jīng)網(wǎng)絡(luò)模型來對(duì)圖像隱寫進(jìn)行分析分類,增加圖片的預(yù)處理步驟,如圖像像素的二進(jìn)制顛倒、高斯濾波器的卷積操作以及圖像的歸一化處理,去除池化層以減少隱寫特征在模型訓(xùn)練過程中的丟失。由于激活函數(shù)ReLU的非飽和非線性特征,加快了模型的收斂,而最為重要的是利用殘差學(xué)習(xí)模塊中的捷徑連接來緩解梯度消失和爆炸問題,從而來增加深度增加卷積層層數(shù)和每層卷積核個(gè)數(shù),先較與普通的CNN模型在模型加深深度時(shí)所帶來的退化問題,殘差學(xué)習(xí)模塊的使用進(jìn)一步提高識(shí)別準(zhǔn)確率。雖然與原本的S-DRN模型相比,深度的增加導(dǎo)致了其訓(xùn)練時(shí)間的耗時(shí)增多,但在LSB算法隱寫上的識(shí)別分析準(zhǔn)確率卻得以提高。
雖然在此項(xiàng)目中解決了諸多問題得以使得設(shè)計(jì)模型的識(shí)別分析準(zhǔn)確率提高,但其本身的缺點(diǎn)也十分明顯,第一是池化層的去除,增加了網(wǎng)絡(luò)的計(jì)算量?jī)?nèi)存的消耗,并在加深網(wǎng)絡(luò)深度計(jì)算參數(shù)增多的情況下這步操作所帶來的模型訓(xùn)練時(shí)間增加就極為明顯[11]。第二是該模型的針對(duì)性太強(qiáng),無論在模型結(jié)構(gòu)的設(shè)計(jì)還是圖片的預(yù)處理方面都是針對(duì)識(shí)別LSB算法進(jìn)行特化,覆蓋的可檢測(cè)的信息隱藏方法有限。因此在下一步的研究中,一是需要增加該模型針對(duì)其他圖像隱寫算法的實(shí)驗(yàn)測(cè)試,如S-UNIWARD、Patchwork算法的準(zhǔn)確率和訓(xùn)練效率等實(shí)驗(yàn),二是考慮如何在盡量不影響模型分類識(shí)別準(zhǔn)確率的情況下減少模型的訓(xùn)練時(shí)間和內(nèi)存消耗。