词性标注问题指给一个句子中的每个单词注明词性(名词,动词,形容词等)。
比如:“Bob drank coffee at Starbucks”,进行词性标注后:“Bob (名词) drank(动词) coffee(名词) at(介词) Starbucks(名词)”。
条件随机场应用于词性标注时,除了考虑单词本身的词性,还会考虑前后单词的词性,综合进行判定。
1. 基本概念
(1)条件随机场
**条件随机场(CRF,conditional random field)**是给定随机变量
X条件下,随机变量
Y的马尔可夫随机场,是一种直接建模条件概率的判别式无向图模型。
设
X与
Y是随机变量,
P(Y∣X)是在给定
X的条件下
Y的条件概率分布。若随机变量
Y构成一个由无向图
G=(V,E)表示的马尔可夫随机场,即
P(Yv∣X,Yw,w=v)=P(Yv∣X,Yw,w v)
对任意节点
v成立,则称条件概率分布
P(Y∣X)为条件随机场。
(2)线性链条件随机场
设
X=(X1,X2,...Xn),Y=(Y1,Y2,...Yn)均为线性链表示的随机变量序列,若在给定随机变量序列
X的条件下,随机变量
Y的条件概率分布
P(Y∣X)构成条件随机场,即满足马尔科夫性
P(Yi∣X,Y1,Y2,...Yn)=P(Yi∣X,Yi−1,Yi+1),i=1,2,...,n(在i=1和n时只考虑单边)
则称
P(Y∣X)为线性链条件随机场(linear-CRF)。
对于观测序列
(x1,x2,...xn),隐含序列
(y1,y2,...yn),
- HMM模型中,
t时刻的观测
xt只取决于状态
yt
- Linear-CRF模型中,
t时刻的观测
xt取决于状态
yt−1,yt,yt+1
Linear-CRF是HMM的一种扩展。
扫描二维码关注公众号,回复:
11346557 查看本文章
HMM与CRF
2. 线性链条件随机场参数化形式
(1)参数化形式
设
P(Y∣X)为线性链条件随机场,则在随机变量
X取值为
x的条件下,随机变量
Y取值为
y的条件概率具有如下形式:
P(y∣x)=Z(x)1exp(i,k∑λktk(yi−1,yi,x,i)+i,l∑μlsl(yi,x,i))
其中,
Z(x)为规范化因子:
Z(x)=y∑exp(i,k∑λktk(yi−1,yi,x,i)+i,l∑μlsl(yi,x,i))
-
tk是定义在边上的转移特征函数(transition feature function),依赖于当前和前一个位置:
tk(yi−1,yi,x,i),k=1,2,...K
其中
K是定义在该节点的局部特征函数的总个数,
i是当前节点在序列的位置。
-
sl是定义在节点上的状态特征函数(status feature function),依赖于当前位置:
sl(yi,x,i),l=1,2,...L
其中
L是定义在该节点的节点特征函数的总个数,
i是当前节点在序列的位置。
条件随机场完全由特征函数
sl,tk和对应的权值
μl,λk决定。特征函数的取值为0或1,即满足特征条件或者不满足特征条件;权值表示对这个特征函数的信任度。
(2)简化形式
假设某一节点有
K1个转移特征和
K2个状态特征,
K=K1+K2,使用一个特征函数统一表示:
fk(yi−1,yi,x,i)={tk(yi−1,yi,x,i)sl(yi,x,i)k=1,2,...K1k=K1+l,l=1,2...,K2
对转移与状态特征在各个位置求和:
fk(y,x)=i=1∑nfk(yi−1,yi,x,i)
同时,统一
fk(y,x)的权重:
wk={λkμlk=1,2,...K1k=K1+l,l=1,2...,K2
因此,linear-CRF的参数化形式简化为:
P(y∣x)=Z(x)1expk=1∑Kwkfk(y,x)
其中,
Z(x)=y∑expk=1∑Kwkfk(y,x)
将
wk与
fk分别用向量表示:
w=(w1,w2,...wK)TF(y,x)=(f1(y,x),f2(y,x),...fK(y,x))T
则,linear-CRF的参数化形式简化为内积形式如下:
Pw(y∣x)=Zw(x)exp(w∙F(y,x))
其中,
Zw(x)=y∑exp(w∙F(y,x))
形式与逻辑回归类似,条件随机场实际是定义在时间序列上的对数线性模型。
(3)矩阵形式
定义
m阶(
m为
y所有可能取值的个数)矩阵:
Mi(x)===[Mi(yi−1,yi∣x)][exp(Wi(yi−1,yi∣x))][exp(k=1∑Kwkfk(yi−1,yi,x,i))]
引入特殊起点和终点标记
y0=start,yn+1=stop,这样,给定观测序列
x,标记序列
y的非规范化概率可以通过
n+1个矩阵元素的乘积表示:
Pw(y∣x)=Zw(x)1i=1∏n+1Mi(yi−1,yi∣x)
3. 条件随机场的三个基本问题
(1)概率计算问题
给定linear-CRF的条件概率分布
P(Y∣X),输入序列
x和输出序列
y,计算条件概率
P(yi∣x)和
P(yi−1,yi∣x)以及对应的期望。
一般使用前项-后向算法,通过引入前向-后向向量,递归地计算概率及期望值。
(2)学习问题
给定训练数据集
X和
Y,学习linear-CRF的模型参数
wk和条件概率
Pw(y∣x)。
通常使用极大化似然估计或正则化的极大似然估计,即通过极大化训练数据的对数似然函数来估计模型参数,具体算法包括改进的迭代尺度算法、梯度下降法,拟牛顿法等。
(3)解码问题
给定 linear-CRF的条件概率分布
P(y∣x),和输入序列
x, 计算使条件概率最大的输出序列
y。
可使用维特比算法解决。