【技术实现步骤摘要】
一种基于动态缓存的命名实体识别方法
[0001]本专利技术涉及自然语言处理领域,特别涉及一种基于动态缓存的命名实体识别方法。
技术介绍
[0002]命名实体识别(Named Entity Recognition,NER)是一种自动从海量非结构化文本中抽取地名、人名等结构化信息的自然语言处理(Natural Language Processing,NLP)技术。目前随着深度学习技术的发展,NER模型的效果在各个公开数据集上的效果取得了巨大突破,已经能得到与人类相仿的识别。但需要指出的是,目前的NER模型均以句子级方法为主,没有考虑到句子与句子之间的上下文关联关系,这会导致模型可能会将同一文档相同的实体提及预测为不同的标签,造成错误。为了解决这一问题,一些研究工作开始关注篇章级命名实体识别方法,如Luo L等人在An attention
‑
based BiLSTM
‑
CRF approach to document
‑
level chemical named entity r ...
【技术保护点】
【技术特征摘要】
1.一种基于动态缓存的命名实体识别方法,其特征在于:包括以下步骤:步骤一,缓存用于记忆源端上下文历史隐状态,然后通过读写机制和多头注意力机制对跨句信息进行二次建模;步骤二,上下文门控网络可以自定义当前序列状态和历史状态的权重,更好的将句间信息引入到实体识别模型中;步骤三,灵活定义不同的缓存规则来决定存储何种历史信息,并通过多任务学习算法联合训练缓存模型和实体识别模型。2.根据取权利要求1所述的一种基于动态缓存的命名实体识别方法,其特征在于:模型底部的文本编码层是参数共享的,而其余模块的参数是独立的。3.根据取权利要求2所述的一种基于动态缓存的命名实体识别方法,其特征在于:对于数据集中的不同句子{s1,...,s
N
},N代表总句子数,设s
i
(1≤i≤j)为当前输入序列,其往往由一连串的词组成,即s
i
={x1,...x
n
},n代表序列的长度;我们给s
i
的头尾位置分别加入两个特殊的标记[CLS]和[SEP]用于代表序列的开头和结尾,并最终用预训练好的BERT[1]将si表示为高维隐状态H
i
={h1,...,h
n+2
},其中h
i
∈R
d
,d代表隐状态维度大小,其默认值为768;对于si的隐状态表示H
i
,模型将其输入到一个BiLSTM
‑
Sigmoid的打分函数中,得到一个0到1之间的分数score
i
,我们用该分数衡量句子所含有用信息的大小,其计算过程如下:k
i
=Concat(f(s
i
,H
i
),f
′
(s
n+2
‑
i
,H
i
))score
i
=sigmoid(W
i
k
i
)其中,f和f
′
分别代表前向和后向的LSTM,Concat代表拼接操作,而W
i
为权重矩阵,其参数在模型训练过程中会不断更新。4.根据取权利要求3所述的一种基于动态缓存的命名实体识别方法,其特征在于:采用基于键
‑
值对(Key
‑
value Pairs)的缓存结构,将共享编码层输出的隐状态表示H
i
作为value,BiLSTM的输出k
i
作为key,打分函数的输出score
i
用于表示包含历史信息的大小。5.根据取权利要求1所述的一种基于动态缓存的命名实体识别方法,其特征在于:随后模型根据读写机制,从缓存D中读取最相似的历史编码器状态H
j
;对于缓存D中存储的一个隐状态d
x
,x为d
x
在D中的位置索引,读写机制对相似距离的计算过程如下:;其中,N代表序列长度,T代表矩阵转置操作,
...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。