基于偏正结构表示的加工命名实体识别方法
2024-04-10王素琴王钰珏朱登明李兆歆
王素琴,王钰珏,石 敏+,朱登明,李兆歆
(1.华北电力大学 控制与计算机工程学院,北京 102206;2.中国农业科学院 农业信息研究所,北京 100081)
0 引言
机械设计与制造技术是衡量一个国家综合国力、科技发展水平的重要标志,也是企业在竞争中获得认可的关键。随着制造工艺的发展,累积了大量机械零件加工经验,从中提取有价值的信息是一项全新的挑战。以往查找特定经验或概念,需要领域专家利用多种软件进行繁琐检索与解析,以做出合理决策。此外,机械零件制造企业的生产加工经验往往以非结构化数据进行存储,例如制造标准、产品规格、加工手册和技术专利等[1]。然而,非结构化的生产经验难以与结构化的零件加工数据库相关联,导致工艺人员无法将这些经验熟练地应用到零部件的加工工艺规划中。因此,对机械零件加工领域开展以命名实体识别为基础的信息抽取研究,可为构建机械零件加工数字孪生体系奠定基础[2]。
机械零件加工命名实体识别是指自动识别零件加工文本中的实体类型和边界,是领域知识构成和知识服务的关键步骤和重要支撑,因此,在制造领域中使用自然语言处理技术逐渐得到人们的重视。但是,机械零件加工命名实体识别存在以下问题:①目前尚未有适用于机械零件加工领域命名实体识别的公开语料集;②多数实体属于偏正结构复合词,因此实体边界难以界定。例如,“硬质合金铣刀”可以认为是刀具实体,“硬质合金”又可以作为材料实体,而“铣刀”认为是刀具实体;③相较于通用领域的人名、地名和组织机构名,在机械零件加工领域,机床和切削液等实体命名长度更长,精准识别难度更高。
针对上述问题,本文研究了一种机械零件加工领域的偏正实体标注规则,并以此构建加工实体语料集。在此基础上,提出领域自适应的多网络协调中文命名实体识别方法(Domain Adaptive Multi-network Coordinated Chinese named entity recognition method, DAMC),该方法将命名实体识别任务转化为字符级别的序列标注问题。基于所构造的机械零件加工领域语料集的实验结果表明,本文提出的DAMC模型与当前主流的命名实体识别神经网络模型相比,在机床、刀具和工件材料等待识别实体上有更好的识别效果。本文贡献如下:
(1)通过领域自适应机制引入更多目标领域信息,生成更适用于目标领域的嵌入空间。
(2)引入注意力机制和多门控制的混合专家网络,减少非必要噪声的影响,提高在加工实体类型上的输出权重,有效提升了加工命名实体识别(Named Entity Recognition, NER)的效果。
1 相关研究
命名实体识别(NER)可以为知识图谱、智能检索等后续工作提供合理的数据支撑,一直备受研究者的青睐。早期命名实体识别方法主要通过基于规则的方式[3]进行实体抽取,这类方法需要具有一定领域知识的研究人员手工构建,规则构建周期长。随着人工智能的兴起,神经网络模型通过使用单词的向量表示对自然语言序列进行建模,从而自动提取语义特征,在实体识别效果上取得一定突破。SUTSKEVER等[4]提出了基于循环神经网络(Recurrent Neural Network,RNN)和长短时记忆网络(Long Short-Term Memory,LSTM)的Seq2Seq(Sequence to Sequence)模型,它使用神经网络将一个序列映射到另一个序列。BERT[5]通过在所有层的上下文联合调节来预训练深层双向表示,推进了11项NLP任务的最优结果。在中文命名实体识别中,多数研究人员通过引入中文字—词特征[6-8],合并词汇信息到向量表示以提高中文实体识别的效果,在通用领域的多个中文NER数据集上获得最优结果。
然而,在缺乏大量训练数据的情况下,低资源领域的命名实体识别准确率会大幅下降,因此研究人员利用迁移学习的方法解决低资源跨领域命名实体识问题。LIU[9]等提出基于自注意机制和多门控制的混合专家网络(Mixture of Entity Experts ,MoEE)框架用于改善领域迁移的鲁棒性。JIA等[10]提出跨领域的语言模型,通过三次迁移学习作为跨域训练NER的桥连,该方法有效地解决跨领域的语言模型的差异。其他领域的命名实体识别研究同样对本文有所启发。WANG等[11]提出一种标签感知双迁移学习框架,在生物医学领域的实体识别任务取得了较好效果,但是该方法源域与目标域都为生物医学领域,在文本构成上具有相似性,无法适用于缺少公开语料集的机械零件加工领域。贾猛等[12]提出利用领域词典及规则指导神经网络模型的训练方法,在工艺文本命名实体识别方面取得较好的成果,但该方法依赖人工定义的字典与规则。在法律领域,郭力华等[13]提出利用最大正向匹配策略和社区注意力机制提高命名实体识别的准确率,该方法借助外部词典树寻找匹配词,但是机械零件加工命名实体与现有词典不匹配,构建该领域词典人工成本较高。LYU等[14]提出一种基于BERT-BiGRU-CRF的地质命名实体识别(GNER)模型,用于从地球科学报告中提取实体。苏兆婧等[15]针对产品设计信息提取,提出基于BERT和知识迁移的实体识别模型,在设计过程中灵活考虑设计特征的数量及其重要度。
尽管在通用领域与一些特定领域,命名实体识别都取得良好的进展。但是,这些领域的语料文本书写规范,实体分布密集、上下文特征明显且实体边界较明显,而零件加工领域的文本存在实体边界和上下文特征不明显。因此如何在实体边界模糊的零件加工文献中进行实体识别成为新的研究问题。
2 语料分析
2.1 语料采集
当前存在的大多数实体标注数据集都是面向通用领域,例如CLUENER2020[16]和Conll2003[17]均是从新闻中标注常见实体。目前在零件加工领域暂时没有公开语料集。
本文选用《典型零件机械加工生产实例》[18]、《精密零件机械加工工艺分析及实例》[19]等零件加工手册作为原始语料集,这类文本包含机械零件中典型零件的设计与工程中最实用的加工工艺。通过光学字符识别(Optical Character Recognition,OCR)识别算法对两本书籍作电化和文本格式转换处理,人工修改错别字和乱码。
根据典型零件加工工艺分析,首先,根据工件工艺参数选择一套合理的方法;其次,由于各型工件所使用的材质性能有差异,以及工件结构会限制机床等设备的使用,应在制造前根据工件特性选择合理的设备;最后,为了提高刀具耐久度选取不同切削液缓解刀具损耗。同时,在实际应用过程中,选择工艺方法要与企业类型相适应,大批量零件生产应选用效率高且稳定的生产方法,单件小批生产选择简单通用的生产方法。
本文结合领域专家知识,深入剖析零件加工工艺基本要素,充分挖掘其隐含知识,将机械零件实体类别划分为8类,以保证加工实体要素的完整性,包括工件材料、工件外型、刀具、机床、切削液、工艺参数、工装夹具和生产类型,如表1所示。考虑到工艺参数包含物理量等名词与数字形式表示,因此将工艺参数分为两种进行标注。
表1 机械零件加工领域实体类型示例
2.2 语料特点分析
通过对机械零件加工语料的全面剖析,发现该领域命名实体的特点主要体现在以下3个方面:
(1)对于工件材料、工件外型、刀具、机床和切削液五类实体,存在较多偏正结构实体,其中偏正实体占比总实体43%,如图1a所示,例如“含硫、氯等极压添加剂的乳化液”。
图1 实体类型统计
(2)机械零件中工艺参数,包含结构参数与加工参数,数据构成复杂。例如“槽间距15±0.03mm”,“轮楔角34°±1°”。
(3)实体分布不均匀,语料中对于刀具、工件外型等描述出现较多,而对于夹具和生产类型往往出现较少,整体数据呈长尾分布,如图1b所示。
3 命名实体识别模型
本文基于偏正结构表示的加工实体提出一种领域自适应的零件加工领域命名实体识别模型。该模型在BERT+Bi-LSTM+CRF基础上,通过建立领域自适应字向量作为输入,并融合注意力机制与多门控制的混合专家网络在目标领域自动实现命名实体识别。
图2 网络结构
因此,模型在BERT+Bi-LSTM+CRF基础上进行以下改进:基于BERT的领域自适应字向量表示层模型DAPT,同时引入基于自注意机制和多门控制的混合专家网络[9](MoEE)层。
3.1 领域自适应表示学习
机械加工领域命名实体组成复杂,包含大量领域专业术语,例如,“外圆磨床”、“球头铣刀”等,这类实体需要先验领域知识才能达到更好的识别效果。然而直接使用通用领域预训练模型,并不具备特定领域知识,导致在目标领域嵌入空间表现欠佳。因此,本文引入领域自适应预训练机制[20],即利用BERT中掩码语言模型,在目标领域文本上,通过上下文预测被掩码的字段,从而获得更贴合目标领域的文本向量特征,整体流程如图3所示。
图3 领域自适应表示学习框架
3.1.1 领域自适应分词
通用领域与机械加工领域文本以及所要识别要素存在差异。作为源领域的通用领域所训练的BERT预模型,与需要应用的机械零件加工领域产生知识偏差。因此,需要加入目标领域特定知识。为了更贴近机械零件加工领域嵌入空间,需要提高领域分词的准确性。在现有的中文分词基础上引入目标领域专属词典,如机械零件加工领域词典,从而生成领域自适应分词器。分词器构建如图4所示。
图4 分词器构建流程
首先,通过收集常用机械加工工艺术语、机械加工工艺装备基本术语等专业领域词汇表,构建机械零件加工领域专属词典。其次,利用领域专属词典切分领域文本语料,本文采取双向最大匹配法对语料进行中文分词。最后,选取子词粒度分词算法(subword-level Tokenization algorithm),利用领域文本语料训练分词器,分词结果如表2所示,#表示同一个词的不同部分。
表2 分词器结果展示
3.1.2 领域自适应预训练
利用上述分词器,本文选用选择性整词掩码策略(Selective whole word masking),即如果序列中包含领域词典所述词语,则该词的部分子词被掩码,则同属该词的其他部分也会被掩码。具体而言,根据上文构建的机械加工领域词典,对词典中出现的词语进行全词掩码处理,然后采用全词预训练模型进行二次预训练,以使模型学习到机械加工领域内的先验知识,得到该领域全词预训练模型DAPT,动态更新预训练模型向量权重,让模型学到更多目标领域语义信息。
对于如何选择掩码词,定义如式(1)所示,首先,初始化输入序列为空序列,依次加入序列分词进行词典匹配,待找出词典匹配子序列ωi属于词典词,则将ωi进行整词掩码。
(1)
其中:D表示领域词典,(ω1,ω2,...,ωi)表示输入序列,ωi表示序列分词。
3.2 基于注意力机制的特征提取
为了使模型能高度关注文本中的重要信息,减少噪声的影响,本文引入注意力机制。注意力机制的核心在于结合上下文信息,感知重要的语义特征。通过给序列层中各隐藏节点自行分配合适的注意力权重进行重要度的划分。权重越大,代表对于实体分类越重要。单词之间的关联是通过计算实体单词和其他单词之间的注意力得分来获得的,注意力权重定义为
(2)
其中:score(xt,xj)定义为
(3)
其中:权重矩阵Wα为模型参数,·表示两个元素点乘。
(4)
然后,全局变量gt作为每个BiLSTM单元输出ht的权重与ht连接成[gt;ht]通过tanh函数生成注意力层的输出为
Zt=tanh(Wt[gt;ht])。
(5)
3.3 基于MoEE的实体特征提取
特定领域的命名实体识别面临的主要困难是缺乏标准的标记语料库,然而,深度网络模型通常需要一个大的标记语料库来训练,否则很容易过拟合。同时,NER模型对偏正结构的实体边界划分错误,导致模型失去对实体的精准识别能力。因此,本文引入多门控制的混合专家网络(MoEE),将参数共享层划分为若干个专家网络,每个专家网络负责独立学习多实体间的耦合关系,不同的专家网络不进行参数共享。同时,MoEE针对每类实体分别设置一个门控单元,负责计算每个专家网络的权重,使不同实体类别对专家网络的选择更加灵活,避免了弱相关实体间的互相干预。MoEE结构如图5所示。
图5 MoEE网络结构
MoEE网络结构由专家网络和门控网络两部分组成。由于本文选取8类实体作为机械加工领域特定实体,因此专家网络将每个实体类别作为一个实体专家,例如,刀具实体专家(T Expert)和机床实体专家(MT Expert),每一个专家都擅长指定实体的预测。此外,将非实体作为一种特殊的实体类别。每个专家网络用于学习输入特征与9类实体(包含非实体)识别任务的特定关系,专家网络定义如下所示:
(6)
其中,L表示线性层,hi表示输入特征,exp(t)是专家网络生成的特征。
门控网络由一个全连接层和一个softmax层组成,后者为实体专家的置信度分布,通过输出权重的不同,实现对专家网络输出的灵活控制。模块定义如下:
[α1,α2,...,αE]=Softmax(Linear(hi))。
(7)
最后,模型的输出为各个实体专家模块的输出与专家门的权重组合,形式化表达如式(8)所示
(8)
其中:mi为MoEE层生成的专家特征,E为实体类别数与非实体类别的总和。
专家特征是根据注意力层的状态特征所生成,输出为所有专家特征的加权和。MoEE能够针对实体类别的特点,多样化地使用上层网络的共享特征,从而提升所有实体类别的识别效果,有效学习不同实体之间存在的差异。
4 实验及结果分析
为了验证本文方法对机械零件加工实体识别的有效性,采用Pytorch搭建本文所提出的模型,运行环境为Python3.6+Pytorch1.9,实验采用的硬件平台为: Intel Core i9-10900K CPU @ 3.70 GHz, 内存为64 GB,显卡型号为Nvidia RTX 3090,显存为24GB。
4.1 数据处理
本文首先对机械零件加工文献进行选择,并生成原始语料集,其次对原始语料集进行数据清洗,例如,修正识别错误的汉字,删除文本中因图片、表格所造成的格式错误等,然后进一步对清洗后的数据按照篇章进行划分,最后确定所需标注的实体类型。
4.1.1 零件加工领域数据特征及规则描述
零件加工领域实体多为偏正结构复合词,造成实体边界模糊难以界定,例如,“硬质合金旋刀”可以整体划分为刀具实体,而中心语为“旋刀”同样可以划分为刀具实体,“硬质合金”作为修饰语可以划分为“材料实体”。因此,本文提出偏正结构的零件加工标注规则。
规则1 {(adj)+n→entity};
规则2 {(n)+n→entity};
规则3 {(number)∪(alphabet)+n→entity}。
其中(*)表示修饰词,→左边表示应用规则的条件,→右边表示规则的输出。这些规则均表示当所标记的实体存在修饰成分时,将修饰成分连同名词统一修正为所标记的实体类别。通过实体标注规则,准确区分不同实体,减少标注异议,提高人工标注质量,解决零件加工领域实体边界模糊的问题。
4.1.2 机械零件加工领域实体标注
本文结合专家知识与机械零部件加工工艺过程分析,将机械零件加工过程主要涉及的机床、刀具和工件等八大类实体进行实体识别,如表2所示。为了获得高质量的标签预测结果,本文使用BIO注释方法[21],将每个元素注释为“B-实体”、“I-实体”和“O”。其中,“B-实体”表示实体的开始,“I-实体”表示实体的剩余部分,O表示非实体的字符,并结合考虑实体的模糊边界, 按照字级别对未经标注的原始语料库中的语料进行标注。首先,选用brat标注工具对实体进行手工标注,其次,利用标注程序自动转换成“BIO”标注格式,最后自动检查标注错误、漏标实体等一系列问题,采取字典词语匹配标注方式,即文本存在字典中包含词语,自动实现补充修改标注标签,具体标注方式如表3所示。
表3 实体标注类别
经过以上处理,共选取18 426条语句,最终构建机械零件加工实体识别语料库,其中包含8类实体类别15 000个实体。
4.2 评估指标
本文选取了精确率(Precision)、召回率(Recall)、F1值作为评估指标,公式如下:
(9)
(10)
(11)
4.3 实验设置
实验预训练模型选用bert-wwm作为预训练基础模型,实验参数设置参考文献[8]。同时DAMC实验参数设置如表4所示。
表4 实验参数设置
4.4 实验设计及分析
4.4.1 不同模型性能对比
针对机械零件加工领域命名实体识别,选取ALBERT-BiLSTM-CRF 、BiLSTM-CRF、BERT-CRF、BERT-BiLSTM-CRF、SoftLexicon(LSTM)[10]、LEBERT[11]六种模型分别进行实验。在同一训练集和测试集上,比较上述命名实体识别模型与本文提出的模型的有效性,实验结果如表5所示。
表5 实体识别模型效果对比
实验结果表明,在针对低资源的零件加工领域,本文提出的基于领域自适应的DAMC命名实体识别模型识别效果优于其他6种模型。相较于BiLSTM-CRF的命名实体识别,本文提出的模型精确率提高7.53%,召回率提高17.12%,表明只采用BiLSTM-CRF框架的方法需要对每个字符的类型进行预测,对于机械加工领域长实体的预测更为困难;相较于BERT-BiLSTM-CRF 、BERT-CRF和ALBERT-BiLSTM-CRF命名实体识别模型,本文提出的模型精确率和召回率均得到提高,表明预训练模型虽能提高识别效果,但无法精准划分加工实体边界,对零件加工领域实体区分较差。本文提出的模型在预训练阶段引入领域自适应过程,充分学习领域文本特点,同时,注意力机制和混合专家网络的加入提高了各实体权重,在一定程度上优化模型识别能力;相较于SoftLexicon(LSTM),本文提出的模型精确率提高9.99%,召回率提高13.72%;相较于LEBERT,本文提出的模型精确率提高13.77%,召回率提高18.16%。因为模型结合特定领域的文本特点,充分考虑机械零件领域文本的语言结构,从字的角度考虑,一定程度缓解词语划分的歧义。
4.4.2 各实体识别效果
DAMC模型进行机械零件加工命名实体的识别,9类实体具体的精确率、召回率和F1 值如表6所示。
表6 各实体识别效果
从表6可以看出,而对于工艺参数(名词)、工艺参数(数据)、工装夹具和生产类型的精确率低于80%,分析原因,是因为目前没有大规模机械零件数据集,本文所使用的语料集包含这3 类实体数据较少。工艺参数数据杂乱,没有明确的数据边界,造成识别效果质量偏低。除了这4类实体,其他5类实体的F1 值均高于80%,说明DAMC模型整体识别性能较好。
4.4.3 偏正实体与非偏正实体识别效果对比
为验证模型在偏正结构实体与非偏正实体识别的有效性,在基线模型BERT-BiLSTM-CRF基础上,引入领域自适应机制、注意力模块和多门控制的混合专家网络。在只含有偏正结构的实体数据集上,比较基线模型与DAMC模型,实验结果如表7所示。在仅包含非偏正实体的数据集上,实验结果如表8所示。
表7 偏正实体模型对比结果
表8 非偏正实体模型对比结果
从表7可以看出对于偏正实体识别,DAMC模型能有效提高对于偏正实体的识别效果。说明引入领域自适应机制、注意力模块和多门控制的混合专家网络在训练过程中不断减少实体之间的相互干扰,提高实体权重,使网络更好区分偏正实体结构,对于实体边界能进行较为准确的划分。
从表8可以看出对于非偏正实体,DAMC识别效果的精确率、召回率、F1值均高于BERT-BiLSTM-CRF,这表明在简单实体的识别上,DAMC仍然具有识别优势。这是由于模型对于机械零件加工实体有更准确的向量表示,同时在训练过程中各实体权重变化大,模型能更好区分不同类别实体的差异性。
4.5 消融实验
本文设计消融实验,验证DAMC模型各部分性能。将DAPT模型替换成BERT原始模型记为W/O DAPT;去除注意力机制,得到模型记为W/O Attention;将模型去掉MoEE模块,记为W/O MoEE。4种模型在机械零件加工数据集中的实验结果如表9所示。
表9 消融实验结果对比
表9实验结果可以看出:
(1)W/O DAPT与DAMC相比,召回率性能下降4.57%,实验结果验证了领域自适应预训练有效捕捉到特定领域文本特点,从而使生成的向量表示更有差异性。
(2)W/O Attention 与DAMC相比,召回率下降2.88%,F1值下降1.51%,说明注意力机制动态调整权重有助于提高实体边界划分的准确性,从而提升识别精确率。
(3)W/OMoEE相比DAMC,在3种指标上分别提升0.4%、3.5%,1.86%,说明在低资源领域的实体识别任务使用多门控制的混合专家网络可以有效缓解实体之间的相互干预,从而提升模型效果。
4.6 应用实例
为了直观展示模型优势,本文提出一个实例,如表10所示,其中MT代表机床,WE代表工件外形,T代表刀具,TY代表生产类型。由表中可以观察到Bert-BiLSTM-CRF模型对于偏正结构的工件外形实体,“普通万能铣床”、“锥形指状铣刀”均没有将实体完整识别出来,同时对于“蜗杆铣床”实体划分错误,而本文提出的模型以上实体均正确识别,由此可以更直观地观察到本文模型改进的有效性。
表10 实体识别实例
5 结束语
命名实体识别技术作为研究人员整合领域知识的基础,越来越受到关注,但是目前没有适用于零件加工领域命名实体识别公开数据集。本文提出一种构建零件加工领域命名实体识别的方法,首先,提出一种针对实体边界模糊问题的数据标注策略和机械零件加工领域实体分类规则,建立基于机械零件加工手册的命名实体识别语料集;提出一种基于领域自适应的机械零件加工领域命名实体识别模型DAMC,解决了传统预训练模型对零件加工领域适用性差的缺点,以及提高在零件加工领域实体识别效果。尽管本文的实例应用仅限于零件加工领域,但也可以应用于其他特定领域,只需对文本数据和相关参数进行微调。
本文所提方法为后续零件加工领域信息抽取提供了基础,有助于减少领域和非领域专家获取信息的障碍。未来的工作需要研究细粒度的命名实体识别问题,并开展以实体识别为基础的下一阶段任务,构建中文零件加工领域图谱,探索在零件加工领域的知识检索、工艺推理等实践应用。