一种基于分词和标注任务共享的中文地址序列标注方法、系统、装置及存储介质与流程

未命名 08-07 阅读:103 评论:0


1.本发明涉及中文自然语言处理领域,具体而言,涉及一种基于分词和标注任务共享的中文地址序列标注方法、系统、装置及存储介质。


背景技术:

2.命名实体识别作为指代关系、信息抽取、搜索系统等任务中的基础工作。有十分重要的地位。在各个领域都有一定应用。例如,自动解析地址、自动文摘系统、主题评论生成等应用。在金融、外卖、交通、电商、营销等领域都有重要的应用价值。具体拿自动地址解析来说,在我们日常使用电商或者是快递公司软件上,我们都会维护自己的一个收件地址。几年前,我们如果想帮亲友买东西或者是想要寄快递,都需要手动输入一个新的结构化地址,即使是我们知道一整段地址也需要按照地址的级别去填写到对应位置。随着技术不断发展,我们进入到了移动互联网时代。地址解析可以做到自动化程度,我们只需要输入一整段地址(可以模糊)或者是带有地址信息的图片,系统通过基于ner的实体识别技术就可以帮我们自动解析地址。这更好服务了大众,便利了我们的生活。
3.目前对于命名实体识别的方法主要分为两大类:传统机器学习方法:常用的有监督机器学习方法有两种:1.实体识别被看作是一个分类问题,ner任务可以看作是首先从原始的文本中提取符合目标定义的实体单元,然后将实体单元按照预设的标准划分为实体类别。由于需要判断识别出的实体属于哪个类别,所以按照分类任务的思想,可以将其视为多分类任务。作为多分类任务处理时,经常使用支持向量机、最大熵等分类算法;2.将实体识别看作一个序列标注问题,句子中的每个字或词都可以看作一个基本的token,序列标注就是给句子序列中的每个token分配一个标签,ner常用的序列标注算法,如隐马尔可夫模型、条件随机场(conditional random field,crf)、结构化支持向量机等。对于中文命名实体识别,由于中文本身不具备英文以空格为自然词边界的特征,如果以词为标注单元,命名实体边界的准确性会受到中文语料中分词结果的严重影响;深度学习方法:基于深度学习的ner方法仍被视为序列标注任务,通过编码器-解码器这类模型对文本序列进行实体识别,如图1所示。但是中文字符并不能使用词汇的信息所以基于循环神经网络的标注模型,往往预测效果都不好。随着深度神经网络在自然语言领域的应用越来越多,预训练模型成为近年来的热门话题。虽然使用预训练模型,能都在大多数中文ner数据集上取得不错的效果,但是由于在实际场景部署,对线上的推理速度有限制,而此类模型的推理速度较慢,不符合要求。
4.上述介绍的序列标注的技术都有一些缺点。传统机器学习的特征工程构建过程太复杂。深度学习的主流方法,在通用数据上的表现不错,但是在特定场景的效果较差,并且推理速度较慢。例如,在金融场景下中文地址模糊匹配这个强序列场景中,需要规定地址串匹配的实时性,所以需要模型在保持较好预测效果的情况下,同时具有较低的耗时。
5.综上所述,现有的序列标注技术无法同时满足下面的要求:
6.1)一套具有泛化能力的地址序列标注框架;
7.2)对真实场景的噪音数据具有处理能力;
8.3)评价指标超出行业平均水平,同时保持推理速度。


技术实现要素:

9.本发明目的在于针对现有技术的不足,提出一种基于分词和标注任务共享的中文地址序列标注方法、系统、装置及存储介质。
10.本发明的目的是通过以下技术方案来实现的:第一方面,本发明提供了一种基于分词和标注任务共享的中文地址序列标注方法,该方法包括以下步骤:
11.(1)获取基于注意力机制引入词汇信息的词向量:使用中文地址以及中文分词语料库的外部分词数据训练一个词汇表,然后使用需要标注的中文地址的当前字符在词汇表里搜索以当前字符开始和结尾的词汇,得到待引入词汇集合,基于采用注意力机制的第一层编码器w
attn
bi-lstm,在当前字符向量中引入加权词汇信息;
12.(2)引入分词标签信息:在步骤(1)获取引入词汇信息的词向量,经过一个bi-lstm的编码层,并引入分词标签信息;具体过程为:经过一个全连接层和一个解码层softmax,与分词的真实标签做交叉熵损失;将经过解码层softmax后预测的分词标签通过词汇标签向量矩阵映射成分词标签向量;通过标签类型对应的可学习的系数在映射分词标签向量时对其进行加权,同时在经过第一层编码器w
attn
bi-lstm输出的特征信息中加入分词标签信息,然后输入到bi-lstm第二层编码器中,得到最终的特征信息;
13.(3)序列解码:将步骤(2)中的经过bi-lstm第二层编码器输出的特征信息输入到解码器crf中,使用标准crf层获取最终的序列标注结果。
14.进一步地,步骤(1)中,所述引入加权词汇信息具体为:采用注意力机制,将待引入词汇集合中的词汇向量和当前字符向量做attention,得到一个加权词汇信息引入,从指定的单词中捕获有用的信息。
15.进一步地,步骤(1)中,当前字符每一个位置i的编码信息包含两部分:i位置的字符ci和指定引入的单词集合单词集合中的词汇数量是将每个字符ci映射到一个分布式空间里,得到字符ci的词向量
[0016][0017]
其中,ec表示字符映射查找表;对于每一个在里的第i个词语也使用同样方式表示其词向量:
[0018][0019]
其中,ew表示词汇映射查找表;最后得到单词集合的词向量表达用wi代表所有的其维度是其中dw代表词向量ew的维度:
[0020]
[0021]
使用自注意力获取wi中个词向量的线性组合,注意力机制以wi作为输入,产生一个权重向量ai:
[0022][0023]
其中,w1是一个维度为da×dw
的权重矩阵,w2是da维向量,da是一个超参数,w2和da是可以训练的参数;如果使用掩码来填充词向量;否则保留词向量;最后使用ai来获取所有词语的加权和,得到加权的词汇向量:
[0024][0025]
其中,a
il
表示第l个权重向量,将加权的词汇向量和字符ci的词向量拼接起来,得到基于注意力机制引入词汇信息的词向量。
[0026]
进一步地,通过“padding”补齐的方式保证在每个batch的每个单词集合里的单词数量相同。
[0027]
进一步地,分词的标签类型定为“b”,“i”,“e”三种类型,分别代表需要识别的中文地址实体的开始、中间和结尾。
[0028]
进一步地,词汇标签向量矩阵为(3
×ndim
),n
dim
代表特征向量维度,3代表“b”,“i”,“e”三个标签。
[0029]
进一步地,与真实的标注标签做损失计算的损失函数如下:
[0030]
l=βl
crf
+(1-β)l
cws
[0031][0032][0033]
其中,l、l
cws
和l
crf
分别表示最终加权总损失、cws损失和crf损失;c表示分词的标签集合,即{“b”,“i”,“e”};d表示训练集合;yc和分别表示样本x属于类别c的真实概率和预测概率;s(x,y)表示crf中的特征选择函数;x表示待标注词性的词汇,y表示词汇x的词性;y
x
表示所有词汇x的词性集合;β表示两个损失子函数的加权系数。
[0034]
第二方面,本发明还提供了一种基于分词和标注任务共享的中文地址序列标注系统,该系统包括词汇信息引入模块、分词标签信息引入模块和序列解码模块;
[0035]
所述词汇信息引入模块用于基于注意力机制引入词汇信息的词向量,具体为:使用中文地址以及中文分词语料库的外部分词数据训练一个词汇表,然后使用需要标注的中文地址的当前字符在词汇表里搜索以当前字符开始和结尾的词汇,得到待引入词汇集合,基于采用注意力机制的第一层编码器w
attn
bi-lstm,在当前字符向量中引入加权词汇信息;
[0036]
所述分词标签信息引入模块用于将引入词汇信息的词向量,经过一个bi-lstm的编码层,并引入分词标签信息;具体过程为:经过一个全连接层和一个解码层softmax,与分
词的真实标签做交叉熵损失;将经过解码层softmax后预测的分词标签通过词汇标签向量矩阵映射成分词标签向量;通过标签类型对应的可学习的系数在映射分词标签向量时对其进行加权,同时在经过第一层编码器w
attn
bi-lstm输出的特征信息中加入分词标签信息,然后输入到bi-lstm第二层编码器中,得到最终的特征信息;
[0037]
所述序列解码模块用于将经过bi-lstm第二层编码器输出的特征信息输入到解码器crf中,使用标准crf层获取最终的序列标注结果。
[0038]
第三方面,本发明还提供了一种基于分词和标注任务共享的中文地址序列标注装置,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现所述的一种基于分词和标注任务共享的中文地址序列标注方法。
[0039]
第四方面,本发明还提供了一种计算机可读存储介质,其上存储有程序,所述程序被处理器执行时,实现所述的一种基于分词和标注任务共享的中文地址序列标注方法。
[0040]
本发明的有益效果:本发明在利用任务共享信息的同时,防止中文分词任务给中文命名实体识别任务带来噪音,在多任务框架下提出一个基于分词和标注任务共享的中文地址序列标注模型,将词汇信息引入到中文ner任务中,辅助模型显式学习局部上下文语义信息,实现对中文地址序列的实体标注。相对于现有的自注意力机制的神网络模型以及引入词汇的循环神经网络模型,本发明的方法具有更简单更通用的模型结构和更快的推断速度。
附图说明
[0041]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动前提下,还可以根据这些附图获得其他附图。
[0042]
图1为序列标注的编码器-解码器模型;
[0043]
图2为分词和标注共享模型框架示意图;
[0044]
图3为引入分词标签信息示意图;
[0045]
图4为条件随机场模型结构图;
[0046]
图5是本发明一种基于分词和标注任务共享的中文地址序列标注装置的结构图。
具体实施方式
[0047]
以下结合附图对本发明具体实施方式作进一步详细说明。
[0048]
本发明提供的一种基于分词和标注任务共享的中文地址序列标注方法,涉及到快递、电商和外卖等平台的中文自然语言处理领域的地址序列,通过词汇信息、分词标签和序列解码,对真实场景中的地址序列进行准确地标注,能够更好的辅助下游任务。不管在中文地址数据集还是在通用数据集上的表现超过近几年的先进模型,同时相对于自注意力机制的神网络模型以及引入词汇的循环神经网络模型具有更简单更通用的模型结构和更快的推断速度。
[0049]
本发明提供的一种基于分词和标注任务共享的中文地址序列标注方法中的分词和标注共享模型框架的整体结构如图2所示:整体结构分为三层从输入到输出依次为基于
注意力机制的w
attn
bi-lstm编码层、bi-lstm第二编码层和标准crf层,两个bi-lstm层之间引入中文分词cws(chinese word segmentation)分词信息。首先,模型使用中文地址语料、基于注意力机制引入词汇信息的词向量,并输入至w
attn
bi-lstm编码层;其次,在w
attn
bi-lstm编码层输出中引入cws分词标签信息,此处标签类型定为“b”,“i”,“e”三种类型,分别代表需要识别的中文地址实体的开始、中间和结尾,分词标签通过词汇标签向量矩阵映射成分词标签向量,并通过三个标签类型对应的可学习的系数在映射分词标签向量时对其进行加权,经过第一层编码器bi-lstm输出的特征信息中加入分词标签向量信息后,输入到bi-lstm第二层编码器中,得到最终的特征信息;最后,经过bi-lstm第二层编码器输出的特征信息输入到解码器crf中,使用标准crf层获取最终的序列标注结果。
[0050]
本发明提供的基于分词和标注任务共享的中文地址序列标注方法中的分词和标注共享模型框架一方面在最后编码特征向量中,显式地加入了模型预测分词标签向量。为了防止模型的预测噪音,给每一个分词标签向量设置一个可以学习的权重矩阵λe,通过加权向量,来减少噪音信息;另一方面,由于中文的nlp任务尤其是中文命名实体识别ner(named entity recognition)都是基于字符来编码,为了让模型显示学习到局部甚至是全局上下文信息,采用了一种注意力机制的bi-lstm(w
attn
bi-lstm),来引入分词词汇信息。具体来说,通过引入外部词表(中文分词语料库),然后对于每一个字符会根据规则在词表里去匹配对应的词语形成词汇集合,最后采用注意力加权的方式将集合中相关词汇信息加入到字符中。
[0051]
本发明提供的一种基于分词和标注任务共享的中文地址序列标注方法具体步骤如下:
[0052]
(1)首先,获取基于注意力机制的词汇信息(w
attn
bi-lstm)。使用中文地址以及外部分词数据训练一个word2vec词汇表,然后使用当前字符在词汇表里搜索以当前字符开始和结尾的词汇。由于待引入词汇集合里会有一些上下文不相关噪声词,所以采用注意力机制,将词汇集合中的词汇向量和当前字符向量做attention,得到一个加权词汇信息引入,从指定的单词中捕获有用的信息。
[0053]
其中,当前字符每一个位置i的编码信息包含两部分:i位置的字符ci和指定引入的单词集合集合中的词汇数量是通过“padding”补齐的方式保证在每个batch的每个集合里的单词数量相同。同时,将每个字符ci映射到一个分布式空间里,得到字符ci的词向量
[0054][0055]
其中,ec表示字符映射查找表。相似的,对于每一个在里的第i个词语也使用上述类似方式表示:
[0056][0057]
其中,ew表示词汇映射查找表。最后得到词汇集合的词向量表达为了简化,用wi代表所有的它的维度是其中dw代表词向量ew的维度:
[0058][0059]
使用自注意力获取wi中个词向量的线性组合,注意力机制以wi作为输入,产生一个权重向量ai:
[0060][0061]
w1是一个维度为da×dw
的权重矩阵,w2是da维向量,da是一个超参数,它们俩都是可以训练的参数。如果使用掩码来填充词向量;否则保留词向量。最后使用ai来获取所有词语的加权和。
[0062][0063]
其中,a
il
表示第l个权重向量,然后将加权的词汇向量和字符ci的词向量拼接起来。
[0064]
(2)在上一步获取引入词汇信息的词向量,会经过一个bi-lstm的编码层,并引入分词标签信息,如图3所示,这里将分词的标签类型定为“b”,“i”,“e”三种类型,分别代表实体的开始、中间和结尾。同时会经过一个全连接层和一个解码层softmax,与分词的真实标签做交叉熵损失。到这里都是遵循正常的联合神经网络框架步骤。然后,引入一个词汇标签向量矩阵(3
×ndim
),n
dim
代表特征向量维度,3代表“b”,“i”,“e”三个标签。将经过第一个解码层softmax后预测的分词标签通过矩阵映射成分词标签向量。为了减少模型预测带来的噪音误差,引入一组可学习的系数(在这里是三个)。在引入分词标签向量时对其进行加权,同时在经过第一层编码器w
attn
bi-lstm输出的特征信息中加入分词标签向量信息,然后输入到第二层编码器中,得到最终的特征信息。
[0065]
(3)将步骤(2)中的经过bi-lstm第二层编码器输出的特征信息输入到解码器crf中,使用标准crf层获取最终的序列标注结果。
[0066]
图3中代表经过解码器后的向量,e
begin
,e
inter
和e
end
代表词汇标签向量。λ
eb
,λ
ei
,λ
ee
代表权重矩阵,对应“b”,“i”,“e”三种可学习的系数。分词和标注共享模型的损失函数如下:
[0067]
l=βl
crf
+(1-β)l
cws
[0068][0069][0070]
其中,l、l
cws
和l
crf
分别表示最终加权总损失、cws损失和crf损失;c表示分词的标签集合,即{“b”,“i”,“e”};d表示训练集合;yc和分别表示样本x属于类别c的真实概率和预测概率;s(x,y)表示crf中的特征选择函数;x表示待标注词性的词汇,y表示词汇x的词性;y
x
表示所有词汇x的词性集合;β表示两个损失子函数的加权系数。
[0071]
本发明使用的解码器是条件随机场没有严格的特征选择限制,因此,可以捕获任何上下文信息,它是一个条件概率分布模型p(y|x),表示的是给定一组输入x条件下另一组输出y的马尔可夫随机场。用于命名实体识别序列标注问题的一般是线性链条件随机场,其
结构如图4所示。
[0072]
条件随机场求出使得p(y|x)最大的y做为最终输出的标注序列,相比于隐马尔可夫模型,条件随机场通过自定义转移特征函数和状态特征函数解决了隐马尔可夫模型独立性假设的问题,并通过对全局概率进行统计获得了全局最优解。
[0073]
实施例:
[0074]
本实施例将举例对上述中文地址序列标注方法进行进一步的说明。
[0075]
在中文地址序列标注的实际应用中,使用上述所提出的方法和现有的较先进的方法进行实验对比,具体如下:
[0076]
本发明实施例使用有标签的数据约140万条,中文地址序列标注训练数据具体的数据组成为{地址token序列|对应的标签序列},地址token序列与标签序列之间用“|”连接,序列内部使用英文逗号“,”分隔,每条数据占一行。例如,{浙江省,浙江,湖州,长兴县,长兴县,雉城街道,雉城街道,道园路,70号,绿城广场|r1,r1,r2,r3,r3,r4,r4,r5,r6,r31}为一条训练数据。
[0077]
本发明采用训练集、验证集和测试集的比例为9:3:2。使用上述方法训练分词和标注任务共享的模型。具体的地址对应标注的行政级别如表1所示:
[0078]
表1.行政地址标注对照表
[0079]
标记值分段描述r1省r2市r3区/县r4街道,乡/镇r5道路,村,社区r6门牌,道路号r7单元室r20组织机构名称-公司r21组织机构名称-科教文化r22组织机构名称-医疗保健r23组织机构名称-银行r24政府机构团体r25兴趣点r30住宅区r31商务楼宇r90方向词r99未知
[0080]
为了验证模型的泛化能力,作为对比本发明也选取了在中文ner通用数据集上msra的实验结果。微软命名实体识别数据集(msra据集):微软数据集是微软亚洲研究院发布的中文命名实体识别数据集,其中有26种不同的实体,总计5万多条数据。本发明采用训练集、验证集和测试集的比例为3:1:1。
[0081]
本实验采用基于tensorflow深度学习框架实现。采用预训练的elmo的词向量初始
化模型结构中的字符词向量,字符词向量的维度为200,词典的大小为5k。在训练过程中会对这部分字符词向量进行更新。引入的外部词汇采用在本发明实施例场景和通用数据集上训练的word2vec词向量,词汇向量的维度和字符词向量保持一致为200维。对于引入的分词标签向量矩阵(3n
dim
),n
dim
也为200维。然后对于引入的标签的权重矩阵,采用u(0,1)的随机初始化。对于损失函数中的β,本发明实施例经验性地将其设置为0.6。为了防止过拟合,在两层编码器之间使用了dropout,dropout的几率设置为0.5。w
attn
bi-lstm和bi-lstm的隐状态维度分别设为100和200。本发明实施例采用adam作为优化器来进行神经网络的训练,初始学习率10-5
,∈值为10-8
,β1值为0.9,β2值为0.999。训练采用批量方式训练,批量大小为64,并采用早停法,即如在测试集上评价指标15次内没超过当前最大值,就停止训练。本发明实施例采用一块rtx-titan图形处理器(gpu)进行训练。
[0082]
本实验主要的对比模型为最近比较先进的各类模型,主要包括lattice lstm、bert+crf、flat、idcnn和bilstm+crf,通过比较模型在地址序列标注过程中的p-accuracy和macro-f1,来分析各模型之间的差异。本发明实施例还在通用数据集msra上进行了指标分析。
[0083]
具体的实验结果如表2所示:
[0084]
表2
[0085][0086]
本发明提出的模型在中文地址数据集上的p-accuracy和macro-f1这两项指标较基准模型提高1%~2%。这证明了本发明提出的分词和标注共享模型的有效性。通过对wattn bilstm、cwstag bilstm和shareinfo bilstm这三个模型指标的比较,证明了本发明将引入词汇信息和引入分词标签信息相结合的策略达到了“1+1》2”的效果。在通用数据集msra上,由于本发明对中文地址任务针对性优化,所以指标上没有达到最优,但是也能达到目前所有的基准模型指标平均值之上,这也从侧面印证了本发明设计的模型结构的有效性。
[0087]
本发明在利用任务共享信息的同时,防止中文分词任务给中文命名实体识别任务带来噪音,将词汇信息引入到中文ner任务中,辅助模型显式学习局部上下文语义信息,实
现对中文地址序列的实体标注。相对于现有的自注意力机制的神网络模型以及引入词汇的循环神经网络模型,本发明的方法具有更简单更通用的模型结构和更快的推断速度。
[0088]
另一方面,本发明还提供了一种基于分词和标注任务共享的中文地址序列标注系统,该系统包括词汇信息引入模块、分词标签信息引入模块和序列解码模块;
[0089]
所述词汇信息引入模块用于基于注意力机制引入词汇信息的词向量,具体为:使用中文地址以及中文分词语料库的外部分词数据训练一个词汇表,然后使用需要标注的中文地址的当前字符在词汇表里搜索以当前字符开始和结尾的词汇,得到待引入词汇集合,基于采用注意力机制的第一层编码器w
attn
bi-lstm,在当前字符向量中引入加权词汇信息;
[0090]
所述分词标签信息引入模块用于将引入词汇信息的词向量,经过一个bi-lstm的编码层,并引入分词标签信息;具体过程为:经过一个全连接层和一个解码层softmax,与分词的真实标签做交叉熵损失;将经过解码层softmax后预测的分词标签通过词汇标签向量矩阵映射成分词标签向量;通过标签类型对应的可学习的系数在映射分词标签向量时对其进行加权,同时在经过第一层编码器w
attn
bi-lstm输出的特征信息中加入分词标签信息,然后输入到bi-lstm第二层编码器中,得到最终的特征信息;
[0091]
所述序列解码模块用于将经过bi-lstm第二层编码器输出的特征信息输入到解码器crf中,使用标准crf层获取最终的序列标注结果。
[0092]
与前述一种基于分词和标注任务共享的中文地址序列标注方法的实施例相对应,本发明还提供了一种基于分词和标注任务共享的中文地址序列标注装置的实施例。
[0093]
参见图5,本发明实施例提供的一种基于分词和标注任务共享的中文地址序列标注装置,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,用于实现上述实施例中的一种基于分词和标注任务共享的中文地址序列标注方法。
[0094]
本发明提供的一种基于分词和标注任务共享的中文地址序列标注装置的实施例可以应用在任意具备数据处理能力的设备上,该任意具备数据处理能力的设备可以为诸如计算机等设备或装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在任意具备数据处理能力的设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图5所示,为本发明提供的一种基于分词和标注任务共享的中文地址序列标注装置所在任意具备数据处理能力的设备的一种硬件结构图,除了图5所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的任意具备数据处理能力的设备通常根据该任意具备数据处理能力的设备的实际功能,还可以包括其他硬件,对此不再赘述。
[0095]
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
[0096]
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付
出创造性劳动的情况下,即可以理解并实施。
[0097]
本发明实施例还提供一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时,实现上述实施例中的一种基于分词和标注任务共享的中文地址序列标注方法。
[0098]
所述计算机可读存储介质可以是前述任一实施例所述的任意具备数据处理能力的设备的内部存储单元,例如硬盘或内存。所述计算机可读存储介质也可以是任意具备数据处理能力的设备的外部存储设备,例如所述设备上配备的插接式硬盘、智能存储卡(smart media card,smc)、sd卡、闪存卡(flash card)等。进一步的,所述计算机可读存储介质还可以既包括任意具备数据处理能力的设备的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述任意具备数据处理能力的设备所需的其他程序和数据,还可以用于暂时地存储已经输出或者将要输出的数据。
[0099]
上述实施例用来解释说明本发明,而不是对本发明进行限制,在本发明的精神和权利要求的保护范围内,对本发明作出的任何修改和改变,都落入本发明的保护范围。
[0100]
上述实施例用来解释说明本发明,而不是对本发明进行限制,在本发明的精神和权利要求的保护范围内,对本发明作出的任何修改和改变,都落入本发明的保护范围。

技术特征:
1.一种基于分词和标注任务共享的中文地址序列标注方法,其特征在于,该方法包括以下步骤:(1)获取基于注意力机制引入词汇信息的词向量:使用中文地址以及中文分词语料库的外部分词数据训练一个词汇表,然后使用需要标注的中文地址的当前字符在词汇表里搜索以当前字符开始和结尾的词汇,得到待引入词汇集合,基于采用注意力机制的第一层编码器w
attn
bi-lstm,在当前字符向量中引入加权词汇信息;(2)引入分词标签信息:在步骤(1)获取引入词汇信息的词向量,经过一个bi-lstm的编码层,并引入分词标签信息;具体过程为:经过一个全连接层和一个解码层softmax,与分词的真实标签做交叉熵损失;将经过解码层softmax后预测的分词标签通过词汇标签向量矩阵映射成分词标签向量;通过标签类型对应的可学习的系数在映射分词标签向量时对其进行加权,同时在经过第一层编码器w
attn
bi-lstm输出的特征信息中加入分词标签信息,然后输入到bi-lstm第二层编码器中,得到最终的特征信息;(3)序列解码:将步骤(2)中的经过bi-lstm第二层编码器输出的特征信息输入到解码器crf中,使用标准crf层获取最终的序列标注结果。2.根据权利要求1所述的一种基于分词和标注任务共享的中文地址序列标注方法,其特征在于,步骤(1)中,所述引入加权词汇信息具体为:采用注意力机制,将待引入词汇集合中的词汇向量和当前字符向量做attention,得到一个加权词汇信息引入,从指定的单词中捕获有用的信息。3.根据权利要求1所述的一种基于分词和标注任务共享的中文地址序列标注方法,其特征在于,步骤(1)中,当前字符每一个位置i的编码信息包含两部分:i位置的字符c
i
和指定引入的单词集合单词集合中的词汇数量是将每个字符c
i
映射到一个分布式空间里,得到字符c
i
的词向量的词向量其中,e
c
表示字符映射查找表;对于每一个在里的第i个词语也使用同样方式表示其词向量:其中,e
w
表示词汇映射查找表;最后得到单词集合的词向量表达用w
i
代表所有的其维度是其中d
w
代表词向量e
w
的维度:使用自注意力获取w
i
中个词向量的线性组合,注意力机制以w
i
作为输入,产生一个权重向量a
i
:a
i
=softmax(w2tanh(w1w
it
))其中,w1是一个维度为d
a
×
d
w
的权重矩阵,w2是d
a
维向量,d
a
是一个超参数,w2和d
a
是可以训练的参数;如果使用掩码来填充词向量;否则保留词向量;最后使用a
i
来获取所有
词语的加权和,得到加权的词汇向量:其中,a
il
表示第l个权重向量,将加权的词汇向量和字符c
i
的词向量拼接起来,得到基于注意力机制引入词汇信息的词向量。4.根据权利要求3所述的一种基于分词和标注任务共享的中文地址序列标注方法,其特征在于,通过“padding”补齐的方式保证在每个batch的每个单词集合里的单词数量相同。5.根据权利要求1所述的一种基于分词和标注任务共享的中文地址序列标注方法,其特征在于,分词的标签类型定为“b”,“i”,“e”三种类型,分别代表需要识别的中文地址实体的开始、中间和结尾。6.根据权利要求1所述的一种基于分词和标注任务共享的中文地址序列标注方法,其特征在于,词汇标签向量矩阵为(3n
dim
),n
dim
代表特征向量维度,3代表“b”,“i”,“e”三个标签。7.根据权利要求1所述的一种基于分词和标注任务共享的中文地址序列标注方法,其特征在于,与真实的标注标签做损失计算的损失函数如下:l=βl
crf
+(1-β)l
cwscws
其中,l、l
cws
和l
crf
分别表示最终加权总损失、cws损失和crf损失;c表示分词的标签集合,即{“b”,“i”,“e”};d表示训练集合;y
c
和分别表示样本x属于类别c的真实概率和预测概率;s(x,y)表示crf中的特征选择函数,x表示待标注词性的词汇,y表示词汇x的词性;y
x
表示所有词汇x的词性集合;β表示两个损失子函数的加权系数。8.一种基于分词和标注任务共享的中文地址序列标注系统,其特征在于,该系统包括词汇信息引入模块、分词标签信息引入模块和序列解码模块;所述词汇信息引入模块用于基于注意力机制引入词汇信息的词向量,具体为:使用中文地址以及中文分词语料库的外部分词数据训练一个词汇表,然后使用需要标注的中文地址的当前字符在词汇表里搜索以当前字符开始和结尾的词汇,得到待引入词汇集合,基于采用注意力机制的第一层编码器w
attn
bi-lstm,在当前字符向量中引入加权词汇信息;所述分词标签信息引入模块用于将引入词汇信息的词向量,经过一个bi-lstm的编码层,并引入分词标签信息;具体过程为:经过一个全连接层和一个解码层softmax,与分词的真实标签做交叉熵损失;将经过解码层softmax后预测的分词标签通过词汇标签向量矩阵映射成分词标签向量;通过标签类型对应的可学习的系数在映射分词标签向量时对其进行加权,同时在经过第一层编码器w
attn
bi-lstm输出的特征信息中加入分词标签信息,然后输
入到bi-lstm第二层编码器中,得到最终的特征信息;所述序列解码模块用于将经过bi-lstm第二层编码器输出的特征信息输入到解码器crf中,使用标准crf层获取最终的序列标注结果。9.一种基于分词和标注任务共享的中文地址序列标注装置,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,其特征在于,所述处理器执行所述可执行代码时,实现如权利要求1-8中任一项所述的一种基于分词和标注任务共享的中文地址序列标注方法。10.一种计算机可读存储介质,其上存储有程序,其特征在于,所述程序被处理器执行时,实现如权利要求1-8中任一项所述的一种基于分词和标注任务共享的中文地址序列标注方法。

技术总结
本发明公开了一种基于分词和标注任务共享的中文地址序列标注方法、系统、装置及存储介质。一方面是为了解决如何利用任务共享信息并防止中文分词任务给中文命名实体识别任务带来噪音,在多任务框架下提出一个基于分词和标注任务共享的中文地址序列标注模型;另一方面,提出了将词汇信息引入到中文NER任务中这一方法,用来辅助模型显式学习局部上下文语义信息,实现对中文地址序列的实体标注。本发明提出的基于分词和标注任务共享的中文地址序列标注方法不管在中文地址数据集还是在通用数据集上的表现超过近几年的先进模型,同时相对于自注意力机制的神网络模型以及引入词汇的循环神经网络模型具有更简单更通用的模型结构和更快的推断速度。结构和更快的推断速度。


技术研发人员:王刚 鲍迪恩 杨运平 彭聪 姚都
受保护的技术使用者:浙江邦盛科技股份有限公司
技术研发日:2023.05.22
技术公布日:2023/8/6
版权声明

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

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

分享:

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

相关推荐