一种基于预训练模型的交通事故命名实体识别方法

未命名 07-20 阅读:205 评论:0


1.本发明涉及命名实体识别方法,更具体地说是涉及一种面向交通事故领域的命名实体识别,特别是一种基于预训练模型的交通事故命名实体识别方法。


背景技术:

2.随着人们生活水平提高,出行逐渐的有了多样化的交通工具,交通事故的发生也屡见不鲜,人民的生命安全以及财产安全遭受了严重威胁。所以,交通安全也逐渐地引起了大众的广泛关注。根据目前已经存在的数据以及信息,分析出交通事故发生的规律、原因等,对于有效的降低交通事故发生率、保护人民的生命财产安全有非常大的帮助。在信息化发展的大数据时代,互联网中也存在了大量的交通事故领域的非结构化文本数据,对于后期数据的处理以及分析造成了很大的困难,所以将非结构化的数据转化为结构化数据,使机器能够有效识别,并且提取出对后期数据分析有用的关键信息,可以降低交通事故的发生率,提升紧急救援的效率,受伤人员得到及时的治疗,优化应急处置流程,制定更加详细的应急预案,提高应急效率。
3.命名实体识别方法刚开始是被应用在英文领域,中文领域的命名实体识别方法研究起步较晚。中文的命名实体识别与英文的命名实体识别相比,具有更大的挑战性,需要解决的难题更多。英文实体单词之间就是空格,实体中的每个词的第一个字母是大写,具有明显的形式标志,所以对实体边界的识别相对容易。中文命名实体识别所面临的难点主要有:
4.1.中文文本没有类似英文文本中空格之类的显式标示词的边界标示符,命名实体识别的第一步就是确定词的边界,即中文分词。
5.2.不同的命名实体具有不同的内部特征,不能用统一的模型刻画所有的实体内部特征。
6.中文命名实体识别目前研究更多的领域是航空安全、金融、煤矿事故安全、网络安全等领域,在交通领域的研究较少,且每个领域的数据集由于专业领域都有自己独特的特点,对于之前所使用的方法以及模型不一定适用于交通事故领域。现有的命名实体识别方法主要是基于传统的规则与词典方法、基于深度学习方法,基于传统的规则与词典方法,虽然在特定的领域也达到了比较好的效果,但是此种方法也存在一定的缺陷,例如:
7.(1)需要人工设计规则模板和知识词典库,比较繁琐。
8.(2)耗时比较久,耗费人力比较大。
9.(3)泛化能力比较差,维护比较困难。


技术实现要素:

10.针对现有技术存在的上述不足,本发明的目的在于提供一种基于预训练模型的交通事故命名实体识别方法。
11.为实现以上目的,本发明采用如下技术方案:
12.一种基于预训练模型的交通事故命名实体识别方法,包括以下步骤:
13.步骤1.选取交通事故文本数据作为数据集,并对数据集进行初步的预处理;
14.步骤2.针对经过步骤1预处理的数据集,采用bio标记法对数据集进行标注,定义实体类别标签,构建交通事故实体词典,得到标注后的数据;
15.步骤3.构建预训练语言模型,针对经过步骤2标注后的数据集对预训练模型进行微调,完成对标注后文本序列的数据集的向量化表达。
16.步骤4.构建bilstm神经网络模型,将预训练语言模型输出后生成的交通事故文本词向量输入到bilstm模型,进行特征提取;
17.步骤5.对特征提取的结果进行优化,运用crf也即条件随机场对基于bilstm输出的序列进行编码和制约,得到具有最大概率的合理预测。
18.进一步地,所述步骤1中,采用爬虫技术来获取交通事故文本数据。
19.进一步地,所述步骤1对数据集进行初步的预处理,具体包括以下过程:清洗掉无效数据得到所需要的文本数据集,然后将获得的文本数据以7:2:1的比例分成三份,将其中的70%的数据作为训练数据集,20%的数据作为验证数据集,10%的数据作为测试数据集。
20.进一步地,所述步骤2中,定义城市、高速公路、收费站等实体类别标签。
21.进一步地,所述步骤3中,采用roberta预训练语言模型完成交通事故文本序列的向量化表达。
22.进一步地,所述步骤5具体包括以下过程:
23.crf是将bilstm层训练后的特征向量作为输入,它的作用是对于一个文本向量给定的输入序列为x(x1,x2....xn),经过crf条件随机场预测得到输出标签序列为y(y1,y2......yn),得到的预测分数计算公式:
[0024][0025]
其中w表示状态转移矩阵,表示标签的状态转移分数,为对应位置i+1的输入输出序列的分数值,则输出y的概率公式为:
[0026][0027]
在上式中,y
x
为所有可能的标签序列集合,最终的模型目标是使p(y|x)最大化,通过最大似然估计法得到p(y|x)的最大值,在训练时,根据公式最大化得分结果为:
[0028][0029]
与现有技术相比,本发明具有以下有益效果:
[0030]
本发明方法从获取的交通事故非结构化文本数据中提取到了目前交通事故领域还没有提取的关于处置信息的实体,采用roberta预训练语言模型进行词向量生成,相比较目前已经使用在交通事故领域的bert预训练语言模型,它可以使用更大规模的语料库进行预训练,使其在后续的命名实体识别任务中提供更强的基准。建立基于roberta预训练语言模型的bilstm-crf深度学习模型,深度学习bilstm模型能够自动学习双向上下文的语义信息,能够在提取特征时有效的依赖上下文关系,将正向输出和反向输出的向量进行拼接,再进行输出,最后将输出后的序列送入crf层,crf层对基于bilstm输出的序列标注进行编码和制约,得到具有最大概率的合理预测,实现交通事故命名实体识别模型指标的提升。
附图说明
[0031]
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
[0032]
图1为本发明方法流程示意图;
[0033]
图2为bert模型的结构示意图;
[0034]
图3为交通事故文本数据输入bert模型,可以生成融合字向量、句向量以及位置向量的特征向量组合示意图;
[0035]
图4为bilstm的网络模型结构图。
具体实施方式
[0036]
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。
[0037]
如图1所示,一种基于预训练模型的交通事故命名实体识别方法,包括以下步骤:
[0038]
步骤1.采用爬虫技术来获取交通事故文本数据,并对采集到的数据集进行初步的预处理;
[0039]
利用爬虫技术获取大量交通事故文本数据。对于获取的大量文本数据集,进行初步的预处理,清洗掉无效数据得到包含丰富实体的文本数据集,然后将获得的文本数据以7:2:1的比例分成三份,将其中的70%的数据作为训练数据集,20%的数据作为验证数据集,10%的数据作为测试数据集。
[0040]
训练集(training set):用来训练模型,通过训练集的数据确定过拟合曲线的参数。
[0041]
验证集(validation set):用来做模型选择,即做模型的最终优化及确定,用来辅助模型的构建。
[0042]
测试集(test set):评价最终筛选出来的模型的泛化能力。
[0043]
步骤2.针对获取的交通事故事件数据集,采用bio标记法对数据集进行标注,根据交通事故文本中包含的事故城市、高速公路、收费站等实体类别,构建交通事故实体词典;
[0044]
bio标记法的方法是,b(begin)表示命名实体在文中的起始字符,i(internal)表示命名实体的中间字符,o(other)表示非命名实体字符。
[0045]
步骤3.构建预训练语言模型,将通过bio标记法得到的文本标注序列输入到预训练语言模型,完成文本序列的向量化表达。
[0046]
在基于深度学习的命名实体识别任务中,需要将文本数据抽象表示为词向量,才能被计算机识别、读取,因此,对经过标记的交通事故的文本序列,要对其进行词向量化表达,转化为词嵌入模型,才能作为深度神经网络的输入。
[0047]
文本序列向量化表达就是将获取的文本数据从自然语言文本转换到机器语言,也就是将非结构化的文本数据进行结构化表达,使机器能够有效识别,进而达到目的,它的核心是将非结构化的文本数据映射到向量空间中,转化为词嵌入模型,符合深度学习模型的输入预料标准。传统的词向量表达是基于静态的词向量表达,但是该模型对于上下文语义
信息,没有更好的考虑上下文的语义信息,解决一词多义的问题,之后,预训练语言模型就开始逐步被应用到命名实体识别领域,预训练语言模型是一种深层的网络架构,采用“预训练+微调”的两段式主流模式,采用网络上已经训练好的预训练语言模型,输入已经获取的交通事故文本数据,然后根据数据对下载的网络模型进行微调,使得该模型更好的在命名实体识别发挥作用。目前,在文本挖掘领域有代表性的是bert预训练语言模型及其扩展模型。
[0048]
bert模型使用双向的深层transformer编码结构,利用大规模的语料数据进行自我监督学习的训练,使得模型能够获取输入文本数据中的语义信息,该模型的具体结构如图2。bert预训练语言模型中首先会对在文本的开头和句子之间分别插入[cls]和[sep],其次,该模型将字向量、句子向量和位置向量进行叠加作为输入,其中字向量是输入序列中每个字符本身的子字向量,句子向量在模型训练过程中自动学习,可以用来刻画文本的全局信息,并且它与单字的语义信息相融合帮助很好的结合上下文信息,由于文本不同位置所携带的语义信息存在差异,结合位置向量可以很好的区分,针对交通事故文本数据的输入,可以生成融合字向量、句向量以及位置向量的特征向量组合例子如图3所示。
[0049]
bert预训练任务有两个:第一个是掩码语言模型,第二个是预测任务。掩码语言模型就相当于在空格里填入缺少的词,在将文本序列输入bert模型之前,随机选择部分的词进行掩码操作,用[mask]掩码字符替换选择的部分词,然后模型根据其他没有被掩盖的词来预测被掩盖的词。在替换的时候,并不是每次都用掩码标记来替换选中的掩码词,这样可能会导致模型将掩码序列作为被替换的词,一般情况下,替换策略为在文本数据中随机抽取15%的掩码词后,对80%的样本用掩码标记[mask]替换掩码词,对另外10%的样本不做任何替换,对最后10%的样本从模型词表中随机抽取单词来替换掩码词。第二个预测任务可以构建两个文本之间的关系,判断两个句子之间是否有承接关系,很好的结合上文下文的语义信息,对于后期准确抽取命名实体有很好的帮助。
[0050]
虽然bert预训练语言模型在一些领域已经表现出了它的模型优异性能,但是在一些方面还是存在一定的缺陷,比如,参数量是比较大的,研究者逐渐将研究方向转向了bert的延申模型,xlnet就是它的一种延申模型,是一种基于transformer-xl的自回归语言模型,它使用双流自注意力机制实现自己的目标,双流自注意力机制就类似于掩码语言模型中的掩码过程,引入query流对输入文本序列的部分词进行遮盖,不同于bert模型中显式地对输入序列中的部分词进行随机掩码操作,和bert相比,只是掩码的实现方式不同。但是在一些方面也做出了提升,使用排列语言模型通过对标记序列的所有排列组合进行建模兼顾上下文信息。使用更大、更高质量的数据进行预训练,有效的减小了后期建模过程中的误差;albert也是bert预训练语言模型的延申模型的一种。albert也叫a lite bert,是一种轻量级的bert预训练语言模型,也是基于transformer的双向编码器结构,不仅能够有效的捕捉词级特征,还能有效捕捉到句子级别特征。它的网络结构与bert的结构相同,但是和bert模型相比较,albert模型采用了词向量参数因式分解和跨层参数共享两项技术,动态的获取文本词向量,降低了模型的内存消耗,提高了模型的训练速度;roberta也是一种基于bert提出的预训练语言模型,它取消了bert模型的第二个预测任务,引入了动态掩码技术,同时,它可以使用更大规模的语料库进行预训练,增加了预训练的步数,放大了预训练的批次,能够充分训练进而提高模型性能,其次预训练数据规模的增大也使其在后续的命
名实体识别任务中提供更强的基准。本技术采用roberta预训练语言模型完成交通事故文本序列的向量化表达。
[0051]
步骤4.构建bilstm(双向长短时记忆网络)神经网络模型,将预训练语言模型输出后生成的交通事故文本字向量输入到bilstm模型,进行特征提取;
[0052]
bilstm是bi-directional long short-term memory的缩写,由前向lstm(长短时记忆网络)网络和后向lstm网络组成。lstm属于一种特殊的循环神经网络,与传统的循环神经网路相比,lstm增加了门机制和记忆单元,能够很好的的解决在模型使用中的梯度消失和梯度爆炸问题。每一个lstm单元是由输入门、遗忘门、单元状态、输出门组成。输入门的作用是更新单元状态,遗忘门确定应该丢弃或者保留哪些信息,单元状态充当了传递信息的通道,可以看作网络的记忆单元,输出门能决定下个隐藏状态的值,隐藏状态中包含了先前输入的相关信息。
[0053]
单向的lstm对输入序列进行特征提取时,只能结合上文信息,无法有效结合下文信息,而双向lstm结构的bilstm网络模型可以有效的解决这一问题,对输入的文本信息进行前向和后向计算得到不同的结果,再通过向量拼接输出具有上下文特征的字符序列概率。bilstm层在得到预训练模型输出的文本词向量之后,将文本词向量作为各个时间的输入,自动提取语义特征,bilstm的网络模型结构图4所示。
[0054]
步骤5.对特征提取的结果进行优化,使用bilstm提取的特征结果,有可能会出现输出不合理的现象,运用crf(条件随机场)对基于bilstm输出的序列进行编码和制约,得到具有最大概率的合理预测。
[0055]
基于bilstm模型输出的提取到的交通事故文本特征,虽然bilstm模型可以结合上下文信息对交通事故文本进行特征提取),但是输出的标签序列也有可能是错误的或者是不合理的,crf层可以在数据集中有效学习标签的依赖关系,对bilstm层的输出结果进行修正得到特征提取出来结果的最优标签序列。
[0056]
crf也叫条件随机场,是一个序列化标注的算法,对从bilstm层输出的标签序列进行约束,可以确保最终预测序列的准确输出。crf是将bilstm层训练后的特征向量作为输入,对于一个文本向量给定的输入序列为x(x1,x2....xn),经过crf条件随机场预测得到输出标签序列为y(y1,y2......yn),得到的预测分数计算公式:
[0057][0058]
其中w表示状态转移矩阵,表示标签的状态转移分数,为对应位置i+1的输入输出序列的分数值,则输出y的概率公式为:
[0059][0060]
在上式中,y
x
为所有可能的标签序列集合,最终的模型目标是使p(y|x)最大化,通过最大似然估计法得到p(y|x)的最大值,在训练时,根据公式最大化得分结果为:
[0061][0062]
评价模型的三个指标:准确率、召回率和f1值,都能够体现模型的效率,计算方法如下:
[0063]
准确率:
[0064]
召回率:
[0065]
f1:
[0066]
其中tp为识别正确的实体数量,fp为识别错误的实体数量,fn表示未能识别出来的实体数量,tp+fp为预测结果中的实体总数,tp+fn为标准结果中的实体总数。
[0067]
将bert、roberta、xlnet、albert四种预训练语言模型在交通事故命名实体识别领域的使用进行比较,观测四种预训练语言模型模型的三个指标,得出roberta预训练语言模型比其他三种模型的f1值有显著的提升,且roberta采用更大规模的语料库进行预训练,在后续的命名实体识别任务中可提供更强的基准,所以本发明采用roberta预训练语言模型去训练模型。
[0068]
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。

技术特征:
1.一种基于预训练模型的交通事故命名实体识别方法,其特征在于,包括以下步骤:步骤1.选取交通事故文本数据作为数据集,并对数据集进行初步的预处理;步骤2.针对经过步骤1预处理的数据集,采用bio标记法对数据集进行标注,定义实体类别标签,构建交通事故实体词典,得到标注后的数据集;步骤3.构建预训练语言模型,针对经过步骤2标注后的数据集对预训练模型进行微调,完成对标注后文本序列的数据集的向量化表达;步骤4.构建bilstm神经网络模型,将预训练语言模型输出后生成的交通事故文本词向量输入到bilstm模型,进行特征提取;步骤5.对特征提取的结果进行优化,运用crf也即条件随机场对基于bilstm输出的序列进行编码和制约,得到具有最大概率的合理预测。2.根据权利要求1所述的基于预训练模型的交通事故命名实体识别方法,其特征在于,所述步骤1中,采用爬虫技术来获取交通事故文本数据。3.根据权利要求1所述的基于预训练模型的交通事故命名实体识别方法,其特征在于,所述步骤1对数据集进行初步的预处理,具体包括以下过程:清洗掉无效数据得到所需要的文本数据集,然后将获得的文本数据以7:2:1的比例分成三份,将其中的70%的数据作为训练数据集,20%的数据作为验证数据集,10%的数据作为测试数据集。4.根据权利要求1所述的基于预训练模型的交通事故命名实体识别方法,其特征在于,所述步骤2中,定义城市、高速公路、收费站实体类别标签。5.根据权利要求1所述的基于预训练模型的交通事故命名实体识别方法,其特征在于,所述步骤3中,采用roberta预训练语言模型完成交通事故文本序列的向量化表达。6.根据权利要求1所述的基于预训练模型的交通事故命名实体识别方法,其特征在于,所述步骤5具体包括以下过程:crf是将bilstm层训练后的特征向量作为输入,它的作用是对于一个文本向量给定的输入序列为x(x1,x2....x
n
),经过crf条件随机场预测得到输出标签序列为y(y1,y2......y
n
),得到的预测分数计算公式:其中w表示状态转移矩阵,wy
i
,y
i+1
表示标签的状态转移分数,为对应位置i+1的输入输出序列的分数值,则输出y的概率公式为:在上式中,y
x
为所有可能的标签序列集合,最终的模型目标是使p(y|x)最大化,通过最大似然估计法得到p(y|x)的最大值,在训练时,根据公式最大化得分结果为:

技术总结
本发明涉及命名实体识别方法,公开了一种基于预训练模型的交通事故命名实体识别方法,首先运用BIO标记法对文本数据集进行标注,定义实体类别标签,其次采用RoBERTa预训练语言模型对文本数据进行训练,完成文本序列的向量化表达,然后将训练得到的向量表示作为深度学习模型BiLSTM层的输入,BiLSTM层会自动学习上下文的依赖关系,将正向输出和反向输出的向量进行拼接,再进行输出,最后将输出后的序列送入CRF层,得到具有最大概率的合理预测序列,实现交通事故的命名实体识别。现交通事故的命名实体识别。现交通事故的命名实体识别。


技术研发人员:陈娇娜 张静 王鹏 陶伟俊
受保护的技术使用者:西安石油大学
技术研发日:2023.01.17
技术公布日:2023/7/19
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐