亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于端對端網絡模型的手寫公式識別

        2023-01-31 08:55:52管延智李梓源
        計算機應用與軟件 2022年12期
        關鍵詞:手寫特征提取準確率

        管延智 孫 浩 馮 帥 李梓源

        (北方工業(yè)大學機械與材料工程學院 北京 100144)

        0 引 言

        手寫公式識別技術在自動閱卷、拍照搜題、試題數(shù)字化等教育領域具有廣泛的應用需求。公式本身復雜的二維結構、繁多的符號、符號的相似性與含義的多樣性導致目前手寫公式識別準確率的效果并不理想。Blostein等[1]首次針對數(shù)學符號識別問題提出了符號分析和結構處理的研究方法,主要分為符號識別的早期處理、符號分割、符號空間關系確定、邏輯關系確定等步驟。近年來隨著計算機計算能力的顯著提升和大數(shù)據時代的到來,基于神經網絡的公式識別算法受到了研究者的青睞。Faure等[2]利用圖像在X、Y軸上的投影,提出一種新型的數(shù)學符號分割方法,但是其在根號上的分割往往是不成功的,而且存在等號等符號的過度分割問題。王奕松[3]利用LSTM網絡架構,構建了數(shù)學統(tǒng)計語言模型,通過改進基于坐標軸投影的符號分割方法,達到字符分割的目的,并基于外接矩形、點分布模式的特征提取,對數(shù)學解題語言中的根式、分式等做出判別來完成符號識別。而Cho等[4]在機器翻譯領域提出了端對端的方法,其具有更好的優(yōu)勢,此方法由數(shù)據驅動而不再是傳統(tǒng)的預定義方法,而且輸入序列不需要與輸出序列有嚴格的對應關系。最近的端對端模型研究也顯示了該模型可以通過注意力機制自動訓練提取手寫公式中的符號而不需要分割的優(yōu)勢。

        Zhang等[5]基于文獻[4]提出了一種基于GRU[6](Gated Recurrent Unit)的編碼器模型,并結合注意力機制可將在線手寫公式轉換為LaTeX。文獻[7]使用CNN(Convolutional Neural Networks)代替了GRU編碼器,可以實現(xiàn)離線手寫公式圖片轉換的功能。此外,Deng等[8]提出了不同的網絡模型結構,該模型使用CNN和多層RNN(Recurrent Neural Network)作為編碼器,利用基于注意力機制的LSTM作為解碼器,該模型在IM2LATEX-100K數(shù)據集上測試并取得了良好的性能,并證實在識別手寫公式方面也有較好的性能[9]。后來Wang等[10]改進了文獻[8]模型,利用Dense-net[11]來作為CNN編碼,并通過聯(lián)合圖像通道與空間上的注意力機制[12]增強了注意力。Zhang等[13]將原圖像大小增大兩倍并使用雙關注機制,從而提升了性能。

        本文基于端對端網絡架構,提出一種手寫公式識別網絡模型,在CNN編碼采用稠密連接塊(Dense-net)的結構,獲取深度特征,并建立不同感受野來對手寫公式圖片進行大小特征提取,把握更多的全局信息。在RNN解碼采用雙向GRU,每一層中使用的雙向單元使得RNN網絡可以從符號之間的正向和反向捕獲上下文,有助于捕獲更復雜的語言語義。該網絡可以獲取不同特征,緩解了多次卷積后特征圖分辨率較低導致部分文本缺失問題,并且能夠更好地把握提取特征之間地前后關系,從而更好地識別手寫公式。

        1 網絡模型

        端到端網絡模型(encoder-decoder),也稱為序列到序列結構(seq2seq),已成功應用于圖像處理和文本處理這兩個領域的交集。用于此類應用的編碼器通常是卷積神經網絡(CNN),它將輸入圖像編碼為抽象特征,而解碼器通常是循環(huán)神經網絡(RNN),該神經網絡代表一種語言模型,將編碼器輸出轉換為從詞匯表中提取的標記序列。這種體系結構使輸入圖像和輸出序列的大小變得靈活,并且可以以端到端的方式進行訓練。端到端模型已成功用于圖像字幕和場景文本識別任務,并且在文獻[8]中已成功地將基于注意力的端到端模型應用于將圖像轉換為LaTeX的問題上,這證明了該模型處理公式識別的能力。

        1.1 Encoder編碼單元

        對圖像特征提取的工作采用CNN網絡,可以強化特征抓取,特別是在小型的訓練網絡。Dense-net作為一種新型卷積神經網絡架構,在圖像分類任務上表現(xiàn)出了出色的性能,因為它鼓勵特征重用,加強了特征提取,促進梯度傳播,并減少了參數(shù)數(shù)量。在數(shù)學公式識別任務中,由于數(shù)學公式復雜的二維結構,符號間上下文關系異常緊密可能在多個字符之后,上下文依然存在著聯(lián)系,例如:d=sqrt{4^{2}-4}=2sqrt{3}中的等號前后的根號存在著緊密聯(lián)系,所以對圖像識別出的特征不能夠有遺失。Dense-net就可以保證最大程度網絡中各層之間直接連接,保證信息交流,為保持前饋性,每層都從所有先前的層中獲取其他輸入并將其自己的特征圖傳遞給后續(xù)層。更重要的是,與Res-net[14]相比,前后層之間不通過求和再傳遞到層中,而是通過串聯(lián)特征來組合特征,這樣不僅僅是從網絡的深度而是利用特征重用來挖掘網絡的潛能。因此采用Dense-net作為encoder編碼器特征提取的網絡架構。而對于手寫數(shù)學公式圖片中不同符號特征分辨率不同的問題,建立了不同感受野來對特征進行提取的方法。

        (1) 主要特征的提取。Dense-Net讓網絡的每一層的輸入變成所有前面層的疊加(concat),然后把它的特征圖傳遞給所有接下來的網絡層。計算公式如下:

        xl=Hl([x0,x1,…,xl-1])

        (1)

        式中:H表示層的卷積函數(shù);x0,x1,…,xl表示不同層的輸出。主要特征提取網絡中函數(shù)由BN(Batch Normalization)+ReLU+3×3 Conv(歸一化+激活函數(shù)+3×3卷積)組成。網絡中一個部分是下采樣層,它用來改變特征圖的大小,為了使得網絡的下采樣更便利,將網絡分解為多個Dense Block,把介于兩個Dense Block之間的網絡層稱為轉換層,轉換層主要進行卷積和池化操作。轉換層由BN+1×1 Conv+2×2平均池化組成。

        Dense-Net的網絡層很窄,盡管每個網絡層值輸出k個特征圖,但是它的輸入會非常多。根據Res-Net網絡結構,可以在3×3的卷積之前使用1×1的卷積來減少輸入的特征圖數(shù)量,從而提高計算效率。因此在網絡中使用了1×1的卷積,一個網絡層則由BN+ReLU+1×1 Conv+BN-ReLU+3×3 Conv(歸一化+激活函數(shù)+1×1卷積+歸一化+激活函數(shù)+3×3卷積)組成,其中每個1×1的卷積生成4 000幅特征圖。參照dense-net網絡架構,初等數(shù)學公式圖片的主要特征提取過程如下:(1) 對輸入圖片進行7×7卷積,提取基本特征,對特征圖進行歸一化,通過ReLU激活函數(shù)進行非線性操作,最大值池化;(2) 深度為16,增長率為24的dense塊,每層深度間進行的是BN、ReLU、1×1卷積、BN、ReLU、3×3卷積;(3) 轉換層:BN、ReLU、1×1卷積核卷積、2×2平均池化。

        主要特征提取網絡總共設有3個dense塊和轉換塊相連,dense塊與轉換塊交替使用。每個dense塊中有16層神經網絡,后一層繼承所有前層的特征,每個dense塊的增長率為24。每個轉換塊由歸一化、激活函數(shù)、1×1卷積、2×2平均池化組成,主要網絡結構流程圖如圖1所示。

        圖1 主要特征提取網絡流程

        (2) 小特征的提取。雖然dense塊的組合提取了圖片集的特征,但是考慮到pooling層縮小了像素圖的大小,降低了分辨率。由于手寫數(shù)學公式符號的比例差異很大,在低分辨率的feature map中會丟失,因此提取每層特征的細節(jié)在手寫初等數(shù)學公式識別中尤為重要。在多層池化后,小的視覺信息很容易消失,從而導致特征提取不足的后果。為了解決這項問題,采用并聯(lián)一種大感受野的dense塊,達到提供辨別低分辨率特征,又不遺失高分辨率特征的目的。大感受野的dense塊可以感受更大的視覺信息,更貼近現(xiàn)實情況。根據一般情況,3個dense模塊構成一組dense-net網絡結構,為使網絡達到緊湊,減少不必要的計算量,在2號dense塊分支連接一個大感受野的dense塊,用來提取小感受野中的特征,層數(shù)為8,增長率與之前相同,網絡結構如圖2所示。

        圖2 小特征提取網絡流程

        1.2 Decoder解碼單元

        Decoder是將輸入序列(提取的特征)編碼而成的帶有語義的向量,與數(shù)據集真實label之間建立聯(lián)系,得到預測序列結果的部分,其中應用最廣泛的是RNN。接下來主要介紹label的詞嵌入和RNN網絡結構。

        (1) Token embedding。為實現(xiàn)手寫初等數(shù)學公式的識別,需要對label中出現(xiàn)的字符做一個字符表。為使得每一個數(shù)學公式的字符都有上下文,在本研究中為每一個label的前邊都插入了一個起始符“”,每一個label后邊都出入一個終止符“”。經過對數(shù)據集label中出現(xiàn)的字符進行統(tǒng)計,詞典的大小為120。

        字符表是LaTeX序列中的一個處理單元,用于簡化公式轉換器的設計,Label可以通過字符表被分割為字符y0,y1,…,yt。label字符編碼可以以不同的表示形式饋入解碼單元。一個簡單的選擇是將每個標記表示為one-hot向量,但是這樣標記彼此正交,可能會丟失重要的語言語義。而公式識別類似于自然語言的單詞,許多LaTeX字符相互關聯(lián)。例如,“{”和“}”具有很高的相關性,所以它們需要根據LaTeX語法成對使用。所以在中添加NLP中常用的詞嵌入[15]層,其中將字符yt投影到保留語義關系的高維向量Wt中:

        Wt=embedding(yt)

        (2)

        這種嵌入是可訓練的,并且能夠捕獲不同令牌之間的相互關系[15],更能表現(xiàn)公式識別中各個符號之間的聯(lián)系。

        (2) BiGRU。GRU基于LSTM循環(huán)網絡[16],也可以解決簡單循環(huán)神經網絡中的存在的長依賴問題,但是較LSTM網絡的門控制來得更為簡潔,而且在多種序列到序列任務中表現(xiàn)也很好,所以GRU在自然語言處理問題的處理上使用也越來越頻繁。LSTM網絡中引入了三個門單元來控制信息的更新方式,其中輸入門和遺忘門是互補的關系,用兩個門就比較冗余,在改進的GRU網絡中,將輸出門和遺忘門合并成一個門,而且不引入額外的記憶單元ct,而是直接在當前狀態(tài)ht和歷史狀態(tài)ct-1之間建立依賴關系。圖3為GRU網絡單元具體結構。

        圖3 GRU網絡

        圖3中的更新門zt用于控制在歷史狀態(tài)信息中保留多少和從候選狀態(tài)(hidden states)信息中接受多少,并傳遞給當前狀態(tài);rt表示重置門,用來控制候選狀態(tài)ht是否與上一時間狀態(tài)的ht-1建立聯(lián)系;輸入是xt,經過GRU網絡輸出為ht。

        zt=σ(Wzxt+Uzht-1+bz)

        (3)

        rt=σ(Wrxt+Utht-1+br)

        (4)

        (5)

        (6)

        本模型中使用雙向深層GRU單元的解碼器網絡,雙向GRU有助于捕獲更復雜的語言語義,并且在每一層中的雙向單元有助于從符號之間的正向和反向捕獲上下文。圖4顯示了本文模型中的雙向GRU的結構。

        圖4 BiGRU結構

        BiGRU的計算過程如下:

        (7)

        (8)

        (9)

        在NLP應用中,解碼器的初始隱藏狀態(tài)和單元狀態(tài)通常是編碼器的輸出,但是由于本模型中編碼器是CNN,不會產生這樣的輸出,因此解碼器的信息性初始狀態(tài)采用0初始化。由于CNN編碼器不具有存儲功能,而且RNN的初始狀態(tài)不足以壓縮所有來自編碼器的信息,但注意力機制[17]已經證明可以解決這個問題。CNN編碼對手寫公式圖片進行特征提取后,對特征建立相關聯(lián)的上下文向量,這樣才能饋入RNN解碼網絡。采用coverage機制[18]建立上下文詞向量,這種機制可以解決序列到序列問題中預測序列經常有重復的現(xiàn)象,計算公式如下:

        (10)

        (11)

        式中:VT、Wh、Ws、WC為權值矩陣;b為偏置;hi、st為隱藏狀態(tài);tanh為激活函數(shù);ct是一個長度為輸入長度的向量,包括前時刻輸入第一個詞權重的疊加和,輸入第二個詞權重的疊加和,以此類推。αti表示第i個詞序列在時間t的權重,計算公式如下:

        αti=βTtanh(W1ht-1+W2ei)

        (12)

        αti=softmax(αti)

        (13)

        ht=RNN(ht-1,ct)

        (14)

        預測概率公式如下所示,并表示詞匯表V上下一個符號的概率分布:

        P(yt)=(wtct)

        (15)

        完成數(shù)據集圖片與真實label的訓練模型后,雖然能夠對圖片特征預測出序列結果,但是預測過程需要通過上下文和上一個預測的單詞,來預測下一個詞。著名的貪心算法[19]如果存在著在預測序列中有一個單詞預測的不準確,那么它會影響后面所有單詞的預測的問題。而有時概率低的反而是真實label標簽,考慮到在公式識別過程中,對識別結果準確度的要求較高,相對于只取一個概率最大的單詞,范圍預測[20]能夠得到更合理的句子結果。在整個encoder-decoder端到端網絡中,主要特征識別、編碼、解碼過程可簡單用圖5表示。

        圖5 手寫公式識別模型簡單數(shù)據流圖

        2 實 驗

        2.1 數(shù)據集組成

        數(shù)據集來自谷歌CROHME標準公式識別數(shù)據集,CROHME競賽分為四個任務,手寫公式識別就是其任務之一。數(shù)據集中符號種類繁多、結構復雜,數(shù)量也會隨著年份的增加而增多。本文采用的CROHME2016數(shù)據集,訓練集數(shù)量為8 836幅公式圖片,且所有標簽均為LaTeX作為標記。在驗證過程上,采用CROHME2014測試集作為驗證集來評估模型框架的性能。并使用CROHME2016測試集來體現(xiàn)模型的泛化性能。具體實驗數(shù)據集分布如表1所示。

        表1 實驗數(shù)據集分布

        在一般深度學習圖片識別任務中,為識別不同的特征,通常采用RGB三通道彩色圖片作為輸入,達到區(qū)別色彩的目的,而在手寫數(shù)學公式識別中,數(shù)據集圖片主要由黑白兩部分進行組成,黑色為手寫字跡,白色為背景,所以區(qū)別彩色對本任務幫助不大。而數(shù)據集圖片的光照強度卻對識別過程有著很大的影響,因此實驗數(shù)據集圖片均采用了彩色圖轉灰度圖的預處理,降低了光照強度對識別結果的影響,同時減少了模型訓練過程的運算量,提高了訓練速度。

        2.2 配置環(huán)境及超參數(shù)設置

        實驗所有環(huán)節(jié)均在Windows 10系統(tǒng)下進行,使用PyTorch深度學習框架。主要的網絡的超參數(shù)設置如下:主要特征提取網絡層數(shù)為16層,增長率k取24;小特征提取網絡層數(shù)為8層,增長率k取24;編碼單元dropout為0.2,embedding層維度為256;BiGRU網絡隱藏層數(shù)取256;范圍搜索長度為10。為使得計算機性能得到最大利用,batch_size大小為10,學習率即梯度下降步長為2e-2,學習率衰減因子為0.5,最大梯度裁減為5,損失函數(shù)采用交叉熵損失函數(shù),優(yōu)化器算法為Adam算法[21]。

        2.3 結果及分析

        圖6為迭代計算350個epoch后利用tensorboardX庫進行可視化,得到的損失函數(shù)loss變化曲線圖。模型訓練過程前期,loss曲線變化較快,在300多個epoch后,loss值趨于收斂狀態(tài),并在350多個epoch時達到局部極值。由此可以得出本模型對樣本數(shù)據集的擬合狀態(tài)較好,并沒有出現(xiàn)梯度消失或者梯度爆炸等現(xiàn)象,損失函數(shù)達到了很好的收斂效果。

        圖6 驗證集后60次準確率曲線

        另一方面,模型訓練過程中訓練集準確率如圖7所示??梢钥闯?,準確率曲線逐漸收斂于95%。對于驗證集,迭代350次后的準確率曲線如圖8所示,可以看出驗證集的準確率在逐步上升,期間雖有波動,但逐漸收斂于89%,說明參數(shù)設置有效提高了網絡的穩(wěn)健性,避免了訓練過程中的過擬合現(xiàn)象,表明模型對驗證數(shù)據也有比較好的表達能力。

        圖7 訓練集準確率曲線

        圖8 驗證集準確率曲線

        針對在CROHME2016谷歌識別大賽中表現(xiàn)比較好的Wiris、Tokyo等算法[22],本模型在同一測試集上與上述幾種算法和相關主流算法的準確率做了對比,結果如表2所示。其中MyScipt使用了額外的訓練數(shù)據。可以看出本文提出的網絡模型在手寫公式識別任務上達到了深層特征提取的目的,有著較好的準確率,為51%,僅次于第一名的準確率67.65%,說明所提模型具有較好的泛化能力,能夠自動獲取圖片中的特征,自動調節(jié)網絡參數(shù),達到模型的優(yōu)化,有效避免了過擬合問題,提高了預測的穩(wěn)健性,能夠很好地解決手寫數(shù)學公式的識別問題。

        表2 與其他算法的對比

        另外,圖9為本文模型在測試集上的部分識別結果,可見本模型可以對輸入的手寫初等數(shù)學公式圖像進行良好的識別,不同感受野的特征提取模塊有效緩解了對于小分辨率文本出現(xiàn)特征丟失遺漏的現(xiàn)象,雙向GRU網絡有助于捕獲公式結構復雜的語言語義,每一層中的雙向單元從符號和詞向量的正向和反向捕獲上下文,在輸入數(shù)學公式較長的情況下也能很好地完成識別任務。

        圖9 測試集部分識別結果

        3 結 語

        基于encoder-decoder端到端架構,提出一種手寫公式識別網絡模型,采用主流Dense-net網絡,根據不同尺度的感受野,將特征提取分為主要特征提取和小特征提取,能夠全面地表達輸入圖片中各個特征信息,緩解了多次卷積后特征圖分辨率較低導致部分文本缺失以至于預測不準確的問題。雙向GRU有效捕捉了編碼特征向量和字符表向量的正反向的上下文關系,將復雜的公式語義關系緊密聯(lián)系,對長公式也有較好的預測能力。本模型的超參數(shù)設置有效地避免了訓練過程中模型梯度消失和梯度爆炸的問題,在350個epoch迭代過程中,并沒有出現(xiàn)過擬合的現(xiàn)象,并在最后loss值和準確率都趨于收斂,本網絡模型在PyTorch框架下,對訓練集進行訓練并在測試集中進行測試,最終模型在測試集上表現(xiàn)的準確率約為0.51,僅次于MyScipt的準確率,說明本文模型具有較好的泛化能力。

        猜你喜歡
        手寫特征提取準確率
        手寫比敲鍵盤更有助于學習和記憶
        我手寫我心
        乳腺超聲檢查診斷乳腺腫瘤的特異度及準確率分析
        健康之家(2021年19期)2021-05-23 11:17:39
        不同序列磁共振成像診斷脊柱損傷的臨床準確率比較探討
        2015—2017 年寧夏各天氣預報參考產品質量檢驗分析
        抓住身邊事吾手寫吾心
        基于Daubechies(dbN)的飛行器音頻特征提取
        電子制作(2018年19期)2018-11-14 02:37:08
        基于集成學習的MINIST手寫數(shù)字識別
        電子制作(2018年18期)2018-11-14 01:48:08
        高速公路車牌識別標識站準確率驗證法
        Bagging RCSP腦電特征提取算法
        无码高潮少妇毛多水多水免费 | 中文天堂在线www| av狼人婷婷久久亚洲综合| 最新国产一区二区三区| 国内自拍愉拍免费观看| 无码丰满熟妇一区二区| 激情综合欧美| 蜜桃av夺取一区二区三区| 亚洲最大一区二区在线观看| 情人伊人久久综合亚洲 | 久久久久亚洲AV成人网毛片| 国产极品嫩模大尺度在线播放| 最新国产不卡在线视频| 午夜无码伦费影视在线观看| 精品五月天| 蜜臀久久久精品国产亚洲av| 久久777国产线看观看精品 | 男女边摸边吃奶边做视频韩国| 丰满少妇三级全黄| 456亚洲人成影视在线观看| 蜜桃视频在线免费观看完整版| 久久在一区二区三区视频免费观看| 无码中文字幕免费一区二区三区| 在线欧美不卡| 日本加勒比一区二区在线观看| 欧美高清精品一区二区| 欧美 变态 另类 人妖| 精品视频专区| 中文字幕日本av网站| 无码国产精品久久一区免费| 天天躁人人躁人人躁狂躁| 日本一极品久久99精品| 女同精品一区二区久久| 久久亚洲精品11p| 亚洲一区二区三区久久不卡| 射进去av一区二区三区| 专干老熟女视频在线观看| 国产AV无码专区亚洲AⅤ| 亚洲影院在线观看av| 亚洲一区精品无码| 野外性史欧美k8播放|