TableBank 開源地址:https://github.com/doc-analysis/TableBank
表格通常以結構化的方式展示基本資訊,因而表格檢測和識別是諸多檔案分析應用中的一項重要任務。如圖 1 所示,由於表格的佈局和格式不同,其檢測和識別是個難題。常規表格分析技術通常以檔案的佈局分析為基礎。但這些技術中的大多數都無法泛化,究其原因,它們依賴於手工構建的特徵,而後者對佈局變化不具備穩健性。最近,計算機視覺領域深度學習的快速發展極大地推動了資料驅動且基於影像的表格分析方法。基於影像的表格分析的優勢體現在其對檔案型別的穩健性,並對檔案是頁面掃描影像還是原始數字檔案格式不做任何假設。因此,大型端到端深度學習模型能夠取得更好的效果。
圖 1:不同佈局和格式的表格電子檔案。
現有的基於深度學習的表格分析模型通常對使用數千個人工標註訓練例項獲得的預訓練目標檢測模型進行微調,但它依然難以在現實世界應用程式中擴充套件。例如,我們發現,在類似圖 1a、1b 和 1c 中的資料上訓練出的模型在圖 1d 中表現不佳,其原因在於表格佈局和顏色大不相同。因此,擴大訓練資料是使用深度學習構建開放域表格分析模型的唯一途徑。深度學習模型比傳統模型複雜得多,現在的很多標準深度學習模型擁有數億自由引數,且需要更多標註訓練資料。在實踐中,人工標註大型訓練資料成本高昂且缺乏靈活性,這是實際部署深度學習模型的關鍵瓶頸。眾所周知,ImageNet 和 COCO 是兩個流行的影像分類和目標檢測資料集,兩者均以眾包的方式構建,但花費高昂且耗日持久,需要數月甚至數年時間來構建大型基準資料集。幸運的是,網路上存在大量數字檔案,如 Word 和 Latex 原始檔。對這些線上檔案進行一些表格標註方面的弱監督則是有益的。
為解決對標準開放域表格基準資料集的需求,該研究提出一種新穎的弱監督方法,可自動建立 TableBank 資料集,TableBank 要比現有的表格分析人工標註資料集大幾個量級。與傳統弱監督訓練集不同,該研究提出的弱監督方法可以同時獲得大規模和高質量的訓練資料。現在,網路上有大量電子文件,如 Word(.docx)和 Latex(.tex)檔案。這些線上文件的原始碼中包含表格的 mark-up tag。直觀地講,藉助每個文件中的標記語言,研究者可以透過新增邊框來操控這些原始碼。就 Word 文件而言,內部 Office XML 程式碼可以在標註每一表格邊界的地方進行修改。就 Latex 文件而言,tex 程式碼同樣可以在標註表格邊界的地方進行修改。這種方式可以為多個不同域建立高質量的標註資料,如商業檔案、官方名錄和科研論文等,這些資料對大規模表格分析任務大有裨益。
TableBank 資料集共包含 417,234 個高質量標註表格以及各域中對應的的原始文件。為驗證 TableBank 的效果,研究者使用當前最優的端到端深度神經網路模型構建了多個強大的基線。表格檢測模型基於不同設定下的 Faster R-CNN 架構(Ren 等人,2015 年),表結構識別模型基於影像-文字(image-to-text)的編碼器-解碼器框架。實驗結果表明,佈局和格式變化對錶格分析任務的準確率影響很大。此外,在某一特定域訓練的模型在另一域中表現不佳。這表明,在 TableBank 資料集上建模和學習還有很大的進步空間。
資料收集
大致上,研究者構建 TableBank 資料集時使用了兩種不同的檔案型別:Word 文件和 Latex 文件。這兩種檔案型別的原始碼中都包含 mark-up tag。這部分分三步詳細介紹了資料收集過程:文件獲取、建立表格檢測資料集、建立表結構識別資料集。
文件獲取
研究者從網上抓取 Word 文件。這些文件都是 .docx 格式,因此研究者可以透過編輯內部 Office XML 程式碼來新增邊框。研究者並未過濾文件語言,因此這些文件包含英語、中文、日語、阿拉伯語和其他語言。這使得該資料集在實際應用中更多樣化、更穩健。
Latex 文件與 Word 文件不同,因為前者需要其他資源來編譯成 PDF 文件。因此,研究者不能從網上抓取 tex 文件,而是利用最大預印本資料庫 arXiv.org 中的文件以及相應的原始碼。藉助 arXiv bulk data access,研究者下載了 2014 年至 2018 年論文的 Latex 原始碼。
表格檢測
直觀地講,藉助每個文件中的標記語言,研究者可以透過新增邊框來操控原始碼。處理流程如圖 2 所示。就 Word 文件而言,研究者透過編輯每個文件中的內部 Office XML 程式碼來新增表格邊框。每個 .docx 格式檔案有一個壓縮包,解壓後的資料夾中有一個 document.xml 檔案。在 XML 檔案中,該程式碼片段介於標記 <w:tbl> 和 </w:tbl> 之間,通常表示 Word 檔案中的表格,如圖 3 所示。研究者修改 XML 檔案中的程式碼片段,使表格邊框可更改為與文件其他部分不同的顏色。如圖 3 所示,研究者在 PDF 文件中新增了一個綠色邊框,該表格得到完美識別。最後,研究者從 Word 文件中獲得了 PDF 頁面。
圖 2:資料處理流程。
圖 3:透過 Office XML 程式碼中的 <w:tbl> 和 </w:tbl> 標記來識別和標註表格。
表結構識別
表結構識別旨在確定表格的行列布局結構,尤其適用於掃描影像等非數字化文件格式的表格。現有表結構識別模型通常用於識別佈局資訊和單元格的文字內容,而文字內容識別並非這一工作的重心。所以,研究者將任務定義為:給定一個影像格式的表格,生成表示表格行列布局和單元格型別的 HTML 標籤序列。透過這種方式,研究者可以從 Word 和 Latex 文件的原始碼中自動構建表表結構識別資料集。就 Word 文件而言,研究者只需將原始 XML 資訊從文件格式轉換成 HTML 標籤序列即可。而對於 Latex 文件,研究者首先使用 LaTeXML toolkit 從 Latex 中生成 XML,然後將其轉換為 HTML 格式。如圖 4 中的簡單示例,研究者使用 <cell_y> 表示含有文字的單元格,<cell_n> 表示沒有文字的單元格。在過濾噪聲後,研究者基於 Word 和 Latex 文件建立了 145,463 個訓練例項。
圖 4:表格轉 HTML 示例,其中 <cell_y> 表示含有文字的單元格,<cell_n> 表示沒有文字的單元格。
基線
表格檢測
該研究使用 Faster R-CNN 作為表格檢測基線模型,其架構如下圖所示:
圖 5:用於表格檢測的 Faster R-CNN 模型。
表結構識別
該研究使用影像-文字模型作為表結構識別的基線模型,其整體架構如下圖所示:
圖 6:用於表結構識別的影像-文字模型。
實驗
表 1:TableBank 資料集的統計資料。
表 2:使用 ResNeXt-{101,152} 作為骨幹網路對 Word 和 Latex 資料集的評估結果。
表 3:影像-文字模型在 Word 和 Latex 資料集上的評估結果(BLEU)。
表 4:生成 HTML 標註序列和真值序列之間的精確匹配(exact match)數量。
圖 7:使用 a)partial-detection、b)un-detection 和 c)mis-detection 進行表格檢測的示例。
論文:TableBank: Table Benchmark for Image-based Table Detection and Recognition
論文連結:https://arxiv.org/pdf/1903.01949.pdf