学习笔记-序列标注的分词方法

1、序列标注任务

1.1和分类任务的区别:分类任务单标签、序列标注是分类任务在序列数据上的延伸

学习笔记-序列标注的分词方法_第1张图片

 

1.2用序列标注表示分词

分词前:昨天,小明在北京大学的燕园看了中国男篮的一场比赛

分词后:昨天 , 小明 在 北京大学 的 燕园 看 了 中国男篮 的 一场 比赛

 

B表示一个词的开始;M表示中间位置;E表示一个词的结尾,S表示单个词

1.3序列标注的演化

HMM----> CRF-----> BiLSTM-CRF-----> BERT-CRF

特征提取逐渐变强

HMM当前标签仅与当前输入相关;(独立输出假设)

CRF当前标签与附近一些输入(仅限于10个字左右)相关

BiLSTM-CRF通过双向LSTM,拥有长短期记忆,可以捕获更长的长上下文

Bert-CRF通过Transformer,在捕获更长的上下文时,还可以聚焦一些更重要的信息

2、条件随机场CRF

2.1原理图

学习笔记-序列标注的分词方法_第2张图片

 

每一个状态,都可以由整个观测序列X决定

2.2公式

对条件概率建模

 

t是转移特征函数,衡量相邻状态变量之间的影响

s是状态特征函数,衡量观测序列对状态的变量影响

\lambda\upsilon分别是对应特征函数的权重

\sum是两个求和,第一层是序列维度,第二层是特征函数维度

exp是指数势函数,主要用于定义图模型中的概率分布函数

Z是规范化因子,用于确保整个式子是一个概率

2.3特征函数

学习笔记-序列标注的分词方法_第3张图片

                                                   I指式函数为True时返回1,否则返回0

2.4模型的训练和预测

训练阶段(编码)

获得特征函数

并且根据训练集,使用一些最优优化算法来迭代获得每一个特征函数的权重

预测阶段(解码)

根据特征函数及其权重

使用维特比算法,找到一条概率最高的标签路径

维特比解码:

动态规划问题,应用在篱笆网络上面

思路:dp矩阵,存储从s到当前Nij的最短路径,记为dpij;存在一个递推公式,即转移方程;从左到右,依次计算dp矩阵,直至结束

学习笔记-序列标注的分词方法_第4张图片

 

3、BiLSTM-CRF模型

3.1RNN循环神经网络

RNN专门用来处理序列数据,NLP文本就是一个字符序列

结构图

学习笔记-序列标注的分词方法_第5张图片

循环结构的优优点:

1、函数f及其参数是共享的,使得训练起来比较简单

2、可以处理未见过的序列长度

比如训练时文本100字左右,预测时模型可以处理50字的文本

3.2双向RNN

学习笔记-序列标注的分词方法_第6张图片

循环h向前移动,拿到前文信息

循环g向后移动,拿到后文信息

o(t)既能获得过去的摘要也能获得未来摘要 

3.3BiLSTM-CRF

学习笔记-序列标注的分词方法_第7张图片

BiLSTM提取了更好的状态特征

两个LSTM结果拼接(concat) 

CRF层学习标签(BMES)之间的转移概率

最终通过维特比算法找出一条全局最优的标签路径

LSTM

学习笔记-序列标注的分词方法_第8张图片

 输入门、遗忘门、输出门, 实质是三个0~1的概率权重

输入门:控制输入进入

遗忘门:控制多少个记忆会被保留

输出门:状态的输出控制

 

你可能感兴趣的:(深度学习)