汪 哲,張譽(yù)鐸,黃永東,麥日排提·麥提圖爾蓀
(大連民族大學(xué) 理學(xué)院,遼寧 大連 116650)
維吾爾語(yǔ)是中國(guó)古老的少數(shù)民族語(yǔ)言之一,千百年來(lái)一直在不斷的變化和發(fā)展。隨著西部大開(kāi)發(fā)與“一帶一路”等項(xiàng)目建設(shè),中國(guó)加大了對(duì)少數(shù)民族地區(qū)信息化建設(shè)的投入[1],手寫(xiě)體文字識(shí)別技術(shù)作為信息化建設(shè)中最重要的一部分,在拍照文檔、票據(jù)、手稿文書(shū)等學(xué)習(xí)生活中被廣泛應(yīng)用,但由于維吾爾識(shí)別技術(shù)研究開(kāi)始時(shí)間較晚,而且識(shí)別難度較大,所以維吾爾語(yǔ)識(shí)別技術(shù)目前成果有限,因此本文將對(duì)手寫(xiě)體維吾爾文字識(shí)別進(jìn)行研究。
對(duì)于維吾爾語(yǔ)文字識(shí)別的研究[2-8]大多都是基于人工特征提取的方法,這種方法雖然取得了很好的識(shí)別效果,但由于只能依賴于人的經(jīng)驗(yàn),很難提取到辨別力極強(qiáng)的特征。而基于深度學(xué)習(xí)的方法解決了這個(gè)問(wèn)題,它可以自動(dòng)提取圖像中重要的特征,目前很多研究者利用深度學(xué)習(xí)模型來(lái)識(shí)別手寫(xiě)體文字,并在中文[9-10]、英文[11-12]等文字識(shí)別領(lǐng)域取得了不錯(cuò)的成績(jī),但對(duì)于手寫(xiě)體維吾爾語(yǔ)的識(shí)別幾乎無(wú)人研究。
由于手寫(xiě)體維吾爾語(yǔ)單詞具有數(shù)量龐大、字符不規(guī)則、粘連性高、單詞差異小的特點(diǎn),因此對(duì)特征提取和分類具有很高的要求,而VGG-16用多個(gè)小型的卷積核代替尺寸大的卷積核,增加了網(wǎng)絡(luò)深度,可以提取到更加優(yōu)秀的特征,并對(duì)大類別模式識(shí)別問(wèn)題具有較高的識(shí)別率;但直接使用VGG-16進(jìn)行訓(xùn)練對(duì)數(shù)據(jù)量有較高的要求,而本文收集的數(shù)據(jù)有限,針對(duì)數(shù)據(jù)稀缺問(wèn)題,本文在保留VGG-16優(yōu)點(diǎn)的基礎(chǔ)上,精煉出一個(gè)更加輕量的模型,不僅對(duì)較小的數(shù)據(jù)集有更好的適配度,且大大減少了訓(xùn)練參數(shù),提高了訓(xùn)練速度。
因?yàn)槭謱?xiě)體維吾爾語(yǔ)沒(méi)有統(tǒng)一的數(shù)據(jù)集,因此本文所使用的數(shù)據(jù)集均由人工整理而成,本文選取了維吾爾語(yǔ)中常用的20個(gè)字詞如圖1。實(shí)驗(yàn)邀請(qǐng)了維吾爾族同學(xué)按照自己的書(shū)寫(xiě)習(xí)慣寫(xiě)了這20個(gè)字詞,經(jīng)過(guò)分割、篩選,共整理出2038個(gè)手寫(xiě)字詞,隨機(jī)選取其中的70%作為訓(xùn)練集,剩下的30%作為測(cè)試集。
圖1 手寫(xiě)維吾爾語(yǔ)樣本
在數(shù)字圖像處理中,灰度圖像的處理難度要小于彩色圖像,二值圖像的處理難度要小于灰度圖像。因此,在手寫(xiě)體維吾爾文單詞識(shí)別技術(shù)研究中,將輸入圖像二值化,不僅減小了原始圖像的存儲(chǔ)量,同時(shí)降低了后續(xù)的特征提取和分類器設(shè)計(jì)的復(fù)雜度,提高了系統(tǒng)的識(shí)別性能。本文使用最大類間方差法對(duì)圖像進(jìn)行二值化預(yù)處理。
手寫(xiě)體維吾爾語(yǔ)圖像存在的噪聲使得圖像變得模糊,容易丟失字詞的特征信息,從而導(dǎo)致了字符難以識(shí)別。因此在二值化后,將圖像上的噪聲過(guò)濾掉,能夠保留原圖像的細(xì)節(jié)特征,并且使得處理后的圖像保持清晰的視覺(jué)效果。本文采用中值濾波進(jìn)行去噪處理。
1.2.1 最大類間方差法
最大類間方差法[13]是一種自適應(yīng)閾值確定的方法,如式(1),假設(shè)存在一個(gè)閾值將圖像所有像素分為兩類,pA表示被分為第一類像素的概率,pB表示被分為第二類像素的概率,mA表示第一類像素的平均灰度,mB表示第二類像素的平均灰度,mG表示所有像素的平均灰度,σ2即為類間方差。
σ2=pA(mA-mG)2+pB(mB-mG)2。
(1)
根據(jù)直方圖的計(jì)算結(jié)果,得到圖像前景和背景的灰度分布均勻方差,如式(2),式(3)所示(P為像素類的概率,m為平均灰度)。
(2)
(3)
然后遍歷圖像的每個(gè)像素值,找到最大類間方差的像素值,即閾值,根據(jù)這個(gè)閾值對(duì)圖像進(jìn)行二值化分割,最終即可得到二值化的圖像。
1.2.2 中值濾波
中值濾波的中心思想是利用像素點(diǎn)領(lǐng)域內(nèi)所有像素的中間灰度值來(lái)代替某個(gè)像素點(diǎn)的灰度值[14]。例如給定一個(gè)3×3的模板核算子,模板內(nèi)共有9個(gè)像素點(diǎn),將其排序后為x1,x2,x3,x4,x5,x6,x7,x8,x9,中值濾波即是用位于x5位置的像素點(diǎn)的灰度值代替當(dāng)前像素點(diǎn)的灰度值。
1.2.3 預(yù)處理過(guò)程
本文在處理數(shù)據(jù)過(guò)程中如圖2。先將所有樣本如圖2a處理成正方形,然后對(duì)所有樣本進(jìn)行二值化如圖2b,為了確保所有數(shù)據(jù)的統(tǒng)一性,將所有樣本尺寸歸一化為64×64×1的大小如圖2c,由于在歸一化圖像大小的過(guò)程中,樣本像素發(fā)生變化,使得到的圖像產(chǎn)生噪聲,因此對(duì)所有樣本進(jìn)行去噪處理如圖2d。
a)原圖 b)二值化 c)歸一化 d)去噪圖2 數(shù)據(jù)預(yù)處理過(guò)程
VGG網(wǎng)絡(luò)是2014年由牛津大學(xué)著名研究組VGG (Visual Geometry Group) 提出的深層卷積神經(jīng)網(wǎng)絡(luò)[15]。其中應(yīng)用最廣泛的是VGG-16,VGG-16共有16層,通過(guò)組合13個(gè)卷積層,5個(gè)池化層以及3個(gè)全連接層可分為六大塊,第一塊和第二塊由兩個(gè)卷積層和一個(gè)池化層組成,主要用來(lái)提取圖像的低級(jí)特征,第三、四、五塊都由三個(gè)卷積層和一個(gè)池化層組合而成,第六塊由三個(gè)全連接層組成。
VGG-16在整個(gè)結(jié)構(gòu)中采用的都是3×3的卷積核,池化層采用2×2最大池化。相比于5×5或7×7的卷積核,使用連續(xù)多個(gè)的3×3的卷積核
不僅可以得到相同的感受野,且提升了網(wǎng)絡(luò)深度,因此使用VGG16作為分類器更有限的減少了參數(shù)量,提升了特征提取以及分類的效果。
標(biāo)準(zhǔn)的VGG-16模型的輸入圖像為224×224×3,遠(yuǎn)大于維吾爾語(yǔ)手寫(xiě)體原始的尺寸,直接訓(xùn)練難以準(zhǔn)確的提取維語(yǔ)特征;收集大量且不同的樣本需要消耗巨大的人力,本文收集到的樣本量遠(yuǎn)小于VGG-16模型中用來(lái)訓(xùn)練的數(shù)據(jù)量,存在數(shù)據(jù)缺乏的問(wèn)題;訓(xùn)練復(fù)雜的模型不僅對(duì)硬件設(shè)備具有較高的要求,且容易造成計(jì)算資源的浪費(fèi)。因此針對(duì)本次實(shí)驗(yàn)所涉及的問(wèn)題,本文在VGG-16模型的基礎(chǔ)上做出了改進(jìn)。
2.2.1 網(wǎng)絡(luò)結(jié)構(gòu)的設(shè)計(jì)
為了保留手寫(xiě)體維吾爾語(yǔ)最原始的信息,本文將所有輸入圖像統(tǒng)一到64×64×1的大小,本文延續(xù)了VGG-16中前四塊的卷積層和池化層的組合形式,而為了匹配輸入圖像的尺寸,將前四塊的卷積層通道數(shù)減至原來(lái)一半,并刪減了原VGG-16模型中的第五塊內(nèi)容,因此整個(gè)網(wǎng)絡(luò)結(jié)構(gòu)的卷積層由原來(lái)的13層減至10層,池化層減至4層,同時(shí)為了避免過(guò)擬合的現(xiàn)象,本文在卷積層以及池化后都連接了正則化層。由于使用Lenet識(shí)別手寫(xiě)體數(shù)字取得了較好的效果,因此本文全連接層的神經(jīng)元個(gè)數(shù)參考了Lenet中全連接層神經(jīng)元的個(gè)數(shù),分別設(shè)置為120和84,改進(jìn)后的網(wǎng)絡(luò)結(jié)構(gòu)如圖3。
圖3 本文網(wǎng)絡(luò)結(jié)構(gòu)
2.2.2 模型及其核心參數(shù)設(shè)計(jì)
(1)卷積層。卷積層是整個(gè)網(wǎng)絡(luò)的核心部分,主要用來(lái)特征提取,本文卷積層的卷積核尺寸大小為3×3,步長(zhǎng)為1,填充為1。
(2)池化層。池化是通過(guò)統(tǒng)計(jì)分析圖像某個(gè)區(qū)域的特征,來(lái)表示整個(gè)區(qū)域的總體特征,因此池化層有效的縮小了特征矩陣大小,緩解了過(guò)擬合。本文采用最大池化,池化大小為2×2,步長(zhǎng)為2。
(3)激活層。激活層是將卷積層輸出進(jìn)行非線性運(yùn)算,解決了線性運(yùn)算不能解決的問(wèn)題,有效緩解了梯度消失,本文統(tǒng)一采用Relu激活函數(shù)。
(4)增加正則化層。模型參數(shù)隨著網(wǎng)絡(luò)加深以及參數(shù)更新會(huì)變幻莫測(cè),因此這些變量分布中的偏移可能會(huì)阻礙網(wǎng)絡(luò)的收斂,其次,深層的網(wǎng)絡(luò)更容易出現(xiàn)過(guò)擬合的現(xiàn)象,增加正則化層更有效的對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行規(guī)范,不僅有利于提取模型的主要特征,而且加快了網(wǎng)絡(luò)的收斂速度和緩解了過(guò)擬合[15]。正則化的轉(zhuǎn)換表達(dá)式如式(4)。
(4)
若使用大小為1的批量正則化,將無(wú)法學(xué)到任何信息,因?yàn)樵跍p去均值后的隱藏單元為0,因此使用足夠且合適的批量,批量正則化才是有效且穩(wěn)定的。本文在經(jīng)過(guò)多輪實(shí)驗(yàn)之后,最終選取的批量值為16。
(5)全連接層。全連接層是將最終得到的圖像特征映射成固定長(zhǎng)度的特征向量,傳入分類器完成最終分類。本文全連接層的特征向量的長(zhǎng)度分別設(shè)置為120、84。
(6)損失函數(shù)。本文對(duì)20個(gè)維吾爾字識(shí)別屬于多元分類問(wèn)題,因此采用交叉熵?fù)p失函數(shù)。在全連接層末端通過(guò)softmax進(jìn)行概率計(jì)算,如式(5)。
(5)
式中:zi,zk分別表示輸入向量的第i、k個(gè)值;w是類別數(shù);Si為輸入圖像是第i個(gè)類別的概率;θ為訓(xùn)練參數(shù),因此損失函數(shù)如式(6)。
log(1-Si))。
(6)
(7)參數(shù)優(yōu)化方法。BP神經(jīng)網(wǎng)絡(luò)的原理是計(jì)算真實(shí)輸出與期望輸出的誤差,并通過(guò)梯度下降算法計(jì)算出損失函數(shù)相對(duì)于權(quán)值參數(shù)的梯度,然后在損失函數(shù)的反方向上更新權(quán)值,更新迭代公式如式(7),xi,yi為訓(xùn)練樣本,η為學(xué)習(xí)率。
θ=θ-η·θJ(θ;xi,yi)。
(7)
隨機(jī)梯度下降通過(guò)頻繁的更新參數(shù)使參數(shù)間具有高方差,雖然有益于得到最優(yōu)解,但由于更新參數(shù)時(shí)是從訓(xùn)練集中隨機(jī)抽取,使得參數(shù)的更新方向也隨機(jī)選擇,增加了迭代次數(shù),降低了網(wǎng)絡(luò)收斂的速度。
因此本文使用小批量隨機(jī)梯度下降算法,小批量隨機(jī)梯度下降算法在每次進(jìn)行參數(shù)更新的時(shí)候,只是隨機(jī)選取m個(gè)樣本來(lái)進(jìn)行參數(shù)更新,降低了網(wǎng)絡(luò)收斂的波動(dòng)性,加快了收斂速度[16]。迭代公式如式(8)。
θ=θ-η·θJ(θ;xi:i+m,yi:i+m)。
(8)
而梯度下降在訓(xùn)練過(guò)程中會(huì)出現(xiàn)高方差震蕩的現(xiàn)象,會(huì)導(dǎo)致網(wǎng)絡(luò)難以穩(wěn)定收斂,王錦[17]等提出了動(dòng)量技術(shù)緩解了網(wǎng)絡(luò)收斂不穩(wěn)定的問(wèn)題。迭代公式如式(9),μ為動(dòng)量因子。
vt=μvt-1+ηθJ(θ),θ=θ-vt。
(9)
本文改進(jìn)后的模型各層網(wǎng)絡(luò)參數(shù)見(jiàn)表1。
表1 改進(jìn)后模型網(wǎng)絡(luò)參數(shù)
為了確保實(shí)驗(yàn)中各項(xiàng)環(huán)境的統(tǒng)一性,本文中所有的實(shí)驗(yàn)都是在相同的數(shù)據(jù)集以及計(jì)算機(jī)性能上完成的,相關(guān)的實(shí)驗(yàn)環(huán)境配置參數(shù)見(jiàn)表2。
表2 實(shí)驗(yàn)環(huán)境配置參數(shù)
本文實(shí)驗(yàn)以測(cè)試集的損失值和準(zhǔn)確率作為評(píng)價(jià)指標(biāo),損失值是由樣本的真實(shí)值與學(xué)習(xí)得出的預(yù)測(cè)值做多分類交叉熵所得,損失誤差越小,文字識(shí)別率越高,為了使損失函數(shù)的值盡量小,本文使用小批量隨機(jī)梯度下降算法來(lái)優(yōu)化損失函數(shù)。
學(xué)習(xí)率和Batch-size是卷積神經(jīng)網(wǎng)絡(luò)中非常重要的參數(shù),學(xué)習(xí)率的大小影響訓(xùn)練時(shí)間的長(zhǎng)短和隨機(jī)梯度下降算法能否達(dá)到最優(yōu),Batch-size的大小影響了GPU顯存的大小及訓(xùn)練速度。因此本文選取了學(xué)習(xí)率和Batch-size這兩個(gè)參數(shù)進(jìn)行了實(shí)驗(yàn),分別對(duì)比了不同學(xué)習(xí)率和Batch-size的組合對(duì)識(shí)別率的影響。
改進(jìn)后的網(wǎng)絡(luò)層數(shù)較深,收斂較快。在不同的學(xué)習(xí)率以及批量值的情況下,迭代了20次就已經(jīng)收斂,因此本文將迭代次數(shù)統(tǒng)一設(shè)置到20次來(lái)研究不同學(xué)習(xí)率和批量值對(duì)實(shí)驗(yàn)的影響。
本次實(shí)驗(yàn)隨機(jī)選取610張64×64的手寫(xiě)維吾爾語(yǔ)字作為測(cè)試數(shù)據(jù)集,分別設(shè)置批量值為10、12、14、16、18、20,學(xué)習(xí)率設(shè)置為0.005、0.01、0.03、0.05、0.1、0.2共進(jìn)行36組實(shí)驗(yàn),實(shí)驗(yàn)得到的損失值和測(cè)試集準(zhǔn)確率見(jiàn)表3~4。
表3 不同學(xué)習(xí)率和批量值下訓(xùn)練的測(cè)試集準(zhǔn)確率
表4 不同學(xué)習(xí)率和批量值下訓(xùn)練的測(cè)試集損失值
從表中可以得出,學(xué)習(xí)率為0.05,批量值為16的時(shí)候,準(zhǔn)確率達(dá)到最優(yōu)值95.69%,同時(shí)損失值達(dá)到最小值0.190 7。因此,本次實(shí)驗(yàn)學(xué)習(xí)率取0.05,批量值取16。
因?yàn)閿?shù)據(jù)樣本由不同的人的所寫(xiě),所以手寫(xiě)的維語(yǔ)字詞各不相同,為了更加清楚的描述各個(gè)字詞的識(shí)別率,本文在測(cè)試集上進(jìn)行25次獨(dú)立重復(fù)實(shí)驗(yàn),得到維吾爾語(yǔ)分類混淆矩陣如圖4,從圖中可以看出,大部分圖像分類準(zhǔn)確率都高于95%,說(shuō)明本文提出的模型對(duì)維吾爾語(yǔ)識(shí)別具有良好的性能。
圖4 維吾爾語(yǔ)分類混淆矩陣
為了與標(biāo)準(zhǔn)的VGG-16模型作對(duì)比,基于以上實(shí)驗(yàn)結(jié)果,本文將學(xué)習(xí)率設(shè)置為0.05,批量值設(shè)置為16,將本文實(shí)驗(yàn)所用的數(shù)據(jù)集放到標(biāo)準(zhǔn)的VGG-16模型中訓(xùn)練,所得到的實(shí)驗(yàn)數(shù)據(jù)見(jiàn)表5。
表5 實(shí)驗(yàn)結(jié)果
由表5可知,在經(jīng)過(guò)20次迭代之后,VGG-16的測(cè)試集準(zhǔn)確率為90.83%,損失值為0.5472,而本模型的測(cè)試集準(zhǔn)確率達(dá)到了95.69%,高于標(biāo)準(zhǔn)的VGG-16模型,損失值為0.1907,也小于VGG-16模型,且訓(xùn)練時(shí)長(zhǎng)以及訓(xùn)練參數(shù)也遠(yuǎn)遠(yuǎn)小于標(biāo)準(zhǔn)模型。因此證明了本文改進(jìn)的模型的對(duì)手寫(xiě)維吾爾語(yǔ)體的識(shí)別性能優(yōu)于VGG-16模型。
本文結(jié)合維吾爾語(yǔ)的特點(diǎn),研究基于VGG-16的維吾爾語(yǔ)文字識(shí)別方法,與傳統(tǒng)的模型對(duì)比,本文改進(jìn)后的網(wǎng)絡(luò)結(jié)構(gòu)不僅達(dá)到了更高的準(zhǔn)確率,并且減少了運(yùn)算時(shí)間與空間的消耗,證明了使用改進(jìn)后的VGG-16模型研究維語(yǔ)識(shí)別能達(dá)到更好的效果。
在實(shí)際生活中,維吾爾語(yǔ)并不局限于單個(gè)字詞的應(yīng)用,且收集大量不同書(shū)寫(xiě)風(fēng)格的手寫(xiě)維吾爾語(yǔ)單詞更加困難,因此后續(xù)將從數(shù)據(jù)增強(qiáng)的角度繼續(xù)擴(kuò)大數(shù)據(jù)集。