通用文檔理解新SOTA,多模態(tài)大模型TextMonkey來(lái)了
最近,華中科技大學(xué)和金山的研究人員在多模態(tài)大模型 Monkey [1](Li et al., CVPR2024)工作的基礎(chǔ)上提出 TextMonkey。在多個(gè)場(chǎng)景文本和文檔的測(cè)試基準(zhǔn)中,TextMonkey 處于國(guó)際領(lǐng)先地位,有潛力帶來(lái)辦公自動(dòng)化、智慧教育、智慧金融等行業(yè)應(yīng)用領(lǐng)域的技術(shù)變革。
- 論文鏈接:https://arxiv.org/abs/2403.04473
- 代碼地址:https://github.com/Yuliang-Liu/Monkey
TextMonkey 是一個(gè)專注于文本相關(guān)任務(wù)(包括文檔問(wèn)答和場(chǎng)景文本問(wèn)答)的多模態(tài)大模型(LMM)。相比于 Monkey,TextMonkey 在多個(gè)方面進(jìn)行改進(jìn):通過(guò)采用零初始化的 Shifted Window Attention,TextMonkey 實(shí)現(xiàn)了更高輸入分辨率下的窗口間信息交互;通過(guò)使用相似性來(lái)過(guò)濾出重要的圖像特征,TextMonkey 不僅能夠簡(jiǎn)化輸入,還可以提高模型的性能。
此外,通過(guò)擴(kuò)展多個(gè)文本相關(guān)任務(wù)并將位置信息納入回答,TextMonkey 增強(qiáng)了可解釋性并減少了幻覺(jué)。與此同時(shí),TextMonkey 在微調(diào)之后還可以具備 APP Agent 中理解用戶指令并點(diǎn)擊相應(yīng)位置的能力,展現(xiàn)了其下游應(yīng)用的巨大潛力。
例如,TextMonkey 展現(xiàn)出強(qiáng)大的視覺(jué)定位與理解能力,不僅能夠定位圖像中的所有文本,還能在視覺(jué)問(wèn)答時(shí)給出答案及其所在位置,增加了可解釋性并減少了幻覺(jué)。
即使在文字相當(dāng)密集的情況下,TextMonkey 也可以讀取輸入圖片中的所有文字并且給出圖片中文本的坐標(biāo)。
TextMonkey 還能幫助我們結(jié)構(gòu)化圖表,表格以及文檔數(shù)據(jù),通過(guò)將圖像內(nèi)容轉(zhuǎn)化為 Json 格式的信息,方便記錄和提取。
實(shí)驗(yàn)結(jié)果表明,TextMonkey 在各種基準(zhǔn)數(shù)據(jù)集上的性能得到了顯著提升,在以場(chǎng)景文本為中心的視覺(jué)問(wèn)答、文檔 VQA 和關(guān)鍵信息抽取任務(wù)中分別取得了 5.2%、6.9% 和 2.8% 的準(zhǔn)確率增長(zhǎng),特別是在 OCRBench [2] 上獲得了 561 的得分,超越此前所有已開(kāi)源的多模態(tài)大模型。
方法介紹
TextMonkey 的成功核心在于它模擬人類視覺(jué)認(rèn)知的方法,這使它能自然而然地識(shí)別高清文檔圖像中各部分的相互關(guān)聯(lián),并靈敏地鑒別出圖像內(nèi)的關(guān)鍵要素。更進(jìn)一步,基于對(duì)用戶多樣化需求的深入理解,TextMonkey 通過(guò)文本定位技術(shù)強(qiáng)化了答案的準(zhǔn)確性,提升了模型的解釋性,減少了幻覺(jué),有效提高了在處理各類文檔任務(wù)上的表現(xiàn)。
圖 1 TextMonkey 整體架構(gòu)
1.Shifted Window Attention
現(xiàn)有的多模態(tài)大模型,如 Monkey 和 LLaVA1.6,通過(guò)將圖像切分為小塊來(lái)提高輸入分辨率。然而這種裁剪策略可能會(huì)無(wú)意中分割相關(guān)單詞,導(dǎo)致語(yǔ)義不連貫。此外,這種分裂造成的空間分離也使得處理與文本位置相關(guān)的任務(wù)(如文本檢測(cè))變得具有挑戰(zhàn)性。TextMonkey 在繼承 Monkey 高效的圖像分辨率縮放功能的同時(shí),采用滑動(dòng)窗口注意力機(jī)制建立了塊與塊之間的上下文聯(lián)系。
2.Token Resampler
目前的多模態(tài)大模型面臨著圖像 token 數(shù)目隨著輸入分辨率的增加而增加的挑戰(zhàn)。由于語(yǔ)言模型的輸入長(zhǎng)度和訓(xùn)練時(shí)間的限制,減少 token 的數(shù)量是很有必要的。
在自然語(yǔ)言中,語(yǔ)言元素會(huì)存在一些冗余信息。那么可以自然的猜測(cè)在擴(kuò)大圖像分辨率之后,視覺(jué)部分的 token 也會(huì)存在冗余。本文根據(jù)以往確定語(yǔ)言元素相似性的方法,對(duì)已經(jīng)映射到語(yǔ)言空間的圖像 token 的相似性進(jìn)行了度量:在圖像 Resampler 之后隨機(jī)選取 20 個(gè)有序特征,利用余弦相似性成對(duì)比較這些特征的相似性,得到的結(jié)果如圖 2 所示。顏色越深代表相似性越高,實(shí)驗(yàn)發(fā)現(xiàn)每個(gè)圖片的 token 都有一個(gè)到幾個(gè)類似的 token,圖片特征中存在冗余。
同時(shí),本文還觀察到某些 token 是高度獨(dú)特的,并且缺乏其他相似的 token,如圖中的第四個(gè) token,這表明這個(gè) token 是更為重要的。因此本文選用相似度來(lái)度量并識(shí)別獨(dú)特的視覺(jué) token。并提出 Token Resampler 來(lái)壓縮冗余視覺(jué) token。通過(guò)計(jì)算每個(gè) token 與其他 token 的相似度,過(guò)濾得到最重要(相似度最低)的 K 個(gè) token。同時(shí),為了避免直接丟棄其他 token 造成的信息丟失,這里還會(huì)利用過(guò)濾得到的 K 個(gè) token 作為查詢,并采用交叉注意力機(jī)制進(jìn)一步融合所有特征。
圖 2 圖像 token 相似性比較
3. 多任務(wù)訓(xùn)練
TextMonkey 支持讀出所有文本,文本檢測(cè)識(shí)別,輸出給定文本坐標(biāo),文本問(wèn)答,具有位置感知的文本問(wèn)答,圖像結(jié)構(gòu)化等多個(gè)任務(wù)。TextMonkey 在進(jìn)行問(wèn)答時(shí)不僅看可以給出答案,還能給出答案所在位置,進(jìn)一步增強(qiáng)了模型的可解釋性。與此同時(shí),在經(jīng)過(guò)微調(diào)之后,TextMonkey 還可以具備 APP Agent 中理解用戶指令并點(diǎn)擊相應(yīng)位置的能力。
實(shí)驗(yàn)分析
1.TextMonkey 與現(xiàn)有的多模態(tài)大模型相比,表現(xiàn)出了優(yōu)越的性能。
2. 為了進(jìn)一步驗(yàn)證 TextMonkey 的有效性,本文還在更多數(shù)據(jù)集上進(jìn)行了測(cè)試。(其中 Deepform 和 KLC 使用 F1-score 作為評(píng)估指標(biāo),WTQ 使用 accuracy, ChartQA 使用 relaxed accuracy, DocVQA 使用 ANLS。)
3.TextMonkey 在 Text Spotting 數(shù)據(jù)集上相比于傳統(tǒng) OCR 模型也取得了極具競(jìng)爭(zhēng)力的效果。
4. 表 7 的消融實(shí)驗(yàn)表明 Shifted Window Attention 和 Token Resampler 兩個(gè)模塊的有效性。
5. 表 9 的消融實(shí)驗(yàn)證明:由于分辨率的提高導(dǎo)致冗余 token 的顯著增加,使得找到關(guān)鍵信息變得更加困難,在不壓縮 Token 的情況下直接增加分辨率實(shí)際上會(huì)導(dǎo)致一致的性能損失,如在表中第一行和第四行,在不壓縮 Token 時(shí),分辨率由 896 增加到 1344 會(huì)導(dǎo)致模型在四個(gè)數(shù)據(jù)集上的指標(biāo)均有所下降,這說(shuō)明了沒(méi)有策略地一味增加模型的分辨率反而會(huì)帶來(lái)負(fù)面影響,如何合理地增加分辨率,將會(huì)是一個(gè)需要集中解決的問(wèn)題。不僅如此,表 9 中還說(shuō)明,當(dāng)選取不同的壓縮 Token 數(shù)量時(shí),對(duì)模型性能的影響也是顯著的,選取一個(gè)合適的值來(lái)作為壓縮 Token 的數(shù)量,可以使得模型的性能進(jìn)一步提升。
可視化結(jié)果展示
TextMonkey 在場(chǎng)景圖像和文檔圖像中都能準(zhǔn)確定位和識(shí)別文本。此外,(a) 中的自然圖像、(b) 中的文檔、(c) 中的圖表和 (d) 中的表格都展示了 TextMonkey 在多種場(chǎng)景下識(shí)別、理解和定位文本信息的能力。
本文還探索了 TextMonkey 作為智能手機(jī)應(yīng)用程序的 Agent 代理方面的可行性。使用來(lái)自 Rico 數(shù)據(jù)集的 15k 用戶點(diǎn)擊數(shù)據(jù)上進(jìn)行微調(diào)之后,TextMonkey 能夠理解用戶意圖并點(diǎn)擊相應(yīng)的圖標(biāo),這表明了 TextMonkey 在微調(diào)之后作為 App Agent 的巨大潛力。
總結(jié)
TextMonkey 在 Monkey 的基礎(chǔ)上增強(qiáng)了其圖像間的跨窗口交互,在擴(kuò)大分辨率的基礎(chǔ)上增強(qiáng)了視覺(jué)信息的語(yǔ)義連續(xù)性,有效緩解了視覺(jué)信息碎片化的問(wèn)題;并通過(guò)提出過(guò)濾融合策略減少圖像特征長(zhǎng)度,從而減少輸入到大語(yǔ)言模型中冗余的視覺(jué) token 數(shù)量。論文的實(shí)驗(yàn)說(shuō)明,分辨率不是越大越好,不合理的提高模型分辨率策略有時(shí)會(huì)給模型帶來(lái)負(fù)面影響,如何合理地?cái)U(kuò)大分辨率才是一個(gè)更值得去思考的問(wèn)題。
此外,通過(guò)在問(wèn)答中引入位置信息,TextMonkey 增強(qiáng)了可解釋性并減少了幻覺(jué)。TextMonkey 在多個(gè)文本相關(guān)的測(cè)試基準(zhǔn)中處于國(guó)際領(lǐng)先,在 OCRBench 中超越其他開(kāi)源多模態(tài)大模型。TextMonkey 的到來(lái)為通用文檔理解帶來(lái)曙光,這有潛力促進(jìn)辦公自動(dòng)化、智慧教育、智慧金融等行業(yè)的技術(shù)變革。