天天看點

論文解讀二十七:文本行識别模型的再思考

摘要:本文研究了兩個解碼器(CTC[1]和 Transformer[2])和三個編碼器子產品(雙向LSTM[3]、Self-Attention[4]和GRCL[5]),通過大量實驗在廣泛使用的場景和手寫文本公共資料集上比較準确性和性能。

本文分享自華為雲社群《論文解讀二十七:文本行識别模型的再思考》,作者: wooheng。

論文解讀二十七:文本行識别模型的再思考

1.引言

本文研究了文本行識别的問題。與大多數針對特定領域(例如場景文本或手寫文檔)的方法不同,本文針對通用架構的一般問題進行研究,該模型結構不用考慮資料輸入形式,可以從任何圖像中提取文本。本文研究了兩個解碼器(CTC[1]和 Transformer[2])和三個編碼器子產品(雙向LSTM[3]、Self-Attention[4]和GRCL[5]),通過大量實驗在廣泛使用的場景和手寫文本公共資料集上比較準确性和性能。本文發現,迄今為止在文獻中很少受到關注的組合,即與CTC 解碼器結合Self-Attention編碼器加上語言模型的結構,在公共和内部資料上進行訓練時,其準确性和計算複雜度優于其他所有組合。與更常見的基于Transformer的模型不同,這種架構可以處理任意長度的輸入。

論文解讀二十七:文本行識别模型的再思考

圖1 資料集中的文本行示例圖像,其中包含各種長度的手寫、場景文本和文檔文本圖像。

2.模型結構

大多數最先進的文本行識别算法由三個主要元件組成:用于提取視覺特征的卷積主幹;用于聚合部分或整個序列的特征的順序編碼器;最後是一個解碼器,根據編碼器輸出産生最終轉錄。在本工作中研究了具有固定主幹的編碼器和解碼器的不同組合,并提出了一種最優的模型體系結構,模型結構見圖2。

論文解讀二十七:文本行識别模型的再思考

圖2 模型結構。輸入圖像在饋送到主幹之前被分割成帶有雙向填充的重疊塊。生成的序列特征的有效部分在饋送到解碼器之前被級聯。

2.1 主幹網絡

本文的主幹是一個等距架構[6],使用融合反轉瓶頸層作為建構塊,這是反轉瓶頸層[7]的變體,它用全卷積取代可分離的結構,以提高模型推理效率。等距架構在所有層中保持恒定的内部分辨率,允許低激活記憶體占用空間,并使模型更容易自定義到專用硬體,并實作最高使用率。圖3詳細說明了網絡。它由一個塊大小為4的space-to-depth層組成,然後是11個融合反轉瓶頸層,具有3×3核心和8×擴充速率,具有64個輸出通道。應用最終的完全卷積殘差塊将張量高度降低到1,作為輸入送到編碼器網絡。

論文解讀二十七:文本行識别模型的再思考

圖3 實驗中使用的主幹。首先通過空間到深度操作将輸入灰階圖像的分辨率降低4倍,然後應用11個融合反轉瓶頸層,擴充速率為8和64個輸出通道,并使用殘差卷積塊将輸出投影到高度為1的張量中。

2.2 編碼器

Self-Attention編碼器已被廣泛用于許多NLP和視覺任務。作為圖像到序列的任務,文本行識别也不例外。自我注意編碼器可以有效地輸出總結整個序列的特征,而不使用重複連接配接。主幹網絡的輸出被饋送到編碼器。編碼特征Y計算為:

論文解讀二十七:文本行識别模型的再思考

其中Q、K和V的三個參數W是大小為d×d的學習參數,它們分别将輸入序列X投影到queries、keys和values中。編碼特征Y是計算值V的凸組合,相似性矩陣由queries和keys的點積計算。

本文使用4個獨立的頭,每個頭都使用多頭注意力機制。隐藏層大小設定為256。為了防止過拟合,在每個子層之後應用dropout,設定為0.1。增加正弦相對位置編碼,使編碼器位置感覺。在本文的實驗中,我們通過将k個編碼器層與以{4、8、12、16、20}數量堆疊,比較了不同模型變化的精度和複雜性。

2.3 解碼器

在CTC解碼器之後加入語言模型,采用基于字元的N-gram語言模型使用最小錯誤率來訓練優化特征函數的權重。

2.4 圖檔分塊

由于自注意力層中的點積注意力影響,編碼器的模型複雜性和記憶體占用率與圖像寬度的函數比例呈二次增長。這會導緻圖檔太長使得輸入出現問題。縮小長圖像可以避免這些問題,但它不可避免地會影響識别精度,特别是對于狹窄或緊密間隔的字元。

本文提出了一個簡單而有效的分塊政策,以確定模型在任意寬的輸入圖像上工作良好,而不會收縮(見圖2)。本文将輸入圖像的大小調整為40像素高度,保留寬高比。然後,文本行被拆分為重疊的塊,帶有雙向填充,以減少可能的邊界效果(請注意,最後一個塊有額外的填充,以確定用于批處理目的的統一形狀)。本文将重疊的塊饋送到主幹和自注意力編碼器中,以生成每個塊的序列特征。最後将有效區域合并回一個完整的序列,删除填充區域。

這種方法将長序列拆分為k個較短的塊,有效地将模型複雜性和自注意力層的記憶體使用量降低了k倍。此政策在訓練和推理時都使用,以保持行為一緻。

3.實驗結果

圖4為實驗結果,結果顯示CTC 解碼器結合Self-Attention編碼器加上語言模型的結構,在公共和内部資料上進行訓練時,其準确性和計算複雜度優于其他所有組合

論文解讀二十七:文本行識别模型的再思考

圖4 對選擇模型結構在手寫資料集和場景文本資料集上的評估結果。“Rect.”列訓示模型是否包括矯正子產品。“S-Attn”、“Attn”和“Tfmr Dec.”分别代表自我注意力機制、注意力機制和Transformer解碼器。“MJ”,“ST”和“SA”分别代表MJSynth、SynthText 和SynthAdd資料集。

4.結論

在文本工作中,研究了具有代表性的編碼器/解碼器體系結構作為通用文本行識别器的性能。在解碼器比較中,發現CTC與語言模型結合産生了整體優越的性能。在沒有LM的情況下,CTC和Transformer具有競争力,CTC在某些情況下占主導地位(GRCL),Transformer在其他情況下占主導地位(BiLSTM)。另一方面,在編碼器比較中,SelfAttention總是表現更好,在沒有LM的情況下,兩個解碼器都同樣好用。有趣的是,未經研究的SelfAttention/CTC+LM模型效果最好。本文同樣表明,基于注意力的解碼器仍然可以從外部語言模型中受益。研究具有變壓器解碼器的外部語言模型的有效性将是未來的工作。

本文還考慮了在樣本分布中存在長圖像所産生的問題。至少有兩個新的方面需要考慮,效率和性能。由于圖像長度的二次縮放,長圖像會影響使用自注意力編碼器的模型效率。本文證明,通過對圖像進行分塊,CTC模型可以解決這個問題,而不會造成性能損失。對固定最大寬度圖像的訓練會影響使用變壓器解碼器的模型對較長圖像識别的性能。通過将圖像大小調整到訓練的寬度,雖然不能完全消除,但可以緩解此問題。

參考文獻

[1] Graves A, Fernández S, Gomez F, et al. Connectionist temporal classification: labelling unsegmented sequence data with recurrent neural networks. Proceedings of the 23rd international conference on Machine learning. 2006: 369-376.

[2] Bleeker M, de Rijke M. Bidirectional scene text recognition with a single decoder. arXiv preprint arXiv:1912.03656, 2019.

[3] Hochreiter S, Schmidhuber J. Long short-term memory. Neural computation, 1997, 9(8): 1735-1780.

[4] Vaswani A, Shazeer N, Parmar N, et al. Attention is all you need. Advances in neural information processing systems. 2017: 5998-6008.

[5] Wang J, Hu X. Gated recurrent convolution neural network for ocr. Proceedings of the 31st International Conference on Neural Information Processing Systems. 2017: 334-343.

[6] Sandler M, Baccash J, Zhmoginov A, et al. Non-discriminative data or weak model? on the relative importance of data and model resolution. Proceedings of the IEEE/CVF International Conference on Computer Vision Workshops. 2019: 0-0.

[7] Sandler M, Howard A, Zhu M, et al. Mobilenetv2: Inverted residuals and linear bottlenecks. Proceedings of the IEEE conference on computer vision and pattern recognition. 2018: 4510-4520.

點選關注,第一時間了解華為雲新鮮技術~

繼續閱讀