第十七章 条件随机场

文章目录

    • 导读
    • 概念
      • 符号表
      • IOB标记
      • 概率无向图模型
        • MRF的因子分解
        • 团与最大团
        • 有向图模型
      • 条件随机场
        • 线性链条件随机场
      • 特征函数
      • 对数线性模型
        • 参数化形式
        • 简化形式
        • 矩阵形式
    • 概率计算

导读


  • 条件随机场是给定一组输入随机变量的条件下另一组输出随机变量的条件概率分布模型,其特点是假设输出随机变量构成马尔可夫随机场。注意这里条件,随机场的对应。
  • 整个这一章的介绍思路,和前一章有点像,尤其是学习算法部分,和HMM比主要增加了特征函数,关于特征函数要和CH06对比着看
  • CRF是对数线性模型
  • 概率无向图模型又称马尔可夫随机场,是可以用无向图表示的联合概率分布,注意,一个概率图模型就是一个联合概率分布。
  • 条件随机场三个基本问题:概率计算问题,学习问题和预测问题
  • 前面的章节中,我们学习,更新参数的过程中很多时候用到了导数,那么积分有没有用?联合概率分布包含了很多随机变量,如果希望消除一些变量,就会用到积分,在离散的情况下,就是求和。这个过程就是边缘化。所有的概率图模型都尝试提出有效的方法来解决这个积分的问题。

概念

符号表

节点 ν ∈ V \nu\in V νV表示一个随机变量 Y ν Y_{\nu} Yν

e ∈ E e\in E eE表示随机变量之间的概率依赖关系

G ( V , E ) G(V,E) G(V,E)表示联合概率分布 P ( Y ) P(Y) P(Y)

Y ∈ Y Y\in \mathcal Y YY一组随机变量 Y = ( Y ν ) ν ∈ V Y=(Y_{\nu})_{\nu \in V} Y=(Yν)νV

IOB标记

Inside, Outside, Begin

概率无向图模型

注意整个书中第一节的内容, 还不是条件随机场, 都是马尔可夫随机场,告诉读者可以用图来表示联合分布,以及拿到图之后, 怎么转化成概率表达形式。

概率无向图模型又称马尔可夫随机场(MRF),是一个可以由满足以下三个性质的无向图表示的联合概率分布

  • 成对马尔可夫性
    给定随机变量组 Y O Y_O YO的条件下随机变量 Y u Y_u Yu Y v Y_v Yv是条件独立的
    P ( Y u , Y v ∣ Y O ) = P ( Y u ∣ Y O ) P ( Y v ∣ Y O ) P(Y_u,Y_v|Y_O)=P(Y_u|Y_O)P(Y_v|Y_O) P(Yu,YvYO)=P(YuYO)P(YvYO)

  • 局部马尔可夫性
    给定随机变量组 Y W Y_W YW的条件下随机变量 Y v Y_v Yv与随机变量组 Y O Y_O YO是独立的
    P ( Y v , Y O ∣ Y W ) = P ( Y v ∣ Y W ) P ( Y O ∣ Y W ) P(Y_v,Y_O|Y_W)=P(Y_v|Y_W)P(Y_O|Y_W) P(Yv,YOYW)=P(YvYW)P(YOYW)

  • 全局马尔可夫性
    给定随机变量组 Y C Y_C YC的条件下随机变量组 Y A Y_A YA Y B Y_B YB是条件独立的
    P ( Y A , Y B ∣ Y C ) = P ( Y A ∣ Y C ) P ( Y B ∣ Y C ) P(Y_A,Y_B|Y_C)=P(Y_A|Y_C)P(Y_B|Y_C) P(YA,YBYC)=P(YAYC)P(YBYC)

MRF的因子分解

将概率无向图模型的联合概率分布表示为其最大团上的随机变量的函数的乘积形式的操作,称为概率无向图模型的因子分解(factorization)
概率无向图模型的最大特点就是易于因子分解

团与最大团
有向图模型

插入一点有向图模型

条件随机场

条件随机场是给定随机变量 X X X条件下,随机变量 Y Y Y的马尔可夫随机场。

线性链条件随机场

X = ( X 1 , X 2 , ⋯   , X n ) , Y = ( Y 1 , Y 2 , ⋯   , Y n ) X=(X_1,X_2,\cdots,X_n),Y=(Y_1,Y_2,\cdots,Y_n) X=(X1,X2,,Xn)Y=(Y1,Y2,,Yn)均为线性链表示的随机变量序列,若在给定随机变量序列 X X X的条件下,随机变量序列 Y Y Y的条件概率分布 P ( Y ∣ X ) P(Y|X) P(YX)构成条件随机场,即满足马尔可夫性
P ( Y i ∣ X , Y 1 , ⋯   , Y i − 1 , Y i + 1 , ⋯   , Y n ) = P ( Y i ∣ X , Y i − 1 , Y i + 1 ) i = 1 , 2 , ⋯   , n ( 在 i = 1 和 n 时只考虑单边 ) P(Y_i|X,Y_1,\cdots,Y_{i-1},Y_{i+1},\cdots,Y_n)=P(Y_i|X,Y_{i-1},Y_{i+1})\\ i=1,2,\cdots,n (在i=1和n时只考虑单边) P(YiX,Y1,,Yi1,Yi+1,,Yn)=P(YiX,Yi1,Yi+1)i=1,2,,n(i=1n时只考虑单边)
则称 P ( Y ∣ X ) P(Y|X) P(YX)为线性链条件随机场。在标注问题中 X X X表示输入观测序列, Y Y Y表示输出标记序列或状态序列。

特征函数

线性链条件随机场的参数化形式
P ( y ∣ x ) = 1 Z ( x ) exp ⁡ ( ∑ i , k λ k t k ( y i − 1 , y i , x , i ) + ∑ i , l μ l s l ( y i , x , i ) ) P(y|x)=\frac{1}{Z(x)}\exp\left(\sum\limits_{i,k}\lambda_kt_k(y_{i-1},y_i,x,i)+\sum_{i,l}\mu_ls_l(y_i,x,i)\right) P(yx)=Z(x)1exp i,kλktk(yi1,yi,x,i)+i,lμlsl(yi,x,i)
其中

t k t_k tk是定义在上的特征函数,称为转移特征

s l s_l sl是定义在结点上的特征函数,称为状态特征

注意到这种表达就是不同特征的加权求和形式, t k , s l t_k,s_l tk,sl都依赖于位置,是局部特征函数。

对数线性模型

线性链条件随机场也是对数线性模型(定义在时序数据上的)。

条件随机场可以看做是最大熵马尔可夫模型在标注问题上的推广。

条件随机场是计算联合概率分布的有效模型。

现实中,一般假设 X X X Y Y Y有相同的图结构。

本书主要考虑无向图为
G = ( V = 1 , 2 , … , n , E = ( i , i + 1 ) ) , i = 1 , 2 , … , n − 1 G=(V={1,2,\dots,n},E={(i,i+1)}),i=1,2,\dots,n-1 G=(V=1,2,,n,E=(i,i+1)),i=1,2,,n1
在此情况下, X = ( X 1 , X 2 , … , X n ) , Y = ( Y 1 , Y 2 , … , Y n ) X=(X_1,X_2,\dots,X_n), Y=(Y_1, Y_2,\dots,Y_n) X=(X1,X2,,Xn),Y=(Y1,Y2,,Yn)

线性链条件随机场定义

X = ( X 1 , X 2 , … , X n ) , Y = ( Y 1 , Y 2 , … , Y n ) X=(X_1,X_2,\dots,X_n), Y=(Y_1, Y_2,\dots,Y_n) X=(X1,X2,,Xn),Y=(Y1,Y2,,Yn)均为线性链表示的随机变量序列, 若在给定随机变量序列 X X X的条件下, 随机变量序列 Y Y Y的条件概率分布 P ( Y ∣ X ) P(Y|X) P(YX)构成条件随机场, 即满足马尔可夫性
P ( Y i ∣ X , Y 1 , … , Y i − 1 , Y i + 1 , … , Y n ) = P ( Y i ∣ X , Y i − 1 , Y i + 1 ) , i = 1 , 2 , … , n P(Y_i|X,Y_1,\dots,Y_{i-1},Y_{i+1},\dots,Y_n)=P(Y_i|X,Y_{i-1},Y{i+1}), i=1,2,\dots,n P(YiX,Y1,,Yi1,Yi+1,,Yn)=P(YiX,Yi1,Yi+1),i=1,2,,n

则称 P ( Y ∣ X ) P(Y|X) P(YX)为线性链条件随机场

参数化形式

随机变量 X X X取值为 x x x条件下,随机变量 Y Y Y取值为 y y y的条件概率具有如下形式:
P ( y ∣ x ) = 1 Z exp ⁡ ( ∑ i , k λ k t k ( y i − 1 , y i , x , i + ∑ i , l μ l s l ( y i , x , i ) ) P(y|x)=\frac{1}{Z}\exp\left(\sum_{i,k}\lambda_kt_k(y_{i-1},y_i,x,i+\sum_{i,l}\mu_ls_l(y_i,x,i)\right) P(yx)=Z1exp i,kλktk(yi1,yi,x,i+i,lμlsl(yi,x,i)
其中
Z ( x ) = ∑ y ( ∑ i , k λ k t k ( y i − 1 , y i , x , i ) + ∑ i , l μ l s l ( y i , x , i ) ) Z(x)=\sum_y\left(\sum_{i,k}\lambda_kt_k(y_{i-1},y_i,x,i)+\sum_{i,l}\mu_ls_l(y_i,x,i)\right) Z(x)=y i,kλktk(yi1,yi,x,i)+i,lμlsl(yi,x,i)
k , l k,l k,l对应特征函数的编号,注意这里用了 k , l k,l k,l两个编号, i i i对应了输出序列的每个位置
t 1 = t 1 ( y i − 1 = 1 , y i = 2 , x , i ) , i = 2 , 3 , λ 1 = 1 t 2 = t 2 ( y i − 1 = 1 , y i = 1 , x , i ) , i = 2 , λ 2 = 0.5 t 3 = t 3 ( y i − 1 = 2 , y i = 1 , x , i ) , i = 3 , λ 3 = 1 t 4 = t 4 ( y i − 1 = 2 , y i = 1 , x , i ) , i = 2 , λ 4 = 1 t 5 = t 5 ( y i − 1 = 2 , y i = 2 , x , i ) , i = 3 , λ 5 = 0.2 s 1 = s 1 ( y i = 1 , x , i ) , i = 1 , μ 1 = 1 s 2 = s 2 ( y i = 1 , x , i ) , i = 1 , 2 , μ 2 = 0.5 s 3 = s 3 ( y i = 1 , x , i ) , i = 2 , 3 , μ 3 = 0.8 s 4 = s 4 ( y i = 2 , x , i ) , i = 3 μ 4 = 0.5 \begin{aligned} t_1&=t_1(y_{i-1}=1,y_i=2,x,i),&i&=2,3,&\lambda_1&=1 \\ t_2&=t_2(y_{i-1}=1,y_i=1,x,i),&i&=2,&\lambda_2&=0.5\\ \color{red}t_3&=t_3(y_{i-1}=2,y_i=1,x,i),&i&=3,&\lambda_3&=1\\ \color{red}t_4&=t_4(y_{i-1}=2,y_i=1,x,i),&i&=2,&\lambda_4&=1\\ t_5&=t_5(y_{i-1}=2,y_i=2,x,i),&i&=3,&\lambda_5&=0.2\\ s_1&=s_1(y_i=1,x,i),&i&=1,&\mu_1&=1\\ s_2&=s_2(y_i=1,x,i),&i&=1,2,&\mu_2&=0.5\\ s_3&=s_3(y_i=1,x,i),&i&=2,3,&\mu_3&=0.8\\ s_4&=s_4(y_i=2,x,i),&i&=3&\mu_4&=0.5\\ \end{aligned} t1t2t3t4t5s1s2s3s4=t1(yi1=1,yi=2,x,i),=t2(yi1=1,yi=1,x,i),=t3(yi1=2,yi=1,x,i),=t4(yi1=2,yi=1,x,i),=t5(yi1=2,yi=2,x,i),=s1(yi=1,x,i),=s2(yi=1,x,i),=s3(yi=1,x,i),=s4(yi=2,x,i),iiiiiiiii=2,3,=2,=3,=2,=3,=1,=1,2,=2,3,=3λ1λ2λ3λ4λ5μ1μ2μ3μ4=1=0.5=1=1=0.2=1=0.5=0.8=0.5
可以抽象成上面这种形式。

简化形式

上面的结构,包含了两个部分,表达式不够简单,如何落地?

K 1 K_1 K1个转移特征, K 2 K_2 K2个状态特征

f k ( y i − 1 , y i , x , i ) = { t k ( y i − 1 , y i , x , i ) , k = 1 , 2 , … , K 1 s l ( y i , x , i ) , k = K 1 + l ; l = 1 , 2 , … , K 2 \color{red} f_k(y_{i-1},y_i,x,i)= \begin{cases} t_k(y_{i-1},y_i,x,i),&k=1,2,\dots,K_1\\ s_l(y_i,x,i),&k=K_1+l;l=1,2,\dots,K_2 \end{cases} fk(yi1,yi,x,i)={tk(yi1,yi,x,i),sl(yi,x,i),k=1,2,,K1k=K1+l;l=1,2,,K2
上面这个红色的式子很重要,把unigram和bigram统一到一起了,如果有trigram等也在这里融合

然后,对转和状态特征在各个位置 i i i求和,记作
f k ( y , x ) = ∑ i = 1 n f k ( y i − 1 , y i , x , i ) , k = 1 , 2 , … , K f_k(y,x)=\sum_{i=1}^nf_k(y_{i-1},y_i,x,i),k=1,2,\dots,K fk(y,x)=i=1nfk(yi1,yi,x,i),k=1,2,,K
w k w_k wk表示特征 f k ( y , x ) f_k(y,x) fk(y,x)的权值
w k = { λ k , k = 1 , 2 , … , K 1 μ l , k = K 1 + l ; l = 1 , 2 , … , K 2 w_k= \begin{cases} \lambda_k,&k=1,2,\dots,K_1\\ \mu_l,&k=K1+l;l=1,2,\dots,K_2 \end{cases} wk={λk,μl,k=1,2,,K1k=K1+l;l=1,2,,K2
于是条件随机场可以表示为
P ( y ∣ x ) = 1 Z ( x ) exp ⁡ ∑ k = 1 K w k f k ( y , x ) Z ( x ) = ∑ y exp ⁡ ∑ k = 1 K w k f k ( y , x ) \begin{align} P(y|x)&=\frac{1}{Z(x)}\exp\sum_{k=1}^Kw_kf_k(y,x)\\ Z(x)&=\sum_y\exp\sum_{k=1}^Kw_kf_k(y,x) \end{align} P(yx)Z(x)=Z(x)1expk=1Kwkfk(y,x)=yexpk=1Kwkfk(y,x)
若以 w w w表示权值向量, 即
w = ( w 1 , w 2 , … , w K ) T w=(w_1,w_2,\dots,w_K)^T w=(w1,w2,,wK)T
F F F表示全局特征向量,即
F ( y , x ) = ( f 1 ( y , x ) , f 2 ( y , x ) , … , f K ( y , x ) ) T F(y,x)=(f_1(y,x),f_2(y,x),\dots,f_K(y,x))^T F(y,x)=(f1(y,x),f2(y,x),,fK(y,x))T
条件随机场可以表示成向量内积的形式
P w ( y ∣ x ) = exp ⁡ ( w ⋅ F ( y , x ) ) Z w ( x ) Z w ( x ) = ∑ y exp ⁡ ( w ⋅ F ( y , x ) ) \begin{align} P_w(y|x)&=\frac{\exp(w\cdot F(y,x))}{Z_w(x)}\\ Z_w(x)&=\sum_y\exp\left(w\cdot F(y,x)\right) \end{align} Pw(yx)Zw(x)=Zw(x)exp(wF(y,x))=yexp(wF(y,x))
在参数化形式的展示中,书中的公式已经做了删减。
而实际上这里应该是展开的。
f k = t 1 ( y i − 1 = 1 , y i = 2 , x , i ) , i = 2 , w k = 1 , k = 1 f k = t 1 ( y i − 1 = 1 , y i = 2 , x , i ) , i = 3 , w k = 1 , k = 1 f k = t 2 ( y i − 1 = 1 , y i = 1 , x , i ) , i = 2 , w k = 0.5 , k = 2 f k = t 2 ( y i − 1 = 1 , y i = 1 , x , i ) , i = 3 , w k = 0.5 , k = 2 f k = t 3 ( y i − 1 = 2 , y i = 1 , x , i ) , i = 2 , w k = 1 , k = 3 f k = t 3 ( y i − 1 = 2 , y i = 1 , x , i ) , i = 3 , w k = 1 , k = 3 f k = t 4 ( y i − 1 = 2 , y i = 1 , x , i ) , i = 2 , w k = 1 , k = 4 f k = t 4 ( y i − 1 = 2 , y i = 1 , x , i ) , i = 3 , w k = 1 , k = 4 f k = t 5 ( y i − 1 = 2 , y i = 2 , x , i ) , i = 2 , w k = 0.2 , k = 5 f k = t 5 ( y i − 1 = 2 , y i = 2 , x , i ) , i = 3 , w k = 0.2 , k = 5 f k = s 1 ( y i = 1 , x , i ) , i = 1 , w k = 1 , k = 6 f k = s 1 ( y i = 1 , x , i ) , i = 2 , w k = 1 , k = 6 f k = s 1 ( y i = 1 , x , i ) , i = 3 , w k = 1 , k = 6 f k = s 2 ( y i = 1 , x , i ) , i = 1 , w k = 0.5 , k = 7 f k = s 2 ( y i = 1 , x , i ) , i = 2 , w k = 0.5 , k = 7 f k = s 2 ( y i = 1 , x , i ) , i = 3 , w k = 0.5 , k = 7 f k = s 3 ( y i = 1 , x , i ) , i = 1 , w k = 0.8 , k = 8 f k = s 3 ( y i = 1 , x , i ) , i = 2 , w k = 0.8 , k = 8 f k = s 3 ( y i = 1 , x , i ) , i = 3 , w k = 0.8 , k = 8 f k = s 4 ( y i = 2 , x , i ) , i = 1 , w k = 0.5 , k = 9 f k = s 4 ( y i = 2 , x , i ) , i = 2 , w k = 0.5 , k = 9 f k = s 4 ( y i = 2 , x , i ) , i = 3 , w k = 0.5 , k = 9 \begin{aligned} f_k&=t_1(y_{i-1}=1,y_i=2,x,i),&i&=2,&w_k&=1,&k=1 \\ f_k&=t_1(y_{i-1}=1,y_i=2,x,i),&i&=3,&w_k&=1,&k=1 \\ f_k&=t_2(y_{i-1}=1,y_i=1,x,i),&i&=2,&w_k&=0.5,&k=2\\ f_k&=t_2(y_{i-1}=1,y_i=1,x,i),&i&=3,&w_k&=0.5,&k=2\\ \color{red}f_k&=t_3(y_{i-1}=2,y_i=1,x,i),&i&=2,&w_k&=1,&k=3\\ \color{red}f_k&=t_3(y_{i-1}=2,y_i=1,x,i),&i&=3,&w_k&=1,&k=3\\ \color{red}f_k&=t_4(y_{i-1}=2,y_i=1,x,i),&i&=2,&w_k&=1,&k=4\\ \color{red}f_k&=t_4(y_{i-1}=2,y_i=1,x,i),&i&=3,&w_k&=1,&k=4\\ f_k&=t_5(y_{i-1}=2,y_i=2,x,i),&i&=2,&w_k&=0.2,&k=5\\ f_k&=t_5(y_{i-1}=2,y_i=2,x,i),&i&=3,&w_k&=0.2,&k=5\\ \\ f_k&=s_1(y_i=1,x,i),&i&=1,&w_k&=1,&k=6\\ f_k&=s_1(y_i=1,x,i),&i&=2,&w_k&=1,&k=6\\ f_k&=s_1(y_i=1,x,i),&i&=3,&w_k&=1,&k=6\\ f_k&=s_2(y_i=1,x,i),&i&=1,&w_k&=0.5,&k=7\\ f_k&=s_2(y_i=1,x,i),&i&=2,&w_k&=0.5,&k=7\\ f_k&=s_2(y_i=1,x,i),&i&=3,&w_k&=0.5,&k=7\\ f_k&=s_3(y_i=1,x,i),&i&=1,&w_k&=0.8,&k=8\\ f_k&=s_3(y_i=1,x,i),&i&=2,&w_k&=0.8,&k=8\\ f_k&=s_3(y_i=1,x,i),&i&=3,&w_k&=0.8,&k=8\\ f_k&=s_4(y_i=2,x,i),&i&=1,&w_k&=0.5,&k=9\\ f_k&=s_4(y_i=2,x,i),&i&=2,&w_k&=0.5,&k=9\\ f_k&=s_4(y_i=2,x,i),&i&=3,&w_k&=0.5,&k=9 \end{aligned} fkfkfkfkfkfkfkfkfkfkfkfkfkfkfkfkfkfkfkfkfkfk=t1(yi1=1,yi=2,x,i),=t1(yi1=1,yi=2,x,i),=t2(yi1=1,yi=1,x,i),=t2(yi1=1,yi=1,x,i),=t3(yi1=2,yi=1,x,i),=t3(yi1=2,yi=1,x,i),=t4(yi1=2,yi=1,x,i),=t4(yi1=2,yi=1,x,i),=t5(yi1=2,yi=2,x,i),=t5(yi1=2,yi=2,x,i),=s1(yi=1,x,i),=s1(yi=1,x,i),=s1(yi=1,x,i),=s2(yi=1,x,i),=s2(yi=1,x,i),=s2(yi=1,x,i),=s3(yi=1,x,i),=s3(yi=1,x,i),=s3(yi=1,x,i),=s4(yi=2,x,i),=s4(yi=2,x,i),=s4(yi=2,x,i),iiiiiiiiiiiiiiiiiiiiii=2,=3,=2,=3,=2,=3,=2,=3,=2,=3,=1,=2,=3,=1,=2,=3,=1,=2,=3,=1,=2,=3,wkwkwkwkwkwkwkwkwkwkwkwkwkwkwkwkwkwkwkwkwkwk=1,=1,=0.5,=0.5,=1,=1,=1,=1,=0.2,=0.2,=1,=1,=1,=0.5,=0.5,=0.5,=0.8,=0.8,=0.8,=0.5,=0.5,=0.5,k=1k=1k=2k=2k=3k=3k=4k=4k=5k=5k=6k=6k=6k=7k=7k=7k=8k=8k=8k=9k=9k=9

这里对于 w k w_k wk的理解再体会下。

矩阵形式

针对线性链条件随机场

引入起点和终点状态标记 y 0 = s t a r t , y n + 1 = e n d y_0=start,y_{n+1}=end y0=start,yn+1=end, 这时 P w ( y ∣ x ) P_w(y|x) Pw(yx)可以矩阵形式表示。

对应观测序列的每个位置 i = 1 , 2 , … , n + 1 i=1,2,\dots,\color{red}n+1 i=1,2,,n+1,定义一个 m m m阶矩阵( m m m是标记 y i y_i yi取值的个数)
M i ( x ) = [ M i ( y i − 1 , y i ∣ x ) ] M i ( y i − 1 , y i ) = exp ⁡ ( W i ( y i − 1 , y i ∣ x ) ) W i ( y i − 1 , y i ∣ x ) = ∑ k = 1 K w k f k ( y i − 1 , y i ∣ x ) \begin{align} M_i(x)&=\left[M_i(y_{i-1},y_i|x)\right]\\ M_i(y_{i-1},y_i)&=\exp\left(W_i(y_{i-1},y_i|x)\right)\\ W_i(y_{i-1},y_i|x)&=\sum_{k=1}^Kw_kf_k(y_{i-1},y_i|x) \end{align} Mi(x)Mi(yi1,yi)Wi(yi1,yix)=[Mi(yi1,yix)]=exp(Wi(yi1,yix))=k=1Kwkfk(yi1,yix)
把整个向量乘法按照观测位置拆成矩阵形式, 每个观测位置对应一个矩阵

这个过程和 C N N CNN CNN中的卷积实际上有点像,这里面卷积模板有两种 k × 1 k\times 1 k×1 k × 2 k\times 2 k×2, 以1和2进行滑窗。

给定观测序列 x x x,相应的标记序列 y y y的非规范化概率可以通过该序列的 n + 1 n+1 n+1个矩阵适当元素的乘积 ∏ i = 1 n + 1 M i ( y i − 1 , y i ∣ x ) \prod_{i=1}^{n+1}M_i(y_{i-1},y_i|x) i=1n+1Mi(yi1,yix)表示。于是 P w ( y ∣ x ) = 1 Z w ( x ) ∏ i = 1 n + 1 M i ( y i − 1 , y i ∣ x ) P_w(y|x)=\frac{1}{Z_w(x)}\prod_{i=1}^{n+1}M_i(y_{i-1},y_i|x) Pw(yx)=Zw(x)1i=1n+1Mi(yi1,yix)

其中, Z w Z_w Zw为规范化因子, 是 n + 1 个矩阵的乘积的 ( s t a r t , s t o p ) 元素 \color{red}是n+1个矩阵的乘积的(start,stop)元素 n+1个矩阵的乘积的(start,stop)元素
Z w ( x ) = ( M 1 ( x ) M 2 ( x ) … M n + 1 ( x ) ) s t a r t , s t o p Z_w(x)=(M_1(x)M_2(x)\dots M_{n+1}(x))_{start,stop} Zw(x)=(M1(x)M2(x)Mn+1(x))start,stop
这个式子,以及这段内容,注意下。

上面的式子展开一下,得到 n + 1 n+1 n+1 m \color{red}m m阶矩阵
M i ( x ) = [ exp ⁡ ( ∑ k = 1 K w k f k ( y i − 1 , y i ∣ x ) ) ] , i = 1 , 2 , … , n + 1 M_i(x)=\left[\exp\left(\sum_{k=1}^Kw_kf_k(y_{i-1},y_i|x)\right)\right], i=1,2,\dots,n+1 Mi(x)=[exp(k=1Kwkfk(yi1,yix))],i=1,2,,n+1
这里面, 各个位置 ( 1 , 2 , … , n + 1 ) (1,2,\dots,n+1) (1,2,,n+1)随机矩阵分别是
M 1 ( y 0 , y 1 ∣ x ) = exp ⁡ ( ∑ k = 1 K w k f k ( y 0 , y 1 ∣ x ) ) = exp ⁡ ( w 1 f 1 ( y 0 , y 1 ) ) exp ⁡ ( w 2 f 2 ( y 0 , y 1 ) ) … exp ⁡ ( w K f K ( y 0 , y 1 ) ) M 2 ( y 1 , y 2 ∣ x ) = exp ⁡ ( ∑ k = 1 K w k f k ( y 1 , y 2 ∣ x ) ) = exp ⁡ ( w 1 f 1 ( y 1 , y 2 ) ) exp ⁡ ( w 2 f 2 ( y 1 , y 2 ) ) … exp ⁡ ( w K f K ( y 1 , y 2 ) ) M 3 ( y 2 , y 3 ∣ x ) = exp ⁡ ( ∑ k = 1 K w k f k ( y 2 , y 3 ∣ x ) ) = exp ⁡ ( w 1 f 1 ( y 2 , y 3 ) ) exp ⁡ ( w 2 f 2 ( y 2 , y 3 ) ) … exp ⁡ ( w K f K ( y 2 , y 3 ) ) M 4 ( y 3 , y 4 ∣ x ) = exp ⁡ ( ∑ k = 1 K w k f k ( y 3 , y 4 ∣ x ) ) = exp ⁡ ( w 1 f 1 ( y 3 , y 4 ) ) exp ⁡ ( w 2 f 2 ( y 3 , y 4 ) ) … exp ⁡ ( w K f K ( y 3 , y 4 ) ) \begin{align} M_1(y_0,y_1|x)&=\exp\left(\sum_{k=1}^Kw_kf_k(y_0,y_1|x)\right)\nonumber\\ &=\exp (w_1f_1(y_0,y_1))\exp(w_2f_2(y_0,y_1))\dots\exp(w_Kf_K(y_0,y_1))\\ M_2(y_1,y_2|x)&=\exp\left(\sum_{k=1}^Kw_kf_k(y_1,y_2|x)\right)\nonumber\\ &=\exp (w_1f_1(y_1,y_2))\exp(w_2f_2(y_1,y_2))\dots\exp(w_Kf_K(y_1,y_2))\\ M_3(y_2,y_3|x)&=\exp\left(\sum_{k=1}^Kw_kf_k(y_2,y_3|x)\right)\nonumber\\ &=\exp (w_1f_1(y_2,y_3))\exp(w_2f_2(y_2,y_3))\dots\exp(w_Kf_K(y_2,y_3))\\ M_4(y_3,y_4|x)&=\exp\left(\sum_{k=1}^Kw_kf_k(y_3,y_4|x)\right)\nonumber\\ &=\exp (w_1f_1(y_3,y_4))\exp(w_2f_2(y_3,y_4))\dots\exp(w_Kf_K(y_3,y_4))\\ \end{align} M1(y0,y1x)M2(y1,y2x)M3(y2,y3x)M4(y3,y4x)=exp(k=1Kwkfk(y0,y1x))=exp(w1f1(y0,y1))exp(w2f2(y0,y1))exp(wKfK(y0,y1))=exp(k=1Kwkfk(y1,y2x))=exp(w1f1(y1,y2))exp(w2f2(y1,y2))exp(wKfK(y1,y2))=exp(k=1Kwkfk(y2,y3x))=exp(w1f1(y2,y3))exp(w2f2(y2,y3))exp(wKfK(y2,y3))=exp(k=1Kwkfk(y3,y4x))=exp(w1f1(y3,y4))exp(w2f2(y3,y4))exp(wKfK(y3,y4))

所以,无论特征有多少个,随机矩阵都是四个 ( n + 1 ) (n+1) (n+1)

这里还有个问题, 这个 m m m阶的矩阵是怎么来的?上面这四个表达式每一个都是 m m m阶矩阵么?

这个问题在例子11.2中展开。

概率计算

前向向量 α i ( x ) \alpha_i(x) αi(x)

  1. 初值
    α 0 ( y ∣ x ) = { 1 , y = s t a r t 0 , o t h e r s \alpha_0(y|x)= \begin{cases} 1,&y=start \\ 0,&others \end{cases} α0(yx)={1,0,y=startothers
  2. 递推
    α i T ( y i ∣ x ) = α i − 1 T ( y i − 1 ∣ x ) [ M i ( y i − 1 , y i ∣ x ) ] , i = 1 , 2 , … , n + 1 \alpha_i^T(y_i|x)=\alpha_{i-1}^T(y_{i-1}|x)[M_i(y_{i-1},y_i|x)],i=1,2,\dots,n+1 αiT(yix)=αi1T(yi1x)[Mi(yi1,yix)],i=1,2,,n+1

α i ( y i ∣ x ) \alpha_i(y_i|x) αi(yix)表示在位置 i i i的标记是 y i y_i yi并且到位置 i i i的前部标记序列的非规范化概率, y i y_i yi可取的值有 m m m个,所以 α i ( x ) \alpha_i(x) αi(x) m m m维列向量

后向向量 β i ( x ) \beta_i(x) βi(x)

  1. 初值
    β n + 1 ( y n + 1 ∣ x ) = { 1 , y n + 1 = s t o p 0 , o t h e r s \beta_{n+1}(y_{n+1}|x)= \begin{cases} 1,&y_{n+1}=stop \\ 0,&others \end{cases} βn+1(yn+1x)={1,0,yn+1=stopothers
  2. 递推
    β i ( y i ∣ x ) = [ M i + 1 ( y i , y i + 1 ∣ x ) ] β i + 1 ( y i + 1 ∣ x ) , i = 1 , 2 , … , n + 1 \beta_i(y_i|x)=[M_{i+1}(y_i,y_{i+1}|x)]\beta_{i+1}(y_{i+1}|x),i=1,2,\dots,n+1 βi(yix)=[Mi+1(yi,yi+1x)]βi+1(yi+1x),i=1,2,,n+1

β i ( y i ∣ x ) \beta_i(y_i|x) βi(yix)表示在位置 i i i的标记是 y i y_i yi并且从 i + 1 i+1 i+1 n n n的后部标记序列的非规范化概率
Z ( x ) = α n T ( x ) ⋅ 1 = 1 T ⋅ β 1 ( x ) Z(x)=\alpha_n^T(x)\cdot1=1^T\cdot\beta_1(x) Z(x)=αnT(x)1=1Tβ1(x)

你可能感兴趣的:(机器学习,手写AI,深度学习,机器学习)