【论文阅读】Attention 机制在脱机中文手写体文本行识别中的应用
論文信息:
作者: 王馨悅,董蘭芳
( 中國科學技術大學計算機科學與技術學院,合肥230027)
E-mail: wxy66@ mail. ustc. edu. cn
該方法在針對具有語義信息的CASIA-HWDB2.0-2. 2 數據集上字符準確率達到了95. 76%,比傳統的encoder-decoder 框架提升了12.83%.
關鍵詞: 文本行識別; 脫機中文手寫體; Attention 機制; LSTM
中圖分類號: TP391 文獻標識碼: A 文章編號: 1000-1220( 2019) 09-1876-05
與中文印刷體相比,手寫體字符的書寫隨意性大,缺乏規范性. 出自不同書寫者的同一類漢字在字形、結構上都會有明顯的差異; 并且相鄰漢字之間會存在粘連,增加了識別的難度. 與英文手寫體相比,漢字種類繁多,根據GB2312-80 標準,漢字共有6763 個,其中包括一級漢字3755 個,二級漢字3008 個,同樣給中文手寫體識別增加了難度.
由于近幾年深度學習不斷發展,利用深度學習實現文本行識別是一個極具潛力的研究方向,Messina R等人首次提出將MDLSTM-RNN 網絡應用到中文手寫體文本行識別,在CASIA-HWDB數據集上進行訓練,在ICDAR2013 競賽數據集上進行測試,字符準確率為83.5%.Wu Y C 等人在MDLSTM-RNN 網絡基礎上做了改進,用分離的MDLSTM-RNN 進行中文手寫體文本行識別未加語料庫的前提下準確率提升了3.14%. 可以看出利用神經網絡進行文本行識別準確率相對較低,有較大的提升空間. 但是由于漢字種類較多,目前成功應用在中文手寫體文本行識別中的神經網絡較少,因此找到合適的神經網絡去擬合大類別的離線中文手寫體文本行識別,仍然是一個值得研究的問題.
相比基于切分策略的文本行識別,利用神經網絡可以避免字符切分.,實現真正無分割端到端離線中文手寫體文本行識別. encoder-decoder是較常見的框架,廣泛應用在語音,圖像,視頻等領域.
對于離線中文手寫體,則是給定一張中文手寫體圖片,輸出對應的可編輯的中文漢字. 通過類比,我們可以將離線中文手寫體的識別看作是獲得該張圖片的描述.
基于Attention機制的encoder-decoder 比傳統的encoder-decoder 框架具有更好的識別結果; 同時也表明encoder-decoder 框架可以成功應用到大類別中文手寫體文本行識別中. 本文的網絡結構與目前成功應用到大類別中文手寫體文本行識別中的MDLSTM-RNN網絡,具有以下優點:
0.網絡結構:
基于Attention 機制的encoderdecoder框架,具體的結構為CNN + BLSTM + Attention +LSTM:
cnn用于提取特征,然后將特征圖的列向量依次輸入到BLSTM(雙向長短時記憶模型)進行編碼 ,,再將BLSTM 輸出結果結合Attention,輸入到長短期記憶模型(LSTM)中進行解碼:
模型:
輸入: 經過預處理后的離線中文手寫體圖片
輸出: 識別結果
漢字識別特征提取:
CNN 1 卷積神經網絡 CNN 由若干層卷積層、池化層和全連接層組成. 卷積神經網絡和全連接神經網絡相比,具有局部感知野、權值共享和下采樣這三個結構特性,使得卷積神經網絡提取到的特征對輸入數據的平移、旋轉、縮放都具有較高的魯棒性。
語義信息提取和編碼BILSTM:
BILSTM 雙向循環神經網絡 2 ,這個是LSTM的變種。
設計了隱藏層為256。
LSTM是對RNN(循環神經網絡)的改進,使得它可以處理一些長距離依賴,例如: 明天會下雨,記得帶傘,這里的傘的圖片信息不明確,經過語義上的學習,就知道這里有傘的概率比較大,而下雨和傘就存在長距離依賴。
BILSTM 則可以表示當前時刻的輸出不僅與前面的序列相關,還和后面的序列相關。例如: 針對中文手寫體文本行識別,假如有一張圖片的標簽為“我的筆記本壞了,我想買一個新的筆記本”. 如果使用LSTM,從前向后學習,如果“買”這個字的圖片信息不明確,根據“壞”這個字,可能學到是“修”,“扔”,“買”等. 但如果使用BLSTM,可以從后向前學習,根據“新”這個字,此時學到“買”的概率會變大. 所以針對具有語義信息的文本行,BLSTM具有更強的學習能力,
語義信息解碼LSTM:
LSTM隱藏層為512. 初始學習率為0.1
解碼的目的是將圖像特征轉換為識別結果。Vinyals O 等人3直接用LSTM 進行解碼,它是將編碼后的向量直接輸
入到LSTM 中. 即無論我們當前學習的是什么,它的輸入都是整張圖片的信息,也就是說hth^tht必須包含原始句子中的所有信息. 但是當句子比較長時,hth^tht沒辦法存放這么多信息,此時便會造成精度下降.
hth^tht是BILSTM的最終輸出,由輸出門和單元狀態共同控制。如果想深入了解具體計算過程,可以點擊這里---->>>鏈接待補充
或者自己看原論文。
軟邊緣attention
為了解決這個問題,Xu K 等人4提出了一種Attention 機制,分為Hard-Attention 和Soft-Attention,
hardAttention 也就是必須直接選定整個區域,或者不選擇;soft-attention則是可以選擇軟邊緣,例如圖中的紅點的小區域就是attention的可視化 。
在使用Attention 機制之后,每一時刻的輸入不再是整張圖片的信息,而是讓decoder 在輸入序列中自由的選取特征.
例如在圖(a)里,正在識別別“天”時,“天”所在圖片的位置的Attention 值會比較大.
attention計算方法:(選讀)
et=a(ht,{Vh,w})e_t = a(h_t,\{V_{h,w}\})et?=a(ht?,{Vh,w?})αt=softmax(et)\alpha_t = softmax(e_t)αt?=softmax(et?)zt=β({Vh,w},αt)(9)z_t =\beta (\{V_{h,w}\},\alpha_t) (9) zt?=β({Vh,w?},αt?)(9)
aaa 操作用的是Luong M T 等人5 的方法(詳細點擊–>>>鏈接待補充)Vh,wV{h,w}Vh,w表示特征圖第h行,w列組成的向量,hth_tht?表示LSTM在t時刻的輸出,softmax 表示softmax 函數,αtα_tαt?就是Attention,它表示特征圖中元素對應的權值. β 同樣采用Luong M T 等人的方法,ztz_tzt? 是decoder 的輸入.
解碼部分(選讀)
ot=tanh(W,c[ht,zt])ot = tanh( W,c[h_t,z_t]) ot=tanh(W,c[ht?,zt?])ht=LSTM(ht-1,[yt-1,ot-1])ht = LSTM( h_{t - 1},[y_{t - 1},o_{t - 1}]) ht=LSTM(ht-1?,[yt-1?,ot-1?])p(yt+1∣y1,…,yt,V)=softmax(Woutot)p( y_{t + 1} | y_1,…,y t,V) = softmax( W^{out}o_t) p(yt+1?∣y1?,…,yt,V)=softmax(Woutot?)
其中 p(yt+1∣y1,…,yt,V)p( y_{t + 1} | y_1,…,y_t,V) p(yt+1?∣y1?,…,yt?,V) 表示生成 yt+1yt + 1yt+1 的所有候選字符的概率,tanhtanhtanh 表示tanhtanhtanh激活函數,W,c 表示權重參數,向量 ztz_tzt? 和 hth_tht? 橫向連接來預測 yt+1y_{t + 1}yt+1? 的概率.
在 ttt 時刻的解碼,需要 t-1t - 1t-1 時刻解碼的輸出和編碼后
的特征圖作為輸入.首先根據公式計算特征圖中列向量對應的權重,再根據公式(9)計算出加權和,將加權和的結果作為 ttt 時刻LSTM 的輸入,最終求出 ttt 時刻生成的字符類別.
1.數據集
CASIA-HWDB2.0-2. 2 數據集.
該數據集下共有5019頁圖像,分割為52230 行和139414 個漢字,共有2703 類.52230 行又分為訓練集和測試集,其中41780 行作為訓練集,10450 行作為測試集. 并且所有圖像均為灰度圖像.
數據集獲取和下載:
CASIA-HWDB脫機手寫漢字數據集以及申請表下載
CASIA Online and Offline Chinese Handwriting Databases
預處理:
crnn的訓練是有一些技巧的,需要預處理,例如:—>> cnn+bistm+lstm的訓練技巧
算法評估方法:
由于本文采取的是端到端的識別,輸入文本行圖片,直接輸出整行的識別結果. 對于一行的識別結果,如果直接將它和標簽從前往后進行比對,這種方法計算出的正確字符數是不準確的. 所以采取了字符串編輯距離( Levenshtein Distance)來計算識別結果和標簽的相似程度. 對于兩個字符串,定義一套操作方法來把兩個不相同的字符串變得相同. 如果兩個字符串相同,那么它們的編輯距離為0; 具體的計算方式如下:
最后當識別結果和標簽兩個字符串相同時,此時的編輯距離就是識別結果中出錯的字符的數目,
訓練和迭代:
初始學習率為0.1.總共訓練了15 個迭代
含有空格標簽的字符準確率可以提升,例如:大#家#好,
用# 表示blank空格,這樣可以在一定程度上抑制前后的聯系.
6層的卷積層可能存在欠擬合的情況,而10 層的卷積層可能又存在過擬合的情況.
如果要進一步改進,可以:
將CASIA-HWDB1.0-1.2 中孤立手寫字符,轉換為帶有語義信息的中文手寫體圖片,然后再修改成合適的網絡結構重新進行訓練.
LeCun Y,Bengio Y,Hinton G. Deep learning[J]. Nature,2015,521( 7553) : 436-444. ??
Schuster M,Paliwal K K. Bidirectional recurrent neural networks[J]. IEEE Transactions on Signal Processing,1997,45 ( 11 ) :2673-2681. ??
Vinyals O,Toshev A,Bengio S, et al. Show and tell: aneural image caption generator[C]/ /Computer Vision and Pattern Recognition ( CVPR) ,2015: 3156-3164. ??
Xu K,Ba J,Kiros R, et al. Show, attend and tell: neural image caption generation with visual attention[C]//International Conferenceon Machine Learning( ICML) ,2015: 2048-2057. ??
Luong M T,Pham H,Manning C D. Effective approaches to attention-based neural machine translation[C]/ /Empirical Methods inNatural Language Processing( EMNLP) ,2015: 1412-1421. ??
總結
以上是生活随笔為你收集整理的【论文阅读】Attention 机制在脱机中文手写体文本行识别中的应用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matlab fir stm32,求一个
- 下一篇: c语言实现分治法求第K大元素(详细解释)