基于rpa及ai的信息抽取方法、装置、设备及介质
技术领域
本发明实施例涉及流程自动化
技术领域
,具体而言,涉及一种基于RPA 及AI的信息抽取方法、装置、设备及介质。背景技术
RPA(Robotic Process Automation,机器人流程自动化),是通过特定的 “机器人软件”,模拟人在计算机上的操作,按规则自动执行流程任务。
AI(Artificial Intelligence,人工智能)是研究、开发用于模拟、延伸和扩 展人的智能的理论、方法、技术及应用系统的一门新的技术科学。
RPA具有独特的优势:低代码、非侵入。低代码是说,RPA不需要很高 的IT水平就能操作,不懂编程的业务人员也能开发流程;非侵入是说,RPA 可以模拟人的操作,不用软件系统开放接口。但是传统的RPA具有一定的局 限性:只能基于固定的规则,并且应用场景受限。随着AI技术的不断发展, RPA与AI深度融合克服了传统RPA的局限,RPA+AI=Hand work+Head work, 正在极大的改变劳动力的价值。
RPA在处理任务的过程中,会遇到大量的文本信息。随着信息技术的发 展,如何从各种文本媒介中抽取所需要的信息成为一个越来越受到关注的问 题。在工业界的信息抽取中,基于模版的信息抽取依然占据着十分重要的地 位。目前,一般是通过工程师手动撰写和维护模版,这样不仅会消耗大量的 人力成本,而且人的认知和抽取资源(例如实体抽取和语义匹配等)天然存 在较大的差异,难以很好的利用抽取资源的能力。此外,不同的人在撰写模 版时难以确定文本模糊匹配的使用界限,进而导致召回不足或过召回,导致 信息抽取效果不稳定。
发明内容
本发明实施例提供一种基于RPA及AI的信息抽取方法、装置、设备 及介质,通过采用泛化能力强的信息提取模板,提升了信息抽取的准确性。
第一方面,本发明实施提供了一种基于RPA及AI的信息抽取方法,该 方法包括:
S1、对已标注的输入文本进行识别,确定包含标注信息的标注片段和不 包含标注信息的非标注片段,其中,所述标注片段包括标注类别和标注内容;
S2、根据所述标注内容确定待抽取的文本信息,通过将所述标注类别和 所述文本信息进行组合,得到抽取节点;其中,所述抽取节点中所述文本信 息对应标识符的表示方式是按照所述标注内容中是否存在实体来确定的;
S3、根据所述非标注片段的关键字段生成文本节点,所述文本节点对应 标识符的表示方式是按照所述关键字段在所述非标注片段中的重要度值来确 定的;
S4、按照所述非标注片段和所述标注片段在所述输入文本中的位置,将 所述文本节点和所述抽取节点进行组合,得到信息抽取模板,并基于所述信 息抽取模板,对未标注的其他输入文本进行信息抽取。
可选的,所述S2具体包括:
S21、将所述标注类别作为抽取节点中的抽取类别;
S22、如果识别出所述标注内容中存在与所述抽取类别对应的实体片段, 则将所述实体片段替换为与所述抽取类别对应的待抽取的实体信息;其中, 所述实体信息通过第一预设标识符表示,以表示在信息抽取过程中进行实体 抽取;
S23、将所述抽取类别和所述待抽取的实体信息按照预设连接符进行组 合,得到抽取节点。
可选的,所述S2具体包括:
S21、将所述标注类别作为抽取节点中的抽取类别;
S22、如果未识别出所述标注内容中存在与所述抽取类别对应的实体片 段,则根据所述标注内容的字符长度确定待抽取字符的长度范围;其中,所 述待抽取字符的长度范围通过第二预设标识符表示,以表示在信息抽取过程 中抽取所述长度范围内容的字符;
S23、将所述抽取类别和所述长度范围按照预设连接符进行组合,得到抽 取节点。
可选的,所述S3具体包括:
S31、按照标点符号,将所述非标注片段切分为多个子句;
S32、确定各个子句在所述非标注片段中所表示语义的重要度值;
S33、对于任意一个子句,如果所述重要度值小于预设阈值,则根据该子 句对应的文本内容的长度确定待抽取字符的长度范围,并根据所述长度范围 生成文本节点;其中,所述文本节点中的长度范围通过第二预设标识符表示。
可选的,所述S32具体包括:
S321、基于自然语言处理NLP中的文本排序算法TextRank确定各个子 句的分数值,并从各分数值中选择数值大小在前K位的分数值作和,得到和 值;
S322、对于任意一个子句的分数值,将该分数值与所述和值作商,如果 商值小于预设阈值,则确定该子句的重要度值小于所述预设阈值;如果商值 大于预设阈值,则确定该子句的重要度值大于所述预设阈值。
可选的,所述方法还包括:
如果所述重要度值大于等于所述预设阈值,则识别该子句中是否存在实 体片段;
如果识别出存在实体片段,则将所述实体片段替换为对应的实体信息, 以作为文本节点;其中,所述文本节点中的实体信息通过第一预设标识符表 示;
如果未识别出实体片段,则对该子句进行资源处理,并将资源处理后的 内容作为文本节点;其中,所述资源处理包括自然语言处理NLP中的归一化 处理和/或主干提取处理。
可选的,所述输入文本为经过光学字符识别OCR处理后的文本。
第二方面,本发明实施例还提供了一种基于RPA及AI的信息抽取装置, 该装置包括:
标注文本识别模块,被配置为:对已标注的输入文本进行识别,确定包 含标注信息的标注片段和不包含标注信息的非标注片段,其中,所述标注片 段包括标注类别和标注内容;
抽取节点生成模块,被配置为:根据所述标注内容确定待抽取的文本信 息,通过将所述标注类别和所述文本信息进行组合,得到抽取节点;其中, 所述抽取节点中所述文本信息对应标识符的表示方式是按照所述标注内容中 是否存在实体来确定的;
文本节点生成模块,被配置为:根据所述非标注片段的关键字段生成文 本节点,所述文本节点对应标识符的表示方式是按照所述关键字段在所述非 标注片段中的重要度值来确定的;
信息提取模块,被配置为:按照所述非标注片段和所述标注片段在所述 输入文本中的位置,将所述文本节点和所述抽取节点进行组合,得到信息抽 取模板,并基于所述信息抽取模板,对未标注的其他输入文本进行信息抽取。
可选的,所述抽取节点生成模块,具体被配置为:
将所述标注类别作为抽取节点中的抽取类别;
如果识别出所述标注内容中存在与所述抽取类别对应的实体片段,则将 所述实体片段替换为与所述抽取类别对应的待抽取的实体信息;其中,所述 实体信息通过第一预设标识符表示,以表示在信息抽取过程中进行实体抽取;
将所述抽取类别和所述待抽取的实体信息按照预设连接符进行组合,得 到抽取节点。
可选的,所述抽取节点生成模块,具体被配置为:
将所述标注类别作为抽取节点中的抽取类别;
如果未识别出所述标注内容中存在与所述抽取类别对应的实体片段,则 根据所述标注内容的字符长度确定待抽取字符的长度范围;其中,所述待抽 取字符的长度范围通过第二预设标识符表示,以表示在信息抽取过程中抽取 所述长度范围内容的字符;
将所述抽取类别和所述长度范围按照预设连接符进行组合,得到抽取节 点。
可选的,所述文本节点生成模块,具体包括:
子句切分单元,被配置为:按照标点符号,将所述非标注片段切分为多 个子句;
子句重要度确定单元,被配置为:确定各个子句在所述非标注片段中所 表示语义的重要度值;
文本节点生成单元,被配置为:对于任意一个子句,如果所述重要度值 小于预设阈值,则根据该子句对应的文本内容的长度确定待抽取字符的长度 范围,并根据所述长度范围生成文本节点;其中,所述文本节点中的长度范 围通过第二预设标识符表示。
可选的,所述子句重要度确定单元,具体被配置为:
基于自然语言处理NLP中的文本排序算法TextRank确定各个子句的分 数值,并从各分数值中选择数值大小在前K位的分数值作和,得到和值;
对于任意一个子句的分数值,将该分数值与所述和值作商,如果商值小 于预设阈值,则确定该子句的重要度值小于所述预设阈值;如果商值大于预 设阈值,则确定该子句的重要度值大于所述预设阈值。
可选的,所述装置还包括:
实体判断模块,被配置为如果所述重要度值大于等于所述预设阈值,则 识别该子句中是否存在实体片段;
实体信息替换模块,被配置为如果识别出存在实体片段,则将所述实体 片段替换为对应的实体信息,以作为文本节点;其中,所述文本节点中的实 体信息通过第一预设标识符表示;
资源处理模块,被配置为如果未识别出实体片段,则对该子句进行资源 处理,并将资源处理后的内容作为文本节点;其中,所述资源处理包括自然 语言处理NLP中的归一化处理和/或主干提取处理。
可选的,所述输入文本为经过光学字符识别OCR处理后的文本。
第三方面,本发明实施例还提供了一种计算设备,包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,执行本发明 任意实施例所提供的基于RPA及AI的信息抽取方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储 有计算机程序,该程序被处理器执行时实现本发明任意实施例所提供的基于 RPA及AI的信息抽取方法。
本发明实施例提供的技术方案,在识别出输入文本的标注片段和非标注 片段后,基于已标注文本的标注片段生成抽取节点,基于非标注片段生成文 本节点。其中,抽取节点包括抽取类别和待抽取的文本信息,文本节点是根 据非标注片段中的关键字段生成的。将文本节点和抽取节点按照非标注片段 和标注片段在输入文本中的位置进行组合,可得到信息抽取模板。相对于人 工撰写和维护信息抽取模板的方式,本发明实施例采用基于标注信息和抽取 资源自动生成模板的方式,节省了大量的人力资源,并且生成的模板具有更强的泛化能力。在利用该模板进行信息抽取时,可达到提高信息抽取精度的 效果。
本发明实施例的创新点包括:
1、根据输入文本中的标注片段生成抽取节点,根据非标注片段生成文本 节点,将文本节点和抽取节点按照非标注片段和标注片段在输入文本中的位 置进行组合,得到信息抽取模板,避免了人工撰写模板实施效率低的问题, 是本发明实施例的创新点之一。
2、通过对信息抽取模板中的文本节点进行实体抽取、归一化处理和/或 主干提取,提升了信息抽取模板的泛化能力,是本发明实施例的创新点之一。
3、分别为抽取节点中的待抽取文本信息和文本节点添加不同的标识符, 在利用信息抽取模板进行信息抽取时,可根据标识符自适应选择是否进行模 糊匹配,提高抽取效果的精度和准确性,是本发明实施例的创新点之一。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实 施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面 描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲, 在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a为本发明实施例一提供的一种基于RPA及AI的信息抽取方法的流 程图;
图1b为本发明实施例一提供的一种信息抽取模板的截图;
图1c为本发明实施例一提供的利用信息抽取模板对测试文本进行抽取的 效果截图;
图2为本发明实施例二提供的又一种基于RPA及AI的信息抽取方法的 流程图;
图3为本发明实施例三提供的一种基于RPA及AI的信息抽取装置的结 构框图;
图4为本发明实施例四提供的一种计算设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行 清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而 不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付 出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明实施例及附图中的术语“包括”和“具有”以及它们 任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过 程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地 还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品 或设备固有的其它步骤或单元。
本发明的描述中,“信息抽取模板”是开发者为“信息抽取”功能提供 的文本表达式。利用这个表达式,去匹配文本的若干片段、提取信息。对于 本发明实施例提供的信息抽取模板,需要了解如下必要的语法:
1、中括号“[]”代表严格匹配,匹配的对象可以为文本、资源等。严格 匹配要求待匹配的文本与指定的匹配内容必须完全一致。
2、尖括号“<>”代表模糊匹配,匹配的对象可以是文本或者任意字符 的个数。模糊匹配是与严格匹配相对应的概念,模糊匹配则只要两者语义接 近即可,即相似度需大于设定阈值。
3、大括号“{}”中包含要抽取的字段名称(key)和内容(value),例如: {公司名:<.*:n,m}。
本发明的描述中,抽取资源是指基本的底层NLP能力,包括:文本语义 相似度计算、实体抽取和句法分析等。
本发明的描述中,“字段”是针对模版抽取出来的关键信息,取的特定于 当前信息抽取任务的名字,该名字一般由用户指定。
为了清楚明白地解释本发明实施例的实现原理,下面先对信息抽取模板 的形式进行简单介绍:
如果按照功能进行划分,信息抽取模板中的节点包括文本节点和抽取节 点。其中,抽取节点和文本节点可通过大括号进行区分,大括号中的内容表 示抽取节点,大括号外的内容表示文本节点。
如果按照节点形式进行划分,信息抽取模板中的节点的形式可以为:1、 资源节点[@Entity_XX],其中,XX表示待抽取的实体信息;2、任意文本节 点<.*{n,m}>,其中,n和m为待抽取字符数目的上限和下限;3、纯文本节 点<XXX>或者[XXX]。以下分别进行详细说明。
实施例一
机器人流程自动化(Robotic Process Automation)简称RPA,是通过特定 的“机器人软件”,模拟人在计算机上的操作,按规则自动执行流程任务。
AI(Artificial Intelligence)是人工智能的英文缩写,它是研究、开发用于 模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术 科学。本实施例所采用的是AI技术中的OCR(Optical Character Recognition, 光学字符识别)技术和NLP(Natural Language Processing,自然语言处理) 技术。其中,OCR用以对图片、PDF文档中的文本内容进行识别,NLP用于 确定子句在文本中的重要性,以及对子句进行归一化或主干提取等处理。
在工业界的信息抽取中,基于模版的信息抽取依然占据着十分重要的地 位。但是目前,基于模版的信息抽取方式需要人工撰写和维护模版,人工撰 写模版工作量较大而且难以有效的利用抽取资源,例如实体抽取和语义匹配 等。本发明实施例提出了一种基于RPA及AI的信息抽取方法、装置、设 备及介质,可以根据标注内容和抽取资源自动生成所需要的模版,利用该模 板可实现文本内容的精确提取。通过自动生成模版,不仅可以减少人力成本, 而且可以更好的利用抽取资源,增强信息抽取模板的泛化能力。
图1a为本发明实施例一提供的一种基于RPA及AI的信息抽取方法的流 程图,该方法可通过基于RPA及AI的信息抽取装置来执行,该装置可通过 软件和/或硬件的方式来实现,如图1a所示,该方法包括:
S110、对已标注的输入文本进行识别,确定包含标注信息的标注片段和 不包含标注信息的非标注片段。
其中,输入文本可以是经过OCR识别后的文本。输入文本中的标注片段 包括标注类别和标注内容。本实施例中,输入文本的标注方式有多种,本实 施例对此不作具体限定。
示例性的,在对输入文本进行标注时,可为标注片段和非标注片段添加 不同的颜色。对于标注片段中的标注类别和标注内容,也可通过不同颜色来 进行区分。在这种标注方式下,通过识别颜色即可确定出标注类别、标注内 容,以及非标注片段。
示例性的,在对输入文本进行标注时,还可采用设定标识符来区分标注 片段与非标注片段。对于标注片段中的标注类别和标注内容,可通过设定格 式来表示,例如,可采用“标注类别(key)===标注内容(value)”的格式 来表示。在这种标注方式下,在对已标注的输入文本进行识别时,可通过识 别设定标识符来确定文本中的标注片段和非标注片段。其中,对于标注片段, 可通过设定格式来识别其中的类别及其对应内容。
具体的,以如下标注文本为例:
授权委托书保康县疾病预防控制中心作为授权人,特授权如下。授权被 授权人【【【姓名===张某】】】(身份证号:【【【身份证号 ===420626XXXXXXXXXX12】】】)以授权人名义【【【职责===与武汉生 物制品研究所有限责任公司洽谈采购新冠疫苗产品、签订产品购销合同】】】。 授权被授权人【【【姓名===李某】】】(身份证号:【【【身份证号 ===420321XXXXXXXXXX18】】】_______)以授权人名义【【【职责=== 收取和/或提取武汉生物制品研究所有限责任公司货物】】】】。授权被授 权人【【【姓名===李某】】】(身份证号:【【【身份证号 ===420321XXXXXXXXXX18】】】)以授权人名义【【【职责===接收武 汉生物制品研究所有限责任公司开具的发票,收取和提供财务对账函件】】】。 授权期限自2020年10月13日起至【【【授权截止日期===2021年10月13 日】】】附件:被授权人员身份证复印件授权人(签章):、被授权人(签 字):被授权人(签字):李某被授权人(签字)::刘某签署日期:2020 年10月13日附件:被授权人身份证复印件。
在上述标注文本中,可将括号“【】”中的内容确定为标注片段,例如 上述标注文本中的【【【姓名===李某】】】、【【【身份证号 ===420626XXXXXXXXXX12】】】)。对于任意一个标注片段,可将“===” 之前的内容作为标注类别,例如“姓名”,将“===”之后的内容作为标注内 容,例如“李某”。
S120、根据标注内容确定待抽取的文本信息,通过将待抽取的文本信息 和标注类别进行组合,得到抽取节点。
其中,抽取节点的作用是在进行信息抽取过程中对预设字段进行信息抽 取。抽取节点可通过如下格式来表示:{抽取类别:待抽取的值}。其中,抽 取节点中的抽取类别可通过标注类别来表示,待抽取的值可通过标注内容来 确定。将抽取类别和待抽取的文本信息通过进行组合,例如上述格式中通过 冒号“:”将二者组合到一起,得到抽取节点。
本实施例中,为抽取节点中的待抽取的文本信息添加了设定的语法标识, 该标识符的表示是按照标注内容中是否存在实体来确定的。
示例性的,如果识别出标注内容中存在与抽取类别对应的实体片段,则 将实体片段替换为与抽取类别对应的待抽取的实体信息;其中,实体信息通 过第一预设标识符[@Entity_]表示,以表示在信息抽取过程中进行实体抽取。 通过将抽取类别和待抽取的实体信息按照预设连接符“:”进行组合,可得 到抽取节点,即该抽取节点可以表示为资源节点的形式[@Entity_XX]。在利 用该节点进行信息抽取时,表示的是待抽取的文本信息是实体。
具体的,图1b为本发明实施例一提供的一种信息抽取模板的截图。图 1b生成的信息抽取模板是根据上文中的标注文本生成的。标注文本中的“姓 名===张某”为实体片段,在生成抽取节点的过程中,可将实体片段“张某” 替换为待抽取的实体信息“人物名称”,并为该“人物名称”添加第一预设 标识符。通过将抽取类别“姓名”和待抽取的实体信息“人物名称”通过预 设连接符“:”进行组合,可得到抽取节点{姓名:[@Entity_人物名称]}。
本实施例中,Entity可以替换为V、R或S。其中,V表示词表抽取的实 体,R表示正则抽取的实体,S表示模型抽取的实体。以上述人物名称为例, 可将Entity利用S代替,表示人物名称是利用模型抽取的实体信息。
示例性的,如果未识别出标注内容中存在与抽取类别对应的实体片段, 则根据标注内容的字符长度确定待抽取字符的长度范围;其中,所述待抽取 字符的长度范围通过第二预设标识符<.*:n,m>表示,以表示在信息抽取过程 中抽取类别对应的长度范围内容的字符。通过将抽取类别和所述长度范围按 照预设连接符进行组合,得到抽取节点,即该抽取节点可以表示为任意文本 节点的形式<.*:n,m>,其中,n和m为待抽取字符数目的下和上限。在利用 该抽取节点进行信息抽取时,只要标注片段中的文本内容的字符长度在n和 m所构成的长度范围内,则对该文本内容进行抽取。
具体的,仍以上文中的标注文本为例,在标注内容“【【【职责===与武 汉生物制品研究所有限责任公司洽谈采购新冠疫苗产品、签订产品购销合 同】】】”中未识别出实体片段,则根据标注内容的字符长度35,确定待抽 取字符长度的下限值确定为0,上限值确定为100。该长度范围可通过第二预 设标识符<.*:0,100>表示。将抽取类别“职责”和长度范围<.*:0,100>通过 预设连接符“:”进行组合,可得到图1b中的抽取节点{职责:<*:0,100>}。
S130、根据非标注片段的关键字段生成文本节点。
其中,文本节点的作用是在信息抽取过程中配合抽取节点对设定字段进 行信息抽取。通过匹配抽取节点前后的文本信息,可根据匹配结果确定是否 按照抽取节点进行文本内容的抽取,以提高抽取内容的准确性。
本实施例中,非标注片段中的关键字段可通过NLP中的语义识别算法来 确定。而文本节点对应标识符的表示方式是按照关键字段在非标注片段中的 重要度值来确定的。
示例性的,可将非标注片段划分为多个子句,通过确定各个子句在非标 注片段中的重要性来确定文本节点的标识符的标识形式。例如,如果该子句 的重要度值小于预设阈值,则表示该子句在非标注片段中的重要性较低,此 时,可将文本节点表示为任意文本节点的形式<.*:n,m>,即在将非标注片段 中的文本内容与文本节点匹配的过程中,只要文本内容的字符长度在,nm所 构成的长度范围内,则表示匹配成功。具体的,m可以为2L取整,n可以为 0.3L取整,L表示子句的字符个数。
具体的,仍以上述标注文本为例,如图1b所示,身份证号这个字段对应 的文本节点为<.*:0,10>。
示例性的,如果子句的重要度值大于预设阈值,则表示该子句在非标注 片段中的重要性较高,此时,可识别该子句中是否存在实体片段,如果存在 实体片段,则将该实体片段替换为对应的实体信息,以作为文本节点,即该 文本节点以资源节点的形式[@Entity_XX]表示;如果该子句中不存在实体片 段,则将该子句进行资源处理,例如采用NLP技术对子句进行归一化处理和 /或主干提取处理等,并将处理后的内容作为文本节点,即该文本节点以纯文 本节点的形式<XXX>或者[XXX]表示。具体的,仍以上述标注文本为例,非 标注片段中的“授权被授权人”和“以授权人名义”均采用严格匹配,即如 图1b所示模板中的[授权被授权人]和[以授权人名义]。
需要说明书的是,根据已标注的输入文本生成文本节点和抽取节点的过 程中,文本节点和抽取节点的生成顺序不存在先后之分,可同时进行。
S140、按照非标注片段和标注片段在输入文本中的位置,将文本节点和 抽取节点进行组合,得到信息抽取模板,并基于信息抽取模板,对未标注的 其他输入文本进行信息抽取。
本实施例中,为了区分文本节点和抽取节点,可在文本节点和抽取节点 组合过程中,为抽取节点添加大括号“{}”,表示要抽取的字段名称(key) 和待抽取的内容(value)。
在得到信息抽取模板后,可将信息抽取模板中的文本节点和抽取节点中 的内容,与其他未标注的输入文本的文本内容依次进行匹配,以从未标注的 输入文本中抽取出想要的信息。其中,匹配方式分别通过文本节点和抽取节 点对应的标识符来确定。
具体的,可根据文本节点的标识符确定与输入文本的匹配方式,例如, 如果文本节点的标识符是尖括号“<>”,则将文本节点中的内容与输入文本 进行相似度计算,如果相似度达到设定阈值,则匹配成功;如果文本节点的 标识符是中括号“[]”,则将文本节点中的内容与输入文本进行严格匹配, 如果内容完全一样,则匹配成功。例如,图1c为本发明实施例一提供的利用 信息抽取模板对测试文本进行抽取的效果截图。利用图1b所示的信息抽取模 板对图1c所示的测试文本进行信息抽取时,由于测试文本中存在与信息抽取 模板中的文本节点[授权被授权人]、[以授权人名义]完全一致的文本内容,因 此,这部分内容与文本节点匹配成功。
同样的,在将抽取节点与输入文本进行匹配时,其匹配方式可根据抽取 节点中待抽取的文本信息的标识符来确定。如果抽取节点中存在第一预设标 识符,则表示抽取节点的表示形式为资源节点,此时,可根据抽取节点中的 抽取类别从输入文本中抽取对应的实体。例如,利用图1b所示的信息抽取模 板在对1c所示的测试文本进行信息抽取时,可从测试文本中抽取出实体“张 天雷”和身份证号“420626XXXXXXXXX12”这两个实体。如果抽取节点中 存在第二预设标识符,则表示抽取节点的表示形式为任意文本节点,此时, 可根据抽取节点中的抽取类别从输入文本中抽取符合长度范围的文本内容。 例如,利用图1b所示的信息抽取模板在对1c所示的测试文本进行信息抽取 时,可从测试文本中抽取出满足字符长度在0-100范围内的字符,即“与武 汉机械公司洽谈采购基建产品合同”。
本实施例提供的技术方案,在识别出输入文本的标注片段和非标注片段 后,基于已标注文本的标注片段生成抽取节点,基于非标注片段生成文本节 点。其中,抽取节点包括抽取类别和待抽取的文本信息,文本节点是根据非 标注片段中的关键字段生成的。将文本节点和抽取节点按照非标注片段和标 注片段在输入文本中的位置进行组合,可得到信息抽取模板。相对于人工撰 写和维护信息抽取模板的方式,本发明实施例采用基于标注信息和抽取资源 自动生成模板的方式,节省了大量的人力资源,并且生成的模板具有更强的泛化能力。在利用该模板进行信息抽取时,可达到提高信息抽取精度的效果。
实施例二
图2为本发明实施例二提供的又一种基于RPA及AI的信息抽取方法的 流程图,本实施例在上述实施例的基础上,对文本节点的生成方式进行了细 化,如图2所示,本实施例提供的方法包括:
S200、对已标注的输入文本进行识别,确定包含标注信息的标注片段和 不包含标注信息的非标注片段。
其中,标注片段包括标注类别和标注内容。
S210、根据标注内容确定待抽取的文本信息,通过将标注类别和文本信 息进行组合,得到抽取节点。
其中,抽取节点中文本信息对应标识符的表示方式是按照标注内容中是 否存在实体来确定的。
S220、按照标点符号,将非标注片段切分为多个子句。
S230、确定各个子句在非标注片段中所表示语义的重要度值。
其中,各个子句在非标注片段中所表示语义的重要度值可通过如下方式 来确定:
基于NLP中的文本排序算法TextRank确定各个子句的分数值,通过对 各分数值进行排序,可从各分数值中选择数值大小在前K位的分数值作和, 得到和值;对于任意一个子句的分数值,将该分数值与所述和值作商,如果 商值小于预设阈值,则确定该子句的重要度值小于预设阈值;如果商值大于 预设阈值,则确定该子句的重要度值大于预设阈值。
S240、对于任意一个子句,判断该子句的重要度值是否小于预设阈值, 若是,则执行步骤S250;否则,执行步骤S260。
S250、根据该子句对应的文本内容的长度确定待抽取字符的长度范围, 并根据长度范围生成文本节点,继续执行步骤S290。
其中,文本节点中的长度范围通过第二预设标识符表示,即本实施例中, 如果子句的重要度值小于预设阈值,则说明该子句在文本中的重要性较低, 此时,文本节点可采用任意文本节点的形式<.*{n,m}>表示。
S260、识别该子句中是否存在实体片段,若是,则执行步骤S270;否则, 执行步骤S280;
S270、将实体片段替换为对应的实体信息,以作为文本节点,继续执行 步骤S290。
其中,文本节点中的实体信息通过第一预设标识符表示,以表示在信息 抽取过程中进行实体抽取,即本实施例中,如果子句的重要度值大于预设阈 值,则说明该子句在文本中的重要性较稿,此时,文本节点可采用资源节点 的形式[@Entity_XX]表示。
S280、对该子句进行资源处理,并将资源处理后的内容作为文本节点, 继续执行步骤S290。
其中,资源处理包括自然语言处理NLP中的归一化处理和/或主干提取处 理。其中,主干提取的原则包括:(1)通过依存句法树的依存关系提取中心 词。(2)提取中心词的并列词以及其分别对应的主语或宾语。
本实施例中,对于资源处理后的文本节点的表示形式为纯文本节点,其 对应的标识符的表示形式有两种,分别是第三预设标识符,即中括号“[]” 和第四预设标识符,即尖括号“<>”,其中,在进行信息抽取时,中括号表 示将括号中的内容和匹配对象进行严格匹配,即二者完全一致时表示匹配成 功。尖括号表示将括号中的内容与匹配对应进行模糊匹配,即二者的相似度 大于设定阈值时,匹配成功。
具体的,在如下三种情况下,采用中括号作为标识符:
(1)如果文本中只有一个词,且可以被归一化处理,例如<无业>,<无 职业>,可以被统一归一化为<无业>,由于归一化后有比相似度计算更加准确 的泛化能力,因此,在这种情况下,归一化后的文本内容对应的文本节点采 用的标识符为第三预设标识符,即中括号“[]”。
(2)若抽取节点为任意文本节点,若该抽取节点的后面的文本节点的表 示形式为纯文本节点,则采用预设第三预设标识符,即中括号“[]”作为纯 文本节点的标识符。例如:由标注文本:我的故乡是【【【故乡===河北邢台】】】 生成的模版:<我的故乡是>{故乡:[.*2,10]}[。]。
(3)在由多个相似文本生成的信息抽取模版中,某部分文本内容相同, 则该部分内容对应的文本节点的标识符采用预设第三预设标识符,即中括号 “[]”。例如:对于两段相似文本:1.阿里巴巴,创始人【【【创始人===马 云】】】,中国最大的电商公司。2.腾讯,创始人【【【创始人===马化腾】】】, 中国知名的游戏代理公司。生成模版分别为:1.[@Entity_公司名]<,创始人>{创 始人:@Entity_人名}<,中国知名的游戏代理公司>。2.[@Entity_公司名]<,创 始人>{创始人:@Entity_人名}<,中国知名的游戏代理公司>。此时,由于相 似文本生成的高度相似(相似度大于设定相似度阈值)模板中都存<,创始人> 部分,该部分的标识符会被转化为第三预设标识符,即中括号“[]”。
除了上述三种情况,纯文本节点采用第四预设标识符,即“<>”的形式 表示。
S290、按照非标注片段和标注片段在输入文本中的位置,将文本节点和 抽取节点进行组合,得到信息抽取模板,并基于信息抽取模板,对未标注的 其他输入文本进行信息抽取。
本实施例提供的技术方案,通过对纯文本节点进行归一化、主干提取等 资源处理,使得生成的信息提取目标具有更强的泛化能力。
实施例三
图3为本发明实施例三提供的一种基于RPA及AI的信息抽取装置的结 构框图,如图3所示,该装置包括:标注文本识别模块310、抽取节点生成 模块320、文本节点生成模块330和信息提取模块340;其中,
标注文本识别模块310,被配置为:对已标注的输入文本进行识别,确 定包含标注信息的标注片段和不包含标注信息的非标注片段,其中,所述标 注片段包括标注类别和标注内容;
抽取节点生成模块320,被配置为:根据所述标注内容确定待抽取的文 本信息,通过将所述标注类别和所述文本信息进行组合,得到抽取节点;其 中,所述抽取节点中所述文本信息对应标识符的表示方式是按照所述标注内 容中是否存在实体来确定的;
文本节点生成模块330,被配置为:根据所述非标注片段的关键字段生 成文本节点,所述文本节点对应标识符的表示方式是按照所述关键字段在所 述非标注片段中的重要度值来确定的;
信息提取模块340,被配置为:按照所述非标注片段和所述标注片段在 所述输入文本中的位置,将所述文本节点和所述抽取节点进行组合,得到信 息抽取模板,并基于所述信息抽取模板,对未标注的其他输入文本进行信息 抽取。
可选的,所述抽取节点生成模块320,具体被配置为:
将所述标注类别作为抽取节点中的抽取类别;
如果识别出所述标注内容中存在与所述抽取类别对应的实体片段,则将 所述实体片段替换为与所述抽取类别对应的待抽取的实体信息;其中,所述 实体信息通过第一预设标识符表示,以表示在信息抽取过程中进行实体抽取;
将所述抽取类别和所述待抽取的实体信息按照预设连接符进行组合,得 到抽取节点。
可选的,所述抽取节点生成模块320,具体被配置为:
将所述标注类别作为抽取节点中的抽取类别;
如果未识别出所述标注内容中存在与所述抽取类别对应的实体片段,则 根据所述标注内容的字符长度确定待抽取字符的长度范围;其中,所述待抽 取字符的长度范围通过第二预设标识符表示,以表示在信息抽取过程中抽取 所述长度范围内容的字符;
将所述抽取类别和所述长度范围按照预设连接符进行组合,得到抽取节 点。
可选的,所述文本节点生成模块330,具体包括:
子句切分单元,被配置为:按照标点符号,将所述非标注片段切分为多 个子句;
子句重要度确定单元,被配置为:确定各个子句在所述非标注片段中所 表示语义的重要度值;
文本节点生成单元,被配置为:对于任意一个子句,如果所述重要度值 小于预设阈值,则根据该子句对应的文本内容的长度确定待抽取字符的长度 范围,并根据所述长度范围生成文本节点;其中,所述文本节点中的长度范 围通过第二预设标识符表示。
可选的,所述子句重要度确定单元,具体被配置为:
基于自然语言处理NLP中的文本排序算法TextRank确定各个子句的分 数值,并从各分数值中选择数值大小在前K位的分数值作和,得到和值;
对于任意一个子句的分数值,将该分数值与所述和值作商,如果商值小 于预设阈值,则确定该子句的重要度值小于所述预设阈值;如果商值大于预 设阈值,则确定该子句的重要度值大于所述预设阈值。
可选的,所述装置还包括:
实体判断模块,被配置为如果所述重要度值大于等于所述预设阈值,则 识别该子句中是否存在实体片段;
实体信息替换模块,被配置为如果识别出存在实体片段,则将所述实体 片段替换为对应的实体信息,以作为文本节点;其中,所述文本节点中的实 体信息通过第一预设标识符表示;
资源处理模块,被配置为如果未识别出实体片段,则对该子句进行资源 处理,并将资源处理后的内容作为文本节点;其中,所述资源处理包括自然 语言处理NLP中的归一化处理和/或主干提取处理。
可选的,所述输入文本为经过光学字符识别OCR处理后的文本。
本发明实施例所提供的基于RPA及AI的信息抽取装置可执行本发明任 意实施例所提供的基于RPA及AI的信息抽取方法,具备执行方法相应的功 能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本发明 任意实施例所提供的基于RPA及AI的信息抽取方法。
实施例四
请参阅图4,图4为本发明实施例四提供的一种计算设备的结构示意图。 如图4所示,该计算设备可以包括:
存储有可执行程序代码的存储器701;
与存储器701耦合的处理器702;
其中,处理器702调用存储器701中存储的可执行程序代码,执行本发 明任意实施例所提供的基于RPA及AI的信息抽取方法。
本发明实施例公开一种计算机可读存储介质,其存储计算机程序,其中, 该计算机程序使得计算机执行本发明任意实施例所提供的基于RPA及AI的 信息抽取方法。
在本发明的各种实施例中,应理解,上述各过程的序号的大小并不意味 着执行顺序的必然先后,各过程的执行顺序应以其功能和内在逻辑确定,而 不应对本发明实施例的实施过程构成任何限定。
在本发明所提供的实施例中,应理解,“与A相应的B”表示B与A相 关联,根据A可以确定B。但还应理解,根据A确定B并不意味着仅仅根据 A确定B,还可以根据A和/或其他信息确定B。
另外,在本发明各实施例中的各功能单元可以集成在一个处理单元中, 也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单 元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单 元的形式实现。
上述集成的单元若以软件功能单元的形式实现并作为独立的产品销售或 使用时,可以存储在一个计算机可获取的存储器中。基于这样的理解,本发 明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全 部或者部分,可以以软件产品的形式体现出来,该计算机软件产品存储在一 个存储器中,包括若干请求用以使得一台计算机设备(可以为个人计算机、 服务器或者网络设备等,具体可以是计算机设备中的处理器)执行本发明的 各个实施例上述方法的部分或全部步骤。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步 骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可 读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随 机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、一次可编程只读存储器 (One-time Programmable Read-Only Memory,OTPROM)、电子抹除式可复 写只读存储器(Electrically-Erasable Programmable Read-Only Memory, EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其 他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的 计算机可读的任何其他介质。
本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中 的模块或流程并不一定是实施本发明所必须的。
本领域普通技术人员可以理解:实施例中的装置中的模块可以按照实施 例描述分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的 一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步 拆分成多个子模块。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其 限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术 人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者 对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术 方案的本质脱离本发明实施例技术方案的精神和范围。