基于双重数据增强的个人信息命名实体识别方法
未命名
07-27
阅读:104
评论:0
1.本发明属于信息处理技术领域,涉及一种基于双重数据增强的个人信息命名实体识别方法。
背景技术:
2.随着云计算、5g、ai等革命式的计算机技术的出现,人们的生活在信息化的同时也越来越智能化。海量数据的出现,将人们生存的环境带到了一个崭新的时代,其中大部分数据均与个人用户紧密相关。但是由于互联网市场环境的特殊性与复杂多样,很多企业对用户的数据信息方面的保护力度不够,导致用户的个人信息面临着严重的威胁与挑战,其中很大一部分原因是由于当前对个人信息的定义属于模糊定义,很难界定边界和外延;另外个人信息的判别需要专业人员从自然语言层面对其词语进行语法和语义的理解和判定,当出现大量个人信息时,就需使用计算机技术尤其是自然语言处理的相关技术去解决该问题。
3.随着深度学习技术的迅速发展,自然语言处理(nlp)的应用越来越广泛。目前,nlp领域的研究热点主要集中在迁移学习、transformer、监督方法和非监督式学习方法、强化学习几个方面;其最基本的任务包括命名实体识别(ner)、关系抽取(re)和事件抽取(tdt)。目前,基于深度学习的命名实体识别技术得到了很大的发展,但是在垂直领域中对于命名实体识别的认识还存在不足,在现有的模型中存在无法处理个人信息的模糊定义和未登录词、一些个人信息类别标记量少和在实体识别的过程中无法高效识别繁杂长实体的问题。
技术实现要素:
4.本发明的目的是提供一种基于双重数据增强的个人信息命名实体识别方法,解决了目前个人信息实体定义模糊,无法识别实体边界、一些类别的实体标注量少且在面对复杂长实体时识别效率差的问题,提高了对个人信息的保护。
5.本发明采用的技术方案是,基于双重数据增强的个人信息命名实体识别方法,具体包括如下步骤:
6.步骤1,爬取有关个人信息的训练数据,记为集合x,采用聚类的方法设定集合x中的数据分类标准,同时对集合x中20%的数据进行标注;
7.步骤2,采用bert-bilstm-crf模型和roberta-bilstm-crf模型分别对步骤1中标注的数据同时进行训练,对数据集x中剩下的80%的未标注数据进行预测生成伪标签;
8.步骤3,采用中文词切分任务作为辅助任务对个人信息命名实体的边界进行识别,获得中文分词数据集的词边界标注数据,并将该标注数据与步骤2生成的伪标签数据合并为数据集y;
9.步骤4,使用lattice词格结构与预训练模型roberta相结合的方式构成pilaroberta预训练模型,将步骤3中得到的标注数据y输入到该预训练模型中进行预训练,得到初始动态向量;
10.步骤5,对步骤4中获得的初始动态向量进行对抗训练;
11.步骤6,将步骤5中进行对抗训练后的输出结果输入到改进后的bilstm中进行特征提取,之后将得到的特征信息输入到crf层中,根据步骤1中对个人信息的分类标准选取标注序列,生成实体识别结果。
12.本发明的特点还在于:
13.步骤2的具体过程为:
14.步骤2.1,将步骤1中标注的20%的数据分别放入bert-bilstm-crf模型和roberta-bilstm-crf模型中,分别对bert-bilstm-crf模型和roberta-bilstm-crf模型进行训练,得到训练好的模型m1和m2;
15.步骤2.2,从数据集x剩下的80%的未标注数据选取10%的数据分别放入模型m1和m2中,利用模型m1和m2去预测这10%的未标注数据,自动生成伪标签;
16.步骤2.3,通过置信度选择算法选择伪标签;
17.步骤2.4,将步骤2.3得到的伪标签数据与步骤1标注的20%的数据进行合并组成新的数据集,将经过数据训练的模型m1和m2替换成m1’
和m2’
;
18.步骤2.5,重复步骤2.2~2.4,直至模型训练出的伪标签数据95%以上达到伪标签与真实标签标记相同且不能再提升为止;
19.步骤2.6,将原始的数据集x中80%未标注数据放入步骤2.5最终得到的伪标签训练模型中得到预测后的伪标签数据。
20.步骤3的具体过程为:
21.步骤3.1,查找中文词切分cws任务所需要的数据集;
22.步骤3.2,将步骤3.1中得到的数据集输入到roberta预训练模型中进行预训练,得到输出标注数据o
icws
,其中,i=1,2,3,
……
n;
23.步骤3.3,将步骤3.2得到的输出标注数据o
icws
输入到crf层,将该数据中是词边界的词信息进行标注;
24.步骤3.4,将步骤3.3输出的标注数据与步骤2生成的伪标签数据合并,记为数据集y。
25.步骤4的具体过程为:
26.步骤4.1,从网站中爬取任意有关个人信息的语料文本,对该文本进行清洗去噪,除去文本中的标点符号、停用词以及冗余词,新建一个数据集z,将处理好的语料文本保存在数据集z中;
27.步骤4.2,使用jieba分词工具对数据集z进行分词,并将分词后的数据集z整理成一个词汇表,即词典;
28.步骤4.3,将步骤3得到的数据集y中所有数据的子串与步骤4.2词典中的文本进行比较,如果词典存在,就引入这个词语,为这个词形成一个新的节点,根据该节点的横跨范围进行连边,构成lattice词格结构;
29.步骤4.4,通过带有词格位置注意力机制的transformer结构对步骤4.3中得到的词格结构文本进行编码,并利用lpa来帮助transformer直接利用词格中的文本单元之间的关系和距离,来确定词格图中节点的相对位置;
30.步骤4.5,roberta模型采用动态掩码机制,并通过句子顺序预测和整段预测任务
遮掩词格段,对步骤4.4中得到的编码结果进行迭代训练,每轮迭代数据采用不同的mask方式进行掩码,对数据进行训练,得到训练数据的初始动态向量e={e1,e2,e3,...,en}。
31.步骤5的具体过程为:
32.步骤5.1,将步骤4得到的初始动态向量进行反向传播,得到embedding梯度;
33.步骤5.2,计算对抗扰动值δ,并将对抗扰动值δ添加到当前embedding上;
34.采用快速梯度方法计算对抗扰动值δ,公式为:
[0035][0036]
其中,ε扰动空间半径,x代表输入的数据,y代表数据的标签,θ是模型参数,l(x,y,δ)是单个样本的loss值,为了防止对抗扰动过大,需要对δ进行标准化,如下公式:
[0037][0038]
步骤5.3,计算x+δ的前向loss值,反向传播得到对抗梯度,累加到x的梯度上,达到梯度下降的作用,loss值计算公式为:
[0039][0040]
其中,d代表训练集,x代表输入的数据,y代表数据的标签,θ是模型参数,l(x,y,δ)是单个样本的loss值,δ是对抗扰动,s是扰动空间;
[0041]
步骤5.4,删除扰动,恢复embedding层参数为步骤5.1时的值;
[0042]
步骤5.5,根据步骤5.3的梯度对模型进行更新,针对每个输入样本重复训练,最终使得模型在所有数据点的邻近区域都不超过决策边界,并输出经过对抗训练后的数据。
[0043]
步骤6的具体过程为:
[0044]
步骤6.1,将步骤5中经过对抗训练后的数据输入到改进后的bilstm中进行特征提取;
[0045]
步骤6.2,将步骤6.1中得到的特征信息输入到crf层中,选取符合步骤1中的分类标准的最优标注序列,生成实体识别结果。
[0046]
本发明的有益效果是,本发明是面向个人信息领域的命名实体识别研究。以lstm-crf为基础模型框架,在此基础上做出改进,通过加入伪标签学习的方法使得模型能够有效利用大量无标注的数据;提出了将lattice结构和roberta模型相结合的方法,能够对繁杂长实体进行高效识别;另外通过加入对抗训练和多任务学习的方法提高了模型对实体边界的识别能力,减少了错误样本对模型的干扰;通过这两种方式起到了双重数据增强的效果。
附图说明
[0047]
图1是本发明基于双重数据增强的个人信息命名实体识别方法的总体结构流程图;
[0048]
图2是本发明基于双重数据增强的个人信息命名实体识别方法中伪标签学习流程图;
[0049]
图3是本发明基于双重数据增强的个人信息命名实体识别方法中pilaroberta训练模型分解示意图;
[0050]
图4是本发明基于双重数据增强的个人信息命名实体识别方法中引入word级别记忆单元的lstm分解示意图。
具体实施方式
[0051]
下面结合附图和具体实施方式对本发明进行详细说明。
[0052]
本发明基于双重数据增强的个人信息命名实体识别方法,解决了当前个人信息领域的实体定义模糊、边界不清晰以及一些个人信息数据标注量少且对繁杂长实体识别效果差的问题,对lstm-crf模型做出了优化,具体实施例是对大量未标注的数据进行伪标签学习最终获得较为准确的标注数据,并在数据预处理阶段对预处理模型做出了改进,另外加入了辅助任务和对抗性训练,从而提升了个人信息命名实体识别的效率,进而达到对个人信息的保护作用。
[0053]
本发明基于双重数据增强的个人信息命名实体识别方法,流程如图1所示,具体包括以下步骤:
[0054]
步骤1,从百度百科中爬取有关个人信息的训练数据,将其记为集合x,采用聚类的方法对集合x中的数据进行分类。根据个人信息需要被保护的方面将其分为人名、地名、机构名、时间、职位、资产六类,根据已定义的实体类别对集合x中的数据的20%进行标注,采用的标注方法为bio;
[0055]
步骤2,如图2所示,采用bert-bilstm-crf模型和roberta-bilstm-crf模型分别对步骤1中标注的数据同时进行训练,将数据集x中剩下的80%的未标注数据分别放入模型中进行预测生成伪标签,从而扩大已标记数据的规模和分布;
[0056]
步骤2.1,首先将步骤1中标注的20%的数据放入上述两个模型中,分别对两个模型进行训练,得到训练好的模型m1和m2;
[0057]
步骤2.2,从剩下的80%的未标注数据选取10%的数据分别放入模型m1和m2中,利用这两个模型去预测这10%的未标注数据,自动生成伪标签;
[0058]
步骤2.3,通过置信度选择算法选择伪标签;
[0059]
置信度选择算法为:将步骤2.2中选取的未标记数据记为数据集u并将其作为置信度选择算法输入,个人信息命名实体识别模型m1,m2预测出的伪标签和伪标签置信阈值t;输出为高可信度的伪标签数据集d。
[0060]
在[0.2,0.8]范围内以步长为0.1调整置信度阈值t,将调整后的置信度阈值标记为t’,根据上述两个模型训练预测的标签计算一条数据的伪标签一致概率p,最后将p和t’进行对比确定是否对这条数据进行保留(即采用方法为伪标签置信度选择算法),并根据模型结果选取最优阈值t*。
[0061]
将上述两个模型m1和m2训练得到的每一条伪标签数据进行对比,当两个模型对同一条数据结果预测完全一致时,将该条数据加入到数据集d中,否则计算该条数据的伪标签一致概率p(l),其公式为:
[0062][0063]
其中,c
consistent-tags
表示是m1和m2模型对同一条数据l预测相同的标签数目;max
(c
non-o-tags
)表示m1和m2模型对同一条规范l预测标签中的非o标签数目,取其中最大值。
[0064]
当伪标签一致概率p大于置信度阈值t时,将该条数据加入到伪标签数据集d中,否则就将其删除;当无标签数据集合u遍历完成时,算法结束。
[0065]
步骤2.4,将得到的伪标签数据集与之前标注的数据进行合并组成新的数据集,将经过数据训练的模型m1和m2替换成m1’
和m2’
;
[0066]
步骤2.5,重复步骤2.2至2.4,直至模型训练出的伪标签数据95%以上达到伪标签与真实标签标记相同(即为高置信度)且不能再提升为止。
[0067]
在该过程中,通过使用交叉熵来判断模型是否达到稳定的效果,具体算法如下:
[0068]
在确定了伪标签置信阈值t和无标签样本批量大小sample_size(即步骤2.2中每次增加数据的10%)的情况下,以步长为1在[1,5]内调整循环次数,通过对比新模型m1’
和m2’
训练的结果与原模型m1和m2训练结果的交叉熵值,判断模型的性能。
[0069]
用p表示m1和m2中训练的某条数据x的伪标签一致概率,用q表示m1’
和m2’
中与m1和m2中相对应的数据x的伪标签一致概率,则有交叉熵公式为:
[0070][0071]
计算出两个模型中每个样本的交叉熵值之后,对比该交叉熵值,选取最小的交叉熵值;在重复迭代的过程中当交叉熵值几乎没有变化时说明模型趋于稳定,得出最终的伪标签训练模型。
[0072]
步骤2.6,将原始的80%未标注数据放入最终得到的伪标签训练模型中得到预测后的伪标签数据。
[0073]
步骤3,采用中文词切分(chinese word segmentation,cws)任务作为辅助任务辅助本发明中的个人信息命名实体进行任务的边界实体识别,获得中文分词数据集的词边界标注信息。
[0074]
步骤3.1,查找cws任务所需要的数据集,该数据集为北京大学提供的pk简体中文数据集;
[0075]
步骤3.2,将步骤3.1中得到的数据集输入到roberta预训练模型中进行预训练,得到输出标注数据o
icws
(i=1,2,3,
……
n);
[0076]
步骤3.3,将步骤3.2得到的输出数据输入到crf(conditional random field,条件随机场)层,将该步骤中数据集是词边界的词信息进行标注,标注方式如图1所示的bio方式。
[0077]
步骤3.4,将输出的标注数据与步骤2生成的伪标签数据合并,将其记为数据集y。
[0078]
步骤4,使用lattice词格结构与预训练模型roberta相结合的方式构成pilaroberta预训练模型,将步骤3中得到的标注数据y输入到该预训练模型中进行预训练,得到初始动态向量;
[0079]
步骤4.1,从网站中爬取任意有关个人信息的语料文本,对其进行清洗去噪,除去文本中的标点符号、停用词以及冗余词等,新建一个数据集z,将处理好的语料文本保存在数据集z中;
[0080]
步骤4.2,使用jieba分词工具对数据集z进行分词,将其整理成一个词汇表(即词典);
[0081]
步骤4.3,将步骤3得到的数据集y中所有数据的子串与词典中的文本进行比较,如果词典存在,就引入这个词语,为这个词形成一个新的节点,根据它的横跨范围进行连边,构成lattice词格结构。
[0082]
如图3中的lattice块为例,如“北京”所示,“北”“京”匹配到了“北京”这个词,就会形成一个新节点,根据它横跨的范围从“北”这个字前面连条入边到“北京”上,再连条出边到“市”字前面。
[0083]
步骤4.4,通过带有词格位置注意力机制的transformer结构对步骤4.3中得到的词格结构文本进行编码,并利用lpa(lattice position attention)来帮助transformer直接利用词格中的文本单元之间的关系和距离,来建模词格图中节点的相对位置对注意力交互的影响。
[0084]
具体为从绝对位置、相对位置与位置关系三个角度构建三组偏置特征,以达到使pilaroberta预训练模型准确利用注意力层中的晶格结构。具体计算如下:
[0085]
4.4.1,计算绝对位置att
ij
;
[0086][0087]
其中,si为第i个词格节点对应的文本的第一个字在输入文本序列中的位置,而其对应的开始位置特征表示向量为类似的,ei为第i个词格节点对应的文本的最后一个字在输入文本序列中的位置,对应的结尾位置特征表示向量为[;]表示向量的串联,wq,是可学习的参数,de,dk分别是嵌入大小和注意力大小,ps和pe是可学习的位置嵌入矩阵。att
ij
利用的是token的开始和结束位置之间的注意力权重。
[0088]
如在图3中所示的例子中,“北京市长很负责”里“市长”一词的开始位置si为3,结尾位置ei为4。
[0089]
步骤4.4.2,计算相对位置b
ij
:
[0090][0091]
其中,si与ei为第i个词格节点对应的开始和结尾位置。表示了一组起始位置相差t个字的词格节点之间的注意力分数先验。其余的三项,以及也是相似的定义。
[0092]
步骤4.4.3,计算位置关系:
[0093]
位置关系代表在原句中,词格图中两个节点之间位置关系为注意力机制带来的影响,为一个标量。
[0094]
步骤4.4.4,计算结合了偏置特征的注意力分数:
[0095][0096]
其中,a
ij
表示原来的attention,att
ij
计算了绝对位置的attention权重b
ij
则是对相对距离的计算,r
ij
是对相对位置的缩放项。
[0097]
步骤4.5,roberta模型采用动态掩码机制,并通过句子顺序预测(sop)和整段预测任务(msp)遮掩词格段,对步骤4.4中得到的编码结果进行迭代训练,每轮迭代数据采用不
同的mask方式进行掩码,对数据进行训练,得到训练数据的初始动态向量e={e1,e2,e3,...,en}。
[0098]
在进行句子顺序预测(sop)和整段预测任务(msp)遮掩词格段时,pilaroberta模型每次遮掩一个完整的词格段内的节点,并让模型根据上下文去预测遮掩的内容。以图3为例,当模型遮掩“负责”这个词时,由于该模型是对segment进行的掩码,所以它会连同“负”和“责”一同遮掩,这种遮掩方式使得模型在学习特征的过程中是根据上下文去预测遮掩的内容而不是根据该词未被遮掩的单个字预测到遮掩内容;另外在每次遮掩时采用动态掩码机制,进行随机遮掩,避免了相同的mask字符被用于相同的句子输入,出现过拟合现象,使得模型能够充分使用数据特征。
[0099]
步骤5,对步骤4中获得的初始动态向量进行对抗训练。
[0100]
本发明所做的对抗训练就是将生成的对抗样本加入到训练集中做一个数据增强,有的模型可能会被一些微小的信息干扰将边界实体划分到错误的类中;使用对抗训练就是想让模型习惯这种微小的扰动,目的是为了显著增加模型训练时的损失。
[0101]
步骤5.1,将步骤4得到的初始动态向量进行反向传播,得到embedding梯度;
[0102]
步骤5.2,计算对抗扰动值δ,并将其添加到当前embedding上;
[0103]
采用快速梯度方法(fast gradientmethod,fgm)计算对抗扰动值δ,其公式为:
[0104][0105]
其中,ε扰动空间半径,其中x代表输入的数据,y代表数据的标签,θ是模型参数,l(x,y,δ)是单个样本的loss值。为了防止对抗扰动过大,需要对δ进行标准化,如下公式:
[0106][0107]
步骤5.3,计算x+δ的前向loss值,反向传播得到对抗梯度,累加到x的梯度上,达到梯度下降的作用。loss值计算公式为:
[0108][0109]
其中,d代表训练集,x代表输入的数据,y代表数据的标签,θ是模型参数,l(x,y,δ)是单个样本的loss值,δ是对抗扰动,s是扰动空间。
[0110]
步骤5.4,删除扰动,恢复embedding层参数为步骤5.1时的值;
[0111]
步骤5.5,根据步骤5.3的梯度对模型进行更新,针对每个输入样本重复训练。最终使得模型(pilaroberta预训练模型)在所有数据点的邻近区域都不超过决策边界,并输出经过对抗训练后的数据。
[0112]
步骤6,将步骤5中进行对抗训练后的输出结果输入到改进后的bilstm中进行特征提取;之后将得到的特征信息输入到crf层中,根据步骤1中对个人信息的6种分类标准选取标注序列,生成实体识别结果。
[0113]
步骤6.1,将步骤5中经过对抗训练后的结果输入到改进后的bilstm中进行特征提取,该特征为根据步骤1中对个人信息的6种分类;
[0114]
改进后的bilstm是指原来的bilstm接收的输入只有字输入,而步骤4中采用了lattice词格结构与roberta相结合的方式进行数据预训练,该输出结果不仅包括字向量同
时也包括词向量。因此,在本发明中bilstm中加入了词输入,在其中引入了word级别的记忆单元,以接收来自步骤5的输出结果。lstm模型最重要的是信息单元的更新方式,它是通过门机制来实现的。对于本发明来讲,其工作过程如下:
[0115]
首先计算每个字向量的记忆单元cj。首先通过前一时刻的隐层状态h
j-1
和当天时刻的输入词xj计算遗忘门的值fj,选择要遗忘的信息;然后再通过前一时刻的隐层状态h
j-1
和当前时刻的输入词xj计算记忆门的值ij,选择要记忆的信息并输出临时细胞状态
[0116]
然后计算词向量的记忆单元(w表示word,b,j是指词语从cb位置到cj位置)。其计算公式如下:
[0117][0118][0119]
其中,表示选定词语的记忆门值;表示选定词语的遗忘门值;表示选定词语的临时细胞状态;σ表示sigmoid()函数;w
wt
表示t时刻词语的权重;表示从位置b到位置j的词语输入;表示字位置b处的隐层状态;bw表示词的激活值;表示字位置b处的细胞状态。
[0120]
之后计算记忆门的值对应的权重a
b,j
(词向量对应的记忆门值对应的权重)和aj(字向量对应的记忆门值ij对应的权重),其计算公式如下:
[0121][0122][0123]
通过上面的公式计算出每个字符以及以该字符结尾的词的权重,代入下面的公式进行加权求和,得到最终更新的细胞单元cj。
[0124][0125]
之后根据前一时刻的隐层状态h
j-1
和当前时刻的输入词xj以及当前时刻细胞状态cj计算输出门的值oj,并通过下面公式得到隐层状态hj。
[0126][0127]
通过上述计算方式对步骤5中得到的输出结果分别进行前向和后向计算,得到的隐状态分别记为h
if
和h
ib
(i=1,2,
……
n),将h
if
和h
ib
(i=1,2,
……
n)进行拼接得到整体的隐状态序列o
iner
(i=1,2,
……
n)∈r
n*m
。
[0128]
步骤6.2:将步骤6.1中得到的特征信息输入到crf层中,选取符合步骤1中的分类标准的最优标注序列,生成实体识别结果。
[0129]
最优标注序列的选择方式如下:
[0130]
将步骤6.1的得到的隐状态序列o
iner
(i=1,2,
……
n)∈r
n*m
进行映射,将m维映射到k维,记作矩阵p=(p1,p2,...,pn)∈p
n*k
,其中k是标注集的标签数量。
[0131]
crf层的参数是一个(k+2)*(k+2)的转移矩阵a,a
ij
表示的是从第i个标签到第j个标签的转移得分,转移矩阵中加入了开始的标签(start)和结束的标签(end),所以加上了2。如果一个标签序列y=(y1,y2,..,yn),那么对于一句话当中的x的标签等于y的打分如公式:
[0132][0133]
得分主要有两部分:一个是由bilstm输出的pi决定的,另一个是由上面所述的转移矩阵来决定的。最后,序列的整体打分情况是由每个位置的分数决定的,它等于每个位置分数的和。接着使用softmax得到归一化后的概率,见公式:
[0134][0135]
最终取得概率最高的为最优标注序列,得到实体识别结果。
技术特征:
1.基于双重数据增强的个人信息命名实体识别方法,其特征在于:具体包括如下步骤:步骤1,爬取有关个人信息的训练数据,记为集合x,采用聚类的方法设定集合x中的数据分类标准,同时对集合x中20%的数据进行标注;步骤2,采用bert-bilstm-crf模型和roberta-bilstm-crf模型分别对步骤1中标注的数据同时进行训练,对数据集x中剩下的80%的未标注数据进行预测生成伪标签;步骤3,采用中文词切分任务作为辅助任务对个人信息命名实体的边界进行识别,获得中文分词数据集的词边界标注数据,并将该标注数据与步骤2生成的伪标签数据合并为数据集y;步骤4,使用lattice词格结构与预训练模型roberta相结合的方式构成pilaroberta预训练模型,将步骤3中得到的标注数据y输入到该预训练模型中进行预训练,得到初始动态向量;步骤5,对步骤4中获得的初始动态向量进行对抗训练;步骤6,将步骤5中进行对抗训练后的输出结果输入到改进后的bilstm中进行特征提取,之后将得到的特征信息输入到crf层中,根据步骤1中对个人信息的分类标准选取标注序列,生成实体识别结果。2.根据权利要求1所述的基于双重数据增强的个人信息命名实体识别方法,其特征在于:所述步骤2的具体过程为:步骤2.1,将步骤1中标注的20%的数据分别放入bert-bilstm-crf模型和roberta-bilstm-crf模型中,分别对bert-bilstm-crf模型和roberta-bilstm-crf模型进行训练,得到训练好的模型m1和m2;步骤2.2,从数据集x剩下的80%的未标注数据选取10%的数据分别放入模型m1和m2中,利用模型m1和m2去预测这10%的未标注数据,自动生成伪标签;步骤2.3,通过置信度选择算法选择伪标签;步骤2.4,将步骤2.3得到的伪标签数据与步骤1标注的20%的数据进行合并组成新的数据集,将经过数据训练的模型m1和m2替换成m1’
和m2’
;步骤2.5,重复步骤2.2~2.4,直至模型训练出的伪标签数据95%以上达到伪标签与真实标签标记相同且不能再提升为止;步骤2.6,将原始的数据集x中80%未标注数据放入步骤2.5最终得到的伪标签训练模型中得到预测后的伪标签数据。3.根据权利要求2所述的基于双重数据增强的个人信息命名实体识别方法,其特征在于:所述步骤3的具体过程为:步骤3.1,查找中文词切分cws任务所需要的数据集;步骤3.2,将步骤3.1中得到的数据集输入到roberta预训练模型中进行预训练,得到输出标注数据o
icws
,其中,i=1,2,3,
……
n;步骤3.3,将步骤3.2得到的输出标注数据o
icws
输入到crf层,将该数据中是词边界的词信息进行标注;步骤3.4,将步骤3.3输出的标注数据与步骤2生成的伪标签数据合并,记为数据集y。4.根据权利要求3所述的基于双重数据增强的个人信息命名实体识别方法,其特征在于:所述步骤4的具体过程为:
步骤4.1,从网站中爬取任意有关个人信息的语料文本,对该文本进行清洗去噪,除去文本中的标点符号、停用词以及冗余词,新建一个数据集z,将处理好的语料文本保存在数据集z中;步骤4.2,使用jieba分词工具对数据集z进行分词,并将分词后的数据集z整理成一个词汇表,即词典;步骤4.3,将步骤3得到的数据集y中所有数据的子串与步骤4.2词典中的文本进行比较,如果词典存在,就引入这个词语,为这个词形成一个新的节点,根据该节点的横跨范围进行连边,构成lattice词格结构;步骤4.4,通过带有词格位置注意力机制的transformer结构对步骤4.3中得到的词格结构文本进行编码,并利用lpa来帮助transformer直接利用词格中的文本单元之间的关系和距离,来确定词格图中节点的相对位置;步骤4.5,roberta模型采用动态掩码机制,并通过句子顺序预测和整段预测任务遮掩词格段,对步骤4.4中得到的编码结果进行迭代训练,每轮迭代数据采用不同的mask方式进行掩码,对数据进行训练,得到训练数据的初始动态向量e={e1,e2,e3,...,e
n
}。5.根据权利要求4所述的基于双重数据增强的个人信息命名实体识别方法,其特征在于:所述步骤5的具体过程为:步骤5.1,将步骤4得到的初始动态向量进行反向传播,得到embedding梯度;步骤5.2,计算对抗扰动值δ,并将对抗扰动值δ添加到当前embedding上;采用快速梯度方法计算对抗扰动值δ,公式为:其中,ε扰动空间半径,x代表输入的数据,y代表数据的标签,θ是模型参数,l(x,y,δ)是单个样本的loss值,为了防止对抗扰动过大,需要对δ进行标准化,如下公式:步骤5.3,计算x+δ的前向loss值,反向传播得到对抗梯度,累加到x的梯度上,达到梯度下降的作用,loss值计算公式为:其中,d代表训练集,x代表输入的数据,y代表数据的标签,θ是模型参数,l(x,y,δ)是单个样本的loss值,δ是对抗扰动,s是扰动空间;步骤5.4,删除扰动,恢复embedding层参数为步骤5.1时的值;步骤5.5,根据步骤5.3的梯度对模型进行更新,针对每个输入样本重复训练,最终使得模型在所有数据点的邻近区域都不超过决策边界,并输出经过对抗训练后的数据。6.根据权利要求5所述的基于双重数据增强的个人信息命名实体识别方法,其特征在于:所述步骤6的具体过程为:步骤6.1,将步骤5中经过对抗训练后的数据输入到改进后的bilstm中进行特征提取;步骤6.2,将步骤6.1中得到的特征信息输入到crf层中,选取符合步骤1中的分类标准的最优标注序列,生成实体识别结果。
技术总结
本发明公开了一种基于双重数据增强的个人信息命名实体识别方法,所采用的方法是对LSTM-CRF模型进行改进,并通过采用Lattice结构与RoBERTa预训练模型相结合对文本进行预处理使得模型可以更好地提取繁杂长实体的特征信息;同时在模型中加入了多任务学习和对抗性训练解决了实体定义边界划分模糊和人工标注样本错误对模型产生的影响;采用本发明提供的方法在一定程度上起到保护网络用户的个人信息的效果,为用户创造出一个安全的网络空间环境。境。境。
技术研发人员:朱磊 李晓华 张彤 黑新宏 姬文江 杨明松 杨佩
受保护的技术使用者:西安理工大学
技术研发日:2023.04.17
技术公布日:2023/7/25
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
