CN115310448A - 一种基于bert和字词向量结合的中文命名实体识别方法 - Google Patents

一种基于bert和字词向量结合的中文命名实体识别方法 Download PDF

Info

Publication number
CN115310448A
CN115310448A CN202210957084.2A CN202210957084A CN115310448A CN 115310448 A CN115310448 A CN 115310448A CN 202210957084 A CN202210957084 A CN 202210957084A CN 115310448 A CN115310448 A CN 115310448A
Authority
CN
China
Prior art keywords
word
vector
bert
layer
speech
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210957084.2A
Other languages
English (en)
Inventor
孙国梓
陈赛
李华康
刘文杰
黄国耀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University of Posts and Telecommunications
Original Assignee
Nanjing University of Posts and Telecommunications
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing University of Posts and Telecommunications filed Critical Nanjing University of Posts and Telecommunications
Priority to CN202210957084.2A priority Critical patent/CN115310448A/zh
Publication of CN115310448A publication Critical patent/CN115310448A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Data Mining & Analysis (AREA)
  • Biomedical Technology (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Machine Translation (AREA)

Abstract

一种基于bert和字词向量结合的中文命名实体识别方法,通过对语言模型进行预训练和微调操作提升模型的向量表征能力,之后将bert形成的字向量和Word2vec形成的词向量进行拼接并使用BiGRU和IDCNN双通道神经网络模型提取特征,加入词性特征后有效提高命名实体识别效果。充分挖掘文本的语义信息,充分提取字的上下文信息,从而产生高效的字向量表示;增强字向量的表征能力,解决短文本上下文中单个字语义信息提取不足的问题,最终提高识别准确率;能够解决循环神经网络丢失局部信息的问题,能够提取到更多重要的特征信息;可以使重要特征赋予更高的权重从而提取更重要的特征以提高最终的识别性能;能够提高实体分类效果,更好的识别实体的类别从而提高实体识别准确率。

Description

一种基于bert和字词向量结合的中文命名实体识别方法
技术领域
本发明涉及自然语言处理技术领域,更具体的是涉及一种基于bert和字词向量结合的中文命名实体识别方法。
背景技术
近年来,深度学习技术的快速发展给自然语言处理领域内的各种任务带来了极大的便捷。在命名实体识别任务上,使用基于深度学习的序列标注模型在多个领域的数据集上取得了非常好的效果,这使得越来越多的研究人员使用深度学习方法进行命名实体识别的工作,这些工作以很小的特征工程代价却取得了比以往传统的机器学习更优异的成绩。
相较于英文命名实体识别,中文命名实体识别的研究难度更大。由于在中文文本里词语之间没有分隔符,造成了在分析文本前必须先进行分词。为了避免因为分词错误而导致识别出的实体边界错误,中文命名实体识别领域提出了通过单字进行识别,但字符级识别同样存在弊端,即未能利用文本中的词语和词语之间的特征信息。在特征提取层,循环神经网络虽然在处理序列数据方面具有优势,但其易丢失文本数据的局部信息。另外,文本中的实体大多都是名词,因此引入词性特征能够提高识别准确率。
综上所述,如何针对中文文本存在的问题选择合适的方法予以解决,提高中文文本的实体识别的准确性成为亟待解决的问题。
发明内容
鉴于此,为了解决上述现有技术中存在的问题,本发明提供了一种基于bert和字词结合的命名实体识别方法,通过对语言模型进行预训练和微调操作提升模型的向量表征能力,之后将bert形成的字向量和Word2vec形成的词向量进行拼接并使用BiGRU和IDCNN双通道神经网络模型提取特征,加入词性特征后有效提高了命名实体识别的效果。
一种基于bert和字词向量结合的中文命名实体识别方法,构建命名实体识别模型,该模型包括词嵌入层,BiGRU和IDCNN特征提取层,Self-Attention层和CRF层,包括以下步骤:
步骤1、获取文本数据作为训练语料对语言模型Word2vec进行预训练,训练完后得到词向量查找表;使用文本数据对BERT模型进行pre-training;
步骤2、对文本数据进行预处理和数据标注操作;
步骤3、将预处理完并标注好的数据输入bert模型中,得到每个字的字向量表示;
步骤4、将文本数据经过分词,通过Word2vec的词向量表得到每个词对应的词向量;
步骤5、将步骤3和步骤4得到的字向量进行拼接,得到每个字对应的最终的融合的字向量;
步骤6、将文本数据进行分词得到每个词的词性特征并编码为对应的词性向量;
步骤7、将步骤5融合得到的向量表示输入BiGRU层,循环神经网络计算如下:
σ(Wi*[ht-1,Xt])
rt=σ(Wr*[ht-1,xt])
Figure BDA0003791791870000031
Figure BDA0003791791870000032
其中,σ是sigmod函数,·是点积,xt表示t时刻的输入向量,ht是隐藏状态也是该时刻的输出向量,包含前面t时刻所有的有效信息。zt是一个更新门,控制信息流入下一个时刻,rt是一个重置门,控制信息丢失,二者共同决定隐藏状态的输出;将融合后的向量输入IDCNN层,迭代膨胀卷积神经网络(IDCNN)由多层不同膨胀宽度的DCNN网络组成。最终得到IDCNN层的向量表示;
步骤8、将BiGRU层的隐藏向量与IDCNN层的输出向量进行拼接操作,得到新的向量表示;
步骤9、将步骤6得到的词性向量与步骤8得到的向量进行拼接操作;
步骤10、将步骤9得到的向量输入到多头注意力机制中,使用自注意力机制学习句子中任意两个字符之间的依赖关系,并捕捉句子的内部结构信息。经过注意力层的计算得到一个具有更好表征能力的向量;
步骤11、经过注意力层的输出结果经过线性层的映射之后输入到CRF层计算输入文本所有可能的标签序列的概率,选择概率最大的标签序列作为最终的预测标签。
进一步地,步骤1中,获取文本数据形成文档b.txt;对文档b.txt进行数据预处理,形成分词后的词语集;使用分词词语集对Word2vec的skip-gram模型预训练,得到词向量查找表。
进一步地,步骤1中,加载预训练好的BERT模型,加载bert_config.json、bert_model.ckpt、vocab.txt三个文件;根据Mask Language Model任务将获取到的文本数据作为训练语料对bert进行pre-training。
进一步地,步骤2中,预处理包括:过滤掉特殊字符和数据标注。
进一步地,数据标注方式采用的是BIO,B指的是一个实体的开始字符,I指的是一个实体的非开始字符,O为非实体标签。
进一步地,步骤4中,将文本数据进行全模式分词,得到句子中所有可能形成词的词语集;之后使用Word2vec词向量查找表得到每个字对应的词向量;将每个字的候选词向量进行融合形成一个词向量,得到每个字对应的最终的词向量表示。
进一步地,步骤6中,首先将文本数据进行分词,得到分词后的词语,通过词性查找表得到每个词对应的词性,之后使用one-hot编码方式将词性编码为词性向量,并将词性向量与该词对应的词向量进行拼接得到含有词性的词向量。
进一步地,步骤9中,首先将步骤6得到的向量输入到一个Dense层进行线性转换得到新的表示,同时将步骤8得到的向量输入到一个Dense层进行线性映射得到一个相同维度的表示,之后将两个变量进行向量拼接操作。
进一步地,步骤11中,设存在句子S={x1,x2,...xn},预测的标签序列为Y={y1,y2,...yn};CRF层标签标记的过程如下:
oi=Wh′i+b
Figure BDA0003791791870000051
Figure BDA0003791791870000052
其中,h′i为经过自注意力层后形成的新的向量表示,W为网络层的权重参数矩阵,b为偏移量矩阵,oi表示的是第i个字对应的各标签得分值,
Figure BDA0003791791870000053
表示第i个字xi对应标签为yi的得分,
Figure BDA0003791791870000054
表示标签yi-1和yi之间的转移分数矩阵,score(S,Y)为句子S对应的标签序列Y的总得分,Ys表示给定句子S的所有候选标签序列,
Figure BDA0003791791870000055
表示取所有候选标签序列中得分最高的那个序列并将之作为该句子的最终输出序列。
进一步地,步骤11中,CRF层使用viterbi算法计算标签序列,以对数似然函数作为损失函数,真实标签序列的概率由以下公式计算:
Figure BDA0003791791870000056
其中,
Figure BDA0003791791870000057
表示真实的标签序列;
假设有N个训练样本,对应的损失函数L计算公式如下:
Figure BDA0003791791870000058
与现有技术相比,本发明具有以下优点:
(1)本发明的一种基于bert和字词结合的命名实体识别方法,提出使用bert预训练语言模型训练产生字向量,该预训练模型可以充分挖掘文本的语义信息,充分提取字的上下文信息,从而产生高效的字向量表示。
(2)本发明的一种基于bert和字词结合的命名实体识别方法,提出一种字词向量结合的方式,增强了字向量的表征能力,解决了短文本上下文中单个字语义信息提取不足的问题,并最终提高识别准确率。
(3)本发明的一种基于bert和字词结合的命名实体识别方法,提出的双通道神经网络特征提取层能够一定程度上解决循环神经网络丢失局部信息的问题,能够提取到更多重要的特征信息。
(4)本发明的一种基于bert和字词结合的命名实体识别方法,提出的多头注意力机制可以使重要特征赋予更高的权重从而提取更重要的特征以提高最终的识别性能。
(5)本发明的一种基于bert和字词结合的命名实体识别方法,提出加入词性特征能够提高实体分类效果,更好的识别实体的类别从而提高实体识别准确率。
附图说明
图1为本发明实施例中一种基于bert和字词结合的命名实体识别方法的整体流程图。
图2为本发明实施例中一种基于bert和字词结合的命名实体识别方法的字词向量融合的示意图。
图3为本发明实施例中一种基于bert和字词结合的命名实体识别方法的自注意力层的计算过程图。
图4为本发明实施例中一种基于bert和字词结合的命名实体识别方法的模型整体架构图。
图5为本发明实施例中一种基于bert和字词结合的命名实体识别方法的IDCNN结构图。
图6为本发明实施例中一种基于bert和字词结合的命名实体识别方法的词性向量形成过程图。
具体实施方式
下面结合说明书附图对本发明的技术方案做进一步的详细说明。
如图1所示,一种基于bert和字词结合的命名实体识别方法,包括以下步骤:
步骤100,获取文本数据构建训练语料库对语言模型进行预训练,具体步骤如下:
1、假设存在文本数据记作b.txt。
2、使用正则表达式过滤掉特殊字符如:“........”,“------”,“%”等,化繁体为简体,将处理完后的文档记为c.txt。
3、使用jieba分词器对c.txt中每个句子进行分词操作,得到该句子的切分后的列表记作sen_list={word1,word2,....wordn}。
4、对文本数据中所有句子进行上一步所述的操作,得到列表集合S_list={sen_list1,.,sen_listi,..sen_listm}。其中sen_listi表示第i个句子的分词列表。
5、将sen_listi逐句作为训练语料来训练word2vec模型,得到词与词向量一一对应的查找表T。
6、加载谷歌公司预训练好的BERT模型,加载bert_config.json、bert_model.ckpt、vocab.txt三个文件。将c.txt作为训练语料根据MLM(Masked LanguageModel)任务对BERT模型进行pre-training,具体过程如下:
a)设置句子最长的长度max_seq_len,超过此长度的句子进行截断,不够的padding操作。
b)连接句子对,用’[SEP]’字符进行连接,句首置’[CLS]’字符,句末置’[SEP]’字符。
c)随机遮住15%的单词;其中80%用masked token来代替,10%用随机的一个词来替换,10%保持这个词不变。
d)根据上述步骤,用原始语料数据来训练BERT语言模型,其中包括Embedding层、双向Transformer编码器、输出层。完成bert模型的预训练并保存为changed.ckpt。
步骤200,对文本数据进行数据标注等操作。具体处理过程如下:
1、获取预处理后的文本数据即文档c.txt。该文档中每行有若干个句子,假设文档中所有句子的平均长度为n个字。
2、数据标注,数据标注方式采用的是BIO,B指的是一个实体的开始字符,I指的是一个实体的非开始字符,O表示非实体。比如“南京很繁华”,其中南京就是一个地名实体,‘南’用B-LOC表示,‘京’用I-LOC表示,其他字符可用O表示。
步骤300,加载已经预训练过的bert模型changed.ckpt和vocab.txt配置文件,将预处理好的数据输入bert模型中得到每个句子中每个字的向量表征,假设存在一个句子S={x1,x2,...,xn},则bert形成字向量的公式如下:
Figure BDA0003791791870000091
其中,xi为S中的第i个字符。
最终,句子S转换后的向量为
Figure BDA0003791791870000092
步骤400,通过Word2vec模型得到句子S的每个字符对应所在词的词向量,字符对应的词向量的形成过程如下:
1、将所输入的句子S进行分词,分词使用的模式为全模式(把句子中所有可以成词的词语都扫描出来),得到该句子S对应的所有分词词语集记作Set={w1,w2,.,wk}。比如“今天天气真好”,全模式下的分词结果Set={‘今天’,‘今天天气’,‘天天’,‘天气’,‘真好’}。
2、假设某个字xi对应的所有候选词语集记为E={},起始
Figure BDA0003791791870000093
将S中的xi与Set中的词依次比较,如果Set中的某个词wi包含了xi,则将wi添加至E中,最终xi对应的候选集E={w1,w2,.,wk}。举例:比如上述例子中的‘今’这个字,其在句子S中的所有候选词语集E={‘今天’,‘今天天气’}。再如图2所示,‘南’对应的E={‘南京’,’南京市’,’南京市长’}。
3、将每个字对应的候选集E与步骤100中预训练好的词汇表T进行匹配,得到E中每个词对应的词向量ew,如图2所示,使用平均值的方式融合每个字符对应的所有的候选词向量,融合词向量的计算公式为:
Figure BDA0003791791870000094
其中,w表示词语,E代表的是候选词语集,ew(w)为该词语对应的词向量,C为候选词语集合E的词语个数。
Figure BDA0003791791870000095
表示候选词语集合为空即该字符无对应的候选词语,ew(0)表示元素值全为0的向量,维度与其他词向量相同。
重复以上过程,最后,word2vec形成的句子对应的向量为
Figure BDA0003791791870000101
Figure BDA0003791791870000102
其中
Figure BDA0003791791870000103
表示第i个字对应的词向量。
步骤500,将步骤300中得到的字向量和步骤400中得到的词向量进行拼接
Figure BDA0003791791870000104
得到最终的句子S转换后的向量表示X={X1,X2,...,Xn}。
其中xi表示融合后第i个字符的向量表示,
Figure BDA0003791791870000105
表示向量拼接。
步骤600,得到输入句子中分词后每个词的词性向量,如图6所示,具体过程如下:
1、句子S经过分词后得到分词结果Sen={Word1,Word2,...,Wordm}。假设每个单词通过词性查找能够得到相应的词性,记句子S的单词词性集为P={p1,p2,...,pm},其中pi表示Wordi的词性。如句子“今天天气真好,我们去打篮球”,分词得到结果为{“今天”,“天气”,“真好”,“我们”,“去”,“打”,“篮球”}。所对应的词性表为{“n”,“n”,“adv”,“n”,“v”,“v”,“n”}。其中“n”表示名词,“adv”表示副词,“v”表示动词。
2、使用预训练好的word2vec模型得到查找表T,通过T得到每个Wordi对应的词向量ew i,因此句子S转换后对应的词向量列表为Ew={ew 1,ew 2,.....,ew m}。
3、使用one-hot编码得到每个词对应的词性嵌入向量Ep={ep 1,ep 2,.....,ep m}。假设词性种类有k种,则词性维度为k维,比如“今天”对应的词性向量为[0,0,1,0,...,0],即只有1位的值为1,其余位的值都是0。
4、依次将词向量ew i和词性向量wp i进行向量拼接操作形成(ew i,ep i)即
Figure BDA0003791791870000111
最后句子S转化后为
Figure BDA0003791791870000112
序列。比如“今天”和“n”组合形成(今天,’n’),若词向量的维度为300维,k的值为35,则拼接后含有词性的向量特征的维度为335。
步骤700,将步骤500融合拼接后的向量X输入BiGRU和IDCNN层,提取特征,具体过程如下:
1、将步骤500融合拼接后的向量X输入BiGRU层,学习句子中较长距离的前后依赖关系。Bigru的前向t时刻的隐藏输出计算公式为:
Figure BDA0003791791870000113
Figure BDA0003791791870000114
Figure BDA0003791791870000115
Figure BDA0003791791870000116
其中,σ是sigmod函数,·是点积,Wi表示更新门权重矩阵,Wr表示重置门的权重参数矩阵,Wc也为权重矩阵。xt表示t时刻的输入向量,
Figure BDA0003791791870000117
是前向传递t时刻的隐藏状态也是该时刻的输出向量,包含前面t时刻所有的有效信息。zt是一个更新门,控制信息流入下一个时刻,rt是一个重置门,控制信息丢失,二者共同决定隐藏状态的输出。
同理能得到反向t时刻的隐藏输出为
Figure BDA0003791791870000121
最后,对前向和反向BiGRU的输出进行拼接得到t时刻的隐藏状态ht
Figure BDA0003791791870000122
最终Bigru层输出为:Hg={h1 g,h2 g,...,hn g}。
2、将字词融合后的向量X输入IDCNN层提取特征。迭代膨胀卷积神经网络(IDCNN)由多层不同膨胀宽度的DCNN网络组成,本模型采用的是4个大的相同结构的Dilated CNNblock拼接在一起,每个block里面是dilation width为1,2,4,8的四层dilated卷积层,卷积核为2。一个block的DNN结构如图5,将向量X输入到膨胀宽度为1的网络层进行卷积操作得到卷积结果c,将c输入到膨胀宽度为2的卷积层得到卷积结果c’,再将c’输入到膨胀宽度为4的卷积层得到卷积结果c”,最后将c”输入到膨胀宽度为8的网络层进行卷积操作,得到输出层结果为Hd,向量Xi经过IDCNN提取得到的新的向量表示为hi d=IDCNN(Xi)。
因此,向量X经过该层后的表示为Hd={h1 d,h2 d,...,hn d}。
步骤800,将BiGRU层得到的向量Hg和IDCNN层得到的向量Hd进行拼接即:
Figure BDA0003791791870000123
得到最终的向量表示H={h1,h2,...,hn}。
步骤900,存在词性向量
Figure BDA0003791791870000124
和特征向量H={h1,h2,...,hn},添加Dense层,分别使用权重矩阵W1,W2对H和Epw进行线性变换使其向量空间维度相同。Epw经过变换后的向量为Epw'=W2Epw,H经过变换后的向量为H'=W1H。将Epw'和H'进行拼接得到联合特征向量
Figure BDA0003791791870000125
最后得到向量
Figure BDA0003791791870000126
步骤1000,使用自注意力机制明确地学习句子中任意两个字符之间的依赖关系,并捕捉句子的内部结构信息。
Figure BDA0003791791870000131
为attention层的输入,计算自注意力的过程如图3,计算公式为:
Figure BDA0003791791870000132
其中,每个词向量都有三个向量即:Q,K,V,分别表示查询向量,键向量和值向量,KT表示向量K的转置。
Figure BDA0003791791870000133
表示向量K维度大小的平方根,softmax是激活函数。
经过Self-Attention层后,得到一个更好的向量表征
Figure BDA0003791791870000134
步骤1100,将经过注意力层后的结果输入softmax得到各字符对应各标签的得分,之后将得分矩阵输入crf层得到句子中每个字对应的标签。句子S={x1,x2,...xn},预测的标签序列为Y={y1,y2,...yn}。CRF层标签标记的过程如下:
oi=Wh′i+b
Figure BDA0003791791870000135
Figure BDA0003791791870000136
其中,h′i为经过自注意力层后形成的新的向量表示,W为网络层的权重参数矩阵,b为偏移量矩阵,oi表示的是第i个字对应的各标签得分值。
Figure BDA0003791791870000137
表示第i个字xi对应标签为yi的得分,
Figure BDA0003791791870000138
表示标签yi-1和yi之间的转移分数矩阵,score(S,Y)为句子S对应的标签序列Y的总得分。
Ys表示给定句子S的所有候选标签序列,
Figure BDA0003791791870000141
表示取所有候选标签序列中得分最高的那个序列并将之作为该句子的最终输出序列。
CRF层使用viterbi算法计算标签序列。以对数似然函数作为损失函数。真实标签序列的概率由以下公式计算:
Figure BDA0003791791870000142
其中,
Figure BDA0003791791870000143
表示真实的标签序列。
假设有N个训练样本,对应的损失函数L计算公式如下:
Figure BDA0003791791870000144
最后得到输入句子S对应的标签序列Y,至此即完成了命名实体的识别。
为验证本方法的性能,在公开数据集MSRA和人民日报数据集上进行了实验,实验结果如下表所示:
表1各模型在MSRA数据集上的实验结果
方法编号 Model Recall(%) F1(%)
1 BiGRU-CRF 86.62 86.23
2 IDCNN-CRF 85.83 85.94
3 BERT-BiGRU-CRF 94.35 94.75
4 Our 95.45 95.96
表2各模型在人民日报数据集上的实验结果
Figure BDA0003791791870000145
Figure BDA0003791791870000151
从表中可以看出,本方法在MSRA数据集上的F1值比BiGRU-CRF模型高9.7%,比BERT-BiGRU-CRF模型高1.2%。在人民日报数据集上,本模型F1值比BiGRU-CRF模型高8%,比BERT-BiGRU-CRF模型高1.1%。可见,本方法的性能要好于其他的模型。
以上所述仅为本发明的较佳实施方式,本发明的保护范围并不以上述实施方式为限,但凡本领域普通技术人员根据本发明所揭示内容所作的等效修饰或变化,皆应纳入权利要求书中记载的保护范围内。

Claims (10)

1.一种基于bert和字词向量结合的中文命名实体识别方法,构建命名实体识别模型,该模型包括词嵌入层,BiGRU和IDCNN特征提取层,Self-Attention层和CRF层,其特征在于:所述方法包括以下步骤:
步骤1、获取文本数据作为训练语料对语言模型Word2vec进行预训练,训练完后得到词向量查找表;使用文本数据对BERT模型进行pre-training;
步骤2、对文本数据进行预处理和数据标注操作;
步骤3、将预处理完并标注好的数据输入bert模型中,得到每个字的字向量表示;
步骤4、将文本数据经过分词,通过Word2vec的词向量表得到每个词对应的词向量;
步骤5、将步骤3和步骤4得到的字词向量进行拼接,得到每个字对应的最终的融合的字向量;
步骤6、将文本数据进行分词得到每个词的词性特征并编码为对应的词性向量;
步骤7、将步骤5融合得到的向量表示输入BiGRU层,循环神经网络计算如下:
σ(Wi*[ht-1,Xt)
rt=σ(Wr*[ht-1,xt])
Figure FDA0003791791860000011
Figure FDA0003791791860000012
其中,σ是sigmod函数,·是点积,xt表示t时刻的输入向量,ht是隐藏状态也是该时刻的输出向量,包含前面t时刻所有的有效信息。zt是一个更新门,控制信息流入下一个时刻,rt是一个重置门,控制信息丢失,二者共同决定隐藏状态的输出;将融合后的向量输入IDCNN层,迭代膨胀卷积神经网络IDCNN由多层不同膨胀宽度的DCNN网络组成;最终得到IDCNN层的向量表示;
步骤8、将BiGRU层的隐藏向量与IDCNN层的输出向量进行拼接操作,得到新的向量表示;
步骤9、将步骤6得到的词性向量与步骤8得到的向量进行拼接操作;
步骤10、将步骤9得到的向量输入到多头注意力机制中,使用自注意力机制学习句子中任意两个字符之间的依赖关系,并捕捉句子的内部结构信息。经过注意力层的计算得到一个具有更好表征能力的向量;
步骤11、经过注意力层的输出结果经过线性层的映射之后输入到CRF层计算输入文本所有可能的标签序列的概率,选择概率最大的标签序列作为最终的预测标签。
2.根据权利要求1所述的一种基于bert和字词向量结合的中文命名实体识别方法,其特征在于:步骤1中,获取文本数据形成文档b.txt;对文档b.txt进行数据预处理,形成分词后的词语集;使用分词词语集对Word2vec的skip-gram模型预训练,得到词向量查找表。
3.根据权利要求1所述的一种基于bert和字词向量结合的中文命名实体识别方法,其特征在于:步骤1中,加载预训练好的BERT模型,加载bert_config.json、bert_model.ckpt、vocab.txt三个文件;根据Mask Language Model任务将获取到的文本数据作为训练语料对bert进行pre-training。
4.根据权利要求1所述的一种基于bert和字词向量结合的中文命名实体识别方法,其特征在于:步骤2中,预处理包括:过滤掉特殊字符和数据标注。
5.根据权利要求4所述的一种基于bert和字词向量结合的中文命名实体识别方法,其特征在于:数据标注方式采用的是BIO,B指的是一个实体的开始字符,I指的是一个实体的非开始字符,O为非实体标签。
6.根据权利要求1所述的一种基于bert和字词向量结合的中文命名实体识别方法,其特征在于:步骤4中,将文本数据进行全模式分词,得到句子中所有可能形成词的词语集;之后使用Word2vec词向量查找表得到每个字对应的词向量;将每个字的候选词向量进行融合形成一个词向量,得到每个字对应的最终的词向量表示。
7.根据权利要求1所述的一种基于bert和字词向量结合的中文命名实体识别方法,其特征在于:步骤6中,首先将文本数据进行分词,得到分词后的词语,通过词性查找表得到每个词对应的词性,之后使用one-hot编码方式将词性编码为词性向量,并将词性向量与该词对应的词向量进行拼接得到含有词性的词向量。
8.根据权利要求1所述的一种基于bert和字词向量结合的中文命名实体识别方法,其特征在于:步骤9中,首先将步骤6得到的向量输入到一个Dense层进行线性转换得到新的表示,同时将步骤8得到的向量输入到一个Dense层进行线性映射得到一个相同维度的表示,之后将两个变量进行向量拼接操作。
9.根据权利要求1所述的一种基于bert和字词向量结合的中文命名实体识别方法,其特征在于:步骤11中,设存在句子S={x1,x2,...xn},预测的标签序列为Y={y1,y2,...yn};CRF层标签标记的过程如下:
oi=Wh′i+b
Figure FDA0003791791860000041
Figure FDA0003791791860000042
其中,h′i为经过自注意力层后形成的新的向量表示,W为网络层的权重参数矩阵,b为偏移量矩阵,oi表示的是第i个字对应的各标签得分值,
Figure FDA0003791791860000043
表示第i个字xi对应标签为yi的得分,
Figure FDA0003791791860000044
表示标签yi-1和yi之间的转移分数矩阵,score(S,Y)为句子S对应的标签序列Y的总得分,Ys表示给定句子S的所有候选标签序列,
Figure FDA0003791791860000045
表示取所有候选标签序列中得分最高的那个序列并将之作为该句子的最终输出序列。
10.根据权利要求1所述的一种基于bert和字词向量结合的中文命名实体识别方法,其特征在于:步骤11中,CRF层使用viterbi算法计算标签序列,以对数似然函数作为损失函数,真实标签序列的概率由以下公式计算:
Figure FDA0003791791860000051
其中,
Figure FDA0003791791860000052
表示真实的标签序列;
假设有N个训练样本,对应的损失函数L计算公式如下:
Figure FDA0003791791860000053
CN202210957084.2A 2022-08-10 2022-08-10 一种基于bert和字词向量结合的中文命名实体识别方法 Pending CN115310448A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210957084.2A CN115310448A (zh) 2022-08-10 2022-08-10 一种基于bert和字词向量结合的中文命名实体识别方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210957084.2A CN115310448A (zh) 2022-08-10 2022-08-10 一种基于bert和字词向量结合的中文命名实体识别方法

Publications (1)

Publication Number Publication Date
CN115310448A true CN115310448A (zh) 2022-11-08

Family

ID=83861633

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210957084.2A Pending CN115310448A (zh) 2022-08-10 2022-08-10 一种基于bert和字词向量结合的中文命名实体识别方法

Country Status (1)

Country Link
CN (1) CN115310448A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115455155A (zh) * 2022-11-10 2022-12-09 中国测绘科学研究院 一种政务文本的主题信息提取方法及存储介质
CN115713083A (zh) * 2022-11-23 2023-02-24 重庆邮电大学 一种中医药文本关键信息的智能抽取方法
CN116484848A (zh) * 2023-03-17 2023-07-25 北京深维智讯科技有限公司 一种基于nlp的文本实体识别方法
CN116682436A (zh) * 2023-07-27 2023-09-01 成都大成均图科技有限公司 一种应急警情受理信息识别方法及装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115455155A (zh) * 2022-11-10 2022-12-09 中国测绘科学研究院 一种政务文本的主题信息提取方法及存储介质
CN115713083A (zh) * 2022-11-23 2023-02-24 重庆邮电大学 一种中医药文本关键信息的智能抽取方法
CN115713083B (zh) * 2022-11-23 2023-12-15 北京约来健康科技有限公司 一种中医药文本关键信息的智能抽取方法
CN116484848A (zh) * 2023-03-17 2023-07-25 北京深维智讯科技有限公司 一种基于nlp的文本实体识别方法
CN116484848B (zh) * 2023-03-17 2024-03-29 北京深维智讯科技有限公司 一种基于nlp的文本实体识别方法
CN116682436A (zh) * 2023-07-27 2023-09-01 成都大成均图科技有限公司 一种应急警情受理信息识别方法及装置

Similar Documents

Publication Publication Date Title
CN108460013B (zh) 一种基于细粒度词表示模型的序列标注模型及方法
CN110008469B (zh) 一种多层次命名实体识别方法
CN112733533B (zh) 一种基于bert模型及文本-图像关系传播的多模态命名实体识别方法
CN115310448A (zh) 一种基于bert和字词向量结合的中文命名实体识别方法
CN109871538A (zh) 一种中文电子病历命名实体识别方法
CN111694924A (zh) 一种事件抽取方法和系统
CN112183094B (zh) 一种基于多元文本特征的中文语法查错方法及系统
CN110532328B (zh) 一种文本概念图构造方法
CN111241816A (zh) 一种新闻标题自动生成方法
CN111563375B (zh) 一种文本生成方法和装置
CN110781290A (zh) 一种长篇章结构化文本摘要提取方法
CN112966525B (zh) 一种基于预训练模型和卷积神经网络算法的法律领域事件抽取方法
CN110276069A (zh) 一种中国盲文错误自动检测方法、系统及存储介质
CN114091450B (zh) 一种基于图卷积网络的司法领域关系抽取方法和系统
CN114169312A (zh) 一种针对司法裁判文书的两阶段混合式自动摘要方法
CN114818717A (zh) 融合词汇和句法信息的中文命名实体识别方法及系统
CN112612871A (zh) 一种基于序列生成模型的多事件检测方法
CN113190656A (zh) 一种基于多标注框架与融合特征的中文命名实体抽取方法
CN114153973A (zh) 基于t-m bert预训练模型的蒙古语多模态情感分析方法
CN115658898A (zh) 一种中英文本实体关系抽取方法、系统及设备
CN115545033A (zh) 融合词汇类别表征的中文领域文本命名实体识别方法
CN115510863A (zh) 一种面向问句匹配任务的数据增强方法
CN114612748A (zh) 一种基于特征解耦的跨模态视频片段检索方法
CN115809666B (zh) 一种融合词典信息和注意力机制的命名实体识别方法
CN114970537B (zh) 基于多层标注策略的跨境民族文化实体关系抽取方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination