Advertisement

[论文阅读] Integrating Image Data Extraction and Table Parsing Methods for Chart Question answering

阅读量:

启发:本文尝试从图表中提取原始表格数据,然后使用表格问答模型Tapas来完成问答。

Abstract

研究对象:图表

研究任务:图表问答

研究方法:本文专注于从图像图表中自动恢复数据,然后应用最先进的模型进行表解析以获得给定问题的答案。我们的方法在 FigureQA 和 Chart Question Answering Challenge (CQAC) 数据集上取得了令人印象深刻的结果。

(这篇文章在图表还原表格这一步究竟有什么优势呢)

Introduction

图表图像与常规图像非常不同,因为它们使用图形标记(例如矩形、圆圈)的视觉属性(颜色、长度)对数据进行视觉编码。因此,不尝试从图表中恢复数据和视觉编码的 QA 模型可能并不总是表现良好。另外,大多数现有方法将图表 QA 视为一项分类任务,其中只能提供有限数量的答案(例如,是/否,检索图表中图形标记表示的值)。在现实中,人们经常会问组合问题,其中的答案可以超出一组有限的可能值,因为他们这样的问题需要组合多个操作,例如聚合值、查找极值以及计算值的总和或差值。

我们首先应用计算机视觉技术从图像图表中恢复数据。然后,我们对恢复的数据应用一个名为 TAPAS(Table Parser)的表格数据问答模型来生成答案(如图 1 所示)。通过实验,我们演示了将自动图表数据提取和表格解析方法相结合如何减轻当前图表问答方法的局限性并提高其性能。

端到端方法:

  • Figureqa: An annotated figure dataset for visual reasoning

提出包含 100K 综合生成的图表和大约 1.3M (yes/no) Q/A 对。

  • DVQA: understanding data visualizations via question answering

合成的图表 QA 数据集,它还提供基于模板的 QA 对,涉及结构理解、数据检索和共鸣问题。

  • Leaf-qa: Locate, encode attend for figure question answering

LEAFQA,它具有各种图表类型和模板。还提出了 LEAFNET 模型,这是一种基于注意力的模型,用于编码question 和图表图像特征。

  • STL-CQA: Structurebased transformers with localization and encoding for chart question answering

增强了LEAFQA数据集,得到LEAFQA++,还设计一种基于transformer的模型来解决QA任务。

  • Answering questions about data visualizations using efficient bimodal fusion

引入了 PreFIL 模型,该模型将 CNN 和 LSTM 生成的学习问题和图像嵌入有效融合,以预测答案。

这些方法存在问题,首先,这些方法直接将计算机视觉技术应用于图像图表,而无需尝试恢复底层数据。其次,当答案来自一组固定的词汇(轴标签、图例或常用词,如 yes 和 no)时,这些模型的表现相当好,而它们无法回答需要数学运算的开放词汇问题(例如 sum、average)。

  • Answering questions about charts and generating visual explanations
  • Plotqa: Reasoning over scientific plots

这两类方法应用了一种叫做SEMPRE的表解析方式,SEMPRE会将question转换成逻辑查询,然后把逻辑查询作为检索答案的中间步骤,但是生成逻辑查询这一过程很困难,并且不适用于判断类问题(因为无法通过查询得到是或者否,只能得到图表中蕴含的答案)。

本文提出 TAPAS,这是最先进的表 QA 模型,它不需要生成中间逻辑形式,而是预测相关表单元格的选择,然后将聚合运算符应用于此类选择。

Datasets

FigureQA数据集:有 5 种主要图表类型:垂直条、水平条、饼图、折线图和点线图。使用 15 个问题模板生成了 100 万个 30 万 (yes/no) 问题和答案对。一些模板显示在 Table 中。

CQAC 数据集:涉及三个任务(低、中、高,任务越高级,图表越复杂)和两种图表类型(条形图和饼图)。在本文中,我们重点介绍中级和高级任务。在中级任务中,模型需要通过测量条形的高度和饼图扇区的角度,从条形图和饼图图像中提取基础数据。高级任务涉及回答有关图表图像的问题。这些问题是使用 8 个主要模板生成的。表 1 显示了其中一些。这些问题模板可以分为两个主要类别:是/否问题和开放词汇问题。数据集有两个主要集:训练集和测试集。训练集包含 160K 个图表(80K 条形图和 80K 饼图),而测试集包含 40K 个图表(20K 条形图和 20K 饼图)。由于提供的测试集没有标签,因此我们随机抽样了给定训练集的 5%,并用作测试集(4K 条形图和 4K 饼图)来评估我们的方法。

Methodology

我们的方法有两个主要阶段:(1)从图表中提取数据;(2)表格问答。

Data Extraction

对于 FigureQA 数据集,数据集提供了图表图像的原始数据表。

在 CQAC 数据集中,我们使用 OpenCV 库从图表图像中提取基础数据值。由于 CQAC 数据集中的柱状图没有 y 轴标签,因此柱状高度直接对应数据值,无需任何转换。为了计算条形高度,我们在图像中找到矩形轮廓,然后计算每个矩形的顶部和底部点的 y 坐标之差。对于饼图,我们首先在图像中找到最大的等值线。然后,我们使用饼图轮廓的边界框计算饼图的中心。为了进一步将饼图拆分为多个扇区,我们检测饼图中心周围的黑色像素,以识别分隔扇区的线条。最后,我们使用中心点和我们在上一阶段检测到的两个扇形边界线点计算每个扇区的角度。最终值是通过将角度除以 360 来计算的。

我们使用 Google Vision检测图表图像中的文本标签,然后使用基于距离的启发式方法将每个条形或饼形扇区值与其相应的文本标签相关联。

TableQA

使用Tapas模型(TaPas: Weakly supervised table parsing via pre-training)。

对于 CQAC 高级数据集,我们根据查询将数据集分为两个子集:是/否问题和开放词汇问题。我们根据问题中存在的关键字(例如“is”、“does”)来识别 Yes/No 类型。

由于开放词汇问题类似于 WikiTQ 数据集 [16],我们使用在 WikiTQ 上预训练的 TAPAS 模型初始化了我们的模型权重,并使用相同的弱监督训练方式对开放词汇问题上的模型进行了微调。对于是/否问题,我们省略了单元格选择,只需将 [CLS] 标记输出通过分类层来预测答案。对于训练,Figureqa 和 CQAC(是/否),我们首先在 TabFact 数据集 [4] 上使用预训练模型初始化 Tapas 模型的权重,然后在我们的数据集上对其进行微调。在所有实验中,我们使用了初始学习率为 0.00001 的 Adam 优化器。

Results and Discussion

表格提取准确率很高,但我认为这是因为图表太过简单,但即便如此,后续表格问答准确率也不高,只能说思路可供借鉴,但是使用的模型性能太差。

Conclusion and Future Work

在本文中,我们将自动数据提取和表格问答相结合,用于图表 QA 任务。我们的方法在两个数据集上提供了令人印象深刻的结果。但是,我们的方法需要将问题分为两类(开放词汇和固定词汇),并针对每个类别分别进行训练。此外,我们的模型只考虑图表图像的数据值,尽管图表可能具有需要恢复的其他属性(例如颜色、图例和轴)。

全部评论 (0)

还没有任何评论哟~