0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

TableBank:高质量的标注表格数据集

电子工程师 来源:lp 2019-04-04 17:19 次阅读

近年来,自然语言处理(NLP,Natural Language Processing)技术的快速发展大力推动了人工智能的整体进展。尤其是在过去三年,机器学习给NLP所带来的进步,使计算机在机器翻译、阅读理解、语法检查等任务上,都达到了可以媲美人类的水平。

不过相比现实世界中的实际应用环境,研究中的NLP任务相对单纯。事实上,在NLP已经取得很多突破的今天,机器却连企业文档中最常见的Word、PDF也无法从头“读”到尾。如何能够让机器理解文档中的标题、段落、脚注、图片、表格等内容信息,是NLP能够处理更多实际应用场景的第一步。

最近,微软亚洲研究院自然语言计算组发表了一篇论文——TableBank: Table Benchmark for Image-based Table Detection and Recognition,致力于解决文档中的表格检测与表格信息识别,并首次在业界同时开源表格检测和表格结构识别数据集,供研究人员使用。

TableBank:高质量的标注表格数据集

虽然人类在视觉上可以很容易地判断出一个表格,但由于表格的布局、样式多种多样,对于机器而言判断“何为表格”以及表格中内容之间的关系却并不容易。传统的基于规则的表格识别方式,一旦换一份文档就需要大量在文档后台的手工操作;而现有的机器学习方法,又无法获得大量有效的标注数据,很难支持实际场景中的应用。于是,TableBank应运而生。

TableBank是一个表格检测与识别的数据集,基于公开的、大规模的Word文档和LaTex文档,通过弱监督方法创建而来。与传统的弱监督训练集不同,TableBank不仅数据质量高,而且数据规模比之前的人工标记的表格分析数据集大几个数量级,其表格数据量达到了41.7万。

然而要让机器读懂表格,首先要能够从文档中识别哪些是表格,随后再去识别表格区域内的信息。因此TableBank的实现主要分两步走:一,表格检测(Table Detection);二,表格结构识别(Table Structure Recognition)。

表格检测

如何能自动检测到文档中的表格?

通常每个Word文档都有一个对应的Office XML源代码文件,在代码中对应表格的位置,可以对其进行修改,让表格加上边框,以此来区分表格与文档的其他部分。对于LaTex文档(由LaTex编辑器生成的文档),则可以直接使用特殊命令将边界框添加到表格中,以此来确定表格在文档中的位置。

然后再将Word和LaTex文档中的表格转化为相对应的PDF页面(如下图所示),便可获得带有表格信息的PDF页面,且该文档对表格的位置已经进行了标注。这些标注过的表格,都可以放到训练数据集中,并且越来越多。目前,该表格检测模型采用了计算机视觉研究中常用的Faster R-CNN 算法

表格结构识别

表格结构识别的目的是识别表格文档中的文字信息、表格中行和列的布局信息,以及理解行与列之间的关系。从PDF或图像中识别出文字,大家的第一反应都是使用OCR(光学字符识别)技术,确实OCR技术可以识别出文字,但它只能将其转换成文本格式,再按照在图像中出现的先后顺序依次填入到可编辑的文档中,而无法确定文字之间的逻辑关系,更难于理解表格的行、列信息。

在TableBank的论文里,研究员们一方面结合OCR技术,识别出表格里每个单元格中的文本内容,另一方面,使用了创新方法去自动识别出表格在文档中的位置,以及行与列的布局,明确表格中行列交叉所形成的单元格之间的关系。

对于形式、来源不同的表格,研究员们给出了相应的方法来实现表格结构的识别。Word文档中的表格可直接将XML源代码文件转换为HTML标记序列;LaTex文档则先生成XML再转换为HTML,然后框定表格中行和列的位置。这样表格中的行、列信息也就有了标注数据。

目前,TableBank数据集已经在GitHub社区开源,其中表格检测数据有41.7万个,表格结构识别数据有14.5万个。

数据集地址:https://github.com/doc-analysis/TableBank。

表格检测与识别:文档智能分析的第一步

高质量、大规模、带有标注的表格数据集的建立,意味着表格识别相关的机器学习训练可大规模开展,并将逐步提升表格识别的准确率。集成了计算机视觉、OCR等跨领域技术的TableBank为NLP在实际场景中的应用,做好了智能分析表格数据的前期准备。

未来,在企业文档分析中,无论是扫描件还是纸质文件中的表格识别,都可以基于TableBank训练的模型进行。同样的场景也可以延伸到由PDF转成Word的文档中的表格转换,企业年报、员工报销发票中的表格信息提取等等。

当然,表格只是各类文档中的一小部分,表格检测与识别是NLP在文档分析研究领域的第一步,文档中的标题、段落、脚注、图片等其他非结构化数据的检测与识别,也是微软亚洲研究院自然语言计算组的研究范畴。要想真正实现对文档里的内容的智能分析和理解,还有很多研究课题亟待解决。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据集
    +关注

    关注

    4

    文章

    1179

    浏览量

    24356
  • 自然语言处理

    关注

    1

    文章

    509

    浏览量

    13103
  • nlp
    nlp
    +关注

    关注

    1

    文章

    464

    浏览量

    21826

原文标题:这是一份数据量达41.7万开源表格数据集

文章出处:【微信号:rgznai100,微信公众号:rgznai100】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    protel输出高质量gerber

    图文并茂一步一步手把手教你输出高质量的gerber傻瓜式教学。。。。[hide] [/hide]
    发表于 12-12 15:43

    高质量C++、C编程指南

    高质量C++、C编程指南
    发表于 08-06 11:58

    高质量C&C++

    高质量C&C++
    发表于 08-16 19:45

    高质量C++&C 编程指南

    高质量C++&C 编程指南
    发表于 08-19 23:37

    原版PIC实战项目-C(高质量PDF版本)

    英文原版,高质量保证。
    发表于 07-10 21:42

    高质量C语言编程

    高质量c语言,精,精,精,精华
    发表于 07-22 13:48

    编写高质量C语言代码

    编写高质量C语言代码 编写高质量C语言代码 编写高质量C语言代码
    发表于 07-31 17:47

    林锐《高质量C语言编程》

    林锐《高质量C语言编程》
    发表于 08-17 12:10

    高质量C++与C编程指南

    高质量C++与C编程指南
    发表于 03-09 10:54

    高质量编程

    干货,《495个C语言问题》、《华为内部程序设计编码规范》、《C语言:陷阱和缺陷》、《高质量C编程[林锐]》
    发表于 02-27 19:39

    图书推荐:高质量C++编程指南

    高质量C++编程指南
    发表于 06-12 13:49

    【下载】高质量干货-22本高质量EMC电磁兼容性设计资料

    22本高质量EMC电磁兼容性设计资料请君自取总体太大压缩成两个压缩包。希望这些内容能对大家在设计上有所帮助!
    发表于 03-20 00:02

    请问怎么才能设计出高质量的印制线路板?

    怎么才能设计出高质量的印制线路板?
    发表于 04-23 06:57

    高质量的c编程指南

    高质量的c编程指南
    发表于 10-26 16:00 13次下载
    <b class='flag-5'>高质量</b>的c编程指南

    要实现高质量AI诊断,需要大量的高质量标注图像进行前期的算法训练

    发展情况看,有效的人工智能算法大多聚集于存在大量标准化数据的病种,毕竟要实现高质量AI诊断,需要大量的高质量标注图像进行前期的算法训练。 这一数据
    的头像 发表于 01-28 15:28 2553次阅读
    要实现<b class='flag-5'>高质量</b>AI诊断,需要大量的<b class='flag-5'>高质量</b><b class='flag-5'>标注</b>图像进行前期的算法训练