?

特征分組提取融合深度網絡手寫漢字識別

2020-06-18 05:51李國強
計算機工程與應用 2020年12期
關鍵詞:手寫卷積準確率

李國強,周 賀,馬 鍇,張 露

燕山大學 河北省工業計算機控制工程重點實驗室,河北 秦皇島066004

1 引言

手寫漢字識別有聯機和脫機之分。聯機手寫漢字識別可以實時地獲取到書寫者的筆畫信息,如筆畫總數、書寫順序、書寫速度、筆畫走向等[1]。這些信息簡化了識別的難度。而脫機手寫漢字識別的難度相對加大,因為脫機手寫漢字都是靜止的二維圖像,特征提取比較困難,導致識別精度較低。

在脫機手寫漢字識別上有許多提高識別精度的傳統方法被提出,但是收效甚微。究其原因即在于:首先,漢字筆畫多,最多有32畫;其次,漢字相似性大,例如“戊”和“戌”,“已”和“己”等;此外,漢字數量多,總共50 000多漢字。最后,漢字書寫風格多變,不同人的書寫字體不同,因此識別難度自然加大[2]。

傳統的手寫漢字識別方法有多種,但是識別精度普遍較低,常用的有:隱馬爾可夫模型(Hidden Markov Model,HMM)[3]、貝葉斯分類器[4]、支持向量機(Support Vector Machine,SVM)[5]和改進的二次判別函數(Modified Quadratic Discriminant Functions,MQDF)[6]等,這些傳統方法不僅計算復雜,而且精度低,很難進行實際應用。

隨著計算機數據處理能力的提高,以及更好的非線性激活函數的出現,致使深度卷積神經網絡(Deep Convolutional Neural Networks,DCNN)在許多圖像識別和分類任務中取得了顯著的進步[7]。在過去幾年里,DCNN在手寫漢字識別上的進展大大超過了傳統的方法,取得了很大的進步。MCDNN是第一個將卷積神經網絡應用在手寫漢字識別上的網絡模型,并且誤差為4.21%。隨后,富士通公司的研究團隊利用DCNN基礎模型,在手寫漢字識別上取得94.8%的識別精度。這相比傳統的MQDF識別精度92.61%,提高了2.19%。

伴隨一些先進網絡模型的出現,例如VGGNet[8]、InceptionNet[9]、ResNet[10]等,這些先進的技術為脫機手寫漢字識別提供了良好的借鑒。

2 特征分組提取的網絡設計

傳統卷積神經網絡會存在特征提取不充分,網絡學習能力差等問題,同時隨著網絡的加深存在信息的丟失和損耗。為了解決這些問題,本文借鑒ResNet殘差網絡的優點將信息直接傳遞到輸出,從而保護了信息的完整性,來減輕信息丟失問題;將特征信息進行分組,然后分別進行特征提取,最后再將每組的信息整合在一起,增加網絡學習的多樣性。

2.1 特征分組提取模塊

本文設計的特征分組提取模塊如圖1和圖2所示。圖1網絡模塊的輸入特征圖個數為129,在進行特征分組之前,先將特征信息進行通道重排,打亂輸入特征信息的順序。

圖1 網絡模塊1

圖2 網絡模塊2

如圖3所示,以分三組為例,為增加網絡學習的多樣性,對特征信息進行分組,以不同顏色表示不同的信息,在未進行通道重排時同一組段內可能含有相同特征信息,而不同組段內的信息會不相同,如果直接進行特征分組會導致組段內的信息不完整,降低信息的表示能力。由圖可知通過通道重排能夠讓不同組段進行信息交換,使得不同組段的特征信息更加豐富。通過通道重排使得每個組內都有其他組的特征信息,這樣雖然分組后,組與組之間沒有了聯系,但是每組的信息都很全面不會丟失。然后把129個特征圖分為三組,每組43個特征,為增強網絡提取信息的多樣性,對每組分別使用不同大小的卷積核進行特征提??;當每組進行一次信息提取之后,進行一次組與組之間的信息交流融合,此時每組的特征圖從43個增加為86個;再對每組的86個特征圖進行信息提取,進一步提高網絡的學習能力;最后,將每組的信息進行合并整合,整合后的特征通道數為258個,為使之與輸入通道相一致,方便其與原始輸入信息進行殘差運算,需要使用1×1卷積對輸出通道進行降維。圖2網絡模塊的輸入特征圖個數為256,將其分為四組,每組有64個特征圖,信息交流組合的思路與圖1相同。

圖3 通道重排

2.2 下采樣和通道擴增模塊

傳統卷積神經網絡通常采用平均池化層或最大池化層來進行下采樣,可是這種方法忽略了特征信息的重要性和次要性,沒有考慮圖像的位置信息,將所有位置的特征都視為一樣。比如,一張圖像的中心區域感受野的信息比其他區域的要完整和重要,所以一張圖像不同區域對應不同的權重大小。為了避免池化層的這種模糊化效果導致準確率下降的問題,本文使用3×3和5×5的卷積核進行下采樣,讓網絡自己學習不同點的權重,并與通道擴增過程組合為一個模塊。如圖4所示,其中3×3和5×5卷積步長為2,負責下采樣;1×1卷積的步長為1,負責通道的升維和降維。

圖4 降采樣模塊

2.3 特征信息的濃縮提煉

經過分組模塊的特征提取,網絡會得到豐富的特征信息,但是這些信息之間難免會有重疊的相同信息,如果將所有特征信息都進行特征提取和分類,會造成相同的信息被反復多次提取,造成計算資源的浪費。為此,本文設計了一個特征信息融合和濃縮卷積層(Feature Fusion and Concentration Convolution,FFCConv),采用合并特征圖的方式精煉和濃縮特征信息,來解決特征信息的重疊和冗余問題。該層的輸入為4×4×510的特征圖,首先將特征信息進行通道重排,信息交流融合后將其分為A、B、C、D四組,每組特征圖數目分別為51、102、153、204。具體過程如圖5所示,對A組每張特征圖進行卷積;對B組,采用兩個合為一個進行卷積;對C組,采用三個合為一個進行卷積;對D組,采用四個合為一個進行卷積。其中卷積方式與常規卷積方式不同,采用如公式(1)所示的加權平均卷積。由于輸入都是圖6所示的4×4大小的特征圖,所以A組的加權平均卷積計算過程如公式(1)所示,其中ω代表相應位置的權值;設B組的兩個特征圖的加權平均卷積計算分別為X1和X2則B組的特征合并結果XB的計算方式如公式(4)所示。同理C組與D組的合并結果計算方式與B組的計算原理相同。這樣每組得到51個1×1的特征圖,然后將每組通道進行整合得到204個1×1的特征圖。信息通道數從原來510被濃縮整合為204。為了控制信息濃縮的程度,防止信息過度精煉而丟失重要特征信息,故本文采用圖5中的一個、兩個、三個、四個的合并方式。

圖5 特征信息的濃縮提煉

圖6 4×4大小的特征圖

經過多次實驗對比發現將圖2模塊重復使用五次,將圖3模塊重復使用兩次能使網絡性能達到最優。整體網絡配置如表1所示,其中c代表通道數,s代表步長。網絡結構中的最后一個降采樣模塊將保持通道數不變,只對圖像大小進行處理。最后,將網絡的輸出送入全連接層。雖然網絡每經過一個特征分組提取模塊,圖像大小不變,但是每次提取的圖像特征卻不同,這些豐富的圖像特征非常有助于提高圖像識別準確率。

表1 網絡配置細節

2.4 網絡優化算法

整體網絡在每個模塊的卷積層之后都加了一個批歸一化(Batch Normalization,BN)層。由于輸入數據的分布很容易發生改變,隨著網絡的加深改變會被放大,因此網絡模型為了去適應發生的改變,就要去學習這個改變的新的數據分布,這導致訓練收斂速度越來越慢。BN層可以通過規范化來防止數據分布發生改變,同時擴大輸入對損失函數的影響因子,使反向傳播的梯度變大。為了適用BN規范化后的數據和梯度變大,需要增大學習率來加快收斂速度。

假設網絡的第l層的輸入為Z[]l-1對其做標準化處理,忽略上標[l-1],則規范化過程如公式(5)~(7)所示:

其中,m是單個訓練數據集包含的樣本數,ε常值,可取ε=10-7。這樣,就使得輸入值均值為0,方差為1。但是如果強制將數據進行規范化會影響網絡原有的特征學習,導致網絡表達能力下降。為此引進兩個可調節參數γ和β,則得到公式(8)即:

式中,γ和β是可學習參數,和權重和偏置相似,使用梯度下降算法求得。通過調整γ和β的值可以改變Z的值,如令γ=,β=μ,則Z=Zi。因此參數γ和β的引入,可以使網絡得到所要學習的特征分布,使得網絡表達能力增強。

3 數據集預處理

本文選用了CASIA-HWDB(V1.1)數據集來訓練和測試所設計的神經網絡模型,數據集共包括3 755個一級漢字樣本。該數據集是采集到的原始樣本,為了提高神經網絡訓練模型的性能有必要對訓練集進行數據擴增和錯誤挑選處理。

3.1 訓練集錯誤挑選

訓練集對模型的訓練舉足輕重,為了盡量保持訓練集原始樣本和提高訓練模型性能,本文只對比較明顯的錯誤進行處理;同時為了后面訓練好模型的測試和防止發生過擬合,因此只對訓練集進行輕微處理,測試集不予改動。

訓練集錯誤的糾正只針對三種情況,如圖7所示。其中(1)為樣本分類錯誤,這種對其進行糾正,將圖片轉移到正確標簽;(2)為在字形區域外有額外干擾筆畫,這種情況將圖片進行剪切,刪除多余筆畫后放入原標簽;(3)為漢字書寫錯誤后又進行勾畫,這種樣本將被從訓練集中剔除。

圖7 需要糾正的三種樣本示例

3.2 數據增強

由于網絡的加深,有可能發生過擬合的風險,此時如果數據集較小,很容易將數據集的特點擬合掉。因此引進數據增強(Data Augmentation),防止過擬合發生的風險。首先,對訓練集原始樣本進行隨機上下翻轉;然后再對訓練集進行隨機水平左右翻轉。處理后的訓練集每個手寫漢字類別有500多張樣本圖片,這使訓練得到的模型效果更好。

4 實驗與分析

4.1 實驗參數設置

實驗數據集為CASIA-HWDB(V1.1),其包括3 755個漢字,經過數據增強處理后數據集總共有200多萬張圖片。雖然數據集的擴大有利于提高漢字識別精度,但是對計算機硬件要求也更高。為了減少計算量,統一將脫機手寫漢字圖像大小調整為64×64,然后進行圖像灰度化,將RGB三通道降為一通道的灰度圖進行訓練和測試。訓練采用隨機梯度下降算法。初始學習率值為0.1,來加快訓練衰減速度。訓練的批量大小設為128,一共迭代訓練10萬步。實驗機器為Windows 7操作系統,CPU為Intel?CoreTMi7—7820X,3.60 GHz,32 GB內存,同時使用GPU計算加速訓練過程。

4.2 實驗結果分析

模型總共訓練迭代100 000步,每100步保存一次數據,所以最終得到的模型訓練和測試的損失和準確率如圖8到圖11所示。為使得訓練模型結果最優,對實驗過程進行全程監測,根據訓練情況及時進行參數調整。將學習率設置為0.1來加快收斂速度;當訓練到40 000步時將學習率降為0.01來穩定訓練;當訓練到80 000步時將學習率設置為0.001。當訓練結束時訓練損失和測試損失分別穩定收斂到0.49和0.18;訓練準確率和測試準確率分別達到0.987 5和0.971 6。最后在訓練好的模型基礎上進行了top5實驗,得到高達99.36%的準確率。

圖8 訓練損失

圖9 訓練準確率

圖10 測試損失

圖11 測試準確率

為了說明本文所設計的加入BN優化算法的深度網絡模型的有效性,本文進行了對比實驗。首先,將本文所設計的適合脫機手寫漢字識別的網絡模型稱為CharacterNet-F FCConv;然后,用平均池化層替換本文設計的下采樣模塊,將其稱為CharacterNet-A;最后,用傳統的卷積層替換特征信息融合和濃縮卷積層FFCConv,將其稱為Character Net-B。對上述三種網絡分別進行實驗,實驗結果如表2所示??梢钥闯霰疚乃O計的特征分組提取融合的深度網絡模型Charact erNet-FFCConv比CharacterNet-A和Charac terNet-B模型的top1準確率分別提高0.71%和0.03%,由此可以說明本文設計的特征信息融合和濃縮卷積層FFCConv以及下采樣模塊的合理性和有效性。

表2中的第一個對比模型DLQDF使用傳統MQDF分類器進行分類,可以看出準確率很低。Inception和ResNet為當前比較先進的兩個網絡模型,兩者結合得到的Inception-Resnet能夠明顯提高識別準確率,可見殘差網絡結構的高效性,所以當前很多網絡模型都加入了殘差結構。文獻[12]改進殘差模型的精度與原殘差網絡相比優勢明顯,而與其他先進模型相差較多。文獻[13]的網絡模型只有5個卷積層,特征信息提取不充分,影響分類效果。文獻[14]用多個神經網絡進行訓練,然后對這多個結果取均值,這種方法工作量大,實驗很費時。文獻[15]將傳統卷積方式進行改進,采用不共享權值的卷積方式,取得了不錯的效果。

表2 不同模型的分類精度統計 %

最后,從表2中可以看出,相比于現有的部分模型,本文提出的特征分組提取融合的深度網絡在脫機手寫漢字識別準確率上具有明顯優勢。

5 結束語

本文設計的特征分組提取融合的深度網絡,其利用特征混洗、特征分組提取與再融合的方法,豐富了特征信息,提高了網絡的學習性能和表達能力;使用新的下采樣方式取代平均池化層,解決了池化層對圖像模糊化效果導致準確率下降的問題。然后,通過對特征信息的精煉和濃縮,進一步提高了網絡的分類性能。此外,網絡優化算法BN的加入加快了網絡收斂速度。

最后,雖然本文設計的網絡在脫機手寫漢字識別上表現優異,但是網絡結構比較復雜。能否在保證較高識別正確率的前提下,使網絡結構更加簡潔,以及如何與其他先進優化算法進行結合來再次優化網絡性能,值得進一步研究。

猜你喜歡
手寫卷積準確率
我手寫我心
基于3D-Winograd的快速卷積算法設計及FPGA實現
乳腺超聲檢查診斷乳腺腫瘤的特異度及準確率分析
不同序列磁共振成像診斷脊柱損傷的臨床準確率比較探討
2015—2017 年寧夏各天氣預報參考產品質量檢驗分析
抓住身邊事吾手寫吾心
卷積神經網絡的分析與設計
從濾波器理解卷積
基于集成學習的MINIST手寫數字識別
高速公路車牌識別標識站準確率驗證法
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合