林金朝,蔡元奇,龐 宇,楊 鵬,張焱杰
1(重慶郵電大學(xué) 光電工程學(xué)院,重慶 400065)
2(重慶郵電大學(xué) 通信與信息工程學(xué)院,重慶 400065)
隨著互聯(lián)網(wǎng)的快速發(fā)展,信息傳播日趨復(fù)雜多樣化,大量的包括政治反動(dòng)、暴力、色情、違禁小廣告等類(lèi)型的敏感信息也在肆意傳播.存在部分個(gè)人和團(tuán)體利用互聯(lián)網(wǎng)上合法的圖片嵌入文字信息等方式散播敏感內(nèi)容信息,嚴(yán)重影響了互聯(lián)網(wǎng)健康環(huán)境.因此,對(duì)圖片敏感文字的有效識(shí)別是保障互聯(lián)網(wǎng)健康發(fā)展的迫切和合理的必要手段.嵌入到圖片的文字通常為印刷體,常常為了混淆信息而帶有大量干擾字符,而且中文字符結(jié)構(gòu)復(fù)雜,包括偏旁、部首和字根,這給準(zhǔn)確區(qū)分形近字增加了識(shí)別難度.場(chǎng)景文字識(shí)別(Scene Text Recognition,STR)指識(shí)別自然場(chǎng)景圖片中的文字信息,而自然場(chǎng)景中的嘈雜背景、光照不均、字體變化、文字排布不規(guī)律等問(wèn)題都會(huì)影響識(shí)別效果.針對(duì)技術(shù)發(fā)展過(guò)程可以分為單一文字識(shí)別[1,2]和基于文本行的識(shí)別兩個(gè)方面[3–6].文獻(xiàn)[1]利用字符筆畫(huà)特征和HOG算子來(lái)提取文字塊的特征,隨后采用隨機(jī)森林模型對(duì)文字進(jìn)行分類(lèi)處理從而達(dá)到文字識(shí)別的目的.文獻(xiàn)[4]采用深度卷積神經(jīng)網(wǎng)絡(luò)算法來(lái)對(duì)圖像信息進(jìn)行處理,在復(fù)雜場(chǎng)景情況下提升了對(duì)文字識(shí)別的效果.文獻(xiàn)[5]采用了一種基于深度學(xué)習(xí)的圖片敏感文字檢測(cè)算法,其重點(diǎn)在于BP神經(jīng)網(wǎng)絡(luò)算法和深信度算法在算法上的理論研究與優(yōu)化,并沒(méi)有考慮工程復(fù)雜程度和系統(tǒng)可實(shí)現(xiàn)的問(wèn)題.文獻(xiàn)[6]在深入研究和利用深度學(xué)習(xí)相關(guān)算法的基礎(chǔ)上采用了基于FPJA與CPU的異構(gòu)架構(gòu)對(duì)含有敏感文字圖片進(jìn)行檢測(cè)與識(shí)別,其方案中特征提取部分采用的是VGG-16網(wǎng)絡(luò),隨著網(wǎng)絡(luò)規(guī)模和深度的提升,產(chǎn)生過(guò)擬合并難以實(shí)現(xiàn)收斂.本文將密集神經(jīng)網(wǎng)絡(luò)與空間變換網(wǎng)絡(luò)結(jié)合,能比較準(zhǔn)確地識(shí)別復(fù)雜的背景、被扭曲、3D凹凸、藝術(shù)化、傾斜等復(fù)雜中文文本.DenseNet網(wǎng)絡(luò)在底端接收?qǐng)D像輸入,經(jīng)過(guò)多層的神經(jīng)網(wǎng)絡(luò)進(jìn)行特征提取與抽象,對(duì)得到豐富的卷積特征信息進(jìn)行仿射變換,矯正過(guò)的圖像信息然后被送入序列識(shí)別網(wǎng)絡(luò),對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練時(shí),使用CTC[7]損失概率模型以實(shí)現(xiàn)網(wǎng)絡(luò)識(shí)別優(yōu)化.
卷積神經(jīng)網(wǎng)絡(luò)深度的提升往往伴隨著網(wǎng)絡(luò)性能的提升,隨著網(wǎng)絡(luò)在廣度和深度的擴(kuò)展延伸,導(dǎo)致訓(xùn)練參數(shù)出現(xiàn)梯度消失、模型過(guò)擬合的現(xiàn)象發(fā)生,為了解決這一問(wèn)題就提出了密集連接的卷積網(wǎng)絡(luò)(DenseNet)[8].DenseNet是在Hightway Networks[9]和Residual Networks[10]以及GoogLeNet[11,12]的基礎(chǔ)上產(chǎn)生的.區(qū)別于傳統(tǒng)方法上單純地拓寬或加深特征提取網(wǎng)絡(luò),DenseNet通過(guò)對(duì)特征信息的交叉復(fù)用,最大限度發(fā)揮網(wǎng)絡(luò)的潛能,生成易于訓(xùn)練和參數(shù)高效化的精簡(jiǎn)模型,可以達(dá)到更好的效果.它的主要特點(diǎn)是前后層直接相連接并傳導(dǎo)信息,獲取信息的輸入層集合了前面所有層輸出的信息,而該層將學(xué)習(xí)到的特征信息作為輸入傳入到下面所有層級(jí),這樣就有效地提高了特征信息的利用率,避免梯度消失和過(guò)擬合的問(wèn)題.
一個(gè)DenseNet由多個(gè)Dense Block模塊和過(guò)渡層Transition layers組成,如圖1所示.一個(gè)Dense Block模塊中的每一層的輸入集合了前面所有層輸出的信息,過(guò)渡層Transition layers通過(guò)卷積和池化操作來(lái)改變特征圖的大小.Dense Block可以從前面層級(jí)創(chuàng)造更短、更直接的特征并傳遞到后面的層級(jí),在傳遞過(guò)程中不斷改進(jìn)信息和梯度流.DenseBlock模塊使得它具有緩解梯度消失、加強(qiáng)特征傳遞、提高特征利用率和減少參數(shù)數(shù)量等優(yōu)點(diǎn)[8].H4層不僅直接用原始信息x0作為輸入,同時(shí)還使用H1、H2、H3層對(duì)x0處理后的信息作為輸入;用一個(gè)如下的式子描述DenseNet中每一層的變換:
式中,Hl代表第l層的合成函數(shù),常對(duì)應(yīng)Batch Normalization (BN)[13]、ReLu和Convolution三個(gè)連續(xù)運(yùn)算操作;xl是第L層的輸出.
圖1 生長(zhǎng)速率為k = 4的5層Dense Block模塊
2015年由Jaderberg等人[14]提出空間變換網(wǎng)絡(luò)(Spatial Transformer Network,STN),該網(wǎng)絡(luò)可以對(duì)輸入的圖像信息在不改變其尺寸的情況進(jìn)行旋轉(zhuǎn)、平移縮放、對(duì)齊等變換操作,能有效地提高系統(tǒng)對(duì)特征信息的旋轉(zhuǎn)不變性和尺寸不變性.空間變換網(wǎng)絡(luò)的基本結(jié)構(gòu)包括定位網(wǎng)絡(luò)(Localisation Net);采樣網(wǎng)格(Samples Grid);可微圖像采樣(Differentiable Image Sampling)三部分.
定位網(wǎng)絡(luò)將輸入特征圖I∈RC,H,W,通過(guò)卷積網(wǎng)絡(luò)后輸入到回歸層,生成空間變換系數(shù)θ,使用定位網(wǎng)絡(luò)floc來(lái)預(yù)測(cè)2D仿射變換矩陣Aθn.
采樣網(wǎng)絡(luò)根據(jù)定位網(wǎng)絡(luò)生成的變換系數(shù)θ構(gòu)建一個(gè)采樣網(wǎng)格Gin,Gin=(xin,yin),Tθ為二維空間的變換函數(shù),輸出特征圖V上的坐標(biāo)(xin,yin)通過(guò)Tθ映射到輸入特征圖I上的坐標(biāo)(uin,vin),對(duì)應(yīng)關(guān)系為:
可微圖像采樣根據(jù)上面的處理結(jié)果,完成對(duì)輸出特征圖上每個(gè)坐標(biāo)點(diǎn)的采樣轉(zhuǎn)換工作,并且采用雙線性插值的方式來(lái)表示:
其中,Ihwn是輸入特征圖I在通道n處(h,w)位置的坐標(biāo),是輸出的特征圖Vin在n通道(xin,yin)位置處的坐標(biāo),n代表特征圖的通道數(shù),H、W分別代表輸入特征圖的高度和寬度.通過(guò)上述的3部分組成的空間變換網(wǎng)絡(luò)可以獨(dú)立地插入到神經(jīng)網(wǎng)絡(luò)中,并可以在網(wǎng)絡(luò)中不斷訓(xùn)練來(lái)修正參數(shù)完成對(duì)特征信息的仿射變換.
Hochreiter等[15]出了一種循環(huán)神經(jīng)網(wǎng)絡(luò)最常見(jiàn)的變形——長(zhǎng)短時(shí)記憶模型 LSTM.循環(huán)神經(jīng)網(wǎng)絡(luò)會(huì)以不受控制的方式在每個(gè)單位步長(zhǎng)內(nèi)重寫(xiě)自己的記憶,而LSTM有專(zhuān)門(mén)的學(xué)習(xí)機(jī)制能夠在保持先前狀態(tài)的情況下,記憶當(dāng)前時(shí)刻數(shù)據(jù)所輸入的特征.LSTM神經(jīng)網(wǎng)絡(luò)包含有3個(gè)門(mén)函數(shù):輸入門(mén)、輸出門(mén)和遺忘門(mén).
LSTM的改進(jìn)版本GRU[16]只包含兩個(gè)門(mén)函數(shù):更新門(mén)和重置門(mén).更新門(mén)zt表示過(guò)去時(shí)刻的狀態(tài)記憶信息保存到當(dāng)前時(shí)刻的程度,更新門(mén)zt的值越大,過(guò)去時(shí)刻的狀態(tài)記憶信息保存到當(dāng)前時(shí)刻的信息就越多.GRU的重置門(mén)rt表示當(dāng)前時(shí)刻忽略過(guò)去時(shí)刻的狀態(tài)信息的程度,重置門(mén)越小說(shuō)明當(dāng)前時(shí)刻保存信息越少,對(duì)過(guò)去時(shí)刻忽略的信息就越多.對(duì)GRU而言,由于GRU參數(shù)更少,不容易發(fā)生過(guò)擬合,收斂速度更快,因此其實(shí)際消耗時(shí)間要少很多,這就大大加速了算法的迭代過(guò)程[16].GRU神經(jīng)網(wǎng)絡(luò)的傳播公式如下所示:
其中,xt表示當(dāng)前時(shí)刻的輸入;ht表示上一時(shí)刻的輸出;Wz、Wr、Wh表示對(duì)應(yīng)的權(quán)重矩陣;zt、rt分別表示更新門(mén)和重置門(mén);*表示矩陣元素相乘.本文使用深度雙向GRU神經(jīng)網(wǎng)絡(luò)模型如圖2所示,網(wǎng)絡(luò)包含左右兩個(gè)序列方向上下兩層的GRU網(wǎng)絡(luò).其中每層的GRU包含的隱含節(jié)點(diǎn)數(shù)目為256個(gè),文本特征序列x={x1,x2,…,xt}在該層進(jìn)行正向和反向處理后輸出中間序列m={m1,m2,…,mt}.將中間序列作為第二層的輸入進(jìn)行正向和反向后輸出向量y={y1,y2,…,yt},y包含了序列每一幀的預(yù)測(cè)概率值.
圖2 雙向GRU網(wǎng)絡(luò)
自然場(chǎng)景圖片背景復(fù)雜,漢字種類(lèi)繁多結(jié)構(gòu)復(fù)雜,一方面使得簡(jiǎn)單的卷積網(wǎng)絡(luò)(AlexNet[17]網(wǎng)絡(luò)和VGG[18]網(wǎng)絡(luò))難以完全提取圖像的底層特征細(xì)節(jié),另一方面隨著網(wǎng)絡(luò)復(fù)雜性的提高又導(dǎo)致網(wǎng)絡(luò)出現(xiàn)過(guò)擬合、參數(shù)繁多、難收斂等現(xiàn)象.DenseNet網(wǎng)絡(luò)結(jié)構(gòu)先提取圖像底層特征,并通過(guò)空間變換網(wǎng)絡(luò)對(duì)中文字符在大小、寬高比、角度、傾斜等方面進(jìn)行2D仿射變換,從而提高文字的識(shí)別率.循環(huán)神經(jīng)網(wǎng)絡(luò)層BGRU對(duì)輸入的特征序列x進(jìn)行標(biāo)記預(yù)測(cè),輸出序列y包含上下文信息可以得到距離較寬的文字進(jìn)行更加精確的預(yù)測(cè)信息.對(duì)于包括含有模糊不清的并含有其它特殊文字,特征序列包含的上下文信息也有更好的優(yōu)化處理效果.CTC層計(jì)算輸入序列y={y1,y2,…,yt}對(duì)應(yīng)的(漢字、英文字母、數(shù)字和標(biāo)點(diǎn)共5990個(gè)字符)種標(biāo)簽元素序列的概率分布,映射函數(shù)通過(guò)去除空格和去重操作后輸出可能的序列ι,統(tǒng)計(jì)并計(jì)算每個(gè)標(biāo)簽序列的條件概率p(ι/y),求出標(biāo)簽序列ι.CTC輸出的序列標(biāo)簽ι參照概率字典上的文字,就可得到圖片上的文字信息.將得到的文本送入到敏感語(yǔ)義分類(lèi)器當(dāng)中進(jìn)行分類(lèi).
在模型訓(xùn)練的過(guò)程中,首先對(duì)圖片進(jìn)行歸一化到相同尺寸且標(biāo)簽的長(zhǎng)度保持一致,本模型統(tǒng)一尺寸設(shè)置為280×32,標(biāo)簽長(zhǎng)度設(shè)置為20.通過(guò)一個(gè)卷積核為7×7,卷積步長(zhǎng)為2的卷積層和卷積核為3×3,卷積步長(zhǎng)為2的最大池化層.DenseNet包含了3個(gè)DenseNet Block模塊,每個(gè)模塊包含了16個(gè)dense layer層,生成率(growth rate,即加進(jìn)每層的卷積核數(shù)設(shè)置)為12.實(shí)驗(yàn)中使用的過(guò)渡層包括批歸一化層、Relu層和1×1的卷積層,然后是2×2的池化層,同時(shí)去掉DenseNet的全連接層直接連接到STN網(wǎng)絡(luò)上.實(shí)驗(yàn)中將Transition Layer3作為子卷積網(wǎng)絡(luò),后面接入一個(gè)線性回歸層和Relu,作為定位網(wǎng)絡(luò).根據(jù)定位網(wǎng)絡(luò)回歸得到的變換系數(shù)θ進(jìn)行仿射變換,采樣網(wǎng)格的生成和輸出圖片的采樣,完成對(duì)圖片的矯正工作,在此過(guò)程中特征圖的尺度保持不變.
實(shí)驗(yàn)數(shù)據(jù)集CTW (Chinese Text in the Wild)包含32 285張圖像,總共有1018 402個(gè)中文字符,并包含平面文本、凸起文本、城市文本、農(nóng)村文本、亮度文本、遠(yuǎn)處文本、遮擋文本,數(shù)據(jù)集大小為31 GB.以(8:1:1)的比例將數(shù)據(jù)集分為訓(xùn)練集(25 887張圖像,812 872個(gè)漢字),測(cè)試集(3269張圖像,103 519個(gè)漢字),驗(yàn)證集(3129張圖像,103 519個(gè)漢字).Caffe-OCR中文合成數(shù)據(jù)集是人工生成的自然場(chǎng)景文本數(shù)據(jù)集,利用中文語(yǔ)料庫(kù),通過(guò)字體、大小、灰度、模糊、透視、拉伸等變化隨機(jī)生成,共360萬(wàn)張圖片,圖3是部分人工合成圖片的示例.將該數(shù)據(jù)作為敏感文字圖片訓(xùn)練集,同時(shí)圖像分辨率為280×32.
鑒于含有敏感文字圖片的特殊性,在互聯(lián)網(wǎng)網(wǎng)絡(luò)平臺(tái)只收集到360張含有敏感信息文字的圖片,同時(shí)制作2000含有少量字符的敏感文字圖片作為敏感圖片測(cè)試數(shù)據(jù)集.數(shù)據(jù)利用中文語(yǔ)料庫(kù)(新聞和常見(jiàn)用語(yǔ)),通過(guò)字體、大小、灰度、模糊、透視、拉伸等變化隨機(jī)生成.包含漢字、英文字母、數(shù)字和標(biāo)點(diǎn)共5990個(gè)字符,每個(gè)樣本固定20個(gè)以下字符,字符隨機(jī)截取包含敏感詞匯和非敏感詞匯的句子.圖4(a)為未標(biāo)注的圖片,圖4(b)、圖4(c)標(biāo)注圖片.
圖3 人工合成的圖片
圖4 含有敏感字符的圖片
實(shí)驗(yàn)基于Pytorch和Keras框架,所有實(shí)驗(yàn)的訓(xùn)練和測(cè)試是在計(jì)算機(jī)配置為內(nèi)存為16 GB,顯卡GPU為GTX TITAN X的服務(wù)器上進(jìn)行的.
本模型的輸入尺寸為設(shè)置為280×32,采用隨機(jī)梯度下降法(SGD)進(jìn)行訓(xùn)練.動(dòng)量和權(quán)重衰減分別被設(shè)置為0.9和2.5×10–4,首先對(duì)數(shù)據(jù)集CTW進(jìn)行處理歸一化處理,學(xué)習(xí)率初始值為10–4,學(xué)習(xí)率每隔10 K次迭代變?yōu)樵瓉?lái)的0.5倍.然后在Caffe-ORC中文合成數(shù)據(jù)集進(jìn)行訓(xùn)練,采用的是ADADELTA梯度下降優(yōu)化算法,該算法是對(duì)Adagrad的擴(kuò)展,方案對(duì)學(xué)習(xí)率進(jìn)行自適應(yīng)約束,但是進(jìn)行了計(jì)算上的簡(jiǎn)化.Adagrad會(huì)累加之前所有的梯度平方,而Adadelta只累加固定大小的項(xiàng),并且也不直接存儲(chǔ)這些項(xiàng),僅僅是近似計(jì)算對(duì)應(yīng)的平均值.初始學(xué)習(xí)率設(shè)置為0.01.在模型微調(diào)的階段,沒(méi)有設(shè)置特定的終止迭代次數(shù),保證對(duì)每一個(gè)模型結(jié)構(gòu)進(jìn)行充分訓(xùn)練,直到各個(gè)模型最終收斂為止.隨后,我們使用一個(gè)10–4的權(quán)重衰減,并使用高斯分布來(lái)初始化權(quán)重.在數(shù)據(jù)集里,我們?cè)诿恳粋€(gè)卷積層(除了第一個(gè))后加上一個(gè)Dropout層,并設(shè)隨機(jī)丟棄率(dropout rate)為0.2.測(cè)試誤差僅對(duì)一項(xiàng)任務(wù)進(jìn)行一次評(píng)估.為了驗(yàn)證本文模型的有效性,在敏感圖片測(cè)試數(shù)據(jù)集上設(shè)置了兩種類(lèi)型的對(duì)比:(1)VGG、ResNet、DenseNet之間常用典型的卷積神經(jīng)網(wǎng)絡(luò)的對(duì)比.(2)循環(huán)神經(jīng)網(wǎng)絡(luò)兩個(gè)變種GRU與LSTM的對(duì)比.具體包括以下的端到端文本識(shí)別模型實(shí)驗(yàn):“DenseNet+CTC”、“DenseNet+STN+BGRU+CTC”、“DenseNet+BGRU+CTC”、“ResNet+CTC”、“+ResNet+BGRU+ CTC”、“VGG+CTC”、“VGG+BGRU+CTC”、“DenseNet+STN+LSTM+CTC”.
實(shí)驗(yàn)設(shè)置采用了控制變量法的準(zhǔn)則,包括對(duì)數(shù)據(jù)集的訓(xùn)練和測(cè)試,盡可能地控制其他因素對(duì)實(shí)驗(yàn)的影響,這些影響因素可能包括:優(yōu)化方法、機(jī)器配置、學(xué)習(xí)率和迭代次數(shù)等.本文采用的識(shí)別算法評(píng)價(jià)標(biāo)準(zhǔn)為編輯距離(Edit Distance)、單詞識(shí)別準(zhǔn)確率(Words Recognition Accuracy).編輯距離[19]指的是任意兩組字符串st1和st2,由其中一組字符串轉(zhuǎn)化為別一組字符串所需最少的編輯次數(shù).通常編輯距離越大,也就說(shuō)明兩組字符串相似度越低,編輯距離越小,則說(shuō)明相似度越高.編輯距離相似度表示為:
單詞識(shí)別準(zhǔn)確率指的是正確識(shí)別序列的總數(shù)與標(biāo)簽序列總數(shù)的比值.識(shí)別準(zhǔn)確率表示為:
4個(gè)卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的模型在數(shù)據(jù)試集CTW上的文字識(shí)別準(zhǔn)確率隨迭代次數(shù)變化的曲線圖如圖5所示,實(shí)驗(yàn)設(shè)置每訓(xùn)練迭代5 k周期測(cè)試一次.通過(guò)實(shí)驗(yàn)曲線圖中實(shí)驗(yàn)數(shù)據(jù)對(duì)比,本文設(shè)置的模型網(wǎng)絡(luò)(DenseNet+STN+BGRU+CTC)測(cè)試準(zhǔn)確率要高于沒(méi)有STN結(jié)構(gòu)的網(wǎng)絡(luò),隨著測(cè)試次數(shù)的提升,含有STN結(jié)構(gòu)的網(wǎng)絡(luò)收斂最快,最終的準(zhǔn)確率為0.87,比沒(méi)有STN結(jié)構(gòu)的網(wǎng)絡(luò)更加穩(wěn)定,識(shí)別準(zhǔn)確率更高.
4個(gè)典型卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的模型在數(shù)據(jù)集CTW上的編輯距離相似度隨迭代次數(shù)變化的曲線圖如圖6所示,設(shè)置每迭代5 k次測(cè)試一次,開(kāi)始訓(xùn)練時(shí)模型編輯距離相似度就迅速攀升,并且很快達(dá)到平穩(wěn)狀態(tài),曲線更加的平滑,相比之下,無(wú)STN的結(jié)構(gòu)的曲線在測(cè)試次數(shù)為2–13的階段波動(dòng)更大,但也慢慢趨于穩(wěn)定.
圖5 模型識(shí)別準(zhǔn)確率變化曲線
圖6 模型編輯距離相似度變化曲線
在DenseNet的輸入特征圖的數(shù)量并有效提高該網(wǎng)絡(luò)的計(jì)算效率,就引入一維卷積層到DenseNet網(wǎng)絡(luò)中,即BN-ReLU-Conv1×1-BN-ReLU-Conv3×3版本的合成函數(shù)Hl,也就是DenseNet-B,一維的卷積層能有效的減少實(shí)驗(yàn)中的輸入特征.在實(shí)驗(yàn)后續(xù)設(shè)置中,為了進(jìn)一步提高模型的緊湊性,可以減小Transition layers層的特征映射數(shù)量.當(dāng)Dense Block模塊包含了m個(gè)特征圖時(shí),可以讓Transition layers層生成不超過(guò)θm的最大整數(shù)個(gè)特征圖,其中0<θ≤1稱(chēng)為壓縮因子.當(dāng)θ=1時(shí),轉(zhuǎn)換過(guò)程中的特征圖的數(shù)量保持不變.我們稱(chēng)DenseNet當(dāng)θ<1時(shí)為DenseNet-C,我們?cè)趯?shí)驗(yàn)中設(shè)定θ=0.5.當(dāng)同時(shí)使用了瓶頸層(Bottleneck layers)和壓縮(Compression)的方法稱(chēng)為DenseNet-BC[8].本文DenseNet網(wǎng)絡(luò)設(shè)置為DenseNet-BC.
通過(guò)分析表1使用的經(jīng)典卷積網(wǎng)絡(luò)與改進(jìn)的DenseNet-STN網(wǎng)絡(luò)以及GRU和LSTM的循環(huán)網(wǎng)絡(luò)層對(duì)比.相較于VGG和ResNet,具有一維卷積和壓縮結(jié)構(gòu)的DenseNet-BC結(jié)構(gòu)具有更好的識(shí)別效果,模型整體的文字識(shí)別準(zhǔn)確率也就更高,同時(shí)這表明在相同深度和寬度的神經(jīng)網(wǎng)絡(luò)框架下DenseNet可提高對(duì)特征信息的變現(xiàn)力.
在實(shí)驗(yàn)的過(guò)程中,發(fā)現(xiàn)含有DenseNet特征網(wǎng)絡(luò)的模型出現(xiàn)過(guò)擬合或者優(yōu)化難等問(wèn)題概率小于含有VGG網(wǎng)絡(luò)和ResNet網(wǎng)絡(luò),對(duì)參數(shù)的利用也更高效,相同的數(shù)據(jù)集上,可以得到更好的識(shí)別效果.與此同時(shí)可以發(fā)現(xiàn),基于GRU和LSTM網(wǎng)絡(luò)的模型并沒(méi)有在識(shí)別率上有直觀的提升效果,但是對(duì)比表1的對(duì)應(yīng)實(shí)驗(yàn)?zāi)P偷拇笮?lái)看,我們可以發(fā)現(xiàn),前者比后者有更小的內(nèi)存容量,由此說(shuō)明在模型訓(xùn)練的過(guò)程占有更少的顯存空間.
表1 模型在敏感圖片數(shù)據(jù)測(cè)試集的識(shí)別統(tǒng)計(jì)結(jié)果
表2總結(jié)了各種模型組合在模型大小與運(yùn)行時(shí)間方面的實(shí)驗(yàn)結(jié)果.通過(guò)分析可以發(fā)現(xiàn),使用不同的特征提取層使網(wǎng)絡(luò)模型在模型大小與平均識(shí)別時(shí)間上有著比較大的差距.本文提出的DenseNet-STN特征提取網(wǎng)絡(luò)結(jié)構(gòu)在敏感圖片測(cè)試集上的平均識(shí)別時(shí)間為26.3 ms每張圖,大致相當(dāng)于1 s處理38張圖片,符合實(shí)際應(yīng)用之中對(duì)敏感信息圖片處理的要求.通過(guò)比較發(fā)現(xiàn),DenseNet-STN網(wǎng)絡(luò)結(jié)構(gòu)處理圖片用時(shí)最多,其主要原因把時(shí)間用在特征提取和空間變換階段.DenseNet雖然具有較好的加強(qiáng)特征傳遞和提高特征利用率等優(yōu)點(diǎn),但DenseNet Block內(nèi)部聯(lián)系緊密導(dǎo)致特征提取階段相對(duì)VGG網(wǎng)絡(luò)和ResNet網(wǎng)絡(luò)的模型更加耗時(shí),占用更多的GPU顯存,而本實(shí)驗(yàn)中實(shí)驗(yàn)機(jī)器顯卡內(nèi)存只有16 GB基本夠用.在實(shí)際應(yīng)用環(huán)境下對(duì)硬件平臺(tái)有了更高的要求,同時(shí)本模型對(duì)圖片相對(duì)處理速度也符合要求.
表2 模型在敏感圖片數(shù)據(jù)測(cè)試集上的大小與時(shí)間效率的統(tǒng)計(jì)結(jié)果
本文提出了一種網(wǎng)絡(luò)敏感文字圖片識(shí)別的新方法,DenseNet-STN對(duì)復(fù)雜背景下的敏感文字圖片進(jìn)行特征信息提取和變換矯正,相比于前人研究的VGG網(wǎng)絡(luò)和ResNet網(wǎng)絡(luò),實(shí)驗(yàn)表明本文模型能準(zhǔn)確地識(shí)別被扭曲、3D凹凸、藝術(shù)化、傾斜等復(fù)雜短文本,模型的識(shí)別準(zhǔn)確率、編輯距離相似度有著良好表現(xiàn).與此同時(shí),本文提出的方法在效率和算法還有很大的提高,在缺乏足夠樣本下對(duì)文字圖片進(jìn)行分析理解仍舊是個(gè)難題.