【文档智能】多模态预训练模型及相关数据集汇总

前言

大模型时代,在现实场景中或者企业私域数据中,大多数数据都以文档的形式存在,如何更好的解析获取文档数据显得尤为重要。文档智能也从以前的目标检测(版面分析)阶段转向多模态预训练阶段,本文将介绍目前一些前沿的多模态预训练模型及相关数据集。

多模要预训练模型导图

LayoutLM

概述:该模型主要针对文档信息的处理,传统的类Bert模型仅使用文本信息,该模型引入了布局信息(即文本的位置坐标)和视觉信息,并使用MVLM和MDC训练策略进行预训练。

paper:LayoutLM: Pre-training of Text and Layout for Document Image Understanding

link:https://arxiv.org/abs/1912.13318

code:https://github.com/microsoft/unilm/tree/master/layoutlm

模型结构

  • 文本嵌入:Bert backbone
  • 布局嵌入:(1)利用Bert的backbone,增加边界框嵌入( x 0 x_0 x0, y 0 y_0 y0, x 1 x_1 x1, y 1 y_1 y1),其中( x 0 x0 x0 , y 0 y_0 y0)对应于边界框中左上角的位置,( x 1 x_1 x1 , y 1 y_1 y1)表示右下角的位置;(2)[CLS]位置则用整个文本块的边界框坐标;
  • 视觉嵌入(仅在finetune阶段使用):(1)用FasterRCNN提取扫描件的视觉特征,将其与bert的输出融合;(2)利用OCR获取文本和对应布局信息;(3)[CLS]使用Faster R-CNN模型来生成嵌入,使用整个扫描的文档图像作为感兴趣区域(ROI);

预训练任务

  • Masked Visual-Language Model (MVLM):使用bert的MLM任务MASK掉token,但保留对应的布局信息,借助布局信息和上下文信息预测对应token。
  • Multi-label Document Classification (MDC):一个可选策略,旨在对文档进行分类,模型可以对来自不同领域的知识进行聚类,并生成更好的文档级表示

LayoutLMv2

概述:相比于LayoutLM更好的融入了视觉信息,以及视觉、文档和布局信息的对齐,引入空间自注意力编码,提出两种新的损失函数TIA和TIM进行预训练。LayoutLMv1仅在fine-tuning阶段用到视觉特征,pretraining阶段没有视觉特征与文本特征的跨模态交互。Pretraining阶段,提出multi-modal transformer,融合text、layout、visual information;在LayoutLMv1中MVLM基础上,新增text-image alignment与text-image matching两个预训练任务。

paper:LayoutLMv2: Multi-modal Pre-training for Visually-rich Document Understanding

link:https://arxiv.org/abs/2012.14740

code:https://github.com/microsoft/unilm/tree/master/layoutlmv2

模型结构

  • 文本嵌入:Bert backbone

  • 视觉嵌入 :
    V i = P r o j ( V i s T o k E m b ( I ) i ) + P o s E m b 1 D ( i ) + S e g E m b ( [ C ] ) V_i=Proj(VisTokEmb(I)_i)+PosEmb1D(i)+SegEmb([C]) Vi=Proj(VisTokEmb(I)i)+PosEmb1D(i)+SegEmb([C])

    • 视觉特征提取backbone:ResNeXt-FPN
    • 将图片统一缩放到224x224大小,经过backbone后平均池化成固定大小WxH(7x7),再展平得到长度为49的序列,再经过一个线性层映射到与文本嵌入相同的维度;
    • 额外增加一维位置嵌入,与文本一维位置嵌入共享参数
  • 布局嵌入:

    • 除边界框嵌入( x 0 x_0 x0, y 0 y_0 y0, x 1 x_1 x1, y 1 y_1 y1)外,还增加宽w和高h嵌入;

    • 布局嵌入与LayoutLM中四个坐标相加不同,这里拼接六个位置嵌入为一个输入,每个位置嵌入维度为隐层维度/6;
      I i = C o n c a t ( P o s E m b 2 D x ( x m i n , x m a x , w i d t h ) , P o s E m b 2 D y ( y m i n , y m a x , h e i g h t ) ) I_i=Concat(PosEmb2D_x(x_{min},x_{max},width),PosEmb2D_y(y_{min},y_{max},height)) Ii=Concat(PosEmb2Dx(xmin,xmax,width),PosEmb2Dy(ymin,ymax,height))

    • 图像经backbone得到长度为49的序列,将其视为把原图切分成49个块,视觉部分的布局嵌入使用每个块的布局信息;

    • 对于[CLS], [SEP]和[PAD],布局信息使用(0,0,0,0,0,0)表示;

预训练任务
  • Masked Visual-Language Model (MVLM):与LayoutLM相同,为了避免视觉信息泄露,在送入视觉backbone之前,将对应掩码token的视觉区域掩盖掉。
  • Text-Image Alignment (TIA):作用:帮助模型学习图像和边界框坐标之间的空间位置对应关系。(1)随机选择一些文本行,覆盖对应图像区域;(2)在编码器最后一层设置一个分类层,预测是否被覆盖,分类标签为[Convered]、[Not Convered],计算二元交叉熵损失;当同时被mask和cover时,不计算TIA损失,为了防止学习到mask到cover的映射。
  • Text-Image Matching (TIM):将[CLS]处的输出表示输入分类器,以预测图像和文本是否来自同一文档页面。帮助模型学习文档图像和文本内容之间的对应关系。

LayoutLMv3

概述:文本的布局信息使用了片段级别,一段文本共用一组坐标。视觉借鉴了ViT的方法替换CNN,减少了参数以及省去了很多的预处理步骤。使用了两种新的损失MIM和WPA进行预训练。

paper:LayoutLMv3: Pre-training for Document AI with Unified Text and Image Masking

link:https://arxiv.org/abs/2204.08387

code:https://github.com/microsoft/unilm/tree/master/layoutlmv3

模型结构

  • 文本嵌入:RoBerta backbone
  • 视觉嵌入:与layoutLMv2相同,与之前的单词级别的边界框不同,此处使用了片段级别的嵌入,即:块边界框。
  • 布局嵌入:不再使用CNN网络,采用类似ViT思想的backbone,将图片切分成一个个的patches。

预训练任务

  • Masked Language Modeling (MLM):使用span掩码策略,mask掉30%的文本token,maks的span长度服从泊松分布(λ=3)
  • Masked Image Modeling (MIM):
    • 用分块掩码策略随机掩盖掉40%的图像token,用交叉熵损失驱动其重建被掩盖的图像区域;
    • 图像token的标签来自一个图像tokenizer,通过图像vocab将密集图像的像素转化成离散token,相比于低级高噪声的细节部分,更促进学习高级特征;
  • Word-Patch Alignment (WPA):学习文本单词和图像patches之间的细粒度对齐。WPA的目的是预测文本单词的相应图像补丁是否被屏蔽。具体地说,当对应的图像标记也被取消屏蔽时,为未屏蔽的文本标记分配一个对齐的标签[aligned]。否则,将指定一个未对齐的标签[unaligned]。

LayoutXLM

概述:该模型是LayoutLMv2的多语言版本,这里不再详细赘述。

paper:LayoutXLM: Multimodal Pre-training for Multilingual Visually-rich Document Understanding

link:https://arxiv.org/abs/2104.08836

code:https://github.com/microsoft/unilm/tree/master/layoutxlm

ERNIE-Layout

概述:通过增强布局知识的预训练模型,以学习更好的表示,结合文本、布局和图像的特征。旨在利用文档布局相关信息,进行文档理解,进一步提高文档信息抽取的性能。

paper:ERNIE-Layout: Layout Knowledge Enhanced Pre-training for Visually-rich Document Understanding

link:https://arxiv.org/abs/2210.06155

code:https://github.com/PaddlePaddle/PaddleNLP/tree/develop/model_zoo/ernie-layout

该模型之前介绍过,详细请移步《文档智能:ERNIE-Layout

GeoLayoutLM

概述:GeoLayoutLM通过显式建模几何关系和特殊的预训练任务来提高文本和布局的特征表示。该模型能够提高文档信息抽取的性能。

paper:GeoLayoutLM: Geometric Pre-training for Visual Information Extraction

link:https://arxiv.org/abs/2304.10759

code:https://github.com/AlibabaResearch/AdvancedLiterateMachinery/tree/main/DocumentUnderstanding/GeoLayoutLM

该模型之前介绍过,详细请移步《【文档智能】:GeoLayoutLM:一种用于视觉信息提取(VIE)的多模态预训练模型

数据集

总结

本文简单介绍了文档智能领域关于多模态预训练语言模型相关内容及相关数据集,相对于基于目标检测(版面分析)的pipline形式,多模态预训练模型能够一定程度的实现端到端的提取文本内容。但实际应用还需要根据特定的场景进行进一步的研究。

参考文献

【1】https://mp.weixin.qq.com/s/cw5wCpJCYo7Wdi1PtsRgGw

【2】https://mp.weixin.qq.com/s/3l4NvGfy8LaKuj_3HGH5pg

【3】LayoutLM: Pre-training of Text and Layout for Document Image Understanding

【4】LayoutLMv2: Multi-modal Pre-training for Visually-rich Document Understanding

【5】LayoutLMv3: Pre-training for Document AI with Unified Text and Image Masking

【6】LayoutXLM: Multimodal Pre-training for Multilingual Visually-rich Document Understanding

【7】ERNIE-Layout: Layout Knowledge Enhanced Pre-training for Visually-rich Document Understanding

【8】GeoLayoutLM: Geometric Pre-training for Visual Information Extraction

相关推荐
audyxiao0013 小时前
AI一周重要会议和活动概览
人工智能·计算机视觉·数据挖掘·多模态
engchina1 天前
多模态抽取图片信息的 Prompt
prompt·多模态·抽取图片信息
KeepThinking!1 天前
YOLO-World:Real-Time Open-Vocabulary Object Detection
人工智能·yolo·目标检测·多模态
威化饼的一隅1 天前
【多模态】swift-3框架使用
人工智能·深度学习·大模型·swift·多模态
聆思科技AI芯片2 天前
实操给桌面机器人加上超拟人音色
人工智能·机器人·大模型·aigc·多模态·智能音箱·语音交互
小嗷犬4 天前
【论文笔记】CLIP-guided Prototype Modulating for Few-shot Action Recognition
论文阅读·人工智能·深度学习·神经网络·多模态
威化饼的一隅10 天前
【多模态】MiniCPM-V多模态大模型使用学习
深度学习·多模态·视觉语言模型·多模态模型·minicpm·minicpm-v
小嗷犬12 天前
【论文笔记】VisionZip: Longer is Better but Not Necessary in Vision Language Models
论文阅读·人工智能·语言模型·大模型·多模态
爱睡觉的咋14 天前
CLIP论文提炼与代码实战
人工智能·计算机视觉·大模型·多模态
小嗷犬23 天前
【论文笔记】Leveraging the Power of MLLMs for Gloss-Free Sign Language Translation
论文阅读·人工智能·大模型·多模态·手语翻译