金融領(lǐng)域文檔智能應(yīng)用實(shí)踐
吾道科技(iWudao Tech)一直致力于將 AI 技術(shù)和金融領(lǐng)域知識(shí)相結(jié)合,面向一級(jí)市場(chǎng)提供金融大數(shù)據(jù)和資訊服務(wù)。站在 2024 年二季度,金融行業(yè)試水大模型應(yīng)用已經(jīng)一年半了,在以大模型為代表的 AI 技術(shù)驅(qū)動(dòng)下,金融行業(yè)的眾多技術(shù)路線、業(yè)務(wù)場(chǎng)景迎來(lái)升級(jí)。在這個(gè)大變革的時(shí)代下,本次分享將聚焦于文檔智能在金融領(lǐng)域的應(yīng)用。
一、文檔智能的技術(shù)范疇
首先介紹一下文檔智能技術(shù)范疇。
文檔是指含有文字的紙張、圖像或電子文件,隨著數(shù)字化智能化的發(fā)展,對(duì)各行各業(yè)中圖文并茂的富格式文檔進(jìn)行分析識(shí)別與理解具有廣泛的應(yīng)用需求。
文檔智能又稱(chēng)為 Document AI 或 Document Intelligence,包含文檔分析與識(shí)別、文檔理解兩個(gè)技術(shù)領(lǐng)域。
文檔分析與識(shí)別的流程,是從輸入文檔圖像到輸出 HTML 等結(jié)構(gòu)化數(shù)據(jù),中間經(jīng)過(guò)圖像處理、版面分析、內(nèi)容識(shí)別等主要環(huán)節(jié),每個(gè)環(huán)節(jié)有很多不同的技術(shù)問(wèn)題。
- 圖像處理:預(yù)處理得到高質(zhì)量的文檔頁(yè)面圖像,為后續(xù)版面分析和內(nèi)容識(shí)別提供支撐。
- 版面分析:包含物理版面分析(即區(qū)域分割及分類(lèi))和邏輯版面分析(即閱讀順序判定),常見(jiàn)的區(qū)域類(lèi)別有文本、表格、圖形等,其中文本又可分為標(biāo)題、段落、公式、附注等,表格分為有邊框表格、無(wú)邊框表格、部分邊框表格等,圖形分為流程圖、結(jié)構(gòu)圖、數(shù)據(jù)圖、印章、照片等。
- 內(nèi)容識(shí)別:對(duì)版面分析輸出的不同分割區(qū)域類(lèi)型進(jìn)行相對(duì)應(yīng)的內(nèi)容識(shí)別。其中對(duì)文本部分的識(shí)別稱(chēng)為光學(xué)字符識(shí)別即 OCR,OCR 一直是文檔識(shí)別研究的中心和主線,通常分為文字檢測(cè)和文字識(shí)別兩個(gè)環(huán)節(jié),近年來(lái)也有很多端到端的文本識(shí)別技術(shù)被提出。隨著文本識(shí)別技術(shù)日趨成熟以及工業(yè)界對(duì)表格識(shí)別需求的日益增長(zhǎng),2019 年以來(lái),表格識(shí)別的研究迅猛發(fā)展,主要分為自頂向下的行列分割方法、自底向上的單元格檢測(cè)方法、由圖片生成結(jié)構(gòu)序列的端到端方法。另外還有圖形識(shí)別、公式識(shí)別等,就不在這里一一列出。
文檔智能的另一個(gè)領(lǐng)域是文檔理解,是指對(duì)文檔進(jìn)行語(yǔ)義理解和信息抽取,過(guò)去通常作為文檔分析與識(shí)別的重要下游任務(wù),近年來(lái)多模態(tài)、多模態(tài)大模型以及 OCR-Free 的端到端文檔理解技術(shù)開(kāi)始涌現(xiàn)。
二、金融領(lǐng)域的文檔智能
接下來(lái)介紹金融領(lǐng)域文檔智能的意義和特點(diǎn)。
金融行業(yè)廣泛使用圖文并茂的富格式文檔,這些文檔中蘊(yùn)含著豐富的高價(jià)值信息資源。與手動(dòng)處理方式相比,自動(dòng)化地將這些文檔內(nèi)容轉(zhuǎn)換為結(jié)構(gòu)化數(shù)據(jù)可以大幅提升處理效率,且極大地便利后續(xù)的數(shù)據(jù)分析和挖掘工作,從而為金融從業(yè)者和決策制定者提供更加全面和精確的數(shù)據(jù)支持。
隨著深度學(xué)習(xí)技術(shù)的發(fā)展,文檔智能相關(guān)的新技術(shù)紛紛涌現(xiàn),卷積神經(jīng)網(wǎng)絡(luò)、循環(huán)神經(jīng)網(wǎng)絡(luò)、圖神經(jīng)網(wǎng)絡(luò)、Transformer 等技術(shù)的發(fā)展使得復(fù)雜版面的文檔分析與識(shí)別實(shí)現(xiàn)性能突破,受益于多模態(tài)融合、大模型等技術(shù)的提出,很多以前不可能做到的文檔深度理解場(chǎng)景已經(jīng)成為可能。
上圖中列出了常見(jiàn)的金融文檔類(lèi)型,這些文檔里面包含了大量有價(jià)值的信息,比如審計(jì)報(bào)告里的財(cái)務(wù)數(shù)據(jù)、募集說(shuō)明書(shū)和招股說(shuō)明書(shū)里的歷史沿革等,可以很好地反映一個(gè)公司的經(jīng)營(yíng)狀況和發(fā)展歷史。那么如何快速處理海量富格式文檔,從中精準(zhǔn)定位并抽取有用的信息,從而構(gòu)建知識(shí)圖譜、進(jìn)行數(shù)據(jù)分析或用戶(hù)交互,對(duì)于金融領(lǐng)域的文檔智能是很大的挑戰(zhàn)。
金融領(lǐng)域文檔的一個(gè)顯著特點(diǎn)就是頁(yè)數(shù)多文字多,像審計(jì)報(bào)告、年報(bào)半年報(bào)、募集說(shuō)明書(shū)、招股說(shuō)明書(shū)等通常都是幾百頁(yè)的 PDF 文件。即使是目前上下文長(zhǎng)度最大的大模型服務(wù),這些 PDF 的字?jǐn)?shù)仍然遠(yuǎn)遠(yuǎn)超過(guò)其最大 token 限制,那么如何從幾百頁(yè)的富格式文檔中快速定位是必須要做的工作。
另外,金融領(lǐng)域文檔版面十分復(fù)雜,除了常見(jiàn)的單欄和雙欄頁(yè)面外,還有很多嵌套的復(fù)雜版面格式,比如第一張圖里的評(píng)級(jí)報(bào)告頁(yè)面。
金融領(lǐng)域文檔的樣式也足夠豐富,流程圖、結(jié)構(gòu)圖、數(shù)據(jù)圖等圖形里蘊(yùn)含大量數(shù)據(jù),邏輯結(jié)構(gòu)復(fù)雜的表格十分常見(jiàn),對(duì)于信息抽取而言,有時(shí)需要合并不同區(qū)域?qū)ο笾谐槿〉降男畔⒉拍塬@得完整的結(jié)構(gòu)化數(shù)據(jù)。
從圖像質(zhì)量的角度來(lái)看,金融領(lǐng)域也存在不少歪曲、模糊等低質(zhì)量畫(huà)面的文檔,尤其是一些拍照掃描材料或年代久遠(yuǎn)的文檔,后面會(huì)在圖像處理中簡(jiǎn)述這方面的原因及修復(fù)工作。另外,金融文檔也常見(jiàn)密集小尺寸的文本對(duì)象,如圖中的財(cái)務(wù)報(bào)表,往往都是至關(guān)重要的數(shù)據(jù)。再加上印章、水印的干擾,尤其是黑白印章的覆蓋,使得后續(xù)的內(nèi)容識(shí)別任務(wù)相當(dāng)困難。
以上就是金融領(lǐng)域文檔智能的特點(diǎn)和面臨的挑戰(zhàn)。
三、文檔分析與識(shí)別
接下來(lái)對(duì)文檔分析與識(shí)別的各項(xiàng)技術(shù)做一下歸納綜述并介紹一下我們的探索。
1. 圖像處理
文檔圖像質(zhì)量影響后續(xù)的版面分析和內(nèi)容識(shí)別效果,而圖像質(zhì)量取決于物理文檔形狀、成像條件和成像視角等。
常見(jiàn)的文檔圖像預(yù)處理工作有:文檔檢測(cè)、圖像矯正和圖像增強(qiáng)。
文檔檢測(cè)是為了判斷圖像是否是文檔頁(yè)面以及文檔的類(lèi)型。
圖像矯正的目的是將 90 度旋轉(zhuǎn)或傾斜的頁(yè)面進(jìn)行修正,以及還原扭曲變形的紙張。旋轉(zhuǎn)和傾斜是因?yàn)榧垙埛胖貌徽龑?dǎo)致的,因此 20 世紀(jì) 90 年代以來(lái)一些學(xué)者開(kāi)始研究如何矯正,主要采用多方向投影。紙張不平、彎曲、褶皺以及相機(jī)視角是造成圖像形變的因素,早期基于 3D 重構(gòu)和 2D 圖像處理的矯正方法不具備普適性,近幾年基于深度學(xué)習(xí)形變矯正已成為主流,例如基于預(yù)測(cè)密集形變場(chǎng)進(jìn)行矯正的方法,典型的有 ICCV-2019 上的工作 DewarpNet 如右上角所示,通過(guò)預(yù)測(cè)出三維坐標(biāo)圖、形變場(chǎng)和陰影圖等來(lái)繼續(xù)更精細(xì)的文檔矯正,也有一些工作是基于預(yù)測(cè)稀疏控制點(diǎn)進(jìn)行矯正的方法,可以減少矯正模型的計(jì)算量。
圖像增強(qiáng)的目的是為了去除頁(yè)面中陰影、水印等有干擾的噪聲,為后續(xù)版面分析和內(nèi)容識(shí)別的工作提供支撐。歷史文檔因紙張陳舊、污損等,圖像噪聲多,為此提出了一些顏色分離、局部二值化等改進(jìn)方法來(lái)處理文本和背景的分離問(wèn)題。值得一提的是,因?yàn)楹诎讙呙鑼?dǎo)致和文字顏色相同的印章去除仍是比較有挑戰(zhàn)性的工作。
2. 版面分析
版面分析的目的是將文檔圖像分割成不同類(lèi)型內(nèi)容的區(qū)域并分析區(qū)域之間的關(guān)系,是內(nèi)容識(shí)別之前的關(guān)鍵步驟。
一種方式是采用基于目標(biāo)檢測(cè)或?qū)嵗指畹穆肪€,F(xiàn)aster R-CNN、Mask R-CNN 等通用框架被用來(lái)對(duì)文檔圖像中的目標(biāo)區(qū)域進(jìn)行分割。近年來(lái)隨著基于 Vision Transformer 和多模態(tài)技術(shù)的提出,版面分析技術(shù)得到進(jìn)一步發(fā)展,比如這里貼出的??低曉?ICDAR-2021 發(fā)表的工作 VSR、以及阿里在 ICCV-2023 發(fā)表的工作 VGT,都是我們常用的模型,另外,LayoutLM 系列模型除了文檔理解任務(wù)以外,版面分析也是其工作一個(gè)主要任務(wù)。
下面介紹一下我們?cè)诎婷娣治龅囊恍?shí)驗(yàn)工作,在使用 Mask R-CNN 框架的模型中,我們把傳統(tǒng)的 CNN BackBone 替換為 ViT BackBone,比如這邊我們用差不多參數(shù)量的 Swin-T 替換 ResNet-50,發(fā)現(xiàn)精度提升明顯,尤其是檢測(cè)目標(biāo)不完整或遺漏的情況得以緩解。
另外一個(gè)工作是基于多模態(tài)融合的版面分析工作,通過(guò)實(shí)驗(yàn)我們發(fā)現(xiàn) VSR 等多模態(tài)模型和基于 Mask R-CNN 等分割模型相比,視覺(jué)上相似目標(biāo)區(qū)域的識(shí)別精度提升明顯,如圖所示,文本段落和表格附注的視覺(jué)特征很相似,加入語(yǔ)義信息后,版面分析的精度提升顯著。
3. 內(nèi)容識(shí)別
接下來(lái)介紹內(nèi)容識(shí)別的工作,將分別介紹文本檢測(cè)與識(shí)別、表格識(shí)別和圖形識(shí)別。
(1)文本檢測(cè)與識(shí)別
文本檢測(cè)與識(shí)別,也是我們常說(shuō)的光學(xué)字符識(shí)別(OCR),接下來(lái)我會(huì)分別介紹一下二階段也就是先文字檢測(cè)再文本識(shí)別的技術(shù)以及端到端的方法。
文本檢測(cè)旨在獲取文檔或自然場(chǎng)景圖像中的文本區(qū)域,與通用目標(biāo)不同,文本往往具有多方向、極端長(zhǎng)寬比和形狀多變等特點(diǎn),這導(dǎo)致基于水平框的通用目標(biāo)檢測(cè)方法難以處理。受限于手工設(shè)計(jì)特征的表征能力,早期的文本檢測(cè)方法性能不佳。隨著深度學(xué)習(xí)方法的流行,文本檢測(cè)性能快速提升。檢測(cè)方法演變的顯著趨勢(shì)是變得越來(lái)越靈活以及輕量化,從簡(jiǎn)單場(chǎng)景水平文本到多方向文本再到復(fù)雜場(chǎng)景的任意形狀文本檢測(cè),從復(fù)雜多階段以及煩瑣的后處理方法再到輕量級(jí)單階段的方法。
首先講一下基于回歸的方法:基于回歸的方法與通用目標(biāo)檢測(cè)類(lèi)似,需要回歸預(yù)測(cè)文本包圍框的頂點(diǎn)坐標(biāo)位置。然而,由于文本往往存在多方向、任意形變以及極端長(zhǎng)寬比變化等特點(diǎn),現(xiàn)有的通用目標(biāo)檢測(cè)框架難以直接用于處理文本檢測(cè),為此提出了一些有針對(duì)性的方法。
一個(gè)比較著名的早期工作是 ECCV-2016 上發(fā)表的工作 CTPN,如左上角所示,將圖像空間劃分為多個(gè)小塊,再使用循環(huán)神經(jīng)網(wǎng)絡(luò)去分析小塊的上下文連接關(guān)系。CTPN 對(duì)于長(zhǎng)文本檢測(cè)具有穩(wěn)定的效果,但只能處理近似水平的文本。
右下角所示的 AAAI-2017 上發(fā)表的工作 TextBoxes 系列設(shè)計(jì)了一系列具有不同長(zhǎng)寬比的錨點(diǎn)和卷積核來(lái)適應(yīng)文本的長(zhǎng)寬比變化,通過(guò)多任務(wù)學(xué)習(xí)來(lái)同時(shí)預(yù)測(cè)文本的水平框和四邊形框。
為了針對(duì)任意方向的文本進(jìn)行檢測(cè),SegLink 系列和 DRRG 都是直接回歸獲得文本單元以及關(guān)系。
為了更好地?cái)M合不規(guī)則文本的輪廓,一些方法采用基于曲線擬合的方法來(lái)擬合文本的形狀,比如 CVPR-2021 上的基于傅里葉曲線的 FCENet 等,就不在這里一一贅述。
再來(lái)介紹一下基于圖像分割的方法。基于圖像分割的方法能夠提供像素級(jí)的檢測(cè)結(jié)果,可適應(yīng)文本的任意形狀。基于圖像分割的場(chǎng)景文本檢測(cè)通??梢钥醋鍪嵌诸?lèi)分割任務(wù),旨在精確分離文本和背景。由于分割方法只能提供一個(gè)像素級(jí)的預(yù)測(cè)概率,這類(lèi)方法通常需要后處理操作以獲取精準(zhǔn)的文本檢測(cè)結(jié)果。
華科白翔老師的團(tuán)隊(duì)在 CVPR-2016 首次提出用全卷積網(wǎng)絡(luò) FCN 檢測(cè)文本行,實(shí)現(xiàn)了多方向場(chǎng)景文本檢測(cè)。
AAAI-2018 上的工作 PixelLink,在預(yù)測(cè)文本像素的同時(shí),預(yù)測(cè)了像素間的文本連接關(guān)系,對(duì)于分割后處理提供了更豐富的信息。
此后的代表性分割方法大多致力于設(shè)計(jì)信息更豐富的分割網(wǎng)絡(luò),這有利于后處理過(guò)程能夠獲得更加準(zhǔn)確的文本區(qū)域。比如同在 CVPR-2019 上的文章 PSENet 和 Naver 的 CRAFT。
雖然基于分割的文本檢測(cè)能夠適應(yīng)文本形狀的多樣性,但其后處理過(guò)程往往帶來(lái)了更多的時(shí)間消耗。為了簡(jiǎn)化后處理的過(guò)程,華科白翔老師團(tuán)隊(duì)在 AAAI-2020 上的工作 DBNet 提出了一個(gè)可微的二值化網(wǎng)絡(luò)模塊,該模塊可以與分割網(wǎng)絡(luò)一同進(jìn)行優(yōu)化,并使模型自適應(yīng)地選擇所有位置所需的二值化閾值。聯(lián)合優(yōu)化的過(guò)程不僅提升了檢測(cè)的性能,而且簡(jiǎn)化了后處理的操作,在場(chǎng)景文本檢測(cè)任務(wù)的速度和精度方面取得了理想的平衡。DBNet 后來(lái)被著名的開(kāi)源項(xiàng)目 PaddleOCR 選做檢測(cè)算法,且在 OpenCV 和微信 OCR 中被使用,是一個(gè)應(yīng)用廣泛的文字檢測(cè)算法。
除此之外,還有混合的方法,將回歸和分割融合到一起,結(jié)合兩者的優(yōu)勢(shì)從而更精確地定位文本位置。
其中最具代表性的工作是曠視在 CVPR-2017 上發(fā)表的工作 EAST 以及中科院自動(dòng)化研究所劉成林老師團(tuán)隊(duì)在 ICCV-2017 上發(fā)表的工作,在全卷積分割網(wǎng)絡(luò)的基礎(chǔ)上直接得到本文區(qū)域任意四邊形框,消除了中間候選框提取的過(guò)程,具有較高的效率和精度。
近幾年,基于 Transformer 的混合回歸與分割的方法也在文本檢測(cè)領(lǐng)域上逐步展現(xiàn)了潛力,例如 CVPR-2022 上阿里和網(wǎng)易的兩篇工作在上圖中列出,就不在這里展開(kāi)。
檢測(cè)出文字區(qū)域后,我們需要通過(guò)文本識(shí)別技術(shù)將區(qū)域內(nèi)的文本內(nèi)容提取出來(lái)。傳統(tǒng)的文本識(shí)別主要針對(duì)紙張文檔,包括印刷體文本識(shí)別和手寫(xiě)體文本識(shí)別兩大類(lèi)。近年來(lái),自然場(chǎng)景文本識(shí)別由于其字形多變、背景復(fù)雜等技術(shù)挑戰(zhàn),受到了廣泛關(guān)注,逐漸成為 OCR 領(lǐng)域新的研究熱點(diǎn)。對(duì)于我們金融行業(yè)來(lái)說(shuō),傳統(tǒng)的紙張文檔文本識(shí)別還是我們主要的處理對(duì)象。
首先講一下基于 CTC 的方法,CTC 方法的優(yōu)勢(shì)在于無(wú)需進(jìn)行單字符切分,也無(wú)需文本標(biāo)注和模型輸入的對(duì)齊信息,即可學(xué)習(xí)到二者的隱式對(duì)齊信息。
最著名的工作是華科白翔老師團(tuán)隊(duì)在 TRAMI-2016 上發(fā)表的工作 CRNN,如右圖所示,該方法將文本識(shí)別任務(wù)視為序列識(shí)別任務(wù),在多種不同場(chǎng)景下都展現(xiàn)了不錯(cuò)的性能。從 CRNN 以后,基于 CNN + RNN + CTC 的文本識(shí)別方法成為文本識(shí)別領(lǐng)域的主流方法之一。有句話這么講,比 CRNN 速度快的性能沒(méi)它好,比 CRNN 性能好的速度沒(méi)它快,因此該方法在發(fā)布后的很多年里在工業(yè)界極具競(jìng)爭(zhēng)力。
此外,F(xiàn)acebook 在 KDD-2018 上發(fā)表的 Rosetta 也是一個(gè)基于 CTC 的工作,商湯在 AAAI-2020 上發(fā)表的 GTC 提出使用注意力機(jī)制來(lái)引導(dǎo) CTC 的訓(xùn)練,并使用圖卷積網(wǎng)絡(luò)來(lái)發(fā)揮 CTC 解碼器的潛力。
百度 Paddle 在 IJCAI-2022 上出品的 SVTR 摒棄了包含特征模型和序列模型的二階段算法,僅通過(guò)單個(gè)視覺(jué)模型就完成了特征提取和文本轉(zhuǎn)錄這兩個(gè)任務(wù),既能保證推理速度,又能獲得更好的識(shí)別效果。
文本識(shí)別的另一種方法是基于注意力機(jī)制也就是 Attention 的方法,Attention 的方法早期應(yīng)用于機(jī)器翻譯,特點(diǎn)是可以自動(dòng)地為需要關(guān)注的區(qū)域分配較高的權(quán)重。在文字識(shí)別任務(wù)中,模型會(huì)為每個(gè)字符預(yù)測(cè)一個(gè)注意力權(quán)重,通過(guò)該注意力權(quán)重與視覺(jué)特征的加權(quán)和,來(lái)預(yù)測(cè)出相應(yīng)的字符。
基于Attention 的方法可以分為基于 RNN Attention 和基于Transformer Attention 的方法。
CVPR-2016上雅虎支持的一項(xiàng)工作 R2AM 首次將 Attention 引入文本識(shí)別領(lǐng)域,同樣在 CVPR-2016 華科白翔老師團(tuán)隊(duì)發(fā)表的 RARE,如左圖所示,較早地將注意力機(jī)制用于文本識(shí)別,值得一提的是這個(gè)方法后來(lái)在 ppstructure 中被修改去做表格識(shí)別的任務(wù)。
根據(jù) PaddleOCR 的實(shí)驗(yàn)結(jié)論,從效果上來(lái)看,通用 OCR 場(chǎng)景 CTC 的識(shí)別效果優(yōu)于 RNN Attention,因?yàn)槌S弥形臐h字三千字以上,訓(xùn)練樣本不足的情況下序列關(guān)系挖掘比較困難,導(dǎo)致中文場(chǎng)景下 Attention 模型的優(yōu)勢(shì)無(wú)法體現(xiàn)。而且 Attention 適合短語(yǔ)句識(shí)別,對(duì)長(zhǎng)句子識(shí)別比較差。從訓(xùn)練和預(yù)測(cè)速度上來(lái)看,RNN Attention 的串行解碼結(jié)構(gòu)限制了預(yù)測(cè)速度,而 CTC 網(wǎng)絡(luò)結(jié)構(gòu)更高效,預(yù)測(cè)速度上也更有優(yōu)勢(shì)。
前面提到 RNN Attention 串行解碼的方式耗時(shí)較多且計(jì)算量大,因此很多工作開(kāi)始使用基于 Transformer 來(lái)進(jìn)行并行化處理,相比 RNN 也可獲得更強(qiáng)的語(yǔ)義信息。
中科院在 2018 年一項(xiàng)工作 NRTR 使用了完整的 Transformer 結(jié)構(gòu)對(duì)輸入圖片進(jìn)行編碼和解碼,如左圖所示,只使用了簡(jiǎn)單的幾個(gè)卷積層做高層特征提取,在文本識(shí)別上驗(yàn)證了 Transformer 結(jié)構(gòu)的有效性。
還有 Naver 在 2019 年提出的 SATRN、平安在 2019 年提出的 Master、中科大團(tuán)隊(duì)分別在 CVPR-2021 發(fā)表的 ABINet 和 ICCV-2021 發(fā)表的 VisionLAN 等,都驗(yàn)證了基于 Transformer 方法并行訓(xùn)練的高效性和精度可靠性。
近年來(lái),有些工作將文本檢測(cè)和識(shí)別聯(lián)合起來(lái)考慮,提出了一系列端到端文本檢測(cè)與識(shí)別技術(shù),稱(chēng)為 Text Spotting。
基于深度學(xué)習(xí)的端到端方法大致可以分為兩階段和一階段兩大類(lèi)方法。
兩階段模型中,劉成林老師團(tuán)隊(duì)在 ICCV-2019 上發(fā)表的 TextDragon 及 Naver 在 ECCV-2020 發(fā)表的 CRAFTS,都是基于組件的方式處理不規(guī)則文本。華南理工團(tuán)隊(duì)的 ABCNet 系列對(duì)不規(guī)則文本的邊界進(jìn)行幾何建模,而華科白翔老師團(tuán)隊(duì)的 Mask TextSpotter 系列模型結(jié)合上述兩種方式的特點(diǎn),在 Mask R-CNN 檢測(cè)文本行的基礎(chǔ)上加入了單字檢測(cè)與識(shí)別。華南理工金連文老師團(tuán)隊(duì)在 CVPR-2022 提出的 SwinTextSpotter 模型可以使識(shí)別分支更充分地利用來(lái)自檢測(cè)分支的反饋,提高了端到端文本識(shí)別的性能。
近年來(lái),考慮到端到端聯(lián)合訓(xùn)練檢測(cè)與識(shí)別分支時(shí),特征對(duì)齊與變換的操作會(huì)造成特征的失真,從而給識(shí)別帶來(lái)負(fù)面影響,一些學(xué)者提出了單階段的方法,即模型可以在檢測(cè)文本區(qū)域的同時(shí)預(yù)測(cè)文本的內(nèi)容。深圳碼隆科技在 ICCV-2019 提出的 CharNet 是較早提出的方法。??低曉?AAAI-2021 提出的 MANGO 可根據(jù)字符級(jí)別的分類(lèi)結(jié)果,并行輸出端到端識(shí)別結(jié)果。CVPR-2022 上發(fā)表的 TESTR 設(shè)計(jì)了雙通道解碼器,同時(shí)輸出文本檢測(cè)框及其對(duì)應(yīng)的文本識(shí)別內(nèi)容。華南理工金連文老師團(tuán)隊(duì)和華科白翔老師團(tuán)隊(duì)聯(lián)合發(fā)布的 SPTS 模型首次將端到端文本檢測(cè)和識(shí)別任務(wù)建模為簡(jiǎn)潔的序列預(yù)測(cè)問(wèn)題,采用基于 Transformer 的序列預(yù)測(cè)模型將文本檢測(cè)和識(shí)別融為一體。
總體來(lái)看,近年來(lái)此領(lǐng)域涌現(xiàn)出不少基于 Transformer 框架的端到端場(chǎng)景文本識(shí)別新方法,是值得關(guān)注的發(fā)展方向。
(2)表格識(shí)別
接下來(lái)介紹內(nèi)容識(shí)別的第二個(gè)部分:表格識(shí)別。
表格識(shí)別的目標(biāo)是識(shí)別出表格的布局結(jié)構(gòu)、層次結(jié)構(gòu)等,將表格視覺(jué)信息轉(zhuǎn)換成可重建表格的結(jié)構(gòu)描述信息,這些表格結(jié)構(gòu)描述信息包括:?jiǎn)卧竦木唧w位置、單元格之間的關(guān)系和單元格的行列位置等。在當(dāng)前的研究中,表格結(jié)構(gòu)信息主要包括以下兩類(lèi)描述形式:①單元格的列表(包含每個(gè)單元格的信息:行列位置、單元格坐標(biāo)、文本坐標(biāo)及內(nèi)容等);②表格的邏輯結(jié)構(gòu)(HTML、Latex 等)。表格識(shí)別的方法主要分為自頂向下的行類(lèi)分割方法、自底向上的單元格檢測(cè)方法、由圖片生成序列的端到端方法,接下來(lái)我會(huì)具體介紹這三類(lèi)方法的處理流程及特點(diǎn)。
首先是自頂向下的行列分割方法,是較早開(kāi)始研究的基于深度學(xué)習(xí)的方法。通常分為兩個(gè)步驟,第一步是將表格分割成網(wǎng)格單元(語(yǔ)義分割或目標(biāo)檢測(cè)獲得分割交點(diǎn)、行列像素分類(lèi))。第二步是判斷網(wǎng)格關(guān)系(規(guī)則判斷、CNN 或多模態(tài)相鄰網(wǎng)格二分類(lèi)、GNN 邊分類(lèi)、基于網(wǎng)格單元的 RNN/Transformer)。
當(dāng)然早期很多工作沒(méi)考慮網(wǎng)格關(guān)系判斷,因此無(wú)法處理有合并單元格的表格,只能處理簡(jiǎn)單二維表格。
第一個(gè)比較完善的方法是 Adobe 在 ICDAR-2019 上發(fā)表的工作 SPLERGE,對(duì)表格的行列分割和分割后的合并都進(jìn)行了詳細(xì)的討論,提出了一個(gè)合并網(wǎng)絡(luò),將表格分割為最細(xì)粒度的基本單元,然后進(jìn)行合并得到真正的表格結(jié)構(gòu)。
隨后國(guó)內(nèi)在表格識(shí)別領(lǐng)域逐漸興起并逐漸處于較為領(lǐng)先的水平,中科大團(tuán)隊(duì)在 ICDAR-2021 提出的 SEM 在會(huì)議舉辦的比賽中獲得復(fù)雜表格識(shí)別的第一名,采用 ResNet-34 + FPN 做行列分割,復(fù)用分割網(wǎng)絡(luò)的視覺(jué)特征 + Bert 提取的語(yǔ)義信息作為網(wǎng)格特征,采用 GRU 處理網(wǎng)格合并,而在 2023 年更新的 SEMv2 中,用 Transformer 獲取網(wǎng)格單元的依賴(lài)關(guān)系來(lái)處理單元格的合并。
另外一個(gè)微軟亞洲的工作 TSRFormer 在使用 ResNet-18 + FPN + Spatial CNN 提取特征后,采用基于 Transformer 的 Decoder 分割行列,然后通過(guò) Grid CNN 判斷相鄰網(wǎng)格是否需要合并。
接著是自底向上的單元格檢測(cè)方法,通常分為兩個(gè)步驟,先檢測(cè)單元格或文本塊區(qū)域(語(yǔ)義分割、頂點(diǎn)檢測(cè)、文本聚合等),再判斷單元格或文本塊關(guān)系(根據(jù)位置規(guī)則判斷、GNN 邊分類(lèi)、多模態(tài)等)。
一個(gè)較早在 2019 年提出的方法 GraphTSR 模型,將每個(gè)單元格視做一個(gè)節(jié)點(diǎn),構(gòu)建出全連接圖,使用圖網(wǎng)絡(luò)來(lái)對(duì)每條邊進(jìn)行分類(lèi),判斷 K 鄰的單元格對(duì)是否在同一行或同一列。另一個(gè)由北交大團(tuán)隊(duì)在 ICDAR-2019 提出的 Res2TIM 系統(tǒng),在融合得到特征后,構(gòu)建單元格對(duì)來(lái)判斷兩個(gè)單元格的上下左右關(guān)系來(lái)重建表格。不過(guò)這兩個(gè)工作都沒(méi)有給出完善的單元格區(qū)域檢測(cè)說(shuō)明。
另一個(gè)工作是來(lái)自印度的團(tuán)隊(duì)在 ECCV-2020 上提出的 TabStruct-Net,使用修改的 Mask R-CNN 檢測(cè)單元格,F(xiàn)PN 和 LSTM 提取單元格的視覺(jué)特征,DGCNN 構(gòu)建無(wú)向圖,判斷單元格對(duì)是否屬于同行同列。
??低曉?ICDAR-2021 奪得比賽第一名的 LGPMA,重點(diǎn)優(yōu)化了空白單元格對(duì)檢測(cè)模型的干擾。阿里在 ICCV-2021 提出的 Cycle-CenterNet,通過(guò)同時(shí)檢測(cè)單元格的中心以及 4 個(gè)單元格的交匯點(diǎn)來(lái)得到單元格區(qū)域。騰訊優(yōu)圖在 CVPR-2022 提出的 NCGM 提取幾何、視覺(jué)和文本等多模態(tài)特征,判斷文本行是否同行、同列、同單元格。
這個(gè)分類(lèi)的方法較多,已在左下角列出,就不一一介紹了。
在圖片生成序列的方法中,早期使用 RNN 生成結(jié)構(gòu)序列和單元格信息(單元格坐標(biāo)或文本內(nèi)容),近幾年基于 Transformer 的序列生成方法在公開(kāi)數(shù)據(jù)集效果提升顯著。
早期的幾個(gè)工作都是基于 RNN 生成結(jié)構(gòu)序列,如微軟亞洲在 LREC-2020 發(fā)表的工作 TableBank、Bloomberg 在 ICDAR-2019 發(fā)表的工作 Table2Latex、IBM 澳洲在 ECCV-2020 發(fā)表的工作 EDD 等。
平安在 ICDAR-2021 提出的 TableMaster 首先將 Transformer Decoder 應(yīng)用在基于序列生成的表格識(shí)別任務(wù)中,隨后 IBM 在 CVPR-2022 發(fā)表了處理流程差不多的 TableFormer,他們加入Transformer Encoder 做特征提取并降低了 Transformer 的參數(shù)量使得模型更輕量化。
華為在 CVPR-2023 上提出的 VAST 額外添加了視覺(jué)和結(jié)構(gòu)對(duì)齊模塊,以解決單元格 bounding box 漂移的問(wèn)題。
另外 IBM 在 ICDAR-2023 上提出新的表格表示方法 OTSL,和 HTML 的表示方式相比可以極大得減少序列長(zhǎng)度。
復(fù)旦團(tuán)隊(duì)在 ACL-2023 上提出的 TableVLM 融合文本、視覺(jué)、空間位置特征的多模態(tài) Transformer 作為 Encoder,而 Decoder 依然采用標(biāo)準(zhǔn) Transformer 輸出 HTML 序列。
金融領(lǐng)域的表格樣式非常豐富,那么面對(duì)這些差異很大的表格時(shí),能否訓(xùn)練一個(gè)通用模型來(lái)解決金融領(lǐng)域所有的表格識(shí)別場(chǎng)景呢,目前來(lái)看是很難做到的,因?yàn)槊款?lèi)方法都有明顯的優(yōu)缺點(diǎn)。如圖所示的這些表格,表頭結(jié)構(gòu)十分復(fù)雜,如果用 image-to-sequence 的方法,Transformer 畢竟是為語(yǔ)言模型設(shè)計(jì)的,而表格復(fù)雜的部分往往是在序列靠前的位置,因此想要整個(gè)序列完全正確會(huì)十分困難。
再看這一頁(yè)的例子,行或列的分割特征不明顯情況下,使用行列分割的方法難度很大,并且如果使用基于 OCR 的多模態(tài)技術(shù),如何檢測(cè)出準(zhǔn)確的文本行也是一個(gè)挑戰(zhàn)。如果表格過(guò)大的話會(huì)導(dǎo)致 HTML 序列長(zhǎng)度很長(zhǎng),如果使用基于 image-to-sequence 的方法會(huì)帶來(lái)很大的計(jì)算量,同時(shí)也要考慮到 Transformer 誤差累積的特性,大表格也更容易出錯(cuò)。預(yù)測(cè)出來(lái)的單元格框容易偏移。
這一頁(yè)的左圖,表格有大量空白單元格,對(duì)于基于單元格檢測(cè)的方法會(huì)很不利,并且對(duì)于判斷相鄰單元格關(guān)系對(duì)的方法,兩個(gè)空白單元格沒(méi)有任何特征,不可能實(shí)現(xiàn)合并的判斷。對(duì)白右邊的圖,單元格內(nèi)有多行文本,這種情況不適合以文本行為節(jié)點(diǎn)構(gòu)建圖用 GNN 邊分類(lèi)判斷關(guān)系的方法,否則會(huì)導(dǎo)致計(jì)算量過(guò)大。
僅憑視覺(jué)信息無(wú)法判斷表格結(jié)構(gòu)的表格也很常見(jiàn),例如左邊這張表,最左邊一列是同樣的縮進(jìn),最下面的字段是換行關(guān)系,而上方的字段則是歸屬關(guān)系,這種情況沒(méi)有多模態(tài)技術(shù)是很難做對(duì)的。
每一類(lèi)的表格識(shí)別方法都有明顯的優(yōu)缺點(diǎn),如何自動(dòng)識(shí)別表格的種類(lèi)從而選擇最合適的識(shí)別方法,也是工業(yè)領(lǐng)域工程落地工作的一個(gè)難點(diǎn)。
(3)圖形識(shí)別
內(nèi)容識(shí)別里面最重要的兩個(gè)模塊:OCR 和表格識(shí)別已經(jīng)介紹完了,還有很多的特殊版塊內(nèi)容識(shí)別就不在這里一一列舉了,下面簡(jiǎn)單介紹一下我們?cè)趫D形識(shí)別中的一個(gè)工作:股權(quán)結(jié)構(gòu)圖的識(shí)別。
這項(xiàng)工作是吾道科技和華中科技大學(xué)合作的,主要目標(biāo)是從招股說(shuō)明書(shū)或募集說(shuō)明書(shū)中識(shí)別股權(quán)結(jié)構(gòu),以構(gòu)建金融知識(shí)圖譜。我們提出了一種更可靠的框圖識(shí)別系統(tǒng),用于股權(quán)結(jié)構(gòu)圖識(shí)別,能夠很好識(shí)別各種場(chǎng)景下的復(fù)雜連線。此外,我們利用股權(quán)結(jié)構(gòu)圖自身的結(jié)構(gòu)特點(diǎn),開(kāi)發(fā)實(shí)現(xiàn)了一套自動(dòng)生成股權(quán)結(jié)構(gòu)圖和對(duì)應(yīng)標(biāo)注數(shù)據(jù)的工具。
首先使用 VSR 版面分析抽取出股權(quán)結(jié)構(gòu)圖,然后基于 Oriented R-CNN,使用改進(jìn)后的關(guān)鍵點(diǎn)檢測(cè)對(duì)股權(quán)圖的節(jié)點(diǎn)和線進(jìn)行檢測(cè),最后生成股權(quán)關(guān)系三元組。
實(shí)驗(yàn)結(jié)果顯示我們提出的方法對(duì)于 Arrow R-CNN 在性能上有顯著的進(jìn)步,尤其是對(duì)連線的識(shí)別有巨大的改進(jìn),如果有興趣可以到 arxiv 查看我們的論文。
四、文檔理解
接下來(lái)介紹一下文檔理解的相關(guān)技術(shù)。
在文檔分析與識(shí)別工作的基礎(chǔ)上,通過(guò)信息抽取或語(yǔ)義理解等技術(shù)來(lái)處理文檔理解,此時(shí)文檔理解作為文檔分析與識(shí)別的一個(gè)重要下游任務(wù)。
隨著大模型的發(fā)展,越來(lái)越多的信息抽取及語(yǔ)義理解任務(wù)被降維替換,但文檔分析與識(shí)別目前來(lái)看依舊可以扮演重要的角色,相對(duì)于簡(jiǎn)單文本行的抽取,一個(gè)性能良好的文檔分析與識(shí)別工具可以為大模型提供帶有結(jié)構(gòu)信息的穩(wěn)定輸入,很大程度提高大模型信息抽取的性能。
這邊的例子是我們關(guān)于股權(quán)變動(dòng)事件抽取的工作,首先通過(guò)章節(jié)定位和版面分析將事件所在的段落和表格篩選出來(lái),然后判斷變動(dòng)事件的類(lèi)型是增資、減資還是轉(zhuǎn)讓?zhuān)瑥谋砀癯槿∽邮录⒎治龊Y選出相關(guān)的句子,然后用基于觸發(fā)詞的事件抽取模型從文本中抽取子事件論元,最后將子事件合并為完整的股權(quán)變動(dòng)事件。
在我們的業(yè)務(wù)場(chǎng)景中,還有很多相似的業(yè)務(wù)流程,以前通常我們要為每個(gè)任務(wù)訓(xùn)練專(zhuān)用模型,從準(zhǔn)備數(shù)據(jù)、訓(xùn)練模型到工程落地往往持續(xù)較長(zhǎng)的周期,隨著大模型的發(fā)展,很多簡(jiǎn)單的任務(wù)只需替換為 zero-shot 或 few-shot 的 prompt 就可以達(dá)到應(yīng)用需求,極大地提升了開(kāi)發(fā)效率。
多模態(tài)文檔理解的一個(gè)常見(jiàn)的工作范式:圖像經(jīng)過(guò) OCR 獲取到文本,圖像通過(guò)視覺(jué)的 BackBone 獲得視覺(jué)特征,然后做特征融合送進(jìn) Transformer Encoder 去獲取融合之后的特征,然后去做后續(xù)的預(yù)訓(xùn)練任務(wù),每個(gè)模型的預(yù)訓(xùn)練任務(wù)都是不一樣的,做完預(yù)訓(xùn)練后再去做下游的微調(diào)任務(wù)。
基于這個(gè)范式會(huì)有很多優(yōu)化工作,比如 LayoutLM 系列,右下角這張是微軟亞洲在 ACM-MM-2022 發(fā)表的 LayoutLMv3,他的做法是對(duì)圖像做成 patch embedding 來(lái)和文本拼接,省去了 LayoutLMv2 中 CNN BackBone 的計(jì)算量,然后直接把 Transformer Encoder 當(dāng)做一個(gè) ViT 做融合學(xué)習(xí)。
然后左上角這個(gè)圖是一個(gè)比較有特點(diǎn)的模型,是華南理工金連文老師團(tuán)隊(duì)在 ACL-2022 發(fā)表的 LiLT,LiLT 是雙塔結(jié)構(gòu),把 text flow 和 layout flow 分開(kāi)了,可以進(jìn)行靈活的替換 text 或 layout,并且 LiLT 是純文本輸入,沒(méi)有圖像作為輸入也可以達(dá)到一個(gè)很好的效果,甚至比 LayoutLMv2 還要好。
此外還有百度在 ACM-MM-2021 發(fā)表的 StructTexT、螞蟻在 CVPR-2022 的工作 XYLayoutLM、Google 在 ACL-2022 的工作 FormNet 系列、微軟亞洲在 AAAI-2023 的工作 KVPFormer、阿里在 CVPR-2023 的工作 GeoLayoutLM 以及發(fā)表在 EMNLP-2023 針對(duì)關(guān)系抽取任務(wù)做優(yōu)化的 GOSE,如右上角圖片所示,時(shí)間關(guān)系就不在這里展開(kāi)介紹了。
隨著大模型把 Transformer Decoder 帶入我們的視角,誕生了一種 OCR-Free 的架構(gòu),這個(gè)做法是把圖像直接送進(jìn) Transformer Encoder 里,然后直接經(jīng)過(guò)一個(gè) Transformer Decoder 去理解信息,最后通過(guò)自回歸的方式直接輸出信息。
這方面最早的工作是 Naver 在 ECCV-2022 發(fā)表的工作 Donut,以及百度在 ICLR-2023 的工作 StrucTexTv2。
雖然 OCR-Free 的模型非常靈活可以同時(shí)做多任務(wù)訓(xùn)練,但也存在一個(gè)問(wèn)題就是文字準(zhǔn)確率不如前面我們講的范式,這也是后續(xù)研究需要解決的問(wèn)題。
隨著 MLLM(多模態(tài)大模型)和 LVLM(視覺(jué)大模型)的發(fā)展,文檔理解從去年下半年開(kāi)始迎來(lái)新的范式,很多基于多模態(tài)大模型或視覺(jué)大模型的文檔理解工作開(kāi)始涌現(xiàn)。這里展示的是今年最新的文檔理解模型:華科和金山研究人員在 CVPR-2024 發(fā)表的多模態(tài)大模型 Monkey 基礎(chǔ)上提出的 TextMonkey、阿里的 DocOwl 1.5。
隨著大模型技術(shù)的不斷發(fā)展,很多以前無(wú)法自動(dòng)化處理的任務(wù)都成為了可能,比如如圖所示的一些 Chart Understanding 領(lǐng)域的工作,將圖表轉(zhuǎn)化成結(jié)構(gòu)化數(shù)據(jù),之前沒(méi)有太關(guān)注,現(xiàn)在已經(jīng)有大模型產(chǎn)品比如 GPT4V、Claude 提供類(lèi)似的功能。
隨著LVLMs(Large Vision Language Models)的持續(xù)發(fā)展,Chart Understanding 的各項(xiàng)任務(wù)都取得了變革性的突破,SOTA 基本都是被基于預(yù)訓(xùn)練模型和 LVLM 所刷新的。
下面這篇文章是我這幾天看到的一篇曠視在本周開(kāi)源的工作,是一篇關(guān)于圖表結(jié)構(gòu)化提取的最新文章,柱狀圖、折線圖、餅圖等圖表的理解和推理能力是目前 VLM 研究中的重點(diǎn)和難點(diǎn)。在金融領(lǐng)域會(huì)有很多可落地的場(chǎng)景,是值得我們?nèi)コ掷m(xù)關(guān)注和探索的研究領(lǐng)域。
五、文檔智能未來(lái)展望
最后探討一下文檔智能技術(shù)的未來(lái)發(fā)展趨勢(shì)和展望。
首先回顧一下文檔智能在金融領(lǐng)域面臨的挑戰(zhàn)和問(wèn)題:
- 金融行業(yè)是文檔密集型的行業(yè),有海量的公告、文書(shū)需要處理,金融文檔種類(lèi)繁多且復(fù)雜多樣,如何構(gòu)建能夠泛化到不同金融文檔類(lèi)型的模型是目前面臨的一大挑戰(zhàn)。
- 金融文檔通常頁(yè)數(shù)很多,并且需要保持較高的分辨率,用基于深度學(xué)習(xí)或大模型的方法處理幾百頁(yè)的文檔需要很多算力,如何快速響應(yīng)是需要考慮的問(wèn)題。
- 金融行業(yè)對(duì)數(shù)據(jù)安全性有極高的要求,如何保證模型尤其是大模型的可靠性和穩(wěn)定性是工程落地需要思考的問(wèn)題。
接著說(shuō)下大模型技術(shù)給我的沖擊和啟示:
- ChatGPT 從發(fā)布到現(xiàn)在一年多,其發(fā)展速度說(shuō)實(shí)話是比我想象中要快不少的,回看去年年初測(cè)試 davinci 和 codex 的實(shí)驗(yàn)文檔,無(wú)論是從上下文長(zhǎng)度、速度、價(jià)格還是效果來(lái)看都有非常大的進(jìn)步,而多模態(tài)大模型和視覺(jué)大模型所擁有的理解能力也讓我覺(jué)得很不可思議,我們的工作方式和技術(shù)路線都產(chǎn)生了巨大的變革。
- 大模型從技術(shù)上并不算是一個(gè)全新的概念,2020 年就發(fā)布了 GPT-3,但是感覺(jué)部署這樣龐大的模型距離實(shí)際生產(chǎn)環(huán)境的落地還很遠(yuǎn),所以繼續(xù)聚焦在 BERT 為代表的常規(guī)預(yù)訓(xùn)練模型上,OpenAI 在發(fā)展很久還是局面不利的情況下依舊堅(jiān)持 Autoregressive,是他們成功的原因。這也啟示我要跳出局限的認(rèn)知用發(fā)展的眼光看待技術(shù)。
最后講一下我對(duì)未來(lái)的展望,拋出我的觀點(diǎn),我相信并且期望大模型可以一統(tǒng)江山,一個(gè)模型可以處理 NLP 和 CV 所有的任務(wù),希望那一天早日到來(lái)。在學(xué)術(shù)研究迅速發(fā)展的同時(shí),我們工業(yè)界也應(yīng)該跟上節(jié)奏,提升對(duì)新技術(shù)的關(guān)注和敏感性,及時(shí)探索更多的落地場(chǎng)景和實(shí)際應(yīng)用。