基于 BERT 的非结构化领域文本知识抽取

文章目录

    • 题目
    • 摘要
    • 方法
    • 实验

题目

食品测试的大型语言模型

图片名称

论文地址:https://arxiv.org/abs/2103.00728

摘要

    随着知识图谱技术的发展和商业应用的普及,从各类非结构化领域文本中提取出知识图谱实体及关系数据的需求日益增加。这使得针对领域文本的自动化知识抽取颇有意义。本文提出了一种基于 BERT 的知识抽取方法,用于从非结构化的特定领域文本(例如保险行业的保险条款)中自动抽取知识点,以达到在构建知识图谱的过程中节约人力的目的。不同于常用的按照规则、模板或基于实体抽取模型的知识点抽取方法,本文将领域文本的知识点转化为问答对,以答案所在的位置前后的文本为上下文,以 BERT 基于 SQuAD 数据进行阅读理解任务的方式进行微调。用微调后的模型从更多保险条款中自动抽取知识点,获得了良好的效果。

方法

    近年来随着各行业数字化转型的深入,相关电子文本数量与日激增。与此同时,越来越多的企业开始重视数据分析、挖掘以及数据资源的开发利用,诸如知识图谱,智能对话等计算机应用系统已经成为了各类企事业单位对内对外提供服务的基础。这类应用往往需要从各类非结构化领域文本中提取出其蕴含的结构化信息,用于数字化知识库的构建。数据是计算机产品和服务的基础,为计算机提供数据成为了新时期企事业单位发展的新任务。企事业单位中原有的各类商务、业务文档资料蕴含了丰富的知识和信息,却都是为了人类阅读而撰写,相对于计算机程序的需求,多了很多的冗余信息。目前,在应用这类数据时,基本上需要投入大量人力,通过阅读文档人工抽取出所需信息,并将其表示成计算机能够读取(“理解”)的形式。如此造成了许多额外的学习成本和人力资源消耗。如何采用自动化的手段从非结构化的文本数据中发现知识,用以作为各种智能化应用所依存的数据资源,是知识抽取领域的研究热点。本文以特定领域的非结构化文本为研究对象,提出了通过基于深度学习的语言理解模型对其进行知识抽取的方法。这一方法将待抽取知识点以问题-答案对形式呈现,并以人工标注数据作为训练数据,在预训练模型的基础上进行迁移学习,通过微调(Fine Tuning)获得在同领域文本上自动抽取知识点的模型。

    对于具有统一结构规范的文档,可以采用构建规则的方式进行知识抽取。规则的构建往往通过人工的归纳总结来完成——即阅读大量同领域文本,从中选取,总结出最终的抽取规则。Jyothi等人使用基于规则的方式从大量个人简历中抽取有效信息,构建数据库。JunJun等人用类似的方法从学术文献中提取学术概念知识。这种方法的优点是不需训练模型,简单高效;缺点也很明显,我们构建的规则仅适用于相同结构的文本,而且必须具有较严格的格式规范,一旦文本结构稍有改变,就需要人工构建新的知识抽取规则,因此该方法不具备可移植性。

    知识抽取的一种任务称为实体提取,即从文本中抽取预先定义的标签内容,如时间,地点等,具体标签根据应用而定,其中最常用的一种知识抽取称为命名实体识别(named entity recognition, NER)。实体抽取本身可直接作为序列标注任务来解决,后者可使用传统的统计学习方法,如隐马尔可夫模型(HMM),或条件随机场(CRF)处理。近年来一些深度学习模型也被应用到这类问题中,如结合了 BiLSTM 和 CRF 的序列标注方法曾取得很好的效果。Lample等人提出了一种新的网络结构,使用堆叠的 LSTM 来表示一个栈结构,直接构造多个单词的表示,并与 LSTM-CRF 模型做了比较。Ma等人提出了基于 BiLSTM-CNN-CRF 的端到端序列标注模型。此外,微调后的 BERT模型也能够在序列标注任务上达到很好的效果。

    除了从文本中提取实体,实体之间的关系也是知识抽取的关注点,通常把实体及其关系组成三元组<E1, R, E2>,那么任务目标为从文本中抽取所有可能的实体关系三元组,其关系限定在预先设定的 schema 之内。Zeng等人设计了 CNN 来进行关系分类,但并非三元组。Makoto等人通过构建基于 BiLSTM和 Bi-TreeLSTM 的堆栈网络同时进行实体抽取和关系检测,从而实现实体关系的端到端预测。Li等人采用一个编码器-解码器架构的双层 LSTM,构建了一个不局限于三元组形式的知识抽取模型,可以预测出固定格式的结构化知识。Zheng等人通过一种标注策略把实体和关系提取任务转化为序列标注任务,而后构建与前面类似的 Bi-LSTM 模型来处理之。Luan[等人设计了一种多任务学习框架用于在科学文献中识别实体和关系,以构建科学知识图谱,此模型在没有任何领域先验知识的情况下优于现有模型。

    除了以上提到的知识抽取模式,一个不同的角度是将知识点本身看作一个问题,将知识点的内容作为该问题的答案,将知识点所在的文本段作为这个问答对的上下文,这样知识抽取模型便可以用问答模型来构造。近年来,GPT和 BERT等预训练模型的出现使得这类问答阅读理解任务可以很好地作为其下游任务,仅需简单改造原有网络结构,并进行微调,即可得到很好的效果。Wang等人在原始BERT 的基础上使用多段落预测的方式改进了其在 SQuAD数据集上的效果。Alberti等人在BERT 与 SQuAD 的基础上改进后,将其应用在一个更困难的问答数据集 NQ上,𝐹1分数相对之前的基准线提升了 30%。这种问答形式的知识抽取可以更灵活地处理不同结构的知识——只需将其定义为不同的问题,而不需要根据知识的形式单独设计新的网络结构。

    不同行业的结构化文本因其行业特征而特色迥异。有些行业的特定文档(例如医药说明书)不仅具备严格的结构而且在术语和用词上要求非常严格,比较适合基于规则的知识抽取。还有一些行业的文本与通用文本区别不大(例如新闻报道、访谈等),对其可以直接应用通用抽取技术。还有一些领域的文本,介于两者之间,有一定的专业性,但不很严格,不同企业的同类文本结构和措辞近似,但又有所差别,同一企业内部的术语使用和展示方式相对统一。保险行业的保险条款文档,就属于这第三类文本之列。保险条款是保险合同双方当事人——保险人(保险公司)与投保人——共同约定的有关双方权利和义务的条文。一个保险条款一般由三部分组成:

  1. 基本信息,即条款自身信息,包括:保险人,条款名称,条款简称,条款类型,期限类型,犹豫期,诉讼时效,备案号和备案时间,能否作为主险销售等;
  2. 购买条件,即要本条款承接的被保险人需要具备的客观条件,包括:被保险人的年领、性别、职业/工种要求,体检要求,社保要求,必须如实告知的个人情况等;
  3. 保险责任,也就是本条款的责任范围和赔付内容等;

    虽然保险条款具备一定程度的专业词汇,但专业词汇的使用大多没有业界统一标准(例如:“犹豫期”又可称为“冷静期”等),而且条款文档作为交付给投保人阅读的文件,需要抽取的知识点大多混杂在一段自然语言表述之中,并不适合依据静态规则来进行文本抽取。所需抽取知识点本身虽然可以采用实体抽取的方式来获取,但知识点对应的值却往往混杂在一段自然语言表述之中,无法与知识点描述一起被抽取出 。例如:某条款的诉讼时效是 2 年,这个“2 年”可能出现在下列这段描述中:“受益人向我们请求给付保险金或保险费豁免的诉讼时效期间为 2 年,自其知道或应当知道保险事故发生之日起计算。”因此在需要从保险条款中抽取基本信息、购买条件和保险责任等知识点时,我们就直接排除了基于规则和基于实体抽取的方法。如果采用 Schema 式抽取,将知识点转化为三元组,则所需要的训练数据集和标注量都相对较大,相对于我们的目的而言,难免得不偿失。因此,我们最终选取了基于问答的知识抽取方式。

    近年来,基于预训练模型通过微调进行学习的方法在自然语言处理(Natural Language Process, NLP)领域取得了巨大成功,BERT 模型是其中的重要代表。BERT 是一种基于转换器(transformer)的双向编码表示模型,它的拓扑结构是一个多层的双向转换器网络。BERT 模型是基于微调学习的典型应用,也就是说它的构建包含预训练和微调两个步骤。首先在预训练阶段,对大量不同训练任务的未标记语料数据进行训练,将语料中的知识迁移进了预训练模型的文本嵌入(Embedding)中。这样,在微调阶段,只需要在神经网络中增加一个额外的输出层,就可以对预训练模型进行调整了。具体而言,微调就是用预训练参数初始化 BERT 模型,然后,使用来自下游任务的标记数据对模型进行微调。针对我们从保险文档中抽取知识点的需求,只需使用保险条款数据针对 BERT 的问答任务进行微调,就可以适应保险条款知识抽取的需求了。

图片名称

    保险条款知识抽取过程首先将人工标注的保险条款知识点制作成<question, answer>的形式,然后使用文本解析程序将一份保险条款文档解析为一颗文档树,其中主标题为根节点,其后每一级标题都为上一级的子节点,而每段文字都被读取为一个叶子节点。根据问题-答案对中的答案匹配到其所在叶子节点,以整个叶子节点对应的文本为该问题-答案对的上下文(context),最终构造成一个由<question, answer, context>组成的问答数据集,最后使用这一数据集对 BERT 预训练模型,按照针对 SQuAD 数据进行阅读理解任务的微调方式进行训练,得到最终的知识抽取模型。如上图所示,对于问答任务,只需在 BERT 输出的编码向量后添加一层额外的全连接层,预测answer 在 context 中的位置即可。在测试时,对于新的保险条款,需要以同样的方式分析不同知识点问题所在的上下文,然后再将<question, context>作为模型的输入,得到各知识点的 answer。使用上面的方法可以较好地处理同一公司、同一类型的保险条款,这是因为同公司的保险条款文章结构具有一致性,可以用同一程序来分析上下文,但是对于不同公司、类型的保险条款,由于术语和结构不同,原分析程序无法处理,而为每种条款重新编写一份文本分析程序是不具可行性的,因此该模型需要改进。

    为了使知识抽取过程具有更好的泛用性,我们首先修改预测过程:将新条款的原文按照字数进行分段,每段约 300 字(尽量不打碎句子),而后将每一文本段都作为任何一个知识点的可能的context,作为模型的输入。如果输出的 answer是空,则说明这一段不存在相应的知识点,否则综合考虑每个知识点在所有文本段下的输出,选择其中概率最高的作为该知识点的 answer。这种新的预测方法对于任何条款具有泛用性,不再需要进行额外的文本解析。我们用这种方法测试了几个不同公司的条款,结果表明其在旧模型上的效果并不好,准确率的下降很明显。原因在于:改进前在训练时,每个知识点的上下文都是根据文档结构精确定位的,没有很多的负样本,导致模型也只能够通过精确定位的上下文来进行预测。一旦文本组织结构、标题格式发生变化,原有的文本解析程序就无法精确定位问题上下文,产生了很多干扰数据,影响了模型的效果。因此模型的训练过程需要修改,我们添加分段文本数据,即对训练集中每个条款按照同样的方式分段,如果该段包含该知识点标注的答案,则作为新的样本,否则作为负样本(answer 为空)。在实际测试中,如果将这些新的样本全部加入到训练集中,产生的训练数据过多,且负样本数量远超正样本。为了平衡此过程,我们进一步作如下改进:对于每个知识点问题,如果该条款本身不包含该知识点(因为知识点是针对所有保险条款统一定义的,因此对于某份特定的条款而言,未必所有知识点都包含在其中),则每个片段以 10%的概率作为该问题的负样本;如果条款本身包含该知识点,则分两种情况,如果当前文本片段包含目标知识点,则作为正样本,否则以 50%的概率选取为负样本,如此构造新的训练集得到新模型。这样做的想法是:如果条款中包含某一知识点,就增加与该知识点相关的负样本数量,以期模型能够更好地处理相似片段的干扰,提高答案的准确性。而如果条款中本身不包含该知识点,则文本片段与知识点的契合程度应该较差,选取少量的负样本就足够。经过测试,新的模型相对于旧模型有很大改进,更契合新的预测方法,可以作为更通用的保险条款知识抽取模型。

实验

    我们的数据集由某保险公司的保险条款组成,每个条款具有人工标注的知识点,如犹豫期,诉讼期,保险金额等。在实验过程中,训练集,测试集分别由 251 个条款和 98 个条款组成。经过统计,这些条款中所有可能的知识点问题数量为309 条,平均每个条款有 45 条知识点需要提取。测试过程中,我们将条款文本分段,尝试从所有段中提取知识点𝑘𝑖,并根据模型输出的概率,选择概率最高的文本作为该知识点的答案。如果最终得到的输出为空字符串,则代表条款不存在该知识点。由于每个条款提取的知识点只占 309条中的小部分,大多数知识点的输出应当是空的,因此我们在评估时忽略这部分空知识点,关注两个指标:模型输出的知识点正确率𝑃,即精准率(precision),以及应提取知识点中确实被正确提取的比率𝑅,即召回率(recall)。假设知识点𝑘𝑖标注为𝑦𝑖,模型的输出为𝑦̃𝑖,则𝑃和𝑅可定义为:

    我们使用 Google 开源的 BERT 中文预训练模型 BERT_chinese_L-12_H-768_A-12,在此基础上进行后续的测试。参数设置上,初始学习率为 3E-5,批量大小为 4,训练 epoch 数为 4,其余参数采用该模型的默认配置。本文的实验包含两部分的测试,第一部分是基准模型的测试,其训练过程为:首先使用文本解析程序解析保险条款的结构,提取出对应知识点所在的 context 后,再组合成训练集对 BERT 模型作 fine-tuning。第二部分是新模型的测试,其训练过程为:在基准模型的训练集的基础上添加新样本。对相应的保险条款按字数进行分段,每段文本约 300 字。对于每个知识点问题,构建训练集来训练得到新模型。测试结果是测试集中 98 个保险条款统计的平均值,如下表所示:

图片名称

    可以看出,以前文所述的方法添加有限的负样本后训练的模型明显优于基准模型,其中𝑃提高了约 40%,𝑅提高了约 20%。𝑃的提升相当显著。基准模型的训练集中,仅通过文本解析程序精确定位知识点的上下文信息,导致模型只具备从正确的上下文中抽取对应的知识点的能力,而不具备辨别无效上下文的能力,因此基准模型存在很大比例的无效输出。而按比例添加负样本后,新模型的无效输出大幅度减少,输出的知识点中 60%以上是有效且正确的输出。而由于添加了相对于基准模型粒度更粗的上下文信息(文本段)组成的正样本,使得模型能够更好地从无规则截取的文本段中抽取出目标知识点,因此召回率𝑅也有大幅提升。最终𝐹1值提升了约30%。

    实验结果表明,经过我们优化训练集后训练得到的新模型在文本分段预测的方法中效果优于原始的基准模型,从而能够进一步用于更具泛用性的保险条款知识抽取任务中。同时,当前的模型依然还有很大的提升空间。

  • 由于现实条件(数据标注量)的限制,我们的训练仅囊括了 251 个条款,且所有训练数据均来自于同一个保险人。在扩大数据集规模,囊括更多保险人制定的条款数据后,应当进一步优化模型的效果。
  • 当前我们的数据标注仅包含条款知识点的内容,而训练数据中对应的上下文是通过自主编写的文本分析程序得到的,这样得到的上下文存在小部分错误。可优化人工标注策略,同时标注知识点及其上下文,这样得到的数据可以更精确。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/870151.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

千呼新零售2.0-OCR图像识别采购单视频介绍

千呼新零售2.0系统是零售行业连锁店一体化收银系统&#xff0c;包括线下收银线上商城连锁店管理ERP管理商品管理供应商管理会员营销等功能为一体&#xff0c;线上线下数据全部打通。 适用于商超、便利店、水果、生鲜、母婴、服装、零食、百货、宠物等连锁店使用。 详细介绍请…

2024年公司加密软件推荐TOP10|公司最佳数据防泄密方案!

在当今数字化信息爆炸的时代&#xff0c;保护公司的数据免受泄密威胁至关重要。选择一款适合的加密软件不仅可以有效防止数据泄露&#xff0c;还能保障公司的商业机密和客户隐私。 1.固信软件 固信软件以其卓越的数据保护功能和可靠的安全性而著称。它采用先进的数据加密技术&…

springboot农产品商城-计算机毕业设计源码46732

摘 要 随着社会经济的发展和人们消费观念的升级&#xff0c;农产品电商行业逐渐壮大。但传统的农产品销售模式存在信息不透明、中间环节复杂等问题&#xff0c;而微信小程序作为一种便捷的移动应用平台&#xff0c;为农产品商城的建设提供了新的可能性。通过微信小程序的设计与…

九.核心动画 - 显式动画

引言 本篇博客紧接着上一篇的隐式动画开始介绍显式动画。隐式动画是创建动态页面的一种简单的直接的方式&#xff0c;也是UIKit的动画机制基础。但是它并不能涵盖所有的动画类型。 显式动画 接下来我们就来研究另外一种动画显式动画&#xff0c;它能够对一些属性做指定的动画…

常用知识碎片 Vue3 ref和reactive (内含其他常用知识)

目录 ref和reactive ref reactive 总结&#xff1a; setup语法糖 语法糖是啥&#xff1f; Vue3 setup语法糖 Vue3 不使用setup语法糖示例&#xff1a; Vue3 使用setup语法糖示例&#xff1a; ref和eative主要区别 ref和reactive 在 Vue 3 中&#xff0c;ref 和 reac…

品牌渠道管控力度的平衡艺术

渠道管控力度要如何把握呢&#xff1f;是不是管控越严格就一定越好&#xff1f;例如&#xff0c;发现一次低价就处以高额罚款&#xff0c;发现一次窜货也重罚&#xff0c;其实处罚是对低价管控较为直接的一种方式&#xff0c;但并非处罚越重就一定能取得良好的管控效果。 比如品…

Java 中的 switch 语句:类型支持与限制

Java 中的 switch 语句&#xff1a;类型支持与限制 1、switch 语句支持的数据类型2、switch 语句不支持的数据类型3、总结 &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&#x1f496; 在 Java 中&#xff0c;switch 语句是一种用于多分支选择的控制结构…

如何使用FreeFileSync:一款免费且专业的数据备份与文件同步软件

数据的重要性不言而喻&#xff0c;因此&#xff0c;定期做数据备份已经是每一个人的基本工作习惯了。 FreeFileSync 是一款强大专业且免费开源的 文件夹对比/同步/备份 软件工具。FreeFileSync通过比较其内容&#xff0c;日期或文件大小上的一个或多个文件夹&#xff0c;然后根…

统信UOS桌面操作系统上删除系统升级后GRUB中的回滚条目与备份

原文链接&#xff1a;统信UOS删除升级后GRUB中的回滚条目与备份 Hello&#xff0c;大家好啊&#xff01;今天给大家带来一篇关于在统信UOS桌面操作系统上删除系统升级后GRUB中的回滚条目与备份的文章。在进行系统升级后&#xff0c;GRUB引导菜单中可能会出现多个回滚条目和备份…

nginx正向代理、反向代理、负载均衡

nginx.conf nginx首要处理静态页面 反向代理 动态请求 全局模块 work processes 1; 设置成服务器内核数的两倍&#xff08;一般不不超过8个超过8个反而会降低性能一般4个 1-2个也可以&#xff09; netstat -antp | grep 80 查端口号 *1、events块&#xff1a;* 配置影响ngi…

aws sap认证考试如何轻松通过

如何高效备考AWS SAP (Solutions Architect Professional) 认证? AWS SAP认证是AWS认证体系中难度最高的认证之一,要通过这个考试确实需要下一番功夫。但通过合理规划和有效准备,你可以提高通过的几率。以下是一些建议: 评估起点 首先诚实地评估自己的AWS知识水平和实践经验。…

气膜滑冰馆:滑冰爱好者的最佳选择—轻空间

滑冰运动在全球范围内越来越受欢迎&#xff0c;然而&#xff0c;传统滑冰馆在建设和运营过程中往往面临高能耗和环境控制难题。幸运的是&#xff0c;采用气膜结构作为建筑外壳的气膜滑冰馆&#xff0c;正在为滑冰爱好者提供一种全新的、节能的解决方案。 1. 气膜结构&#xff1…

MES 功能模块

MES系统&#xff08;Manufacturing Execution System&#xff0c;生产执行系统&#xff09;是制造业企业的关键管理系统之一&#xff0c;它通过集成生产计划、工艺流程、物料管理和生产过程数据等&#xff0c;实现了对生产和制造过程的全面管理和监控。MES系统的功能模块主要包…

【线性表,线性表中的顺序表和链表】

目录 1、线性表的定义和基本操作1.1、线性表的定义1.2、线性表的基本操作 2、顺序表和链表的比较2.1、顺序表2.1.1、顺序表的定义和特点2.1.2、顺序表的实现&#xff08;1&#xff09;顺序表的静态分配&#xff1a;&#xff08;2&#xff09;顺序表的动态分配 2.1.3、顺序表的基…

昇思25天学习打卡营第17天|基于MobileNetv2的垃圾分类

今天学习的内容是利用视觉图像技术&#xff0c;来实现垃圾分类代码开发的方法。通过读取本地图像数据作为输入&#xff0c;对图像中的垃圾物体进行检测&#xff0c;并且将检测结果图片保存到文件中。 本章节主要包括8部分内容&#xff1a; 1、实验目的 1、了解熟悉垃圾分类应用…

气膜滑雪馆如何实现恒温—轻空间

随着滑雪运动的普及和爱好者数量的增加&#xff0c;滑雪馆的建设需求也不断提升。然而&#xff0c;如何在滑雪馆内保持恒温&#xff0c;提供一个稳定舒适的滑雪环境&#xff0c;成为了建设过程中需要解决的关键问题。气膜滑雪馆凭借其独特的结构和技术优势&#xff0c;成功地实…

MQTT是什么,物联网

写文思路&#xff1a; 以下从几个方面介绍MQTT&#xff0c;包括&#xff1a;MQTT是什么&#xff0c;MQTT和webSocket的结合&#xff0c;以及使用场景&#xff0c; 一、MQTT是什么 MQTT&#xff08;Message Queuing Telemetry Transport&#xff09;是一种轻量级的发布/订阅消息…

如何分辨AI生成的内容?AI生成内容检测工具对比实验

检测人工智能生成的文本对各个领域的组织都提出了挑战&#xff0c;包括学术界和新闻界等。生成式AI与大语言模型根据短描述来进行内容生成的能力&#xff0c;产生了一个问题&#xff1a;这篇文章/内容/作业/图像到底是由人类创作的&#xff0c;还是AI创作的&#xff1f;虽然 LL…

LabVIEW实现LED显示屏视觉检测

为了满足LED显示屏在生产过程中的严格质量检测需求&#xff0c;引入自动化检测系统是十分必要的。传统人工检测方式存在检测强度高、效率低、准确性差等问题&#xff0c;自动化检测系统则能显著提高检测效率和准确性。视觉检测系统的构建主要包含硬件和软件两个部分。 视觉系统…

昇思25天学习打卡营第23天 | Pix2Pix实现图像转换

内容介绍&#xff1a; Pix2Pix是基于条件生成对抗网络&#xff08;cGAN, Condition Generative Adversarial Networks &#xff09;实现的一种深度学习图像转换模型&#xff0c;该模型是由Phillip Isola等作者在2017年CVPR上提出的&#xff0c;可以实现语义/标签到真实图片、灰…