首页> 中国专利> 从非结构化数据中提取结构化数据方法及装置

从非结构化数据中提取结构化数据方法及装置

摘要

本申请涉及一种从非结构化数据中提取结构化数据方法及装置,属于计算机技术领域,该方法包括:获取目标文档;对目标文档进行数据切割,得到目标文档中的多个数据片段;将多个数据片段依次输入预先训练的数据分类模型,得到每个数据片段包括的各个分类标签和每个分类标签对应的数据内容;将每种分类标签和对应的数据内容存储至结构化数据库,得到结构化数据;通过表单显示结构化数据;可以解决使用非结构化数据的形式录入数据时,不同人员录入数据的方式不同统一,导致文档录入和评审效率较低的问题;由于可以通过结构数据的形式显示目标文档中的非结构化数据,因此,可以提高文档录入和评审效率,并提高提取非结构化数据的准确性。

著录项

  • 公开/公告号CN112966038A

    专利类型发明专利

  • 公开/公告日2021-06-15

    原文格式PDF

  • 申请/专利权人 国泰新点软件股份有限公司;

    申请/专利号CN202110262891.8

  • 发明设计人 陈洲;张志恒;沈云;莫钧涛;

    申请日2021-03-11

  • 分类号G06F16/25(20190101);G06F40/205(20200101);G06F40/174(20200101);G06N3/04(20060101);

  • 代理机构32295 苏州谨和知识产权代理事务所(特殊普通合伙);

  • 代理人徐磊

  • 地址 215600 江苏省苏州市张家港经济开发区(杨舍镇长兴路)

  • 入库时间 2023-06-19 11:26:00

说明书

技术领域

本申请涉及一种从非结构化数据中提取结构化数据方法及装置,属于计算机技术领域。

背景技术

当前的政府采购系统为了后续的智能化评标等系列功能,要求采购人将采购需求以结构化录入。

目前采购人的采购需求分为货物清单和技术要求等,通常是以word格式的文档呈现。

但是,不同的人员录入采购需求的方式可能不同,这就会导致最后呈现的文档格式不统一,导致文档录入和评审效率较低的问题。

发明内容

本申请提供了一种从非结构化数据中提取结构化数据方法及装置,可以解决使用非结构化数据的形式录入数据时,不同人员录入数据的方式不同统一,导致文档录入和评审效率较低的问题。本申请提供如下技术方案:

第一方面,提供了一种从非结构化数据中提取结构化数据方法,所述方法包括:

获取目标文档,所述目标文档包括待提取的非结构化数据;

对所述目标文档进行数据切割,得到所述目标文档中的多个数据片段;

将所述多个数据片段依次输入预先训练的数据分类模型,得到每个数据片段包括的各个分类标签和每个分类标签对应的数据内容;所述数据分类模型预先使用多组训练数据训练得到,每组训练数据包括:多个样本数据片段和每个样本数据片段对应的分类标签标注;

将每种分类标签和对应的数据内容存储至结构化数据库,得到结构化数据;

通过表单显示所述结构化数据。

可选地,所述对所述目标文档进行数据切割,得到所述目标文档中的多个数据片段,包括:

通过文件内容提取工具,提取所述目标文档中的文本内容;

按照预设标点符号对所述文本内容进行数据切割,得到所述多个数据片段。

可选地,所述分类标签基于所述非结构化数据的数据提取需求确定。

可选地,所述将所述多个数据片段依次输入预先训练的数据分类模型,得到每个数据片段包括的各个分类标签和每个分类标签对应的数据片段之前,还包括:

获取样本文档;

对所述样本文档进行数据切割,得到所述样本文档中的多个样本数据片段;

根据所述数据提取需求对每个样本数据片段进行标注,得到对应的分类标签标注;

将所述样本数据片段输入预设的神经网络模型中,得到模型结果;

基于预设的损失函数、所述模型结果和所述分类标签标注对所述神经网络模型进行训练,得到所述数据分类模型。

可选地,所述样本文档包括与所述数据提取需求相关的非结构化数据。

可选地,所述数据分类模型基于转换器的双向编码器表示BERT模型建立。

可选地,所述通过表单显示所述结构化数据,包括:

通过网页以表单的形式显示所述结构化数据。

可选地,所述目标文档为word文档,且所述待提取的非结构化数据在所述word文档中以非固定格式存储,且有历史存量文档。

第二方面,提供了一种从非结构化数据中提取结构化数据装置,所述装置包括:

文档获取模块,用于获取目标文档,所述目标文档包括待提取的非结构化数据;

数据切割模块,用于对所述目标文档进行数据切割,得到所述目标文档中的多个数据片段;

数据分类模块,用于将所述多个数据片段依次输入预先训练的数据分类模型,得到每个数据片段包括的各个分类标签和每个分类标签对应的数据内容;所述数据分类模型预先使用多组训练数据训练得到,每组训练数据包括:多个样本数据片段和每个样本数据片段对应的分类标签标注;

结构化存储模块,用于将每种分类标签和对应的数据内容存储至结构化数据库,得到结构化数据;

数据显示模块,用于通过表单显示所述结构化数据。

可选地,所述目标文档为word文档,且所述待提取的非结构化数据在所述word文档中以非固定格式存储,且有历史存量文档。

本申请的有益效果在于:通过获取目标文档,该目标文档包括待提取的非结构化数据;对目标文档进行数据切割,得到目标文档中的多个数据片段;将多个数据片段依次输入预先训练的数据分类模型,得到每个数据片段包括的各个分类标签和每个分类标签对应的数据内容;数据分类模型预先使用多组训练数据训练得到,每组训练数据包括:多个样本数据片段和每个样本数据片段对应的分类标签标注;将每种分类标签和对应的数据内容存储至结构化数据库,得到结构化数据;通过表单显示结构化数据;可以解决使用非结构化数据的形式录入数据时,不同人员录入数据的方式不同统一,导致文档录入和评审效率较低的问题;由于可以通过结构数据的形式显示目标文档中的非结构化数据,因此,可以提高文档录入和评审效率。

另外,通过对目标文档进行数据分割后,使用数据分类模型对每个数据片段进行分类识别,可以提高数据分类的准确性,从而提高结构化数据提取的准确性。

上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,并可依照说明书的内容予以实施,以下以本申请的较佳实施例并配合附图详细说明如后。

附图说明

图1是本申请一个实施例提供的从非结构化数据中提取结构化数据方法的流程图;

图2是本申请一个实施例提供的从非结构化数据中提取结构化数据装置的框图;

图3是本申请一个实施例提供的从非结构化数据中提取结构化数据装置的框图。

具体实施方式

下面结合附图和实施例,对本申请的具体实施方式作进一步详细描述。以下实施例用于说明本申请,但不用来限制本申请的范围。

首先,对本申请涉及的若干名词进行介绍。

转换器的双向编码器表示(Bidirectional Encoder Representation fromTransformers,BERT):即双向Transformer的Encoder,是通过在海量的语料的基础上运行自监督学习方法为单词学习一个好的特征表示。其中,自监督学习是指在没有人工标注的数据上运行的监督学习。BERT的网络架构包括多层Transformer结构。其中,Transformer是一个编码器-解码器(encoder-decoder)的结构;由若干个编码器和解码器堆叠形成。编码器用于将输入预料转化成特征向量,解码器的输入为编码器的输出以及已经预测的结果,输出为最后结果的条件概率。

可选地,本申请以各个实施例的执行主体为具有处理能力的电子设备为例进行说明,该电子设备可以为台式电脑、笔记本电脑、平板电脑、手机、服务器等,本实施例不对计算机设备的设备类型作限定。

图1是本申请一个实施例提供的从非结构化数据中提取结构化数据方法的流程图。该方法至少包括以下几个步骤:

步骤101,获取目标文档,目标文档包括待提取的非结构化数据。

目标文档可以是用户通过当前电子设备输入的;或者,是其它设备发送的,本实施例不对目标文档的来源作限定。

本实施例中,待提取的非结构化数据在目标文档中以非固定格式存储,且有历史存量文档,可以降低录入成本。在一个示例中,目标文档为word文档,且待提取的非结构化数据在word文档中不以表格形式存储,以非固定格式存储,且有历史存量文档。

比如:目标文档中的内容包括:地块挂牌时间:2018年10月30日至2018年11月12日16:30时。其中,“2018年10月30日”和“2018年11月12日16:30”为待提取的非结构化数据。

步骤102,对目标文档进行数据切割,得到目标文档中的多个数据片段。

在一个示例中,对目标文档进行数据切割,得到目标文档中的多个数据片段,包括:通过文件内容提取工具,提取目标文档中的文本内容;按照预设标点符号对文本内容进行数据切割,得到多个数据片段。

文件内容提取工具用于提取目标文档的文本内容,比如:文件内容提取工具为阿帕奇(Apache HTTP Server,Apache)中提取文件内容的工具包tika,或者为自行开发工具,本实施例不对文件内容提取工具的实现方式作限定。

预设标点符号包括但不限于以下几种中的至少一种:句号、逗号和分号。当然,预设标点符号可以根据数据切割需求自适应设置,本实施例不对预设标点符号的实现方式作限定。

步骤103,将多个数据片段依次输入预先训练的数据分类模型,得到每个数据片段包括的各个分类标签和每个分类标签对应的数据内容;数据分类模型预先使用多组训练数据训练得到,每组训练数据包括:多个样本数据片段和每个样本数据片段对应的分类标签标注。

分类标签基于非结构化数据的数据提取需求确定。比如:数据提取需求为提取采购信息,采购信息包括货物清单和技术要求,则分类标签包括货物清单中的各个货物名称和技术要求中的各个要求。又比如:数据提取需求为提取挂牌时间信息,则分类标签包括起始挂牌时间和终止挂牌时间。

可选地,将多个数据片段依次输入预先训练的数据分类模型,得到每个数据片段包括的各个分类标签和每个分类标签对应的数据片段之前,需要训练得到数据分类模型。

其中,数据分类模型的训练过程包括:获取样本文档;对样本文档进行数据切割,得到样本文档中的多个样本数据片段;根据数据提取需求对每个样本数据片段进行标注,得到对应的分类标签标注;将样本数据片段输入预设的神经网络模型中,得到模型结果;基于预设的损失函数、模型结果和分类标签标注对神经网络模型进行训练,得到数据分类模型。

其中,样本文档包括与数据提取需求相关的非结构化数据。

对每个样本数据片段进行标注可以是使用自动标注工具标注,或者用户手动标注,本实施例不对分类标签标注方式作限定。

预设损失函数用于使得模型结果和分类标签标注之间的差异最小化。预设损失函数包括但不限于以下几种中的至少一种:负对数损失函数、L1损失函数和L2损失函数,当然,在其它实现方式中,预设损失函数还可以包括其它类型的损失函数,本实施例在此不再一一列举。

示意性地,数据分类模型基于BERT模型建立。换句话说,预设的神经网络模型包括BERT模型,当然,预设的神经网络模型还可以是BERT模型与其它神经网络模型的结合,本实施例不对数据分类模型的实现方式作限定。

步骤104,将每种分类标签和对应的数据内容存储至结构化数据库,得到结构化数据。

比如:对于数据片段“地块挂牌时间:2018年10月30日至2018年11月12日16:30时”,对应的分类标签包括挂牌起始时间和挂牌截止时间,其中,挂牌起始时间对应的数据内容为2018年10月30日;挂牌截止时间对应的数据内容为2018年11月12日16:30时。相应地,存储至结构化数据库后,得到结构化数据参考下表一所示。

表一:

步骤105,通过表单显示结构化数据。

在一个示例中,通过表单显示结构化数据,包括:通过网页以表单的形式显示结构化数据。

综上所述,本实施例提供的从非结构化数据中提取结构化数据方法,通过获取目标文档,该目标文档包括待提取的非结构化数据;对目标文档进行数据切割,得到目标文档中的多个数据片段;将多个数据片段依次输入预先训练的数据分类模型,得到每个数据片段包括的各个分类标签和每个分类标签对应的数据内容;数据分类模型预先使用多组训练数据训练得到,每组训练数据包括:多个样本数据片段和每个样本数据片段对应的分类标签标注;将每种分类标签和对应的数据内容存储至结构化数据库,得到结构化数据;通过表单显示结构化数据;可以解决使用非结构化数据的形式录入数据时,不同人员录入数据的方式不同统一,导致文档录入和评审效率较低的问题;由于可以通过结构数据的形式显示目标文档中的非结构化数据,因此,可以提高文档录入和评审效率。

另外,通过对目标文档进行数据分割后,使用数据分类模型对每个数据片段进行分类识别,可以提高数据分类的准确性,从而提高结构化数据提取的准确性。

图2是本申请一个实施例提供的从非结构化数据中提取结构化数据装置的框图。该装置至少包括以下几个模块:文档获取模块210、数据切割模块220、数据分类模块230、结构化存储模块240和数据显示模块250。

文档获取模块210,用于获取目标文档,所述目标文档包括待提取的非结构化数据;

数据切割模块220,用于对所述目标文档进行数据切割,得到所述目标文档中的多个数据片段;

数据分类模块230,用于将所述多个数据片段依次输入预先训练的数据分类模型,得到每个数据片段包括的各个分类标签和每个分类标签对应的数据内容;所述数据分类模型预先使用多组训练数据训练得到,每组训练数据包括:多个样本数据片段和每个样本数据片段对应的分类标签标注;

结构化存储模块240,用于将每种分类标签和对应的数据内容存储至结构化数据库,得到结构化数据;

数据显示模块250,用于通过表单显示所述结构化数据。

可选地,所述目标文档为word文档,且所述待提取的非结构化数据在所述word文档中以非固定格式存储,且有历史存量文档。

相关细节参考上述方法实施例。

需要说明的是:上述实施例中提供的从非结构化数据中提取结构化数据装置在进行从非结构化数据中提取结构化数据时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将从非结构化数据中提取结构化数据装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的从非结构化数据中提取结构化数据装置与从非结构化数据中提取结构化数据方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

图3是本申请一个实施例提供的从非结构化数据中提取结构化数据装置的框图。该装置至少包括处理器301和存储器302。

处理器301可以包括一个或多个处理核心,比如:4核心处理器、8核心处理器等。处理器301可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器301也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器301可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器301还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。

存储器302可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器302还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器302中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器301所执行以实现本申请中方法实施例提供的从非结构化数据中提取结构化数据方法。

在一些实施例中,从非结构化数据中提取结构化数据装置还可选包括有:外围设备接口和至少一个外围设备。处理器301、存储器302和外围设备接口之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口相连。示意性地,外围设备包括但不限于:射频电路、触摸显示屏、音频电路、和电源等。

当然,从非结构化数据中提取结构化数据装置还可以包括更少或更多的组件,本实施例对此不作限定。

可选地,本申请还提供有一种计算机可读存储介质,所述计算机可读存储介质中存储有程序,所述程序由处理器加载并执行以实现上述方法实施例的从非结构化数据中提取结构化数据方法。

可选地,本申请还提供有一种计算机产品,该计算机产品包括计算机可读存储介质,所述计算机可读存储介质中存储有程序,所述程序由处理器加载并执行以实现上述方法实施例的从非结构化数据中提取结构化数据方法。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号