張寧寧,趙明冬,周 斌,馬金輝
(鄭州科技學院,河南 鄭州 460064)
由于在特殊場景中,人工抄表速度低下,同時會對工作人員的生命安全造成威脅,在此背景下,數字化、智能化、無人化數字儀表識別應運而生,并成為解決上述問題的重要手段。 為解決圖像預處理效果不理想[1]的問題,國內外學者做了很多研究,吳響軍等[2-3]提出了最小二乘支持向量機參數優化方案,后來又基于樹莓派平臺實現電子血壓計示值和水表識別,該平臺適用于電腦系統,但不滿足于實際的識別需求。 為了提高圖像識別精確度,陳英等[4]又提出了Enhanced Faster R-CNN 網絡,但該網絡僅適用于質量較好的圖像,在特殊場景下仍然缺乏魯棒性;曲超然等[5]引入注意力機制改進卷積循環神經網絡算法,可實現簡化運算和優化字符粘連的目標;吉訓生等[6]和熊勛等[7]提出的卷積神經網絡識別,對硬件資源的需求較高。 此外,王望等[8]針對雙半字符識別率較低的情況,選擇卷積神經網絡提高雙半字符的識別率和魯棒性。
在卷積神經網絡研究中,網絡的性能與復雜度有關。 特殊場景應用下,過度復雜的網絡損失率波動較大,硬件資源需求較高,會顯著降低網絡的魯棒性。為此,本文采用ReLU 激活函數和dropout 算法相結合,緩解網絡梯度消失現象;采用激活離群值去除和卷積Inception-SE 模塊,提升網絡訓練速度;采用全局池化層,防止模型過度擬合。
傳統神經網絡通過人工標注提取特征,卷積神經網絡則通過自身網絡來完成圖像特征的提取,能夠有效地精簡工作量,提升網絡總體識別速率。 首先,將電表圖像做預處理操作,便于后續提取特征;然后,將所提取出的特征壓縮降維并分類;最后,輸出網絡的識別結果。
卷積神經網絡原理如圖1 所示,該模型由輸入層、卷積層、池化層、全連接層以及輸出層組成。 輸入層將識別圖像進行數據標準化、歸一化和中心化等預處理操作,有效加快神經網絡收斂速度,縮短樣本訓練時間。 卷積層由多種卷積核組成,可提取多種特征,但多種卷積核易導致信息冗余。 因此,選取合適的激活函數,可增強提取特征和網絡非線性運算。 池化層將卷積層提取的特征壓縮并降維,能夠有效降低網絡參數及樣本訓練量,加速神經網絡的運算,防止模型過度擬合,優化神經網絡的穩定性,用以適應多種特殊應用場景。 全連接層將特征非線性組合,降低特征位置在分類中的影響。 輸出層采用歸一化進行特征分類,通過輸出多個識別概率值,最終將最大概率值所對應的標簽作為識別圖像結果。

圖1 卷積神經網絡原理
1.2.1 激活離群值去除
激活離群值去除法采用較少的校準信息,獲取合適的量化參數,從而提升模型量化速度。 由于激活函數對輸入圖像產生不同的響應,可采用闕值去除法進行動態離群值去除操作[10]。 激活離群值去除流程如圖2 所示,定義離群值百分比參數α,計算離群值闕值γ。 激活離群值清除操作簡單且耗時短,可視為圖像預處理。 激活離群值剔除具有橫跨不同網絡模型的普遍適應性,有效提高量化后模型精度。

圖2 激活離群值去除流程
1.2.2 Inception-SE 模塊
卷積 Inception-SE 模塊采用2 個3×3 的卷積核代替5×5 的卷積核[12],該模塊內各層任務簡單且不相同,能夠有效降低網絡表征學習的復雜度。Inception 模塊可增強有效特征,抑制無效特征。 經改進后,網絡可并行執行多個特征操作,形成較深的特征圖,加深網絡深度。 SE 模塊降低特征維度輸入,通過激活函數恢復到曾有維度,再通過全連接層,有效提高了卷積神經網絡表達能力。
1.2.3 ReLU 激活函數
針對復雜的特征提取,采用合適的激活函數可有效提高網絡的運算速度——ReLU 函數和Sigmoid 函數均為神經網絡常采用的激活函數。 在接近飽和區時,Sigmoid 函數變化緩慢且極易造成信息損失。ReLU 函數在某些神經元之間的輸出結果為0,可有效避免梯度消失,縮短運算周期,加快網絡收斂速度,緩解過擬合現象。
1.2.4 全局池化層
全連接層是LeNet-5 網絡中最大的網絡級,由于全連接層需將卷積和池化操作后的特征進行分類操作,故運算時間最長。 參數量影響全連接層的運算時間,為了提升總體樣本訓練速度而降低參數量,全連接層引入了全局池化層和softmax 損失函數,將多個標量映射為一個概率分布。
1.2.5 dropout 算法
神經網絡由于受噪聲干擾和模型復雜度等其他因素影響,在特殊應用場景應用中泛化能力和魯棒性較差。 選用正則化和丟棄某些無用的特征,可改善過擬合現象。 普通的正則化僅降低參數的大小,無法降低參數量。 dropout 算法可以削弱神經網絡之間的相互依賴性,從而實現高效的網絡模型訓練[14]。 依據所設概率p 判斷神經元能否被保留,丟棄部分神經元獲得新的子網絡模型。 例如,卷積神經網絡模型中存在a 個神經元,將模型取樣可得2a個子網絡,將不同子網絡進行迭代訓練,網絡最終趨于不同網絡模型的平均值。
1.2.6 訓練模型
本文輸入分割步長為1 的28×28 數字電表圖像,采用ReLu 激活函數,削弱參數之間的相互依賴性,從而縮短訓練的計算時間,提高模型的收斂速度。 算法訓練模型如圖3 所示,經過卷積層處理后,可獲得96 個28×28 圖像特征。 卷積Inception-SE 模塊中第三層和第五層構造相同而卷積核的數目不等,第三層共有4 個分支,卷積核個數分別是160,64,16,24,第五層的卷積核個數分別是256,176,32,24。

圖3 改進LeNet-5 網絡模型識別數字電表訓練模型
本實驗在Windows 10 系統Tensorflow 框架下搭建神經網絡模型,處理器為i5-1235U,內存為16 GB,顯卡為RTX2050。 通過將已積累的和ImageNet 數據庫中電表圖像進行裁剪、旋轉、拉伸、縮放以及局部加厚等處理,豐富模型原始圖像數據庫。
設置0.1%的學習速率,調整采樣數據的迭代次數以改善早期卷積神經網絡的不穩定性。 通過實驗驗證,loss 值和網絡精度對比如表1 所示,改進后網絡僅需600 次迭代訓練即可收斂,相較于原始網絡的迭代訓練減少300 次迭代訓練。
Dropout 值影響網絡識別精度效果,Dropout rate過高或者過低極易造成識別效果不佳。 不同Dropout值的識別精度如圖4 所示,當Dropout rate 為0.3%時,改進后網絡識別效果最優。

圖4 不同Dropout 值的識別精度
設定0.1%的學習速率和300 的迭代次數,在相同的特殊應用場景下分別對原網絡和改進后網絡模型進行訓練和識別驗證。 如圖5 所示,在訓練樣本數為12 000 份時,改進后網絡每份樣本訓練時間僅需0.09 s,相較于原網絡縮短0.05 s。 實驗結果表明,改進后網絡模型的綜合識別性能高于原網絡模型且能較快、精準地收集數字電表數據。

圖5 算法訓練時間對比
本文研究了卷積神經網絡LeNet-5 在數字電表識別中的應用及改進方法,改進后的模型豐富了提取特征、優化了網絡結構,也緩解了過擬合現象。 研究結果表明,對原LeNet-5 網絡改進有效,通過改進后LeNet-5 網絡模型進行測試實驗,在0.1%的學習率、600 次迭代次數以及Dropout rate 為0.3%時,改進后的網絡精度達到99.42%且Loss 值降低到0.11;在迭代次數為300 和訓練樣本數為12 000 份時,改進后網絡算法訓練時間僅耗時0.09 s。 本次研究不僅可快速、準確地獲取數字電表數據,而且針對網絡結構的改進,提出了可采用硬件采集系統提升網絡的識別精度,具體有待下步深入研究。