【论文阅读】Improving Table Structure Recognition with Visual-Alignment Sequential Coordinate Modeling

论文来源

在这里插入图片描述
这两天阅读了一篇发表在CVPR2023的关于表格识别的论文。
论文链接: https://arxiv.org/pdf/2303.06949.pdf

论文内容

Abstract

表结构识别旨在将非结构化表图像的逻辑和物理结构提取为机器可读的格式。最新的端到端图像-文本方法通过两个解码器同时预测这两种结构,其中物理结构(单元格的包围框)的预测基于逻辑结构的表示。然而,由于逻辑表示缺乏局部视觉信息,以往的方法都存在边界框不精确的问题。为了解决这个问题,我们提出了一个用于表结构识别的端到端顺序建模框架,称为VAST。它包含由来自逻辑结构解码器的非空单元格的表示所触发的新的坐标序列解码器。在坐标序列解码器中,我们将边界框坐标建模为语言序列,其中左、上、右和下坐标按顺序解码,以利用坐标间依赖关系。此外,我们提出了一个辅助视觉对齐损失来强制非空单元格的逻辑表示,以包含更多的局部视觉细节,这有助于生成更好的单元格边界框。大量的实验表明,我们提出的方法可以在逻辑和物理结构识别方面取得最先进的结果。消融研究也验证了所提出的坐标序列解码器和视觉对准损失是我们方法成功的关键。

Introduction

表是表示结构或半结构信息的基本媒介。表结构识别包括识别表的逻辑和物理结构,对于理解和进一步编辑可视化表格至关重要。逻辑结构表示单元格的行列关系和单元格的跨度信息。物理结构不仅包含逻辑结构,还包含单元格的包围框或内容,聚焦于图像中的确切位置。
表识别可以通过端到端编码器-解码器范式实现。这种方法擅长于预测逻辑结构,但通常产生不太准确的物理结构,即单元格的边界框或单元格内容。然而,边界框精度对于下游任务(如文本信息提取或表格QA)至关重要。本工作设计了序列坐标译码,并采用了更多的视觉信息来生成更精确的边界框。
在坐标序列解码器中,非空单元格的开始嵌入是来自HTML序列解码器的表示。这种表示通常包含更多的表的全局上下文,并具有较小的局部可视化细节。由于局部视觉外观对于预测准确的坐标很重要,我们将HTML序列解码器中的非空单元格的表示与CNN图像编码器中的视觉特征对齐。
本文贡献:

  • 在端到端表识别系统中,提出了一种坐标序列解码器来显著提高表的物理结构精度。
  • 引入了HTML解码器和坐标序列解码器之间的视觉对齐损失。它强制HTML解码模块的表示包含更详细的可视信息,这可以为非空单元格生成更好的边界框。
  • 开发了一个端到端序列的表结构识别建模框架,对比实验证明了方法可以达到最先进的性能,消融实验证明了方法的有效性。

Related Work

最近的深度学习方法在表结构识别任务中表现出了优异的性能,方法分为三类:基于分割和合并的方法,基于检测和分类的方法,以及图像到文本生成法。

  • 基于分割和合并的方法
    包括两个阶段。第一阶段检测行和列,然后通过行和列的交集将表格分割为多个基本文本块;第二阶段合并文本块以回复结构。
    一些工作专注于更好地分割行和列。例如DeepDeSRT和TableNet将FCN从语义分割调整为行列分割。DeepTabStR将可变形卷积应用于Faster R-CNN, FPN和R-FCN,具有更广泛的接收域来捕获表行,可以准确地分割表行和列。Khan等和Li等使用双向门控循环单元网络来识别像素级的行和列分隔符。受DETR的启发,TSRFormer将表分离线预测制定为直线回归问题,他们提出了一个分离线回归变压器,直接从表图像中预测分离线。
    已经开发了几种合并方法来识别包含跨行或跨列单元格的表。SPLURGE方法提出了表拆分和合并的思想。他们设计了一个合并模型来合并跨多列或多行的单元格。为达到一个更准确的合并结果,[54]融合了视觉特征和语义特征,得到了更精确的合并结果。RobusTabNet[29]提出了基于空间cnn的分离线预测模块,将表格分割为单元格网格,并应用基于grid cnn的单元格合并模块恢复跨单元格。TRUST[11]引入了基于端到端变压器的基于查询的分割模块和基于顶点的合并模块。分割模块用于提取行/列分隔符的特征,并将行/列特征进一步输入基于顶点的合并模块,预测相邻基本单元之间的连接关系。
  • 基于检测和分类
    基本思想:首先检测单元格,然后对单元格之间的行和列关系进行分类,根据单元格和连接构造图来获得表结构。
    对于不规则布局的表格,良好的单元格检测结果可以有效提高表格识别的准确率,[26,33,36,55]致力于提高单元格检测的准确率。其他一些研究人员旨在对单元格关系进行分类来构建表结构,他们利用ground truth或OCR结果来获取文本块。然后,他们将文本块作为顶点构造一个图,并使用基于图的网络对单元格之间的关系进行分类。
    最近的方法时把单元格检测和单元格关系放在一个网络当中,TableStructNet[37]和FLAG-NET[24]都是利用Mask R-CNN[13]网络来获取单元格区域和单元格视觉特征。他们都利用[34]中的DGCNN架构来模拟几何相邻检测单元格之间的相互作用。Hetero-TSR[23]提出了一种新的神经协同图机(NCGM),利用模态交互来增强复杂场景的多模态表示。Lee等[17]将表格制定为平面图形,他们首先获得了单元格顶点置信度图和线域。之后,他们通过求解约束优化问题来重构表结构。
  • 基于图像到文本的生成方法
    将表的结构视为一个序列,并采用端到端的图像到文本范式来识别表结构。
    Deng等[7]使用经典的IM2MAKEUP框架[5]来识别表的逻辑结构,其中设计CNN来提取视觉特征,使用带有注意机制的LSTM来生成表的latex代码。Zhong等[56]尝试用编码器-双解码器(EDD)架构生成逻辑结构和单元内容。在解码阶段,他们使用了两个基于注意力的循环神经网络,一个负责解码表结构代码,另一个负责解码内容。TableMaster[53]和TableFormer[30]利用变压器解码器来改进EDD解码器。此外,他们使用回归解码器来预测边界框,而不是内容。由于缺乏局部视觉信息,这些方法预测的边界框精度较低。在本文中,我们将边界盒预测作为一个坐标序列生成任务,并配合视觉对准损失生成更精确的边界盒。

Task Definition

给定一个表映像,我们的目标是预测它的逻辑结构和端到端的物理结构。逻辑结构指的是表的HTML,物理结构指的是所有非空单元格的包围框坐标。我们用S = [s1,…, sT]表示标记化的HTML序列,其中T是序列的长度,s是预定义HTML标记的标记。我们定义B = {b1,…, bN}为所有非空单元格序列的集合,其中b = (xleft, ytop, xright, ybottom),为非空单元格包围盒坐标序列,每个坐标离散为一个整数。一个非空单元格的表格和内容边界框的HTML示例如图2所示。

Methodology

网络结构

我们的框架由三个模块组成:CNN图像编码器,HTML序列解码器和坐标序列解码器。给定一张表格图像,我们通过CNN图像编码器提取特征映射。特征图输入到HTML序列解码器和坐标序列解码器,分别生成非空单元格的HTML序列和包围框。HTML序列解码器中非空单元格的表示将触发坐标序列解码器。为了强化表示的局部视觉信息,在训练过程中使用视觉对齐损失。

CNN图像编码器

使用了一个改进的ResNet作为CNN图像编码器,该编码器具有多方面的全局内容关注。得到的图像特征映射为C4,它来自第4阶段最后一个卷积层的输出。编码器的输入是一个大小为HxWx3的RGB图像,输出为特征图M,大小为H/16XW/16Xd。

HTML序列解码器

表的逻辑结构包含单元格、行、列、邻接、跨度等信息。本文使用HTML表示表的逻辑结构。表逻辑结构的ground truth HTML被标记为结构标记。与工作[53]中一样,使用合并标签来表示非跨单元格,以减少HTML序列的长度。具体来说,使用和[]分别表示空单元格和非空单元格,对于跨单元格,HTML标记为<td, colspan=“n” or rowspan=“n”, > 和 ,使用第一个标记<td表示一个跨单元格。
HTML序列解码器是一个具有N = 3个相同层的堆栈的转换器。内存键和值是添加了定位编码的扁平特征映射M。查询是移位的结构标记。转换器的输出是一个HTML序列,它是通过自回归解码的。第t步的输出是一个分布:p(st|M, s1:t−1)。在训练中,我们使用交叉熵损失:
在这里插入图片描述
其中S∗是目标表的ground truth HTML。起始标记s * 1或s1在训练和测试阶段都是一个的固定标记。

坐标序列解码器

对于坐标预测,在HTML序列解码器之后级联坐标序列解码器,解码器由非空单元格触发,左、上、右、下坐标一次解码一个元素。特别是,每个连续角坐标被均匀离散为[0,nbins]之间的整数。在解码器中,利用前一个预测坐标的嵌入来预测后一个坐标,将上下文信息注入到下一个坐标预测中。
与HTML序列解码器类似,坐标序列解码器将带有定位编码的flattened特征映射M作为内存键和值,并将移位的坐标标记作为查询。
开始标记的嵌入是HTML序列解码器中的snci表示,用fnci表示。第t步的输出是一个分布:p(ct|c1:t−1,f nci, M),其中{ct}4t=1是范围在[0,nbins]之内的离散随机变量。
坐标序列解码器也由交叉熵损失函数训练:
在这里插入图片描述
其中K为图像中非空单元格的数目,ci * 1、ci * 2、ci * 3、ci * 4分别对应第i个单元格的左、上、右、下坐标的ground truth值。nci的表示来自HTML序列解码器,它包含上下文信息和可视化信息,可以帮助坐标序列解码器描述不同的单元格。
讨论。本文提出的坐标序列解码器与Pix2Seq[1]相关。Pix2Seq也逐步解码对象的坐标,但与我们的方法有三个明显的不同。
1、Pix2Seq缺乏全局信息来指导在哪里解码坐标,本文的方法基于表的全局上下文获得的单元格来预测边界框
2、Pix2Seq需要序列增强方法来方便训练,原因之一是该模型需要同时进行分类和定位,不容易收敛。本文的方法不需要这样。
3、Pix2Seq从一个长序列中逐个解码不同的边界框,本文的方法可以并行执行边界框解码。因为可以收集所有非空单元格的表示,然后立即提供给坐标序列解码器。

Visual-alignment loss

为了丰富坐标序列解码器开始嵌入时的局部视觉信息,本文提出了一种视觉对齐损失来辅助坐标序列解码器的学习。视觉对齐损失的主要动机是将非空单元格的逻辑结构表示与其视觉特征对齐
在训练过程中,本文收集所有非空单元格{f nci}Ki=1的HTML表示。使用ROIAlign[13]为每个非空单元格提取视觉表示{gnci}Ki=1。根据ground truth的包围框从图像特征图M中裁剪视觉特征。进一步投影为与fnci具有相同维数的向量。给定一个有K个非空单元格的表图像,我们有K个visual-HTML对(gnci, fnci)。在f nci和图像中所有视觉表示{gnci}Ki=1之间采用InfoNCE[48]损失。视觉对齐损失为:
在这里插入图片描述
其中τ是温度超参数,设置为0.04。余弦相似度是通过点积来衡量的。值得一提的是,这个损失只在训练时使用,在推理时不会对模型造成任何负担。

实现细节

我们将我们的方法视觉对齐顺序坐标表识别器(Visual-Alignment Sequential Coordinate Table Recognizer)表示为VAST。方法中的一些超参数如下:图像特征的维数d设置为512。两个解码器都由N = 3个相同层的堆栈组成,头数h设置为8。nbins的值设置为608。
训练。统一损失L是方程中损失Ls、Lc和Lva的组合:
在这里插入图片描述
其中λ1、λ1、λ3分别为1.0、1.0、1.0。我们使用AdamW[27]作为优化器从头开始训练我们的VAST。初始学习率为1e-4,每步降低0.1。为了防止过拟合,我们将HTML序列解码器和坐标序列解码器的退出[45]速率设置为0.1。HTML序列解码器的最大长度被设置为500。我们在4个特斯拉V100 gpu上训练了48个epoch,mini-batch size为3。ROIAlign的输出大小为2× 2,我们使用线性变换将平坦的可视化表示gnci∈R512×4投影到大小为512的向量。
推理。在推理阶段,我们使用贪婪搜索进行HTML序列预测和坐标序列预测。对于单元格内容,如果输入模式是PDF,我们使用预测的内容包围框从PDF中抓取内容。如果输入模态是图像,我们使用PSENET[51]和MASTER[28]来检测和识别文本,然后根据它们的包围框进行合并。值得注意的是,在将内容插入单元格时,我们没有对预测的逻辑结构和物理结构进行任何更正。补充材料提供了如何获取内容的详细信息。

Experiments

Datasets and Evaluation Metrics

  • 数据集。可公开访问的表结构识别基准数据集。
    在这里插入图片描述
    在PubTabNet [56], FinTabNet [55], ICDAR2013 [12], IC19B2M [9], SciTSR[2]和PubTables-1M上评估了我们的方法。
  • 评估指标
    PubTabNet和FintabNet使用基于树距的相似度(TEDS)[56]作为评价指标。度量将表HTML表示为树,通过计算ground truth和pred树之间的树编辑距离来获得TEDS分数。除了TEDS之外,我们还提出了S-TEDS,它只考虑表的逻辑结构,而忽略了单元格内容。
    对于ICDAR2013、IC19B2M和SciTSR,他们应用cell adjacency relations (CAR)[12]作为评价指标。具体来说,它生成了真阳性单元格与其垂直和水平邻居之间的水平和垂直邻接关系列表。然后,通过将该列表与ground-truth列表进行比较,可以计算精度、召回率和F1分数。不同之处在于,SciTSR和ICDAR2013使用单元格含量来匹配预测单元格和真实单元格,而IC19B2M使用不同的IoU阈值(σ)来将预测单元格映射到IoU最高且IoU≥σ的真实单元格。对于这三个数据集,我们将把预测的HTML和边界框转换为物理结构格式。
    GriTS最近由Smock等[43]提出,PubTables-1M首先采用。它首先将ground truth和预测表表示为矩阵,GriTS通过两个矩阵中最相似的子结构之间的相似性来计算。GriTS以统一的方式处理单元拓扑、单元内容和单元位置识别的评估。

与最新的方法比较

  • 逻辑结构识别结果
    在这里插入图片描述
    VAST在FinTabNet和PubTabNet上的性能优于之前的所有方法。S-TEDS和TEDS的区别主要是由于内容识别或从PDF中提取的错误。对于TableMaster, TEDS比S-TEDS得分高是因为它们在获取单元格内容时通过后处理纠正了逻辑结构。与强基线TableFormer相比,V AST在FinTabNet上提高了1.83%,在PubTabNet上提高了0.48%。值得一提的是,V AST在PubTabNet上将TEDS从93.60%提高到96.31%,从而优于TableFormer。TEDS评分的提高幅度大于S-TEDS,说明V AST在内容提取方面表现更好。
    我们还研究了PubTabNet上单元格检测的性能(AP50, MS COCO AP在IoU=.50)。VAST的AP50从82.1%提高到94.8%,优于TableFormer。
    在这里插入图片描述
  • 物理结构识别结果
    结果显示在表4、5和6中。VAST超越了大多数以前的方法,并在ICDAR2013, IC19B2M和PubTables-1M上实现了新的最先进的性能。
    在SciTSR上,V AST获得了最高的99.77%的精度分数,第二好的F1分数为99.51%。V AST的回忆评分低于NCGM。这主要是因为SciTSR中的一些样本的列超出了图像的范围。我们认为这样的数据是无效的,所以我们的模型在推理时忽略了这些残缺的列。补充材料中提供了这些数据的一些可视化。
    在这里插入图片描述在这里插入图片描述
    在ICDAR2013上,为了公平起见,我们只与在ICDAR2013完整测试数据集中报告结果的方法进行比较。如表4所示,我们的VAST在使用FinTabNet训练时F1-score最好,达到96.52%,使用SciTSR训练时F1-score最好,达到95.72%。
    在IC19B2M上,我们报告了IoU阈值为0.5和0.6的结果,作为竞争基线方法GTE[55]。W A vg。F1分数是每个阈值下F1分数的加权平均值。如Tab所示。在IoU阈值0.5和0.6处,VAST的f1得分最高,分别比GTE高出12%和13.2%。与CascadeTabNet相比,当IoU阈值设置为0.6时,VAST超过了7.9%,即使它使用自己标记的ICDAR2019数据集进行训练。固有地,在F1 (W average .F1)的总体平均分数中,V AST得分最高,为58.6%。
    PubTables-1M是最具挑战性的基准数据集,有93834个样本可供评估。如表6所示,我们在AccCont, GriTSTop, GriTSCont和GriTSLoc上报告结果。VAST在AccTop、GriTSTop、GriTSCont的分数分别为90.11%、99.22%和99.14%,达到了目前最先进的性能。VAST的GriTSLoc评分比DETR低,这是因为DETR使用单元格中包含内容的边界框来调整单元格的预测边界框。

消融实验

我们进行了一组消融实验来验证我们提出的模块的有效性。我们使用FinTabNet进行训练,然后在FinTabNet测试集和IC19B2M上进行测试。结果见表7,其中报告了逻辑结构和检测AP的S-TEDS评分(MS COCO AP在IoU=.50:.05:.95)和非空单元格的WAvg.F1评分。
在这里插入图片描述
坐标序列解码器的有效性。为了验证坐标序列解码器(CSD)的有效性,我们遵循TableFormer[30]和TableMaster[53]来实现回归解码器(RD)模块,如4所示。CSD与RD的区别在于输出头和损失函数:
1)通过使用Softmax激活函数,CSD每次生成一个元素的离散坐标序列(xleft, ytop, xright, ybottom),它可以在生成下一个时消耗之前生成的坐标作为额外的输入。RD使用Sigmoid激活函数进行输出[xleft, ytop, xright, ybottom]规范化的坐标
在这里插入图片描述
2)我们用交叉熵损失来训练CSD,用L1损失来训练RD。
我们使用实验2中的坐标序列解码器(CSD)来学习和预测非空单元格的内容包围框,同时使用实验1中的回归解码器(RD),结果如表7所示。在FinTabNet上,Exp #2将S-TED评分和检测AP评分分别提高了0.22%和8.3%。在IC19B2M上,Exp #2的WAvg.F1比Exp #1高9.4%。可以看出,CSD可以显著提高物理结构识别的性能,表明CSD显式地建模了坐标之间的依赖关系,预测了更准确的边界框。
视觉对准损失的有效性。根据表7中的Exp #3和Exp #2,在训练过程中增加视觉对齐损失(VA)有利于逻辑和物理结构的识别。在FinTabNet上,Exp #3在S-TEDS和AP方面分别提高了0.15%和0.6%。在IC19B2M上,Exp #3也给了WAvg.F1 6.5%的增益。这些结果证明了我们提出的视觉对齐损失的有效性和普遍性。
此外,我们还展示了一些定性结果,以表明VA如何加强非空单元格表示的局部视觉信息。在图5中,我们可视化了当HTML序列解码器预测非空单元格的标记时的交叉注意(头和层的平均)。可以看到,当预测第一个非空单元格的标记时,两个模型的注意力都可以正确地集中在该单元格上。在预测第二个非空单元格时,w/o VA模型的注意力不正确地集中在该行的顶部文本块上,而不是整个单元格。而w/ V A模型可以正确地集中在第二个非空单元周围。同样的现象也出现在第三和第四个非空单元格。交叉注意地图生成和更多可视化的细节在补充中给出。

Limitations

虽然大量的实验结果证明了我们提出的方法的有效性,但我们提出的V AST仍然存在两个局限性:
1)由于我们的模型采用自回归方式,在推理过程中每次只生成一个标签,推理速度比基于分裂和合并的方法慢。其中,VAST、EDD和TRUST的运行时间分别为1.38、1和10 FPS。
2)我们使用HTML序列来表示表的逻辑结构,即使我们合并一些标签来减少HTML序列的长度,序列中仍然存在过多的冗余,例如’ ', ’ '等,导致较高的计算和内存消耗。

Conclusion

提出了一种表结构识别的端到端序列建模框架。该模型由两个级联转换器解码器组成,分别生成整个表的HTML序列和非空单元格的坐标。HTML序列解码器中非空单元格的表示形式被用作开始嵌入以出发坐标序列解码器。
此外,还提出了辅助视觉对齐损失,使每个非空单元格的开始嵌入包含更多局部视觉信息,从而产生更精确的包围框。实验结果表明,我们的方法在几个基准数据集上取得了新的SOTA性能。

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值