趙玲俐,余艷梅,陶青川
(四川大學(xué)電子信息學(xué)院,成都 610065)
如今,社會迅速發(fā)展,是一個大數(shù)據(jù)的時代,很多文件中的重要數(shù)據(jù)通常以表格的形式出現(xiàn),要更加準(zhǔn)確分析這些數(shù)據(jù),除了提取表格的數(shù)據(jù)還需要提取表格的結(jié)構(gòu)信息,通過自動識別表格結(jié)構(gòu),不僅可以提高數(shù)據(jù)分析的準(zhǔn)確率還可以提高效率。
現(xiàn)在有很多表格結(jié)構(gòu)識別的方法,早期有使用傳統(tǒng)圖像處理的方法,通過對圖像進(jìn)行膨脹腐蝕、找連通區(qū)域和檢測表格的橫線豎線,得到表格的交點(diǎn),從而提取表格的結(jié)構(gòu),但是這種傳統(tǒng)的方法準(zhǔn)確度不高,特別是不能適用于無線表格。由于深度學(xué)習(xí)的興起,現(xiàn)在的表格結(jié)構(gòu)識別算法大多基于深度學(xué)習(xí),如Deep-DeSRT[1]利用語義分割方法來識別表格單元格;文獻(xiàn)[2]通過構(gòu)建一個由450K的表圖像和相應(yīng)的LaTeX源組成的大數(shù)據(jù)集,進(jìn)一步實(shí)現(xiàn)了端到端的表識別;文獻(xiàn)[3]提出的模型先分別識別表格的橫線和豎線,最后再經(jīng)過合并單元模塊將其整合到一起;文獻(xiàn)[4]提出了一種端到端的模型,用于表格的檢測和識別,還用到跨數(shù)據(jù)的遷移學(xué)習(xí);文獻(xiàn)[5]中的DeepTabStR利用可變形卷積網(wǎng)絡(luò)來分析文檔圖像中的表格結(jié)構(gòu);文獻(xiàn)[6]中的CascadeTabNet提出了一種端到端的級聯(lián)結(jié)構(gòu)來檢測表格以及表格中的每個單元格;文獻(xiàn)[7]提出了一種基于圖像的表結(jié)構(gòu)識別的深度語義分割模型,其中標(biāo)簽是行分隔符、列分隔符、單元格內(nèi)容和背景;文獻(xiàn)[8]的TabStruct-Net使用了兩個階段,一個是自上而下階段(分解階段),這是基于Mask-RCNN(修改的FPN)的單元檢測網(wǎng)絡(luò),另一個是自下而上階段(合成階段),其從單元檢測網(wǎng)絡(luò)獲取信息(自上而下階段),以及它們使用鄰接矩陣的行-列關(guān)聯(lián),并重建整個表格;文獻(xiàn)[9]提出了局部和全局金字塔掩模對齊的框架,該框架在局部和全局特征映射中都采用了軟金字塔掩模學(xué)習(xí)機(jī)制;文獻(xiàn)[10]主要針對HTML的表識別,包括表結(jié)構(gòu)識別、文本行檢測、文本行識別和方框分配;文獻(xiàn)[11]提出的TabCellNet通過檢測單元格而不是行和列來改進(jìn)表結(jié)構(gòu)檢測,以更好地提高異構(gòu)表結(jié)構(gòu)的泛化能力;文獻(xiàn)[12]的TGRNet具有單元檢測分支和單元邏輯位置分支這兩個主要分支,可以共同預(yù)測不同單元的空間位置和邏輯位置;文獻(xiàn)[13]提出了一種新的表結(jié)構(gòu)分解方法,它直接檢測表單元格,并且創(chuàng)建了一個帶有單元格級注釋的基于圖像的大型表格數(shù)據(jù)集。上述方法大都沒有在圖像特征提取方面做出改進(jìn),我們知道圖像的特征對最后表格結(jié)構(gòu)識別準(zhǔn)確率至關(guān)重要,所以本文在圖像特征提取方面做出了改進(jìn),引入了多頻譜注意力機(jī)制,并且進(jìn)行了相應(yīng)的實(shí)驗(yàn)。
本文主要從以下幾個方面展開:第一部分主要介紹本文需要用到的方法基礎(chǔ);第二部分介紹本文提出的新方法,F(xiàn)caTGRNet的網(wǎng)絡(luò)結(jié)構(gòu)和評價指標(biāo),以及實(shí)驗(yàn)結(jié)果的對比;最后就是對本文的總結(jié)和展望。
本部分主要對用到的一些方法進(jìn)行介紹,主 要 包 括TGRNet[12]方 法 和FcaNet(frequency channel attention networks)[14]。
TGRNet是由Xue等[12]于2021年發(fā)布的一種表格結(jié)構(gòu)的提取方法,具體網(wǎng)絡(luò)結(jié)構(gòu)可以參考第二部分的圖1,只是圖中加粗黑色框內(nèi)主干網(wǎng)絡(luò)TGRNet[12]用的ResNet50。可以看到,此方法分為兩部分:一個是通過目標(biāo)檢測網(wǎng)絡(luò)提取表格圖像的每個單元格的位置,這里稱為表格的空間位置;另一個是根據(jù)圖神經(jīng)網(wǎng)絡(luò)和得到的單元格空間位置獲取單元格的相對位置,這里稱作邏輯位置。根據(jù)邏輯位置,就可以將表格圖像轉(zhuǎn)為電子文檔進(jìn)行保存分析。
圖1 FcaTGRNet網(wǎng)絡(luò)結(jié)構(gòu)圖
FcaNet[14]是浙江大學(xué)李璽團(tuán)隊(duì)在2021年提出的一種基于頻譜的注意力機(jī)制,它彌補(bǔ)了現(xiàn)有注意力機(jī)制的一些不足,使模型能夠獲取圖像不同頻率分量的信息。全局平均池化(global average pooling,GAP)其實(shí)是二維離散傅里葉變換的低頻分量,使用這種方法來提取圖像信息,只使用了圖像的低頻分量,但是其他頻率也包含了一些有用的信息,為了更好地利用圖像信息,就需要使用文獻(xiàn)[14]中提出的多頻譜通道注意力網(wǎng)絡(luò)FcaNet。
FcaNet[14]的基本原理是:首先,將輸入的特征圖沿著通道劃分為多塊,記為[X0,X1,…,Xn-1],其 中 每 個Xi∈RC′×W×H,i∈{0,1,2,…,n-1},C′=C/n,每個塊分配一個二維的DCT分量,那么每一塊的輸出結(jié)果如下:
其中:[u,v]表示2DDCT的分量下標(biāo),表示對每一塊采用不同的頻率分量,因此式(2)得到最終的輸出Freq∈RC,也就是得到多譜向量,然后再將這個向量送入通道注意力常用的全連接層中進(jìn)行學(xué)習(xí),得到注意力圖
其中:cat(*)表示對輸出的頻譜進(jìn)行通道拼接;fc(*)表示經(jīng)過全連接網(wǎng)絡(luò)。
本節(jié)主要介紹FcaTGRNet的網(wǎng)絡(luò)結(jié)構(gòu)、評價指標(biāo)以及實(shí)驗(yàn)結(jié)果。
本文是對文獻(xiàn)[12]中提出的TGRNet進(jìn)行改進(jìn),改進(jìn)后的新網(wǎng)絡(luò)命名為FcaTGRNet。主要改進(jìn)是:在主干網(wǎng)絡(luò)中添加了文獻(xiàn)[14]所提出的多頻譜通道注意力模塊(FcaNet),使得提取的特征圖可以在多頻通道下進(jìn)行處理,網(wǎng)絡(luò)結(jié)構(gòu)圖如圖1所示,加粗黑色框內(nèi),原文使用的主干網(wǎng)絡(luò)為ResNet50,而經(jīng)過改進(jìn),本文使用了文獻(xiàn)[14]提供的預(yù)訓(xùn)練模型Fcanet50,此模型是在ResNet50基礎(chǔ)上進(jìn)行修改,每個Bottleneck中均添加了fcanet模塊成為FcaBottleneck,以便更好地提取圖像多個頻帶的特征信息,添加的具體位置如圖2所示。方法中用到的損失函數(shù)與原文保持一致,有回歸損失、交叉熵?fù)p失以及focal損失[15]。
圖2 Fcanet50的Bottleneck網(wǎng)絡(luò)結(jié)構(gòu)圖
對于本文的評價指標(biāo),也主要沿用了文獻(xiàn)[12]中使用到的精確率(precision,簡稱為P)、召回率(recall,簡稱為R)、平均精確率(hmean,簡稱為H)以及預(yù)測單元格邏輯位置時用到的開始行ArowSt和結(jié)束行ArowEd,開始列AcolSt和結(jié)束列AcolEd,以及綜合評價邏輯位置預(yù)測情況的指標(biāo):單元格四個點(diǎn)位置均正確的指標(biāo)Aall。
2.2.1 預(yù)測空間位置使用的指標(biāo)
空間位置在本文是指表格中每個單元格在圖像中的位置,這里使用的是目標(biāo)檢測算法來檢測表格單元格,所以指標(biāo)有三個,分別是P、R和H。在目標(biāo)檢測結(jié)果中可能出現(xiàn)四種情況:樣本為正樣本,預(yù)測為正樣本(TP);樣本為正樣本,預(yù)測為負(fù)樣本(FN);樣本為負(fù)樣本,預(yù)測為負(fù)樣本(TN);樣本為負(fù)樣本,預(yù)測為正樣本(FP)。假設(shè)這里總樣本個數(shù)為N,可以得到P、R和H的公式如下:
其中:P表示最后生成的目標(biāo)框中正確的個數(shù)與真實(shí)目標(biāo)框數(shù)的比值;R表示最后生成的目標(biāo)框中正確的個數(shù)與生成的目標(biāo)框總數(shù)的比值;H則是結(jié)合P和R的一個綜合性的指標(biāo)。
2.2.2 預(yù)測邏輯位置用到的指標(biāo)
邏輯位置評價指標(biāo)包括ArowSt、ArowEd、AcolSt和AcolEd,以及綜合評價這四個指標(biāo)的Aall,前四個指標(biāo)分別代表單元格的開始行、結(jié)束行、開始列以及結(jié)束列的預(yù)測正確率,最后一個指標(biāo)代表單元格的位置的四個指標(biāo)均預(yù)測正確的概率,由于最后的文本框位置需要四個指標(biāo)均預(yù)測正確,所以Aall才是邏輯位置預(yù)測準(zhǔn)確率的最終指標(biāo)。這五個指標(biāo)計算方法相似,均是將檢測出來的值的正確個數(shù)除以前一步目標(biāo)檢測部分的單元格的正確個數(shù),如公式(7)所示。
其中:A為相應(yīng)的邏輯位置預(yù)測準(zhǔn)確率;Nl為邏輯位置預(yù)測正確個數(shù);Ns為單元格空間位置預(yù)測正確個數(shù)。
2.3.1 實(shí)驗(yàn)環(huán)境及參數(shù)設(shè)置
本文代碼使用的是pytorch框架,訓(xùn)練環(huán)境均為:一塊Tesla P40 GPU,顯存24 GB;12核CPU,型 號 為Intel(R)Xeon(R)CPU E-2650 v4@2.20GHZ,內(nèi)存60 GB。實(shí)驗(yàn)主要在ICDAR13-Table數(shù)據(jù)集和TableGraph-24K數(shù)據(jù)集上進(jìn)行。在TableGraph-24K數(shù)據(jù)集訓(xùn)練時學(xué)習(xí)率設(shè)為0.001,在原文預(yù)訓(xùn)練模型的基礎(chǔ)上訓(xùn)練了30個epoch;ICDAR13-Table數(shù)據(jù)集訓(xùn)練時學(xué)習(xí)率為0.0005,在預(yù)訓(xùn)練模型的基礎(chǔ)上訓(xùn)練了700個epoch。這里,ICDAR13-Table數(shù)據(jù)集用的預(yù)訓(xùn)練模型為在TableGraph-24K數(shù)據(jù)集上訓(xùn)練好的模型。
2.3.2 實(shí)驗(yàn)結(jié)果
在TableGraph-24K數(shù)據(jù)集和ICDAR13-Table數(shù)據(jù)集的實(shí)驗(yàn)結(jié)果分別如表1和表2所示,表中各指標(biāo)均是數(shù)值越大效果越好。
表1 TableGraph-24K數(shù)據(jù)集實(shí)驗(yàn)結(jié)果
表2 ICDAR13-Table數(shù)據(jù)集實(shí)驗(yàn)結(jié)果
表1、表2分別在TableGraph-24K和ICDAR13-Table兩個數(shù)據(jù)集上進(jìn)行了驗(yàn)證,從表中可以看到,在空間位置的預(yù)測上,指標(biāo)P、R和H均有所提升,在邏輯位置的預(yù)測Aall也有超過百分之一的提升。所以本文改進(jìn)的方法FcaTGRNet無論是在單元格空間位置檢測部分還是邏輯位置檢測部分均明顯優(yōu)于原始TGRNet方法,可見本文提出添加多頻譜注意力機(jī)制來提取圖像特征的改進(jìn)確實(shí)有一定的效果。
本文在TGRNet[12]的基礎(chǔ)上添加了多頻譜通道注意力機(jī)制Fcanet[14],改進(jìn)形成的新網(wǎng)絡(luò)FcaTGRNet在檢測精度上有一定的提升,F(xiàn)ca-TGRNet主要是針對主干網(wǎng)絡(luò)進(jìn)行的改進(jìn),在ICDAR13-Table和TableGraph-24K兩個 數(shù) 據(jù) 集上進(jìn)行了訓(xùn)練和測試,本文的方法在空間位置和邏輯位置上的準(zhǔn)確率均有提升,取得了比原文更好的效果。在未來,可以繼續(xù)在邏輯位置網(wǎng)絡(luò)部分進(jìn)行改進(jìn),使得表格間相對位置的預(yù)測準(zhǔn)確率進(jìn)一步提升。