毛存禮,謝旭陽,余正濤,高盛祥,王振晗,劉福浩
(1.昆明理工大學(xué)信息工程與自動(dòng)化學(xué)院,昆明 650500;2.昆明理工大學(xué)云南省人工智能重點(diǎn)實(shí)驗(yàn)室,昆明 650500)
緬甸語文字有Zawgyi?One、Myanmar Three等多種字體編碼,為避免網(wǎng)絡(luò)中緬語文本內(nèi)容顯示亂碼的問題,大多數(shù)緬語文本內(nèi)容都是以圖片形式呈現(xiàn)。這對(duì)于開展面向緬甸語的自然語言處理、機(jī)器翻譯和信息檢索等研究帶來較大的困難。雖然結(jié)合深度學(xué)習(xí)的方法在中英文圖像文本識(shí)別任務(wù)中已經(jīng)取得了非常可觀的效果,但由于緬甸語字符的特殊性,目前還沒有關(guān)于緬甸語光學(xué)字符識(shí)別(Optical character recognition,OCR)研究方面的相關(guān)成果,因此開展緬甸語OCR研究具有非常重要的理論和實(shí)際應(yīng)用價(jià)值。
光學(xué)字符識(shí)別通常用于識(shí)別圖像中的自然語言。對(duì)于文本字符識(shí)別的早期工作,例如Ander?son[1]主要將圖像轉(zhuǎn)換為結(jié)構(gòu)化語言或標(biāo)記,這些結(jié)構(gòu)化語言或標(biāo)記定義了文本本身及其現(xiàn)有語義。之后,在英語[2?3]、漢語[4?6]、德語[7]、阿拉伯語[8]、馬拉雅拉姆語[9]和印地語[10]等OCR技術(shù)達(dá)到高識(shí)別率的相關(guān)報(bào)導(dǎo)陸續(xù)出現(xiàn)。利用卷積神經(jīng)網(wǎng)絡(luò)模型進(jìn)行文本圖像識(shí)別的相關(guān)工作有很多,例如文獻(xiàn)[11]首次嘗試對(duì)單個(gè)字符進(jìn)行檢測(cè),然后利用深度卷積神經(jīng)網(wǎng)絡(luò)模型對(duì)這些檢測(cè)到的特征進(jìn)行識(shí)別,并用標(biāo)記后的圖像進(jìn)行訓(xùn)練,但是該方法需要預(yù)先訓(xùn)練魯棒的字符檢測(cè)器,這樣增加了文本圖像識(shí)別任務(wù)的計(jì)算復(fù)雜度。而且緬甸語中的一個(gè)感受野內(nèi)通常會(huì)出現(xiàn)由多個(gè)字符嵌套組合的復(fù)雜字符,很難切分成單個(gè)字符,因此該方法不適用于緬甸語圖像文本識(shí)別任務(wù)。同時(shí)深度卷積神經(jīng)網(wǎng)絡(luò)[12?13]只能處理固定的輸入和輸出維度,但是緬甸語序列的長(zhǎng)度變化相當(dāng)大,例如,漢語“現(xiàn)在”的緬甸語翻譯為“”是由2個(gè)字符組成,而漢語“第二”的緬甸語翻譯為“”是由11個(gè)字符組成,所以基于深度卷積神經(jīng)網(wǎng)絡(luò)的工作還不能直接用于基于緬甸語圖像的序列識(shí)別任務(wù)。利用循環(huán)神經(jīng)網(wǎng)絡(luò)(Re?current neural network,RNN)模型做圖像文本識(shí)別任務(wù)也有一些相關(guān)的工作,然而在RNN處理序列之前,必須先將輸入圖像轉(zhuǎn)換成圖像特征序列。例如,Graves等[14]從手寫文本中提取了一系列圖像或幾何特征,而Su等[15]將字符圖像轉(zhuǎn)換為一系列方向梯度直方圖(Histogram of oriented gradient,HOG)特征。因此,目前基于循環(huán)神經(jīng)網(wǎng)絡(luò)的方法很難直接用于緬甸語光學(xué)字符識(shí)別。
緬甸語與中文或者英文不同,在一個(gè)感受野內(nèi)英文字母或中文字由單個(gè)Unicode編碼組成,然而緬甸語在1個(gè)感受野內(nèi)可能由2個(gè)或者3個(gè)Unicode編碼組成。例如,在圖1(a)中,緬甸語“”在感受野中由3個(gè)字符“”(/u107f),“”(/u1015)和“”(/u102e)組成,但是在圖1(b)中,感受野中的英語“n”由一個(gè)字符“n”(/u006e)組成。緬甸語OCR任務(wù)不僅受到圖像中的背景噪聲、光照和圖片質(zhì)量等因素影響,還更難解決緬甸語多個(gè)字符嵌套組合的復(fù)雜字符的識(shí)別問題。在這種情況下,導(dǎo)致緬甸語OCR任務(wù)難度更大。目前比較主流的方法是Shi等[16]提出的卷積循環(huán)神經(jīng)網(wǎng)絡(luò)(Convolutional recurrent neural network,CRNN)方法和Luo等[17?18]提出的Attention方法,它能端到端地有效解決英文序列識(shí)別問題,在英文識(shí)別方面達(dá)到了一定的效果。但是這些方法只能解決一個(gè)感受野內(nèi)一個(gè)字符的識(shí)別問題,當(dāng)處理緬甸文多個(gè)字符嵌套組合的復(fù)雜字符時(shí)識(shí)別準(zhǔn)確率降低。因此本文提出了基于知識(shí)蒸餾的緬甸語OCR方法,構(gòu)建教師網(wǎng)絡(luò)和學(xué)生網(wǎng)絡(luò)進(jìn)行集成學(xué)習(xí)的網(wǎng)絡(luò)框架,通過教師網(wǎng)絡(luò)來指導(dǎo)學(xué)生網(wǎng)絡(luò),將來自教師的不同緬甸語組合字符和單字符特征知識(shí)提取到學(xué)生網(wǎng)絡(luò)中,使學(xué)生網(wǎng)絡(luò)能夠?qū)W習(xí)到緬甸語組合字符的識(shí)別優(yōu)點(diǎn),從而解決復(fù)雜的緬甸文多字符組合詞難以識(shí)別和提取的問題。
圖1 1個(gè)感受野內(nèi)不同語言的字符結(jié)構(gòu)Fig.1 Structure of characters in different languages in a receptive field
緬甸語不同于一般的語言,具有非常復(fù)雜的字符空間組合結(jié)構(gòu),在計(jì)算機(jī)提取圖像上的語言特征時(shí)非常困難。所以本文分析了緬甸語語言特征,利用基于知識(shí)蒸餾的緬甸語OCR方法,將教師網(wǎng)絡(luò)提取到的單字符和多個(gè)字符嵌套組合的復(fù)雜字符特征對(duì)學(xué)生網(wǎng)絡(luò)對(duì)應(yīng)相同的位置字符信息進(jìn)行特征增強(qiáng),從而提高整句話的識(shí)別準(zhǔn)確率。由于目前沒有公開的緬甸圖像文本識(shí)別數(shù)據(jù),所以本文構(gòu)造了緬甸語OCR模型訓(xùn)練測(cè)試的數(shù)據(jù)集。
緬甸語音節(jié)字符構(gòu)成結(jié)構(gòu)與其他語言存在較大差異,具有基礎(chǔ)字符、基礎(chǔ)前字符、基礎(chǔ)后字符、基礎(chǔ)上字符和基礎(chǔ)下字符,每個(gè)音節(jié)邊界以基本輔音開頭。緬甸語有33個(gè)輔音,輔音與元音結(jié)合,有時(shí)包含中音節(jié),從而構(gòu)成完整的緬甸語音節(jié)。此外,它在音節(jié)和單詞之間沒有分隔符,只有根據(jù)緬甸語的字符規(guī)則編碼順序,才能獲得正確的緬甸語句子。這樣就會(huì)引起相應(yīng)的問題,當(dāng)計(jì)算機(jī)提取圖像特征時(shí),1個(gè)感受野中可能包含多個(gè)字符,這增加了緬甸語OCR識(shí)別復(fù)雜度,而這種復(fù)雜字符在緬甸句子對(duì)中占大多數(shù)。
本文通過網(wǎng)站(www.nmdc.edu.mm)收集了120萬個(gè)緬甸語句子。例如:“”“”。然后,利用緬甸語片段切分工具將緬甸語音節(jié)和句子切成長(zhǎng)序列緬甸語段文本數(shù)據(jù)。例如,漢語語義“論壇參會(huì)者”對(duì)應(yīng)的緬語是“”,分段后的緬語表示為“”“”和“”。根據(jù)緬甸語的語言特點(diǎn),對(duì)分段后的緬甸語文本數(shù)據(jù)進(jìn)行人工分割成單字符和多個(gè)字符嵌套組合的復(fù)雜字符的緬甸語,并且保留其位置信息。
利用文本生成圖像工具,將文本數(shù)據(jù)隨機(jī)生成分辨率為10像素×5像素~500像素×300像素的含有背景噪音與不含有背景噪音的緬甸語圖像,從而構(gòu)造出訓(xùn)練任務(wù)所需的Zawgyi?One字體緬甸語圖像,將其作為訓(xùn)練集、測(cè)試集和評(píng)估集數(shù)據(jù)。
若干個(gè)緬甸語音節(jié)構(gòu)成一句緬甸語句子,一個(gè)緬甸語音節(jié)的Unicode編碼可以分為5部分[19]:<輔音><元音><聲調(diào)><韻母>和<中音>。這5個(gè)部分中只有輔音總是存在,在任何給定的音節(jié)中,一個(gè)或多個(gè)其他部分可能是空的。在實(shí)際中,元音可以顯示在輔音之前,但是元音字符編碼在輔音字符編碼之后,例如“”,但是它的編碼為(/u1000)(緬甸字母“”)(/u1031)(緬甸元音符號(hào)“”),所以需要對(duì)音節(jié)重新排序以進(jìn)行歸類,因?yàn)樽詈?個(gè)音節(jié)的優(yōu)先級(jí)高于元音。因此,按照緬甸語Unicode編碼算法順序:<輔音><聲調(diào)><元音><韻母>和<中音>對(duì)緬甸語圖像進(jìn)行規(guī)則性標(biāo)注。
本文提出模型架構(gòu)如圖2所示。圖中的網(wǎng)絡(luò)架構(gòu)由教師網(wǎng)絡(luò)和學(xué)生網(wǎng)絡(luò)兩部分組成,其中KD Loss表示知識(shí)蒸餾損失,其余的變量說明請(qǐng)見下文。利用單字符和嵌套組合字符的訓(xùn)練集來訓(xùn)練教師網(wǎng)絡(luò)解決單個(gè)感受野內(nèi)嵌套組合字符識(shí)別問題,利用長(zhǎng)序列字符圖像數(shù)據(jù)集來訓(xùn)練學(xué)生網(wǎng)絡(luò)解決長(zhǎng)序列字符識(shí)別問題。在訓(xùn)練過程中,學(xué)生網(wǎng)絡(luò)與教師集成的子網(wǎng)絡(luò)進(jìn)行耦合,根據(jù)教師集成產(chǎn)生的組合字符特征和真實(shí)性標(biāo)簽對(duì)學(xué)生模型的參數(shù)進(jìn)行優(yōu)化,以此增強(qiáng)學(xué)生網(wǎng)絡(luò)對(duì)緬甸語組合字符特征的提取,解決了緬甸語組合字符進(jìn)入網(wǎng)絡(luò)后容易被計(jì)算機(jī)誤判,導(dǎo)致識(shí)別準(zhǔn)確率低的問題。以下各節(jié)將詳細(xì)地介紹學(xué)生網(wǎng)絡(luò)、教師網(wǎng)絡(luò)以及集成知識(shí)蒸餾的網(wǎng)絡(luò)訓(xùn)練。
圖2 緬甸語OCR模型網(wǎng)絡(luò)框架圖Fig.2 Network framework diagram of Burmese OCR model
2.1.1 緬甸語圖像特征向量序列的提取與標(biāo)注
本文采用了深度卷積神經(jīng)網(wǎng)絡(luò)模型中的卷積層、最大池化層和刪除全連接層來構(gòu)造適應(yīng)緬甸語圖像數(shù)據(jù)的卷積神經(jīng)網(wǎng)絡(luò),所有的權(quán)重共享連接。同時(shí)在基于VGG?VeryDeep[20]架構(gòu)的基礎(chǔ)上構(gòu)建了適應(yīng)緬甸語OCR任務(wù)需求的深度卷積神經(jīng)網(wǎng)絡(luò)模型組件,在第3個(gè)和第4個(gè)最大池化層中采用1×2大小的矩形池化窗口,用以產(chǎn)生寬度較大的特征圖,從而產(chǎn)生比較長(zhǎng)的緬甸語的特征序列。本文設(shè)置輸入的緬甸圖像生成30幀的特征序列,特征序列的每個(gè)特征向量在特征圖上從左到右逐列生成,使所有特征圖的第x列映射到第x個(gè)特征向量上,從而保證圖像上的信息全部轉(zhuǎn)移到特征向量上。
本文選擇雙向長(zhǎng)短期記憶網(wǎng)絡(luò)(Bi?directional long short?term memory,BiLSTM)來處理深度卷積神經(jīng)網(wǎng)絡(luò)中獲得的特征向量序列,從而獲得特征的每個(gè)列的概率分布,即預(yù)測(cè)從前一層卷積提取的特征序列X=x1,…,xT中每個(gè)幀xt的標(biāo)簽分布yt。使用長(zhǎng)短期記憶網(wǎng)絡(luò)(Long short?term memory,LSTM)用于解決傳統(tǒng)的RNN單元梯度消失的問題。LSTM由輸入、輸出和遺忘門組成。存儲(chǔ)單元的作用是存儲(chǔ)過去的上下文,同時(shí)輸入和輸出門允許單元較長(zhǎng)時(shí)間地保存到輸入緬甸語圖像中的上下文信息,并且單元里保存到的信息又可以被遺忘門刪除。在提取的緬甸語圖像特征序列中,不同方向的上下文信息具有互補(bǔ)作用,遇到一些模糊的字符在觀察其上下文時(shí)更容易區(qū)分。例如:當(dāng)遇到相似字符“”時(shí),不會(huì)識(shí)別成“”或者“”,這樣可以使識(shí)別精度更加準(zhǔn)確。因?yàn)長(zhǎng)STM通常是定向的,訓(xùn)練時(shí)只利用到過去的上下文信息,所以本文方法選用了BiLSTM,將向前向后的2個(gè)LSTM組合成1個(gè)BiLSTM,并且可以疊加多次,進(jìn)而提升實(shí)驗(yàn)效果。同時(shí)BiLSTM能夠從頭到尾對(duì)任意長(zhǎng)度的序列進(jìn)行操作,這樣就可以處理字符較多的緬甸語句子。
訓(xùn)練循環(huán)神經(jīng)網(wǎng)絡(luò)期間,當(dāng)循環(huán)神經(jīng)網(wǎng)絡(luò)接收到特征序列中的幀xt時(shí),使用非線性函數(shù)來更新yt,非線性函數(shù)同時(shí)接收當(dāng)前輸入xt和過去狀態(tài)yt-1作為RNN的輸入,即:yt=g(xt,yt-1)。在BiLSTM的底部,產(chǎn)生具有偏差的序列將會(huì)連接成映射,將緬甸語圖像的特征映射轉(zhuǎn)換為特征序列,然后再反轉(zhuǎn)并反饋到卷積層;也就是說,輸出結(jié)果將會(huì)被送回到輸入,之后在下一個(gè)時(shí)刻和下一個(gè)輸入同時(shí)使用,這樣就形成了卷積神經(jīng)網(wǎng)絡(luò)和循環(huán)神經(jīng)網(wǎng)絡(luò)之間聯(lián)系橋梁。
2.1.2 轉(zhuǎn)錄
轉(zhuǎn)錄是將RNN所做的每幀預(yù)測(cè)轉(zhuǎn)換成標(biāo)簽序列的過程。對(duì)于RNN得到的每幀預(yù)測(cè)的標(biāo)簽分布,本文依托Graves等[21]提出的聯(lián)接時(shí)間分類(Connectionist temporal classification,CTC)計(jì)算出所有的標(biāo)簽序列概率。
定義符號(hào)“-”作為空白符加入到緬甸語字符集合中,從而用“-”填充RNN得到的每幀預(yù)測(cè)的標(biāo)簽分布中沒有字符的位置。另外還定義了f變換,用以刪除空白字符集合變換成真實(shí)輸出。f變換的作用為:把連續(xù)的相同字符刪減為1個(gè)字符并刪去空白符,但是如果相同字符間有“-”符號(hào)的則把“-”符號(hào)刪除,然后保留相同的字符。
例子中π∈Q′T,Q′=Q∪{-},這里Q包含了訓(xùn)練中的所有緬甸語標(biāo)注好的正確標(biāo)簽。計(jì)算出所有的標(biāo)簽序列概率后,在輸入y=y1,...,yT的情況下,輸出為q的標(biāo)簽序列概率為
式中:T為序列長(zhǎng)度;輸入y為T×n的后驗(yàn)概率矩陣,n為緬甸文字符數(shù)為時(shí)刻t時(shí)有標(biāo)簽πt的概率,使用文獻(xiàn)[21]中描述的前向后向算法可以計(jì)算存在指數(shù)級(jí)數(shù)量的求和項(xiàng)的方程p(π|y)。
如果詞典較大時(shí),對(duì)整個(gè)詞典進(jìn)行搜索非常費(fèi)時(shí),所以選用了基于最近鄰候選目標(biāo)的方式來選取最大的標(biāo)簽序列概率所對(duì)應(yīng)的標(biāo)簽序列作為圖像中每一幀的緬甸語最終的預(yù)測(cè)結(jié)果,即
式中:Mδ(q′)為最近鄰候選目標(biāo)(可以使用BK樹數(shù)據(jù)結(jié)構(gòu)[22]快速有效地找到);δ為最大編輯距離;q′為在沒有詞典的情況下輸入為y轉(zhuǎn)錄的序列。
本文的教師網(wǎng)絡(luò)模塊由多個(gè)CNN+RNN+CTC模型組成。教師子網(wǎng)使用與學(xué)生網(wǎng)絡(luò)位置信息對(duì)應(yīng)的緬甸語單字符和組合字符圖像作為網(wǎng)絡(luò)輸入,以便在最后的卷積層產(chǎn)生不同的特征表示。教師網(wǎng)絡(luò)最后產(chǎn)生與目標(biāo)類有關(guān)的輸入數(shù)據(jù)的概率分布,如圖2中B部分所示。
由于緬甸語單字符和組合字符是有一定規(guī)則數(shù)量限制的,因此教師網(wǎng)絡(luò)選用基于詞典的轉(zhuǎn)錄方式更加準(zhǔn)確便捷,詞典是一組標(biāo)簽序列,當(dāng)預(yù)測(cè)緬甸語圖像識(shí)別結(jié)果時(shí)將會(huì)受到拼寫檢查字典的約束。在基于詞典的情況下,選取最大的標(biāo)簽序列概率所對(duì)應(yīng)的標(biāo)簽序列作為最終的預(yù)測(cè)結(jié)果,即
式中D為詞典。
采用知識(shí)蒸餾方法將教師學(xué)習(xí)到的對(duì)齊片段的單字符和組合字符特征對(duì)學(xué)生模型的參數(shù)進(jìn)行優(yōu)化指導(dǎo),使學(xué)生網(wǎng)絡(luò)能夠強(qiáng)化學(xué)習(xí)到緬甸語組合字符的識(shí)別,從而提高整體緬甸語句子識(shí)別的準(zhǔn)確率。將圖像和標(biāo)簽(x′,y′)∈(X′,Y′)組成訓(xùn)練的數(shù)據(jù)集,其中每個(gè)樣本屬于K個(gè)類(Y′=1,2,…,K),教師網(wǎng)絡(luò)輸入的單字符或者組合字符圖像位置與學(xué)生網(wǎng)絡(luò)所輸入的單字符或者組合字符圖像具有相同的位置信息。為了學(xué)習(xí)映射fs(x):X′→Y′,本文通過fs(x′,θ*)訓(xùn)練學(xué)生網(wǎng)絡(luò)的參數(shù),其中θ*是通過最小化訓(xùn)練目標(biāo)函數(shù)Ltrain獲得的學(xué)習(xí)參數(shù),表達(dá)式為
本文的訓(xùn)練函數(shù)是3個(gè)損失項(xiàng)的加權(quán)組合。教師網(wǎng)絡(luò)和學(xué)生網(wǎng)絡(luò)的損失值分別用LCET和LCES表示,真實(shí)標(biāo)簽用y′表示,知識(shí)蒸餾損失值用LKD表示,知識(shí)蒸餾損失值與教師集成子網(wǎng)絡(luò)的輸出和學(xué)生模型的輸出相匹配,即
式中PT=ft(x)和PS=fs(x)分別表示教師網(wǎng)絡(luò)和學(xué)生模型中圖像對(duì)應(yīng)緬甸語單字符和組合字符字符所在相同感受野內(nèi)輸出yt等時(shí)刻所對(duì)應(yīng)的映射函數(shù)概率,通過計(jì)算損失值來優(yōu)化學(xué)生模型的權(quán)重與參數(shù),從而實(shí)現(xiàn)教師網(wǎng)絡(luò)對(duì)學(xué)生網(wǎng)絡(luò)的圖像特征增強(qiáng)。α∈[0,0.5,1]、β∈[0,0.5,1]和γ∈[0,0.5,1]是平衡單個(gè)損失項(xiàng)的超參數(shù)。從數(shù)學(xué)上講,交叉熵?fù)p失值可以寫成
式中:η為指示函數(shù);為教師網(wǎng)絡(luò)對(duì)應(yīng)單字符或者組合字符的輸出概率;為學(xué)生網(wǎng)絡(luò)與教師網(wǎng)絡(luò)輸出yt等對(duì)應(yīng)位置時(shí)刻單字符或者組合字符SoftMax輸出概率;LKD由散度損失值LKL和均方誤差損失值LMSE組成,即有
式中W是一個(gè)溫度超參數(shù),它控制教師子網(wǎng)絡(luò)輸出的軟化。W值越大,目標(biāo)類上的概率分布越軟。LKL公式為
在緬甸語場(chǎng)景文本識(shí)別任務(wù)上,對(duì)所提出的基于知識(shí)蒸餾的緬甸語圖像文本識(shí)別方法的有效性進(jìn)行了評(píng)估。本文在構(gòu)造的緬甸語圖像數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn)。
實(shí)驗(yàn)涉及以下6個(gè)可用的緬甸語圖像數(shù)據(jù)集,所采用的實(shí)驗(yàn)數(shù)據(jù)來自網(wǎng)絡(luò)采集的緬甸語文本數(shù)據(jù)隨機(jī)生成分辨率為10像素×5像素~500像素×300像素的圖像數(shù)據(jù)集。選用了80萬張含有噪聲的緬甸語場(chǎng)景文本圖像作為評(píng)估數(shù)據(jù)集和80萬張含有噪聲的緬甸語場(chǎng)景文本圖像作為測(cè)試數(shù)據(jù)集,數(shù)據(jù)集內(nèi)的圖像為“.jpg”格式,對(duì)應(yīng)的數(shù)據(jù)標(biāo)簽為緬甸語圖像內(nèi)對(duì)應(yīng)的文本信息,如表1所示。神經(jīng)網(wǎng)絡(luò)訓(xùn)練前將數(shù)據(jù)保存為tfrecord格式以提升數(shù)據(jù)讀取速率。訓(xùn)練數(shù)據(jù)集內(nèi)包含以下6種緬甸語圖像數(shù)據(jù)集。
表1 數(shù)據(jù)集格式及對(duì)應(yīng)標(biāo)簽示例Table 1 Example of data set format and correspond?ing label
數(shù)據(jù)集1該數(shù)據(jù)集包含600萬張無背景噪聲的長(zhǎng)序列的訓(xùn)練緬甸語圖像數(shù)據(jù)集,例如“”“”“”。
數(shù)據(jù)集2該數(shù)據(jù)集圖像為與數(shù)據(jù)集1中每張圖像的位置特征信息一一對(duì)應(yīng)的短序列的單字符緬甸語訓(xùn)練數(shù)據(jù)集。例如:數(shù)據(jù)集1中“”第6個(gè)字符“”對(duì)應(yīng)的圖像為“”;“”中第7個(gè)字符“”對(duì)應(yīng)的圖像為“”,將“”“”等圖像作為數(shù)據(jù)集2。
數(shù)據(jù)集3該數(shù)據(jù)集圖像為與數(shù)據(jù)集1中每張圖像的位置特征信息一一對(duì)應(yīng)的短序列的組合字符緬甸語訓(xùn)練數(shù)據(jù)集。例如:數(shù)據(jù)集1中“”第1個(gè)和第2個(gè)字符的組合字符“”對(duì)應(yīng)的圖像為“”;“”中第8個(gè)、第9個(gè)與第10個(gè)的字符的組合字符“”對(duì)應(yīng)的圖像為“”,將“”“”等圖像作為數(shù)據(jù)集3。
數(shù)據(jù)集4該數(shù)據(jù)集包含600萬張具有背景噪聲的長(zhǎng)序列訓(xùn)練緬甸語圖像數(shù)據(jù)集。例如“”“”和“”。
數(shù)據(jù)集5該數(shù)據(jù)集圖像為與數(shù)據(jù)集4中每張圖像的位置特征信息一一對(duì)應(yīng)的單字符緬甸語訓(xùn)練數(shù)據(jù)集。例如:數(shù)據(jù)集4中“”第8個(gè)字符“”對(duì)應(yīng)的圖像為“”;“”第1個(gè)字符“”對(duì)應(yīng)的圖像“”,將“”“”等圖像作為數(shù)據(jù)集5。
數(shù)據(jù)集6該數(shù)據(jù)集圖像為與數(shù)據(jù)集4中每張圖像的位置特征信息一一對(duì)應(yīng)的短序列組合字符緬甸語訓(xùn)練數(shù)據(jù)集,例如:數(shù)據(jù)集4中“”第2個(gè)、第3個(gè)與第4個(gè)字符的組合字符“”對(duì)應(yīng)的圖像為“”,第6個(gè)與第7個(gè)字符的組合字符“”對(duì)應(yīng)的圖像為“”,將“”“”等圖像作為數(shù)據(jù)集6。
本文的實(shí)驗(yàn)基于Tensorflow框架實(shí)現(xiàn),服務(wù)器配置配置為Intel(R)Xeon(R)Gold 6132 CPU@2.60 GHz,NVIDIA Corporation GP100GL GPU。
實(shí)驗(yàn)中嚴(yán)格按照標(biāo)準(zhǔn)評(píng)價(jià)指標(biāo)單字符(Per char,PC)和全序列(Full sequence,F(xiàn)S)精確率的公式為
式中:PC、CS和SN分別代表每個(gè)字符的準(zhǔn)確率、正確的字符總數(shù)和所有字符的總數(shù);FS、SL和LN分別代表全序列精確率、正確的序列數(shù)和序列總數(shù)。
在確保其他變量都一致的情況下,對(duì)比模型參數(shù)均基于原給出的超參數(shù)設(shè)置。在沒有噪音的緬甸語圖像情況下進(jìn)行了實(shí)驗(yàn)1與實(shí)驗(yàn)2。
實(shí)驗(yàn)1首先選用數(shù)據(jù)集1作為學(xué)生網(wǎng)絡(luò)的訓(xùn)練數(shù)據(jù),數(shù)據(jù)集3作為教師網(wǎng)絡(luò)的訓(xùn)練數(shù)據(jù)進(jìn)行了實(shí)驗(yàn),對(duì)比實(shí)驗(yàn)的訓(xùn)練集為數(shù)據(jù)集1和數(shù)據(jù)集3的總和,識(shí)別結(jié)果如表2所示。
從表2實(shí)驗(yàn)結(jié)果可以看出:采用“CNN+BLSTM+CTC”方法的單字符的準(zhǔn)確率、全序列精確率分別為87.2%和85.1%,采用“CNN+BLSTM+Attention”方法單字符的準(zhǔn)確率、全序列精確率分別為88.1%和82.3%,本文方法在單字符的準(zhǔn)確率、全序列精確率最好效果達(dá)到了91.5%和88.5%。實(shí)驗(yàn)中將教師網(wǎng)絡(luò)學(xué)習(xí)到對(duì)齊片段的緬甸語組合字符特征對(duì)學(xué)生網(wǎng)絡(luò)進(jìn)行優(yōu)化,從而對(duì)學(xué)生網(wǎng)絡(luò)具有緬甸語組合字符的位置信息進(jìn)行了特征增強(qiáng),使多個(gè)字符嵌套組合的復(fù)雜字符識(shí)別準(zhǔn)確率提高。對(duì)比實(shí)驗(yàn)中雖然在處理識(shí)別單字符方面比較擅長(zhǎng),但是在識(shí)別緬甸語組合字符時(shí)會(huì)產(chǎn)生誤判或者輸出字符順序錯(cuò)亂等結(jié)果,所以導(dǎo)致識(shí)別準(zhǔn)確率低于本文的值。
表2 訓(xùn)練集為數(shù)據(jù)集1和3時(shí)的識(shí)別結(jié)果Table 2 Recognition results with the training set of datasets 1 and 3 %
實(shí)驗(yàn)2選用數(shù)據(jù)集1作為學(xué)生網(wǎng)絡(luò),數(shù)據(jù)集2數(shù)據(jù)集3作為教師網(wǎng)絡(luò)的訓(xùn)練數(shù)據(jù)進(jìn)行了實(shí)驗(yàn),對(duì)比實(shí)驗(yàn)的訓(xùn)練集為數(shù)據(jù)集1、2、3的總和,識(shí)別結(jié)果如表3所示。
從表3可見,增加了數(shù)據(jù)集2后,與表2相比模型識(shí)別結(jié)果均有所提升,本文方法在單字符的準(zhǔn)確率、全序列精確率分別提升了3%和1.6%。因?yàn)閿?shù)據(jù)集2包含了位置特征的短序列的單字符緬甸語,實(shí)現(xiàn)學(xué)生網(wǎng)絡(luò)中單個(gè)感受野對(duì)應(yīng)的局部字符圖像特征與教師網(wǎng)絡(luò)單字符圖像特征的對(duì)齊,以此增強(qiáng)長(zhǎng)序列字符圖像中單字符特征的獲取,從而提高了模型的準(zhǔn)確性。
表3 訓(xùn)練集為數(shù)據(jù)集1、2和3時(shí)的識(shí)別結(jié)果Table 3 Recognition results with training set of da?tasets 1,2 and 3 %
以上訓(xùn)練數(shù)據(jù)集是在不含有背景噪音的情況下進(jìn)行模型訓(xùn)練,在處理實(shí)際生活中具有背景噪音的緬甸語圖像時(shí)識(shí)別效果就會(huì)較差,為此本文在訓(xùn)練數(shù)據(jù)使用具有背景圖像的情況下進(jìn)行了實(shí)驗(yàn)3,以此來提高模型在應(yīng)對(duì)不同場(chǎng)景下的緬甸語圖像識(shí)別。
實(shí)驗(yàn)3將數(shù)據(jù)集4作為學(xué)生網(wǎng)絡(luò)的訓(xùn)練數(shù)據(jù),數(shù)據(jù)集5、6作為教師網(wǎng)絡(luò)的訓(xùn)練數(shù)據(jù),在該情況下選用數(shù)據(jù)集4+5,數(shù)據(jù)集4+6和數(shù)據(jù)集4+5+6分別進(jìn)行了1組實(shí)驗(yàn)。對(duì)比實(shí)驗(yàn)的訓(xùn)練集為所對(duì)應(yīng)數(shù)據(jù)集的總和,識(shí)別結(jié)果如表4所示。
表4 具有背景噪聲的情況下每個(gè)字符準(zhǔn)確率和全序列準(zhǔn)確率的實(shí)驗(yàn)結(jié)果Table 4 Experimental results of accuracy of per character and accuracy of full sequence with background noise %
從表4中可以觀察到,在訓(xùn)練集使用具有背景噪聲圖像比使用無背景噪聲圖像時(shí)識(shí)別精度更準(zhǔn)確。在該情況下,本文實(shí)驗(yàn)在采用數(shù)據(jù)集4+5+6時(shí),即在同時(shí)考慮單字符和組合字符特征以及添加背景噪聲因素后,模型達(dá)到了最好的效果。
實(shí)驗(yàn)訓(xùn)練數(shù)據(jù)集的大小也有可能影響模型識(shí)別圖像的準(zhǔn)確度,所以通過更改實(shí)驗(yàn)數(shù)據(jù)集的大小來比較測(cè)試結(jié)果,該數(shù)據(jù)集大小為學(xué)生網(wǎng)絡(luò)訓(xùn)練集大小,教師網(wǎng)絡(luò)訓(xùn)練集數(shù)量不計(jì)入其中,即與學(xué)生網(wǎng)絡(luò)輸入圖像每張圖像所對(duì)應(yīng)的對(duì)齊片段特征的緬甸語單字符或者組合字符圖像,但是教師網(wǎng)絡(luò)訓(xùn)練集依然參與教師網(wǎng)絡(luò)訓(xùn)練。單字符和全序列句子識(shí)別準(zhǔn)確率結(jié)果如圖3,4所示。
圖3 不同數(shù)據(jù)集大小的單字符準(zhǔn)確率Fig.3 Accuracy of per character for different sizes of datasets
圖4 不同數(shù)據(jù)集大小的全序列句子準(zhǔn)確率Fig.4 Accuracy of full sequence sentences with dif?ferent sizes of datasets
通過實(shí)驗(yàn)結(jié)果可以得出結(jié)論,使用深度學(xué)習(xí)方法時(shí)訓(xùn)練模型數(shù)據(jù)集的大小會(huì)影響實(shí)驗(yàn)效果,并且通過實(shí)驗(yàn)比較分析結(jié)果可以看出,當(dāng)訓(xùn)練數(shù)據(jù)集到600萬張圖片時(shí),隨著訓(xùn)練數(shù)據(jù)的提升,準(zhǔn)確值提升不再明顯,所以可以取600萬訓(xùn)練數(shù)據(jù)來訓(xùn)練最優(yōu)模型。
針對(duì)緬甸語圖像中1個(gè)感受野內(nèi)多個(gè)字符嵌套組合的復(fù)雜字符難以提取識(shí)別的問題,提出了一種基于知識(shí)蒸餾的緬甸語OCR方法,根據(jù)緬甸語文字特點(diǎn),構(gòu)建了適應(yīng)緬甸語OCR任務(wù)需求的網(wǎng)絡(luò)框架。首次將基于知識(shí)蒸餾的思想運(yùn)用到緬甸語圖像文本識(shí)別研究,構(gòu)建了學(xué)生網(wǎng)絡(luò)和教師網(wǎng)絡(luò)對(duì)長(zhǎng)序列中局部特征的增強(qiáng),實(shí)現(xiàn)局部特征對(duì)齊,從而解決緬甸語嵌套組合字符識(shí)別的問題。本文構(gòu)建了訓(xùn)練網(wǎng)絡(luò)模型所需的數(shù)據(jù)集,并在該數(shù)據(jù)集的基礎(chǔ)上進(jìn)行了實(shí)驗(yàn),在沒有背景噪聲圖像與具有背景噪聲圖像作為訓(xùn)練數(shù)據(jù)的情況下,本文模型的性能分別優(yōu)于基線2.9%和2.7%。在以后的工作中,本文將融合語言模型以優(yōu)化結(jié)果,從而進(jìn)一步提高識(shí)別的準(zhǔn)確性。