bert——Bert-BiLSTM-CRF命名实体识别演变

(1)RNN
bert——Bert-BiLSTM-CRF命名实体识别演变_第1张图片
网络中的循环结构使得某个时刻的状态能够传到下一个时刻,即可以实现信息的持久化。因此,循环神经网络的主要用途是处理和预测序列数据。

缺点:
RNNs能够把以前的信息联系到现在,从而解决现在的问题。但是,随着预测信息和相关信息间的间隔增大, RNNs 很难去把它们关联起来了。从理论上来讲,通过选择合适的参数,RNNs 确实是可以把这种长时期的依赖关系 (“long-term dependencies”) 联系起来,并解决这类问题的。但遗憾的是在实际中, RNNs 无法解决这个问题。如果序列过长,一方面会出现梯度消散或梯度爆炸的问题,另一方面,展开后的前馈神经网络会占用过大的内存。因此,实际中一般会规定一个最大长度,当序列长度超过规定长度后进行截断。幸运的是,LSTMs能够比较好的解决长期依赖问题。
(2)LSTM
非常适合用于对时序数据的建模,如文本数据。能将长时期的依赖关系 (“long-term dependencies”) 联系起来。
1. 遗忘门
表示让对应信息通过的权重,决定让哪些信息通过这个Cell。

bert——Bert-BiLSTM-CRF命名实体识别演变_第2张图片

2.输入门
决定让多少新的信息加入到cell状态中来。

bert——Bert-BiLSTM-CRF命名实体识别演变_第3张图片

3.输出门
决定输出什么值。
bert——Bert-BiLSTM-CRF命名实体识别演变_第4张图片

(3)BiLSTM(双向LSTM,前向和后向)
以上介绍的循环神经网络考虑了前文的信息,但很多时候,当前时刻的输出不仅和前文有关也和后文有关。
网络结构:双向LSTM的主体结构就是两个单向LSTM的结合,一个LSTM接收序列的顺序输入,一个LSTM接收序列的逆序输入,最终输出是这两个单向LSTM输出的简单拼接。其网络结构如下图所示:
bert——Bert-BiLSTM-CRF命名实体识别演变_第5张图片
(4)Embedding+BiLSTM+CRF
BiLSTM 可以预测出每一个字属于不同标签的概率,然后使用 Softmax 得到概率最大的标签,作为该位置的预测值。但是在预测的时候会忽略了标签之间的关联性,因此 BiLSTM+CRF 在 BiLSTM 的输出层加上一个 CRF,使得模型可以考虑类标之间的相关性,标签之间的相关性就是 CRF 中的转移矩阵,表示从一个状态转移到另一个状态的概率。
1.Embedding层(输入层)
将句子x中的每个单词表示为一个向量,其中包括单词的嵌入和字符的嵌入。字符嵌入是随机初始化的。词嵌入通常是从一个预先训练的词嵌入文件导入的。所有的嵌入将在训练过程中进行微调。
2.BiLSTM层(编码层)
在序列标注任务中,为了能够挖掘有效历史信息和将来的信息,模型使用双向LSTM网络结构。BiLSTM模型能够在任意时刻通过forward state充分利用历史信息,同时通过backard state利用将来的信息。BiLSTM模型学习参数的更新使用back-propagation through time (BPTT)算法,该模型在forward和backard阶段与一般模型不同之处在于隐藏层对于所有的time step都要展开计算。
3.CRF层(输出层)
CRF层可以向最终的预测标签添加一些约束,以确保它们是有效的。这些约束可以由CRF层在训练过程中从训练数据集自动学习。

整体模型为
bert——Bert-BiLSTM-CRF命名实体识别演变_第6张图片首先输入一段话(按句号再拆分为句子)或者一个句子,将其分割为一个一个单词,然后通过Embedding层进行训练。训练之后传给BiLSTM层,输入是词嵌入向量,输出表示该单词对应各个类别的分数。所有经BiLSTM层输出的分数将作为CRF层的输入,进行学习约束,类别序列中分数最高的类别就是我们预测的最终结果。
(5)Bert+BiLSTM+CRF
将(4)中的Embedding层换成Bert进行训练,Bert就是用来产生词向量的。
多年来, 对语言模型的研究先后经历了one-hot、Word2Vec、ELMO、GPT到BERT, 前几个语言模型均存在一些缺陷, 如Word2Vec模型训练出来的词向量是属于静态Word Embedding, 无法表示一词多义; GPT则是单向语言模型, 无法获取一个字词的上下文. 而对BERT模型而言, 它是综合ELMO和GPT这两者的优势而构造出来的模型。 由于BERT具有很强的语义表征优势, 利用BERT获取语境化的词向量来提高实体识别的性能。
(6)其他模型
作为Embedding层,可以有one-hot、Word2Vec、ELMO、GPT、BERT、ALBert多种嵌入
作为编码层,可以有LSTM、BiLSTM、RNN、BiRNN、IDCNN多种模型
作为输出层,可以有CRF、Dense、无多种验证方法
(7)后续模型
Bert+BiLSTM+CRF+NER(暂未了解)
BiLSTM-Attention(暂未了解)

你可能感兴趣的:(Bert,机器学习,自然语言处理,人工智能,神经网络)