APP下载

基于BERT的交互式地质实体标注语料库构建方法

2022-08-05菊,张磊,陈冰,刘聪,薄晨,肖鸿

地理与地理信息科学 2022年4期
关键词:语料语料库矿区

张 春 菊,张 磊,陈 玉 冰,刘 文 聪,薄 嘉 晨,肖 鸿 飞

(1.合肥工业大学土木与水利工程学院,安徽 合肥 230009;2.深圳市规划和自然资源局,广东 深圳 518034;3.烽火天地通信科技股份有限公司,江苏 南京 210019)

0 引言

地质实体(包括岩石、地质构造、地层等)[1]是地质信息表达中的关键和核心要素,如何准确识别文本中的地质实体以有效抽取地质信息、获取地质知识,成为地质大数据建模和矿产资源知识图谱构建的基础性和关键性工作。地质大数据[2]中的地质文献和调查报告等地质文本数据多为非结构化数据[3,4],需将其转化为结构化数据以便进一步挖掘利用。命名实体识别作为信息抽取的重要任务[5],其目的是识别出文本中具有明确意义的实体成分,对于文本数据的结构化处理至关重要。命名实体识别方法可分为:1)基于规则的方法,通过制定规则和模板,辅以实体词典实现命名实体识别[6],该方法无需标注语料、准确率较高,但依赖领域专家制定规则和模板,受领域知识差异、语言结构不同的限制,存在耗时耗力、难以移植等问题;2)基于半监督学习的方法,通过使用少量标注数据和大量无标注文本对模型进行训练,取得较好结果[7];3)基于监督学习的方法,主要采用支持向量机(SVM)[8]、条件随机场(CRF)[9]、深度神经网络(DNN)[10,11]等模型,通过学习训练大量的标注语料数据进行命名实体识别,取得理想效果[12,13]。除地质实体外,地质时间信息的高效抽取有助于描述地质实体的状态和演变信息[14]。因此,基于监督学习的方法需要高质、高效地构建地质语料库,将其作为标准的训练和测试数据。

命名实体标注语料库构建方法主要包括人工标注和自动标注两种方式:前者准确性高,但标注效率低、耗时耗力、规模有限,同时存在主观性,很难保证标注结果的一致性;后者效率高、应用领域广,但存在明显的错标、漏标等现象。常用的中文命名实体语料库有针对通用领域的1998人民日报语料库[15]、MSRA语料库[16]以及地理学领域的中国大百科(地理版)语料库[17]等,但地质实体特有的描述特征使得上述标注语料库无法直接、有效地应用于地质实体识别领域。目前,地质实体语料库主要基于地质报告、地质文献等数据源,采用人工标注方式进行构建,其规模少则数万字,多则几十万字,尚没有统一的语料库构建方法[13,18];随着深度学习的发展,基于远程监督的方式逐渐应用于构建地质实体语料,但精度较低[19]。当前语料库的常见标注格式为BIO、BIOES,部分使用XML格式保存[10,13,14,18]。

BERT(Bidirectional Encoder Representations from Transformers)是基于双向Transformer的神经网络模型[20],能极大地增加词向量模型的泛化能力,充分提取字符级、词级、句级甚至句间关系特征,相较于Word2vec[21]、Glove[22]语言模型,能充分利用词的上下文信息,得到更好的词分布式表示;长短期记忆(Long Short-Term Memory,LSTM)模型[23]很好地解决了循环神经网络(RNN)的长距离依赖问题,但只能获取文本的单向信息,因此,Graves等[24]提出了双向长短期记忆(Bi-directional Long Short-Term Memory,BiLSTM)模型,将单向LSTM网络结构转变为双向结构,能有效提取上下文信息,成为命名实体识别等任务中最常用的模型;CRF[25]多用于序列标注任务中,可对BiLSTM的输出添加约束,以保证输出预测标签的顺序正确,因此将CRF层作为模型的输出层进行解码,在命名实体识别任务中表现较好[26]。鉴于此,本文通过BERT-BiLSTM-CRF模型自动标注文本中的地质实体并结合人机交互方式校正,同时利用标注的语料优化地质实体识别模型的性能,最终实现大规模、高质量地质实体标注语料库的构建。

1 研究方法

本文技术路线(图1)为:首先收集发表在学术期刊上的地质文章,归纳总结地质实体的特征,制定地质实体的标注规范,利用自主开发的标注软件人工构建初始的地质实体语料;其次利用标注的语料对BERT-BiLSTM-CRF地质实体识别模型进行训练,保存训练好的模型;然后将其嵌入人机交互式地质实体标注软件中,用于识别文献中地质实体;最后对模型识别错误的地质实体进行人工校验,保存改正后的地质实体语料。当新增的地质实体语料达到一定规模时,标注软件将使用包含新语料的地质实体语料库对地质实体识别模型进行重新训练,对比训练前后两个模型的识别效果,保留效果较好的地质实体识别模型。

图1 交互式地质实体标注方法技术路线Fig.1 Technical route of interactive geological entity annotation method

1.1 地质实体语料库构建

地质领域缺少公开的标注数据集或语料库,而地质期刊文献是地质工作者优质科研成果表达的重要载体,其内容表述比较规范,包含的知识密集、丰富。因此,本文将发表在《地质学报》《岩石学报》《地质通报》等期刊上的300篇地质文献作为数据源,去除图表、参考文献等无关内容,将清洗后的内容保存为txt格式。

对于地质实体的分类,Qiu等[10]将地质实体信息分为地质构造、岩石、地质年代、地层、地名5类;张雪英等[18]将地质实体信息总结为基本类型、空间分布、属性信息及相互关系4种要素分类体系;马凯[27]将铜矿床实体分为大地构造单元、成矿时代、矿体特征、矿石特征、矿区地质、矿床类型和其他;谢雪景等[28]将地质实体分为地质年代、地质构造、地层、岩石、矿物与地点6类。本文总结地质实体分类体系,以金矿地质实体为研究对象,参考《黄金矿业术语》(GB/T 34167-20173)、《岩金矿地质勘查规范》(DZ/T 0205-2002)、《金矿石》(GB/T 32840-2016)等行业规范以及《中国矿床模式》等书籍,按照构造尺度、埋藏范围、埋藏规模将金矿地质实体分为矿区(KQ)、矿床(KC)、矿段(KD)、矿体(KT)4类。

对于保存的地质文献数据,利用交互式地质实体标注软件的人工标注功能进行标注,语料的标注格式采用BIO格式(“B”代表地质实体的开始部分,“I”代表地质实体的中间或结尾部分,“O”代表非实体部分),标注样例如图2所示。为保证语料的质量和权威性,本文首先参考地质领域已有研究成果中的实体分类体系并与地质学专家进行探讨,制定标注规范。在标注前对标注人员进行培训,使其对地质实体标注规范有足够的知识储备。在遇到模糊的标注实体或多人标注出现异议的实体时,需集中讨论并请教地质学专家。经过多人交叉检查校验,不断对标注规范进行修正,以减少主观因素导致的错标、漏标问题,最终得出统一的标注结果。经过多次核定,获得50万余字的初始地质实体标注语料,作为地质实体识别模型标准化训练和测试数据。

图2 语料标注样例Fig.2 Corpus annotation examples

1.2 基于BERT的地质实体识别模型构建

本文采用BERT-BiLSTM-CRF模型框架(图3)进行地质实体识别。首先利用BERT预训练语言模型获取地质实体描述特征,将输入的字符转化为含有字符向量、句级向量和位置向量的拼接向量;然后通过BiLSTM模型提取BERT输出的向量特征,充分学习上下文信息;最后根据CRF模型计算标注序列的概率分布,从而确定描述文本所包含的地质实体信息。

图3 BERT-BiLSTM-CRF模型框架Fig.3 Framework of BERT-BiLSTM-CRF model

1.3 人机交互式地质实体标注

基于构建的地质实体标注语料库和识别模型,利用Python的Tkinter模块开发人机交互式地质实体标注软件,主要包括地质实体人工标注、基于识别模型的地质实体自动识别和地质实体人工校正三大功能(图4)。人工标注功能选定地质文本中的地质实体进行标注,构成地质实体识别的初始语料库;自动识别功能对待处理的地质文本数据应用训练好的模型进行识别,对识别结果的人工检查与校正构成地质实体校正模块。首先,通过“打开文件”按钮或直接复制粘贴将待处理文本输入标注软件,可选择模型识别或人工标注方式对待处理文本中的地质实体进行识别,用不同颜色表示不同地质实体类别;而后对于识别错误的地质实体可通过鼠标选中后右击选择“取消设置实体”功能进行校正,对于未能识别出的地质实体可选择“设置地质实体”功能标定为地质实体,同时通过点击“改正后实体结果对比”按钮直观显示人工修订前后的结果;最后,点击“保存结果”按钮将修订好的语料保存为txt格式文件,其内容与图2的示例语料格式一致。

图4 交互式地质实体标注软件Fig.4 Software interface for interactive geological entity annotation

为提高地质实体识别模型的效果和最大化利用已标注地质实体语料的价值,本文设计了基于迭代式学习的BERT-BiLISTM-CRF地质实体识别模块。

将新增标注语料与已有地质实体语料融合,经过混合、清洗等操作后,将标注语料输入地质实体识别模型中再次训练(满足阈值要求时),并将新增语料加入地质实体标注语料库;迭代循环上述步骤直至所构建语料库满足要求。鉴于初始地质实体语料库已达50万余字,为保证新增语料库规模足够大及模型参数重新训练的频率,本文将阈值设定为初始语料库的20%,随着语料规模增加,可重新设定阈值。

2 实验结果与分析

为验证模型的效果,使用标注好的地质实体语料进行模型性能判断。本文采用BERT全词遮蔽语言模型(BERT-wwm),该模型是哈工大讯飞联合实验室对Google发布的原始(origin,ori)BERT模型通过全词遮蔽方式再训练[29]生成的,一定程度上能解决中文分词错误问题,同时使用地质标注数据对BERT进行微调,使BERT能更好地表征地质领域的特征。该模型包含12层Transformer结构,隐层为768维,使用多头(12头)注意力机制,共110 M参数,训练过程中,BERT-BiLSTM-CRF模型的最大序列长度为128,批处理参数为8,学习率为2×10-5,Dropout为0.5。本文实验配置为Intel Core i7-9750H CPU、64 GB内存、Window 10操作系统、Python 3.6编程语言、PyCharm编辑器。通过实验发现,当训练集、验证集、测试集的数量比例为3∶1∶1时,模型识别效果最好,因此,后续实验以该比例下的识别结果为基准进行对比。本文采用自然语言处理领域中常用的3个评测指标(准确率P、召回率R、F1值)对地质实体识别结果进行评测,计算公式为:

P=正确识别实体个数/识别出的实体个数

(1)

R=正确识别实体个数/文本中的实体个数

(2)

F1=2×P×R/(P+R)

(3)

2.1 与其他方法的对比

选取CRF、Word2vec-BiLSTM-CRF、Lattice-LSTM-CRF[30]3种常用的命名实体识别模型进行对比分析(表1),其中,CRF使用CRF++0.58工具,Word2ve-BiLSTM-CRF使用预训练Word2vec词向量(基于维基百科数据库训练得到)。由表1可知,本文BERT-BiLSTM-CRF模型识别结果优于上述3种常用模型,尤其是比CRF模型的P、R、F1值分别提升了8.30%、23.03%、16.10%。分析其原因,CRF通过设置特征模板获取特征,对于未登录词的识别效果差,而本文模型基于BERT能结合上下文语境自动提取词级特征,可有效识别未登录词,特征提取能力更强,能更好地表征不同语境中的词法和语义信息,提高了地质实体的识别效果。

表1 不同模型识别结果Table 1 Recognition results of different models

由部分地质实体识别结果示例(表2)可知:例一中,地质实体识别模型能准确识别出“望乡台矿段”“大宝山矿区”等地质实体信息;例二中,能准确识别文本中出现的“Ⅰ”“Ⅱ”等数字;例三中,人工标注出现错误,但模型仍能正确识别出地质实体,具有校正语料的功能;例四中,对于连续出现的地质实体,模型的识别效果较好。

表2 地质实体信息识别结果示例Table 2 Examples of geological entity information recognition results

2.2 地质实体语料库结果分析

为进一步测试本文构建的金矿地质实体语料库的完备性,对构建的地质实体语料库进行分析。考虑到地质实体的类型较多,选择部分实体进行测试。其中构建的测试集中含有矿区实体141个、矿床实体702个、矿段实体81个、矿体实体168个。利用训练后的BERT-BiLSTM-CRF地质实体识别模型对测试集进行识别,结果如表3所示。可以看出,在测试集上识别出的地质实体与人工标注的地质实体数量较一致,且对不同类别的地质实体识别效果均较好,验证了地质实体分类的合理性和地质实体语料库构建的可行性。

表3 基于BERT-BiLSTM-CRF模型的金矿实体识别结果Table 3 Gold entity recognition results based on BERT-BiLSTM-CRF model

为验证语料库规模对地质实体识别模型的影响,本文利用该标注软件对地质文本数据进行人机交互式标注和训练模型的迭代式学习,以扩大语料规模和提升地质实体识别模型的性能。在原始训练集的基础上,当新增的语料规模达到设定阈值20%时,标注软件将重新训练BERT-BiLSTM-CRF地质识别模型,并评价新训练模型的性能。如表4所示,在保证验证集和测试集不变的情况下,通过交互式标注语料扩大训练集规模,模型的准确率P、召回率R和F1值均有提升,说明扩大语料的规模对模型精度有提升作用。

表4 BERT-BiLSTM-CRF模型在增加训练集规模前后的金矿实体识别结果Table 4 Gold entity recognition results based on BERT-BiLSTM-CRF model before and after increasing the scale of training set

应用本文交互式地质实体语料库构建方法对地质文本进行标注,最终获得63万余字的地质实体语料库,包含句子11 039句,实体6 657个,其中矿区、矿床、矿段和矿体实体数量分别为765个、4 358个、468个和1 066个。语料库中地质实体呈以下特点:1)矿区实体名称通常由“地名”+“矿区”或“地名”+“类型”+“矿区”构成,如“埠南矿区”“文峪金矿区”等,且矿区实体的命名具有多样性,如“文峪金矿区”“文峪Au矿区”等多种描述均表示同一矿区实体;同时文本中的矿区描述会出现省略情况,如“金山、石坞矿区”,省略了“金山”后的“矿区”,在标注与识别时需要与表示地名实体的描述信息区分。2)矿床实体的名称描述与矿区实体相似,“类型”描述多采用“大型”“中型”“小型”等词语刻画矿床的规模特征。3)矿段多用于描述矿区或矿床中的具体部分,因此矿段实体名称多为“地名”+“矿段”形式,而且在文本描述中,常与表示矿区或矿床的信息一同出现。4)矿体为矿床的基本组成单位,一个矿床中往往包括多个矿体,因此其命名多用排序的方式表示,如“Ⅰ-1、Ⅱ-1、Ⅲ-1号矿体”。

BERT-BiLSTM-CRF地质识别模型对地质文本自动标注时,若地质实体名称过长,该模型往往不能对其正确识别,需借助人工校正。通过对语料库中不同类型的地质实体名称长度(汉字、数字、英文字母、特殊符号等的字符数均设为1)进行统计(表5)可知:地质实体名称长度多为2~4个字符,模型对于此类实体名称识别效果较好;长度小于2个字符多为实体的省略情况,如“Ⅰ、Ⅱ号矿体”中,矿体实体“Ⅰ”省略了矿体信息;长度大于6个字符的地质实体多为汉字、数字、英文字母、特殊符号等组合形式,如“S8201-③号矿体”“蔡家营Pb-Zn矿区”等,在识别时会出现分词错误导致地质实体名称边界错误。

表5 语料库中地质实体名称长度统计Table 5 Length of geological entity names in corpus

3 结论

针对目前中文地质实体识别中公开的标注语料较少且人工标注语料难度大、成本高的难题,本文提出基于BERT的交互式中文地质实体标注方法。该方法集成高性能的BERT-BiLSTM-CRF中文地质实体识别模型、人机交互标注模块和标注语料库智能优化模块,通过交互式迭代学习的BERT-BiLSTM-CRF中文地质实体识别模型,以金矿实体为例,实现大规模地质实体标注语料库的构建。实验结果表明:本文BERT-BiLSTM-CRF中文地质实体识别模型比CRF、Word2vec-BiLSTM-CRF、Lattice-LSTM-CRF 3种常用模型的识别效果好,在初始语料库上F1值达91.47%,通过人机交互模块增加语料规模后,模型识别效果提升了1.36%,既增加了地质实体标注语料库的规模,又提升了识别模型的性能。但本研究未涉及地质实体的属性、关系等相关信息的标注,后续将开展此方面的研究。

猜你喜欢

语料语料库矿区
基于归一化点向互信息的低资源平行语料过滤方法*
平行语料库在翻译教学中的应用研究
加纳Amanforom矿区Ⅲ号隐伏金矿带的发现与评价
加纳Amanforom矿区Ⅲ号隐伏金矿带的发现与评价
湖北省保康县堰边上矿区发现超大型磷矿
广东省蕉岭县作壁坑矿区探明超大型铷矿
《语料库翻译文体学》评介
濒危语言与汉语平行语料库动态构建技术研究
对外汉语教学领域可比语料库的构建及应用研究
——以“把”字句的句法语义标注及应用研究为例
国内外语用学实证研究比较:语料类型与收集方法