徐仕成,朱子奇
武漢科技大學計算機科學與技術(shù)學院,武漢 430065
場景文本識別(scene text recognition,STR)是從自然場景圖像中識別文本信息的廣受歡迎的計算機視覺研究任務,在許多任務和應用中都具有重要的意義和價值,例如圖像搜索(Tsai 等,2011)、機器人導航(Schulz 等,2015)、車牌識別(Wang 等,2017)和自動駕駛(Bojarski 等,2016)等。然而,自然場景中的圖像充滿了多樣性(Zhang 等,2019),如透視、彎曲和旋轉(zhuǎn)等,尤其是任意形狀或嚴重扭曲的文本圖像在場景文本識別任務中仍然具有挑戰(zhàn)性(Luo 等,2019;Shi等,2019;Luo等,2020)。
大多數(shù)早期的STR 模型都適合Baek 等人(2019)提出的四階段STR 框架,通常包括4 個階段:圖像預處理階段、特征提取階段、序列建模階段和預測轉(zhuǎn)錄階段(劉崇宇 等,2021)。如ASTER(attentional scene text recognizer)(Shi 等,2019)、SAFL(self-attention based scene text recognizer with focal loss)(Tran 等,2020)和MORAN(multi-object rectified attention network)(Luo等,2019)等場景文本識別器,它們通常由一個矯正網(wǎng)絡和一個文本識別網(wǎng)絡組成。STR 模型受到Transformer(Vaswani 等,2017)架構(gòu)的啟發(fā),如HGA-STR(holistic representation guided attention network for scene text recognition)(Yang 等,2020)、Hamming OCR(optical character recognition)(Li 等,2020)、NRTR(no-recurrence sequence-to-sequence text recognizer)(Sheng等,2019)和SATRN(self-attention text recognition network)(Lee等,2020)等場景文本識別網(wǎng)絡。HGA-STR 和Hamming OCR 使用基于卷積神經(jīng)網(wǎng)絡(convolutional neural network,CNN)的編碼器和Transformer 的解碼器共同構(gòu)成場景文本識別網(wǎng)絡,NRTR 和SATRN 使用一個定制的CNN 模塊來提取圖像特征,用于Transformer 編碼器—解碼器的文本識別。這些早期方法和近期基于Transformer架構(gòu)的STR模型通常會帶來復雜的模型結(jié)構(gòu)以及較大的計算負載和內(nèi)存消耗。
在STR 的大量工作中,關(guān)注的重點是識別的準確性,幾乎沒有強調(diào)速度和計算效率,而這些問題對于資源有限的移動機器來說同等重要,Atienza(2021)利用ViT(vision Transformer)(Dosovitskiy 等,2021)的簡單性和效率,提出了一個簡單的單階段的模型結(jié)構(gòu)ViTSTR(ViT-based STR),能夠在精度與速度、內(nèi)存和計算負載的前沿,表明最佳的權(quán)衡。然而,如果不使用專門針對STR 的數(shù)據(jù)增強,ViTSTR在準確性方面仍然有較大提升空間,導致準確性不足的一個原因就是,在ViT中簡單地使用多頭自注意力無法保證不同的注意力頭能夠捕捉到更具差異性的特征,特別是復雜場景文本圖像中的多樣性特征。
針對上述問題,本文基于ViTSTR研究了正交約束在ViT中的應用,針對ViT中的多頭自注意力機制提出了一種新穎的正交約束,并在場景文本識別任務上證明了所提出的正交約束的有效性。與已有的多頭注意力中的正交約束和正則化研究不同,本文所提出的正交約束強調(diào)“自”注意力?!白浴弊⒁饬Φ摹白浴斌w現(xiàn)在輸入序列的3 種特征Q(query)、K(key)和V(value)內(nèi)進行注意力運算,即體現(xiàn)的是在“自”身的3種特征上進行注意力操作。
具體來說,本文所提出的正交約束由兩部分組成,1)針對不同自注意力頭中Q、K和V特征的正交約束;2)針對不同自注意力頭中Q、K和V線性變換權(quán)重的正交約束。Q、K和V作為注意力頭的輸入特征,在自注意力機制中扮演重要角色。不同注意力頭上的特征正交,可以顯式增強多個注意力頭特征之間的差異性。針對Q、K和V特征的正交約束可以使不同的自注意力頭關(guān)注到不同的查詢子空間、鍵子空間和值子空間的特征,這將顯式地使不同的自注意力頭捕捉到更具差異的特征,并引導ViT 模型在極具多樣性的場景文本識別任務中獲得更高的性能。更進一步地對不同自注意力頭上Q、K和V特征的線性變換權(quán)重添加正交約束,為Q、K和V特征的學習過程中權(quán)重空間的探索提供正交權(quán)重空間的解決方案,這將在網(wǎng)絡訓練中帶來隱式正則化的效果,并更加充分地利用多頭自注意力的特征空間和權(quán)重空間。在場景文本識別任務上的廣泛實驗表明,本文所提出的即插即用的特征正交約束和權(quán)重正交約束可以在單獨使用時產(chǎn)生改進,也可以在組合使用時產(chǎn)生更進一步的改進。
為了平衡準確性、速度和計算效率,利用ViT 的簡單性和效率,一個單階段且快速有效的場景文本識別模型ViTSTR 被提出。ViTSTR 首先將輸入的圖像分割成圖像塊,然后將圖像塊的線性嵌入序列作為Transformer 編碼器的輸入,一個可學習的圖像塊嵌入和每個嵌入的位置編碼一起被添加。該網(wǎng)絡被訓練成端到端以預測一串字符。ViTSTR 的模型結(jié)構(gòu)和ViT 一樣,只使用了Transformer 的編碼器,它們的唯一區(qū)別是預測頭。本文工作是在ViTSTR 的基礎上進行的。
Li 等人(2018)引入了分歧正則化,以明確地增強多個注意力頭之間的多樣性,并在多個翻譯任務(Bahdanau 等,2016;Szegedy 等,2015)上證明了所提方法的有效性。具體來說,包括3 種類型的分歧正則化,分別促進與每個注意力頭相關(guān)的子空間、所關(guān)注的位置和輸出表示與其他頭不同。本文工作同樣是促進不同注意力頭之間的多樣性,不同的是本文針對多頭自注意力模塊的輸入特征Q、K和V引入了正交約束,促進不同的自注意力頭能夠關(guān)注不同的查詢子空間、鍵子空間和值子空間。
Lee 等人(2019)提出了一種正交約束的多頭注意力機制,所提出的正則化技術(shù)能夠提高關(guān)鍵詞發(fā)現(xiàn)任務(Shan 等,2018;He 等,2017)中的檢測性能。具體來說,所提出的正則化是由注意頭之間的上下文約束和分數(shù)向量約束得到的,它們各自是正交的,懲罰了注意頭之間的位置和上下文非正交性,促進從不同的子序列輸出不同的表示,這與本文所做的工作是不同的。
Zhang 等人(2021)填補了Transformer 中正交約束研究的空白,并在多個機器翻譯任務(Bahdanau等,2016;Szegedy 等,2015)和對話生成任務(Li 等,2017;Zhang 等,2018)上證明了在Transformer 中使用正交性約束的有效性。具體來說,所提出的正交約束用于自我注意和位置前饋網(wǎng)絡中的線性變換以及自我注意中的親和矩陣。從線性變換的邊界Lipschitz常數(shù)的角度出發(fā),提出了自我注意和位置前饋網(wǎng)絡中的線性變換的正交約束,以實現(xiàn)訓練中的數(shù)值穩(wěn)定性。根據(jù)親和矩陣的有界擾動理論提出了自我注意中的親和矩陣的正交約束。本文所提出的正交約束中的權(quán)重正交約束和Zhang 等人(2021)提出的線性變換的正交約束類似,不同的是本文只對自注意力的線性變換權(quán)重添加正交約束。
正交權(quán)重已在遞歸神經(jīng)網(wǎng)絡(recurrent neural network,RNN)(Dorobantu 等,2016;Mhammedi 等,2017;Vorontsov 等,2017;Arjovsky 等,2016)中得到廣泛探索,以幫助避免梯度消失和爆炸問題(Dorobantu等,2016)。在CNN中,正交權(quán)重也被認為可以穩(wěn)定激活的逐層分布(Rodríguez 等,2017)并使優(yōu)化更有效。Huang 等人(2018)證明了矩形正交矩陣可以穩(wěn)定網(wǎng)絡激活的分布并正則化前饋神經(jīng)網(wǎng)絡(feed-forward neural network,F(xiàn)NN)。Bansal 等 人(2018)證明了在深度CNN 中使用權(quán)重正交正則化會帶來顯著的精度提升。Xie 等人(2017)表明了在正交性的約束下,學習權(quán)重的相關(guān)性被迫進入一致且相對較低的水平,并證明了正交約束的有效性。這些工作進一步引導本文探索權(quán)重的正交約束及其在基于ViT 的場景文本識別模型中的應用。本文的主要工作集中在將正交約束用于基于ViT 的場景文本識別模型中的多頭自注意力機制。
多頭自注意力機制允許模型共同關(guān)注來自不同位置的不同表示子空間的信息。為了進一步保證多樣性,本文提出了兩種新穎的正交約束,來顯式促進不同的頭關(guān)注不同的子空間信息。具體來說,本文提出的正交約束包括兩部分,1)針對不同自注意力頭中Q、K和V特征的正交約束;2)針對不同自注意力頭中Q、K和V線性變換權(quán)重的正交約束。特征正交約束和權(quán)重正交約束可以在單獨使用時產(chǎn)生改進,也可以在組合使用時產(chǎn)生更進一步的改進。
在ViT 模型中,將輸入序列投影為查詢矩陣Q、鍵矩陣K和值矩陣V,它們是輸入序列投影得到的不同的特征表示,自注意力機制則是將Q和一組KV對映射到輸出,然后計算Q與K之間的相似性作為注意力權(quán)重,并將注意力權(quán)重作用在V上,得到自注意力機制的輸出。在ViT 中通常使用多頭自注意力作為一個單頭自注意力的擴展。在多頭自注意力中,在每個頭上單獨計算自注意力,然后將每個頭上的自注意力輸出進行拼接,并將拼接結(jié)果做線性變換,得到與輸入序列維度相同的輸出作為多頭自注意力的輸出。這個過程可以表示如下:
對于一個輸入序列z∈RN×D,一個標準的QKV(query,key,value)自注意力(self-attention,SA)(Vaswani等,2017)的計算方式可表示為
多頭自注意力(multihead self-attention,MSA)是SA的擴展,計算方式為
式中,Umsa∈RD×D,多頭自注意力并行地計算每個頭上的自注意力,最后投影它們的聯(lián)合輸出。
本文方法是對ViTSTR 的改進,在網(wǎng)絡結(jié)構(gòu)上與ViTSTR 相同,僅使用由L個編碼器塊堆疊的Transformer 編碼器。在編碼器塊內(nèi),每個輸入首先經(jīng)過LN(layer normalization)層,然后進入MSA 層,再經(jīng)過LN 層后進入MLP(multi layer perceptron)層。殘差連接置于LN 和MSA/MLP 的輸出之間。MLP 層由使用GELU(Gaussian error linear unit)激活函數(shù)的兩個全連接層組成。
輸入圖像X∈RH×W×C調(diào)整為n個二維特征塊圖像為H×W,特征塊為P×P,C是通道數(shù),n=HW/P2。編碼器的輸入為
式中,l=1,2,…,L,L是編碼器塊的個數(shù)。
MLP層的輸出為
式中,l=1,2,…,L。
最后的預測結(jié)果輸出是一個線性投影序列,具體為
式中,i=1,2,…,S。S是識別文本的最大長度加上兩個標記[GO]和[s]。
多頭自注意力機制允許模型的不同表示子空間聯(lián)合關(guān)注不同位置的信息(Vaswani 等,2017)。然而,沒有機制可以保證不同的注意力頭確實捕捉到不同的特征。不同注意力頭上的特征正交,可以顯式增強多個注意力頭之間的差異性。Q、K和V作為注意力頭的輸入特征,在自注意力機制中扮演重要角色。這些因素引導本文提出了針對Q、K和V特征的正交約束,強制的正交約束可以使多頭自注意力機制關(guān)注到不同的查詢子空間、鍵子空間和值子空間,關(guān)注到不同子空間信息可以顯式地使不同的注意力頭捕獲到更具差異的特征。
對于一組輸入序列有Z∈RB×N×D,B代表batch size的值,即一組輸入的樣本個數(shù)。有
ViT 中的Transformer 編碼器由L個編碼器塊組成,本文對L個編碼器塊內(nèi)的多頭自注意力模塊都計算特征正交約束,并將計算結(jié)果進行累加,作為最終的特征正交約束,F(xiàn)Q作為正則項添加在損失函數(shù)后面。
遵循同樣的方式,對特征K和V的正交約束FK和FV,計算為
FQ、FK和FV可以分別反映出不同自注意力頭之間查詢子空間、鍵子空間和值子空間特征的正交性,式(10)—(12)中減去單位矩陣I是為了消除同一個自注意力頭和自己的特征是重疊的影響。
FK和FV也同樣作為正則項添加到損失函數(shù)后面,F(xiàn)Q、FK和FV共同構(gòu)成特征正交約束的正則項。
將正交性引入權(quán)重空間同樣具有重要意義,這不僅可以為Q、K和V特征的學習過程中權(quán)重空間的探索提供正交權(quán)重空間的解決方案,并在網(wǎng)絡訓練中帶來隱式正則化的效果,也將更加充分地利用多頭自注意力的特征空間和權(quán)重空間。因此,本文對Q、K和V特征的線性變換權(quán)重矩陣添加正交約束。以Q為例,使Q在不同自注意力頭上的權(quán)重矩陣正交,這將為不同自注意力頭上Q的權(quán)重學習探索正交投影空間。
用Uq、Uk和Uv分別表示Q、K和V特征的線性變換權(quán)重矩陣,即
式中,Uq、Uk、Uv∈RD×D。在多頭自注意力中,把權(quán)重矩陣分配到不同的自注意力頭上,以Uq為例,可以表示為
式中,I∈Rh×h是一個單位矩陣。
與FQ一樣,本文對L個編碼器塊內(nèi)的多頭自注意力模塊都計算權(quán)重正交約束,并將計算結(jié)果進行累加,作為最終的權(quán)重正交約束,LQ作為正則項添加在損失函數(shù)后面。
遵循同樣的方式,對K和V的權(quán)重矩陣的正交約束,計算為
LQ、LK和LV可以分別反映出不同自注意力頭之間查詢權(quán)重子空間、鍵權(quán)重子空間和值權(quán)重子空間的正交性,式(16)—(18)中減去單位矩陣I是為了消除同一個自注意力頭和自己的權(quán)重空間是重疊的影響。
LK和LV也同樣作為正則項添加到損失函數(shù)后面,LQ、LK和LV共同構(gòu)成權(quán)重正交約束的正則項。
最終的損失項可以表示為
式中,LCE表示交叉熵損失,是ViTSTR 中使用的損失,本文提出的正交約束作為正則項加在交叉熵損失后面。Foc表示特征的正交約束,Loc表示線性變換權(quán)重的正交約束。α,β,λ1,λ2,λ3,μ1,μ2,μ3為懲罰因子,是控制相應正則項的超參數(shù)。
Baek 等人(2019)為大多數(shù)現(xiàn)有的STR 方法引入了一個統(tǒng)一的框架,以及一致的數(shù)據(jù)集以便進行公平比較,本文也使用相同的數(shù)據(jù)集來進行訓練和評估。
3.1.1 訓練集
為大量真實的場景文本圖像添加標記以用于STR 模型的訓練有著非常高的成本,因此,大多數(shù)STR 模型都使用合成數(shù)據(jù)集作為真實數(shù)據(jù)的替代來進行訓練,下面首先介紹STR 論文中兩個流行的合成數(shù)據(jù)集。
MJ(MJSynth)(Jaderberg 等,2014)是一個包含8.9 M幅圖像,用于場景文本識別的合成數(shù)據(jù)集。
ST(SynthText)(Gupta等,2016)是另一個流行的合成數(shù)據(jù)集,它包含5.5 M 幅裁剪圖像以用于場景文本識別。
按照Baek 等人(2019)的建議,本文采用了與Atienza(2021)相同的做法,在綜合訓練集MJ+ST 上訓練,在訓練時,每個batch 的訓練集將有50%的圖像來自MJ,50%的圖像來自ST。圖1 顯示了訓練集MJ和ST中的部分圖像。
圖1 合成數(shù)據(jù)集中的部分圖像Fig.1 Samples from datasets with synthetic images((a)MJ;(b)ST)
3.1.2 測試集
7 個主要的真實自然場景下的STR 數(shù)據(jù)集已廣泛用于評估STR模型,這些數(shù)據(jù)集可以分為兩類:規(guī)則數(shù)據(jù)集和不規(guī)則數(shù)據(jù)集。規(guī)則數(shù)據(jù)集包含水平排列的字符的文本圖像,通常有著較小的彎曲度和形變量;不規(guī)則數(shù)據(jù)集則包含大量彎曲、垂直、透視和模糊以及嚴重變形的文本。
1)規(guī)則數(shù)據(jù)集。IIIT(IIIT5K-words)(Mishra等,2012)包含3 000幅用于測試的圖像,這些圖像是從谷歌圖像搜索中抓取的數(shù)據(jù)集,大多來自街道場景,如招牌、廣告牌、路標、海報等。
SVT(street view text)(Wang等,2011)包含647幅用于測試的圖像,這些圖像收集自戶外街道圖像,有些是模糊或低分辨率的。
IC03(ICDAR2003)(Lucas等,2005)包含 1 110幅用于ICDAR2003 魯棒閱讀競賽的圖像,這些圖像是從自然場景中采集的。在去除長度小于3 個字符的單詞后,剩下867 幅圖像。該數(shù)據(jù)集還有一個包含860幅圖像的版本。
IC13(ICDAR2013)(Karatzas 等,2013)是IC03的擴展,繼承了IC03 的大部分圖像,是為ICDAR2013 魯棒閱讀競賽而創(chuàng)建的,包含1 015 幅圖像。該數(shù)據(jù)集還包含另一個857 幅圖像的版本。
2)不規(guī)則數(shù)據(jù)集。IC15(ICDAR2015)(Karatzas等,2015)是為ICDAR2015 魯棒閱讀競賽而創(chuàng)建的,包含2 077 幅圖像,這些圖像是由谷歌眼鏡(Google Glasses)在佩戴者的自然運動狀態(tài)下拍攝的,包含很多模糊、旋轉(zhuǎn)和低分辨率的圖像。同樣,該數(shù)據(jù)集也有另一個1 811 幅圖像的版本(Bai 等,2018;Cheng等,2017)。
SVTP(SVT perspective)(Phan 等,2013)包含了645 幅從谷歌街景中收集的圖像,大多是在非正面視角下拍攝的帶透視投影的圖像。
CT(CUTE80)(Risnumawan等,2014)包含288幅從自然場景中收集的文本圖像,其中大多是彎曲的弧形文本圖像。
圖2 顯示了7 個測試集中的部分圖像。圖2(a)第1—4 行分別來自規(guī)則數(shù)據(jù)集IIIT、SVT、IC03 和IC13;圖2(b)第1—3 行分別來自不規(guī)則數(shù)據(jù)集IC15、SVTP和CT。
圖2 真實場景數(shù)據(jù)集中的部分規(guī)則和不規(guī)則圖像Fig.2 Examples of regular and irregular real-world datasets((a)regular datasets;(b)irregular datasets)
為了快速驗證本文方法的有效性,首先在ViTSTR-Tiny(Atienza,2021)的基礎上進行實驗,表1列出了本文推薦的訓練配置。
表1 訓練配置Table 1 Train conditions
與ViTSTR 相同,使用DeiT(data-efficient image Transformers)(Touvron 等,2021)的預訓練權(quán)重和He等人(2015)的方法進行初始化,每迭代2 000次后在Baek 等人(2019)提供的驗證集上進行驗證,以選擇在驗證集上精度最高的模型用于在測試集上評估,這一點與Atienza(2021)不同,本文和Baek 等人(2019)保持一致。為了區(qū)別,在本文的推薦訓練配置和評估方案選擇上得到的模型命名為XViTSTR。
表2展示了XViTSTR 不同版本的配置和精度對比。其中,精度是指對模型進行端到端訓練后,選取在驗證集上精度最高的模型,在測試集上測試得到的整體精度。與ViTSTR 一樣,本文識別的重點是96 個拉丁字符,在評估前不旋轉(zhuǎn)垂直文本,只對字母和數(shù)字進行評估,對于相同的英文字母,不區(qū)分大小寫。
表2 XViTSTR不同版本的配置和精度對比Table 2 Comparison of the configuration and accuracy of different versions of XViTSTR
表3 展示了添加Foc和Loc在XViTSTR-Tiny 模型上的精度對比結(jié)果。
表3 添加Foc和Loc在XViTSTR-Tiny模型上精度對比Table 3 Add Foc and Loc for accuracy comparison on the XViTSTR-Tiny model
為了驗證特征正交約束和權(quán)重正交約束的有效性,首先對XViTSTR-Tiny 版本按表1 推薦的實驗配置進行端到端訓練,然后選取在驗證集上精度最高的模型在測試集上進行測試,得到在測試集上的整體精度為81.802%,并以此作為本文的基準。如表3中實驗1 所示,實驗1 僅使用交叉熵作為損失函數(shù),其他實驗除在損失函數(shù)中添加正交約束項外,都與實驗1保持相同的實驗條件。
為了驗證特征正交約束Foc的有效性,在實驗1的基礎上,僅在損失函數(shù)中添加Foc正交約束項,這時在實驗2 中的超參數(shù)α和β分別設置為1 和0,λ1,λ2,λ3分別設置為1,2,1,μ1,μ2,μ3均設置為0。
圖3 顯示了實驗1 和實驗2 訓練過程中不同自注意力頭之間Q、K、V特征的正交性的變化對比圖。實驗中計算了實驗1—實驗4 中每次迭代時FQ、FK和FV的值,并取每2 000 次迭代時的值。圖3 中實驗2 的藍色實線和實驗4 的綠色實線在部分區(qū)域的變化是重疊的。
圖3 不同自注意力頭之間Q、K、V特征正交性變化對比圖Fig.3 Comparison of the orthogonality changes of Q,K and V features among different self-attention heads((a)comparison of FQ changes;(b)comparison of FK changes;(c)comparison of FV changes)
圖3 中FQ、FK、FV的值越趨近于0 就表示不同自注意力頭之間對應特征空間的正交性越好。從圖3(a)可以看出,在不添加Foc時(實驗1),不同自注意力頭之間Q特征的正交性在訓練過程中整體處于1.0左右,這表明在不添加Foc時不同自注意力頭之間的Q特征空間學習的特征存在一定冗余。在添加Foc(實驗2)后,從圖3(a)中可以看出,強制的正交約束Foc可以使得不同自注意力頭之間的Q特征空間的正交性迅速變好,并在整個訓練過程中始終保持良好的正交性。從圖3(b)(c)中也可以得出相同的結(jié)論,這表明本文提出的正交約束Foc能夠在訓練中發(fā)揮作用,使不同的自注意力頭能夠關(guān)注到正交特征子空間,包括正交查詢特征子空間、正交鍵特征子空間和正交值特征子空間。實驗2 所得到的模型在測試集上的表現(xiàn)也證明了本文所提出的特征正交約束Foc的有效性,如表3 中的實驗2 所示,添加Foc的正交約束后精度相比實驗1 提高了0.447%,達到82.249%。
為了驗證權(quán)重正交約束Loc的有效性,在實驗1的基礎上,僅在損失函數(shù)中添加Loc正交約束項,這時在實驗中的超參數(shù)α和β分別設置為0 和1,μ1,μ2,μ3分別設置為10,20,10,λ1,λ2,λ3均設置為0。
圖4 顯示了實驗1 和實驗3 訓練過程中不同自注意力頭之間Q,K,V權(quán)重的正交性的變化對比圖。實驗中計算了實驗1—實驗4 中每次迭代時LQ、LK和LV的值,并取每2 000次迭代時的值。圖4中實驗3 的紅色實線和實驗4 的綠色實線在部分區(qū)域的變化是重疊的。
圖4 不同自注意力頭之間Q、K、V權(quán)重正交性變化對比圖Fig.4 Comparison of orthogonality changes of Q,K and V weights among different self-attention heads((a)comparison of LQ changes;(b)comparison of LK changes;(c)comparison of LV changes)
圖4 中LQ,LK,LV的值越趨近于0 就表示不同自注意力頭之間對應權(quán)重空間的正交性越好。從圖4可以看出,在不添加Loc時(實驗1),不同自注意力頭之間Q、K、V權(quán)重的正交性在訓練過程中整體趨于穩(wěn)定。在添加Loc后(實驗3),相應的正交性迅速變好,并在之后的訓練中能夠保持正交性的穩(wěn)定。這表明本文提出的正交約束Loc能夠在訓練中發(fā)揮作用,使不同的自注意力頭能夠關(guān)注到正交權(quán)重子空間,包括正交查詢權(quán)重子空間、正交鍵權(quán)重子空間和正交值權(quán)重子空間。實驗3 所得到的模型在測試集上的表現(xiàn)也證明了本文所提出的權(quán)重正交約束Loc的有效性,如表3 中的實驗3 所示,添加Loc的正交約束后精度相比實驗1 提高了0.364%,達到82.166%。
事實上,F(xiàn)oc和Loc不僅在單獨使用時能夠帶來精度的提升,組合使用時也可以帶來精度的進一步提升,如實驗4 所示,同時添加Foc和Loc時,超參數(shù)α和β都設置為0.5,λ1,λ2,λ3分別設置為1,2,1,μ1,μ2,μ3分別設置為10,20,10。從圖3 和圖4 中實驗4 的綠色實線變化都可以看出,這時,F(xiàn)Q,F(xiàn)K,F(xiàn)V和LQ,LK,LV的值都會迅速下降,并在訓練過程中始終保持趨近于0,說明這時Foc和Loc同時發(fā)揮了作用,使不同的自注意力頭之間的Q,K,V特征空間和權(quán)重空間都保持正交。
值得關(guān)注的是,如圖4所示,當只添加Foc時(實驗2),會導致LQ,LK,LV整體呈現(xiàn)下降趨勢,LQ先增加到一個較大的值,然后穩(wěn)步下降到接近不添加任何約束時(實驗1)LQ的值,LK和LV的值整體比實驗1 要小且穩(wěn)步下降。這表明,當添加特征的正交約束時,會對權(quán)重空間的正交性產(chǎn)生一定的影響,并使得相應的正交性整體上保持變好的趨勢,特別是LK和LV的變化。
同樣值得關(guān)注的是,如圖3 所示,當只添加Loc(實驗3)時,會導致FQ,F(xiàn)K,F(xiàn)V的值相比實驗1 在整體上呈現(xiàn)更明顯的下降趨勢。這表明,當添加權(quán)重的正交約束時,會使對應特征空間的正交性也變好,這也可以解釋為什么添加權(quán)重的正交約束也可產(chǎn)生一定的改進,但產(chǎn)生的改進比直接添加特征的正交約束要小。
總的來說,單獨添加Foc或Loc只會使特征空間或權(quán)重空間正交,而同時添加則會使特征空間和權(quán)重空間都能保持正交。如表3的實驗4所示,同時添加Foc和Loc時的精度更高,相比實驗1 提高了0.513%,達到82.315%。
圖5 顯示了由實驗1 和實驗4 得到的模型對CT數(shù)據(jù)集中部分圖像的注意力可視化圖。其中,第1列和第2列是由XViTSTR-Tiny模型得到的注意力圖和識別結(jié)果,第3 列和第4 列是由XViTSTR-Tiny+Foc+Loc模型得到的注意力圖和識別結(jié)果。下劃線字符是識別錯誤的字符。從圖5可以看出,添加正交約束的模型在注意力區(qū)域上相比基準模型關(guān)注到了更多的信息,這對識別出正確結(jié)果來說是有幫助的。
圖5 不同模型對CT數(shù)據(jù)集中部分圖像的注意力可視化Fig.5 Attention visualization of the images in the CT dataset part by different models
本文還在幾個流行的基準上與一些先進方法進行了比較,結(jié)果顯示見表4??梢钥吹剑疚姆椒ㄏ啾然鶞?,在規(guī)則和不規(guī)則數(shù)據(jù)集上均有提高,在規(guī)則數(shù)據(jù)集IIIT、SVT、IC03(860)上都提升了0.5%,在不規(guī)則數(shù)據(jù)集IC15(1811)和IC15(2077)上分別提升了0.5%和0.6%,在SVTP上提升了0.8%,在CT上提升了1.1%,在所有測試集上的整體精度提升了0.5%。這說明本文方法能夠提高多頭自注意力機制對不同子空間信息的捕獲能力,特別是在特征多樣性極強的場景文本識別任務上。表5 展示了流行方法和本文方法在精度、速度、參數(shù)量和計算負載上的對比。其中,參數(shù)量反映了內(nèi)存的要求,每秒浮點運算次數(shù)(floating point operations per second,F(xiàn)LOPS)估計了處理一幅圖像所需的指令數(shù)量。可以看出,本文方法在速度和參數(shù)量接近或相同的情況下獲得了有競爭力的表現(xiàn)。以上實驗結(jié)果證明了本文方法的有效性。
表4 在公共測試集上不同模型的精度對比Table 4 Accuracy comparison of different models on the public test dataset
表5 在2080Ti GPU上不同模型的精度、速度、參數(shù)量和計算負載(FLOPS)對比Table 5 Comparison of accuracy,speed,number of parameters and computational load(FLOPS)of different models on 2080Ti GPU
場景文本識別在許多任務和應用中都具有重要意義,使用多頭自注意力機制的ViT 模型用于場景文本識別可以實現(xiàn)速度和計算效率的平衡,然而面對多樣性極強的場景文本識別任務,多頭自注意力機制通常不能保證確實捕獲到多樣性的特征。本文提出了一種新穎的正交約束來顯式增強多頭自注意力機制捕獲更具多樣性的子空間信息。本文所提出的正交約束由兩部分組成,即針對不同自注意力頭之間Q、K、V特征的正交約束和針對不同自注意力頭之間Q、K、V線性變換權(quán)重的正交約束。這將顯式地使不同的自注意力頭能夠關(guān)注正交的查詢子空間、鍵子空間和值子空間的特征,并為Q、K、V特征的學習提供正交權(quán)重空間的探索。實驗證明本文所提出的即插即用的正交約束在STR 任務上的有效性,特別是能夠提高ViT 模型在不規(guī)則文本識別任務上的精度。
本文工作不引入任何新的可學習參數(shù),不影響模型的推理速度和計算效率,因為在推理測試時不需要計算正交約束,但會在訓練過程中帶來一定的計算消耗,在本文的實驗中會帶來7 h左右的額外訓練時間。另外,本文工作只探索了多頭自注意力的輸入特征Q、K、V的正交約束,對于多頭自注意力中的注意力特征和輸出特征等其他特征的正交約束研究仍然是一個開放性的問題。未來的工作包括探索其他形式針對多頭自注意力的正交約束,并將這一想法擴展到其他識別和分類任務中。