最后更新于
最后更新于
条件随机场是给定随机变量的条件下, 随机变量的马尔科夫随机场. 在条件概率模型中, 是输出变量, 表示标记序列, 也称为状态序列; 是输入变量, 表示观测序列.
学习时, 使用训练数据集通过(正则化的)极大似然估计得到条件概率模型.
预测时, 对于给定的输入序列, 求出条件概率最大的输出序列.
与是随机变量, 是在给定条件下, 的条件概率分布. 若随机变量构成一个由无向图表示的马尔科夫随机场, 即:
其中, 表示无向图中与结点有边连接的所有结点, 表示无向图除结点以外的所有其他结点.
如果上式对任意结点成立, 则称条件概率分布为条件随机场
上面两图是线性链条件随机场, 第二张图是第一张的另一种表示.
图的结构即:
上式是由局部马尔科夫性得到的, 因为对于满足局部马尔科夫:
首先定义两种特征函数:
转移特征
一般定义为:
状态特征
可以看出, 与逻辑回归和最大熵模型一样, 线性链条件随机场也是对数线性模型.
这样就可以将条件随机场写成权值向量和特征向量的内积形式, 即条件随机场的简化形式.
条件随机场因此可表示为:
向量表示
则条件随机场可以写为:
对于矩阵的其中一个元素, 我们如下定义:
假设, , 在给定随机变量序列的条件下, 随机变量序列的条件概率分布构成条件随机场, 即满足马尔科夫性:
则称条件概率为线性链条件随机场.
对应, 与为与相连的点, 对应于, 其他的点对应于因此可以得到上式. 具体的无向图的马尔科夫性见无向图的介绍.
在第一张图中, 观察序列的元素之间没有图结构, 即整个观察序列作为无向图中的一个点, 同时与所有状态点相连, 即有关系.
因此线性链条件随机场的图中, 共有个最大包, 如行程了一个最大包. 形如的子图, 就形成了最大包结构, 可以把条件概率分解成这些最大包函数的乘积形式.
转移特征是定义在边上的特征函数, 依赖于当前位置和前一个位置, 用表示, 具体为.
状态特征是定义在结点上的特征函数, 依赖于当前位置, 用表示, 具体为
对于线性链条件随机场来说, 对条件概率进行因子分解, 分解成每个最大包随机变量对应的势函数的乘积, 势函数通常为指数函数. 对于一个最大包, 在线性链条件随机场中, 就是相邻两个结点以及结点, 其势函数的定义包含两部分: 1. 相邻状态结点的转移特征; 2. 状态结点的状态特征. 因此将所有的最大包的势函数相乘, 就得到:
其中, 和是特征函数, 和是对应的权值. 是规范化因子.
这就是在观测序列取值为, 状态序列取值为的条件下, 条件概率的因子拆解形式.
因为每个特征函数在各个位置都有定义, 因此可以对同一个特征函数在各个位置求和, 将局部特征函数转化为一个全局特征函数.
使用统一个符合表示转移特征和状态特征. 假设有个转移特征, 特征, 那么总特征数量为, 记为:
对转移特征和状态特征在所有个位置进行求和得到:
的权值用表示:
条件随机场可以通过矩阵的形式来表示. 引入状态序列的起点和终点的状态, , 以及, 这里的都是可能的状态中其中的一个.
给定观测序列, 在每一个位置定义一个阶的矩阵, 其中是可能的状态的个数.
则是位置对应的矩阵中, 由指定状态到状态对应的势函数的值.
将所有可能的状态及状态转移组合起来, 就得到了一个阶的矩阵:
因此, 对于给定的观测序列, 某一指定的标记序列的非规范化概率可以通过个矩阵的乘积来表示, 即有:
其中规范化因子为个矩阵的乘积最后得到的矩阵的在位置上的元素即: