加速 Document AI (文檔智能) 發展

語言: CN / TW / HK

在企業的數字工作流中充滿了各種文檔,包括信件、發票、表格、報告、收據等,我們無法自動提取它們的知識。如今隨着文本、視覺和多模態人工智能的進步,我們有可能解鎖這些知識,這篇文章向你展示了你的團隊該如何使用開源模型來構建免費的定製化解決方案。

Document AI 包括了許多數據科學的任務,包括圖像分類、圖像轉文本 (image to text)、文檔回答 (document question answering) 、表格回答 (table question answering) 以及視覺回答 (visual question answering) 。

本文將向大家介紹 Document AI 中的六種不同使用場景,以及它們的最佳開源模型,之後重點分三個方面介紹了許可、數據準備和建模問題,在文章中,有一些 Web 演示、文檔和模型的鏈接。

六大使用場景

構建 Document AI 解決方案至少有六個使用場景,這些使用場景在文檔輸入和輸出的數據結構上有所不同,在解決具體的企業 Document AI 問題時,往往需要綜合各種方法。

1. 光學字符識別 (OCR)

將打字、手寫或打印的文本變成機器編碼的文本,這一過程被稱為光學字符識別 (OCR)。這是一個被廣泛研究的問題,有許多成熟的開源和商業產品,圖中展示了一個將手寫文字轉換為文本的案例:

圖片

OCR 是 Document AI 使用場景的支柱,它對於將文本轉化為計算機可讀的東西至關重要,一些廣泛使用的模型是 EasyOCR 或 PaddleOCR ,它們在文檔層面上運行。還有一些模型在單行文本圖像上運行,比如 TrOCR:基於轉化器的光學字符識別與預訓練模型,這個模型與 CRAFT 這樣的文本檢測模型一起工作,它首先以邊界框的形式識別文檔中的單個文本「片斷」。

OCR 的相關指標是字符錯誤率 ( CER ) 和 word-level 精度、召回率和 F1。在這個空間可以看到 CRAFT 和 TrOCR 的演示。

2. 文檔圖像分類

將文檔歸入適當的類別,如表格、發票或信件,被稱為文檔圖像分類。

分類的對象可以選擇文檔的圖像和文本中的一種或兩種,最近,出現了一些更為先進的採用視覺結構和底層文本的多模態模型,它們的加入極大地提高了分類器的性能。

一個基本的方法是在文檔圖像上應用 OCR,然後使用類似 BERT 的模型進行分類,然而,BERT 模型並不能考慮到任何佈局或視覺信息,同時參考 RVL-CDIP 數據集的圖,我們可以看到不同文檔類型的視覺結構是不同的:

圖片

這就是 LayoutLM 和 Donut 等多模態模型發揮作用的地方,由於同時納入了文本和視覺信息,這些模型可以極大地提高準確性,在 RVL-CDIP  (文檔圖像分類的一個重要基準數據集) 上:

  • 基於 BERT 的模型僅使用文本,實現了 89% 的準確率;

  • DiT (Document image Transformer) 僅使用視覺,可以達到 92% 的準確率;

  • 而像 LayoutLMv3 和 Donut 這樣使用多模態 Transformer 將文本和視覺信息結合起來的模型,可以達到 95% 的準確率,它們正在改變從業者解決 Document AI 問題的方法。

3. 文檔佈局分析 (Document layout analysis)

文檔佈局分析是確定文檔物理結構的任務,即確定構成文檔的各個組成部分,如文本段落、標題和表格。

這項任務通常是通過將其作為一個圖像分割 (image segmentation) 、物體檢測 (object detection)  問題來解決,該模型的輸出為一組分割掩碼 / 邊界框,以及類別名稱。

目前最先進的文檔佈局分析模型是 LayoutLMv3 和 DiT (Document image Transformer) 。這兩種模型都使用經典的 Mask R-CNN 框架作為對象檢測的骨架。這個 文檔佈局分析空間説明了 DiT 模型如何被用來識別文檔中的文本段、標題和表格。這裏展示了一個使用 DiT 檢測文檔不同部分的例子:

圖片

用 DiT 進行文檔佈局分析

文檔佈局分析通常使用 mAP (平均精度) 指標來評估對象檢測模型,使用 PubLayNet 數據集作為重要基準,截至本文寫作,最先進的模型是 LayoutLMv3,其總體 mAP 得分為 0.951 (點擊查看各模型精度對比) 。

4. 文檔解析

比佈局分析更進一步的是文檔解析,文檔解析的目標是識別和提取文檔中的關鍵信息,比如識別發票表格中的名稱、項目和總數,點擊 LayoutLMv2 Space 可以瞭解如何解析文檔,識別問題、答案和標題。

LayoutLM 的第一個版本 (現在稱為 LayoutLMv1) 於 2020 年發佈,顯著提高了當時存在的基準,如今它仍然是 Hugging Face Hub 上最受歡迎的模型之一,用於 Document AI。LayoutLMv2 和 LayoutLMv3 在預訓練期間納入了視覺特徵,相比於第一代提供了一個改進。LayoutLM 系列讓 Document AI 的性能方面產生了階梯式的變化。例如,在 FUNSD 基準數據集上,BERT 模型的 F1 指標層面得分是 60%,但使用 LayoutLM,就有可能達到 90%!

LayoutLMv1 現在有許多繼承者:

  • Donut 建立在 LayoutLM 的基礎上,但可以把圖像作為輸入,所以它不需要一個單獨的 OCR 引擎;
  • ERNIE-Layout 最近被髮布了,並取得了令人鼓舞的成果,請看 Space

對於多語言的使用情況,LayoutLM 有一些多語言的變種,比如 LayoutXLM 和 LiLT,這張來自 LayoutLM 論文的圖展示了 LayoutLM 對一些不同文檔的分析:

圖片

雖然數據科學家發現文檔佈局分析和提取是企業的關鍵使用場景,但由於大多數企業數據在內容和結構上的多樣性,現有的通用商業解決方案通常無法處理。因此,數據科學團隊通常可以微調自己的模型來超越現有的商業工具。

5. 表格檢測、內容提取和結構識別

文檔通常包含表格,而大多數 OCR 工具在表格數據上的工作效果並不十分理想,無法做到開箱即用,這就需要表格的檢測,內容提取和結構識別工作。

檢測的任務是識別表格的位置,提取則是對該信息進行結構化表示,結構識別是識別構成表格的各個部分的任務,如行、列和單元。更進一步表格功能分析 (Functional Analysis) 是識別表的鍵 (key) 和值 (value) 的任務,下圖 Table transformer 的圖説明了各個子任務之間的區別。

圖片

表格檢測和結構識別的方法與文檔佈局分析類似,使用對象檢測模型,輸出為一組邊界框和相應的類。最新的方法,如 Table Transformer ,可以用同一個模型實現表的檢測和表的結構識別。

Table Transformer 是一個類似 DETR 的對象檢測模型,在 PubTables-1M  (由一百萬張表組成的數據集) 上進行訓練。表的檢測和識別的評估通常採用平均精度 (AP) 指標。據報告,在 PubTables-1M 數據集上, Table Transformer 的性能在表檢測方面的 AP 為 0.966,在表結構識別 + 功能分析方面的 AP 為 0.912。

雖然表格檢測和提取有了一個令人興奮的方法,但在你的數據上,結果可能是不同的,根據我們的經驗,不同表格的質量和格式差別很大,這會影響模型的表現,所以在一些自定義的數據上進行額外的微調將大大改善性能。

6. 文檔回答 (DocVQA)

文檔上的問題回答 ( Question Answering) 已經極大地改變了人們與人工智能的交互方式,最近的進展使得要求模型回答關於圖像的問題成為可能 —— 這被稱為文檔視覺回答,或簡稱 DocVQA 。

在得到一個問題後,模型會分析圖像,並回答一個答案,下圖是 DocVQA 數據集 的一個例子:

  • 用户問道:"提到寫的郵政編碼嗎?"

  • 模型回答説:" 是的。

圖片

在過去,建立一個 DocVQA 系統往往需要多個模型一起工作,比如用單獨的模型來分析文檔佈局、執行 OCR 、提取實體,然後再使用一個模型回答問題。而最新的 DocVQA 模型能夠以端到端的方式進行問題回答,只需要一個 (多模態) 模型。

DocVQA 通常使用平均歸一化列文斯坦相似度 ( ANLS ) 指標進行評估,關於這個指標的更多細節,我們可以參考這個指南:

  • 在 DocVQA 基準上,目前最先進的是 LayoutLMv3,這個模型由 OCR + 多模態 Transformer 組成,它的 ANLS 得分達到了 83.37;

  • 而使用單一的編碼器 - 解碼器 Transformer 以端到端的方式解決任務的 Donut 模型沒有提供最先進的準確性,只是展示了使用類似 T5 的生成模型的端到端方法的巨大潛力;

Impira 開發了一個令人 興奮的 space,説明了 DocVQA 的 LayoutLM 和 Donut。

雖然視覺回答是是可信的,但若要成功地使用它,有許多注意事項,需要團隊擁有準確的訓練數據、評估指標和後處理過程。

還要注意 DocVQA 的正常工作也可能出問題:在某些情況下,回答可能是不可預測的,模型可能會出現 "幻覺",給出一個不在文檔中出現的答案,以及視覺回答模型可以繼承數據中的偏見,從而引發道德問題,所以要建立一個成功的 DocVQA 解決方案,確保正確的模型設置和後處理十分必要。

Document AI 中的許可 (License) 問題

工業界和學術界為推進 Document AI 做出了巨大貢獻,有各種各樣的模型和數據集可供數據科學家使用。然而,對於建立一個企業解決方案來説,許可證可能是一個不小的問題,一些著名的模型會有限制性許可,它們無法商用,比如最值得警惕的:微軟的 LayoutLMv2 和 LayoutLMv3 的 checkpoints。

當你開始一個項目時,應該仔細評估潛在的模型的許可證情況,在一開始就知道你想使用哪些模型,因為這會影響數據的收集和註釋,本文末尾有一個流行模型的表格,其中有它們的許可授權相關信息。

Document AI 中的數據準備問題

Document AI 的數據準備很關鍵,並具有一定挑戰性,需要有正確註釋的數據,以下是我們在數據準備方面學到的一些經驗和方法:

  1. 機器學習取決於你的數據規模和質量,如果你文檔裏面的圖像質量很差,你不能指望人工智能能夠神奇地閲讀這些文檔,同樣地,如果你的訓練數據很小,且有很多不同數據類型,模型的表現可能會很差,Document AI 就像機器學習中的其他問題一樣,數據越大,性能越好。

  2. 在方法上要靈活,你可能需要測試幾種不同的方法來找到最佳解決方案。一個很好的例子是 OCR ,你可以使用像 Tesseract 這樣的開源產品、像 Cloud Vision API 這樣的商業解決方案,或者像 Donut 這樣的開源多模態模型內部的 OCR 能力。

  3. 從小處開始,仔細評估你的表現。根據我們的經驗,你可以通過幾百個文檔獲得良好的結果,所以先註釋少量數據 (annotating data) ,並明智地選擇模型工具。縮小了整體方法,就可以開始擴大數據的規模,最大限度地提高你的預測準確性。在註釋時,記住一些任務,如佈局識別和文檔提取,需要識別文檔中的特定區域,要確保註釋工具支持它的邊界框 (bounding boxes) 。

Document AI 中的模型構建

構建模型的靈活性為數據科學家帶來了許多選擇,我們強烈建議團隊從預訓練的開源模型開始,根據你的具體文檔微調模型,這通常是獲得好模型的最快途徑。對於考慮建立自己的預訓練模型的團隊,請注意這可能涉及到數百萬的文檔,並且很容易耗費幾周的時間來訓練一個模型。建立一個預訓練的模型需要很大的努力,不建議大多數數據科學團隊使用。

如果選擇從微調一個模型開始,首先要問自己這些問題:

  1. 你想讓模型來處理 OCR 嗎?例如,Donut 不需要對文檔進行 OCR 處理,直接在全分辨率的圖像上工作,所以在建模之前不需要 OCR 。當然,根據你的問題設置,單獨獲取 OCR 可能更簡單。

  2. 你應該使用更高分辨率的圖像嗎?當使用 LayoutLMv2 的圖像時,它將圖像縮減為 224 乘 224,而 Donut 則使用完整的高分辨率圖像。然而,使用完整的高分辨率圖像會極大地增加訓練和推理所需的內存。

  3. 你是如何評估這個模型的?注意錯位的邊界框,確保 OCR 引擎提供的邊界框與模型處理器相一致。其次,讓你的項目要求指導你的評估指標。例如,在一些任務中,如標記分類或問題回答,100% 的匹配可能不是最好的衡量標準,像部分匹配這樣的指標可以讓更多的潛在標記得到考慮,比如 "Acme" 和 "internal Acme" 可以作為匹配。最後,在評估過程中要考慮道德問題,因為這些模型可能是在使用有偏見的數據,或提供不穩定的結果,可能對某些人羣有偏見。

接下來的步驟

你是否看到了 Document AI 的無限可能性?我們每天都在利用最先進的視覺和語言模型釋放有價值的數據幫助企業,我們在這篇文章中包含了各種 demo 的鏈接,所以可以把它們作為一個起點。這篇文章的最後一節包含了開始編寫你自己的模型的資源,例如視覺回答模型,一旦你準備好開始建立你的解決方案,Hugging Face 模型中心 是一個不錯的起點,它託管了大量的 Document AI 模型。

如果你想加速 Document AI 工作,Hugging Face 可以幫助你:通過我們的 企業加速計劃,我們與企業合作,為人工智能使用場景提供指導,對於 Document AI ,我們會幫助您建立一個預訓練模型,提高微調任務的準確性,或為你的第一個 Document AI 案例提供總體指導。我們還可以提供計算積分,以便您大規模地使用我們的訓練 (AutoTrain) 或推理 (Spaces 或 Inference Endpoints) 產品。

資源

許多 Document AI 模型的筆記本和教程可以在以下網站找到。

我們還整理了 Document AI 最流行的開源模型以及其指標和基準數據集,請 點擊這裏

正文部分譯者:

丁繼崢 Johnson,微信號:ZJUer_0817 拾象 DAO 成員,浙江大學機器人工程專業,主要關注 AI 模型與交互的前沿進展,專用機器人的產業落地,通用機器人的無限可能。

博客原網址:
http://hf.co/blog/document-ai