网络介绍
Bi-LSTM + CRF网络是曾经的STOA用于序列标注的模型,比如命名实体识别。接下来将详细介绍该模型。
LSTM
LSTM全称为Long Short Term Memory networks,是循环神经网络(RNN)添加三个门的改进版本。循环神经网络会维护一个状态(state),并将该状态作为输入,一步一步迭代下去。如下图所示,因为这样的结构,使得梯度计算的时候,会有连乘项,使得梯度产生一个累积效应,导致梯度消失和梯度爆炸。
LSTM网络,则是通过添加三个门,来缓解梯度消失和梯度爆炸的问题。

遗忘门:
$$
f_t = \sigma(h_{t-1}* W_f + X_tW_f + b_f)
$$
输入门:
$$
i_t = \sigma(h_{t-1} W_i + X_tW_i + b_i)
$$
输出门:
$$
o_t =\sigma(h_{t-1} W_o + X_tW_o + b_o)
$$
待更新:
$$
C = \tanh(h_{t-1} W + X_t*W + b)
$$
更新:
$$
C_t = C_{t-1} * f_t + C * i_t
$$
输出:
$$
h_t = \tanh( C_t) * o_t
$$
变种
后面还有很多变种,比如将c也作为输入添加到各个门的计算中。
条件随机场 CRF
首先介绍一下马尔可夫随机场。如果联合概率分布 P(V) 满足成对、局部或全局马尔可夫性,就称此联合概率分布为概率无向图模型或马尔可夫随机场。我的理解具体就是通过边来表示依赖,如果局部的节点给定了,相当于从途中去掉之后,两部分节点属于断开的话,就是条件独立。
条件随机场,属于为概率图模型。是条件概率分布模型 P(Y|X) ,表示的是给定一组输入随机变量 X 的条件下另一组输出随机变量 Y 的马尔可夫随机场,也就是说 CRF 的特点是假设输出随机变量构成马尔可夫随机场。
下图说明了CRF与逻辑回归的的关系和区别,逻辑回归通过几个输入变量,确定一个输出。若是有多个输出,且输出之间存在依赖,则演化成了条件随机场。若依赖是一条直线, 则是线性链条件随机场。下图中,个人理解有一个地方不太对,就是线性链随机场那个子图,每个白圈的依赖不只是只有对应的黑圈,而是所有黑圈。正如第一幅逻辑回归那样。

特征函数
转移特征 $t_k(y_{i-1},y_i, x, i)$ 是定义在边上的特征函数(transition),依赖于当前位置 i 和前一位置 i-1 ;对应的权值为 $\lambda_k$ 。
状态特征$s_k(y_i,x,i)$是定义在节点上的特征函数(state),依赖于当前位置 i ;对应的权值为$\mu_k$。
一般来说,特征函数的取值为 1 或 0 ,当满足规定好的特征条件时取值为 1 ,否则为 0 。