**
条件随机场
**
马尔科夫过程
假设一个随机过程中, 𝑡𝑛 时刻的状态 𝑥𝑛 的条件发布,只与其前一状态 𝑥𝑛−1 相关,即:
𝑃(𝑥𝑛|𝑥1,𝑥2,…,𝑥𝑛−1)=𝑃(𝑥𝑛|𝑥𝑛−1)
隐马尔科夫算法
隐马尔科夫算法是对含有未知参数(隐状态)的马尔可夫链进行建模的生成模型。
在隐马尔科夫模型中,包含隐状态 和 观察状态,隐状态 𝑥𝑖 对于观察者而言是不可见的,而观察状态 𝑦𝑖 对于观察者而言是可见的。隐状态间存在转移概率,隐状态 𝑥𝑖 到对应的观察状态 𝑦𝑖 间存在输出概率。
假设
1.假设隐状态 𝑥𝑖 的状态满足马尔可夫过程,i时刻的状态 𝑥𝑖 的条件分布,仅与其前一个状态 𝑥𝑖−1 相关,即:
𝑃(𝑥𝑖|𝑥1,𝑥2,…,𝑥𝑖−1)=𝑃(𝑥𝑖|𝑥𝑖−1)
2.假设观测序列中各个状态仅取决于它所对应的隐状态,即:
𝑃(𝑦𝑖|𝑥1,𝑥2,…,𝑥𝑖−1,𝑦1,𝑦2,…,𝑦𝑖−1,𝑦𝑖+1,…)=𝑃(𝑦𝑖|𝑥𝑖)
条件随机场 (以线性链条件随机场为例)
给定 𝑋=(𝑥1,𝑥2,…,𝑥𝑛) , 𝑌=(𝑦1,𝑦2,…,𝑦𝑛) 均为线性链表示的随机变量序列,若在给随机变量序列 X 的条件下,随机变量序列 Y 的条件概率分布 𝑃(𝑌|𝑋) 构成条件随机场,即满足马尔可夫性:
𝑃(𝑦𝑖|𝑥1,𝑥2,…,𝑥𝑖−1,𝑦1,𝑦2,…,𝑦𝑖−1,𝑦𝑖+1)=𝑃(𝑦𝑖|𝑥,𝑦𝑖−1,𝑦𝑖+1)
则称为 P(Y|X) 为线性链条件随机场。
通过去除了隐马尔科夫算法中的观测状态相互独立假设,使算法在计算当前隐状态 𝑥𝑖 时,会考虑整个观测序列,从而获得更高的表达能力,并进行全局归一化解决标注偏置问题。
参数化形式
其中:
𝑍(𝑥) 为归一化因子,是在全局范围进行归一化,枚举了整个隐状态序列 𝑥1…𝑛 的全部可能,从而解决了局部归一化带来的标注偏置问题。
𝑡𝑘 为定义在边上的特征函数,转移特征,依赖于前一个和当前位置
𝑠1 为定义在节点上的特征函数,状态特征,依赖于当前位置。
简化形式
因为条件随机场中同一特征在各个位置都有定义,所以可以对同一个特征在各个位置求和,将局部特征函数转化为一个全局特征函数,这样就可以将条件随机场写成权值向量和特征向量的内积形式,即条件随机场的简化形式。
step 1
将转移特征和状态特征及其权值用统一的符号表示,设有k1个转移特征, 𝑘2 个状态特征, 𝐾=𝑘1+𝑘2 ,记
step 2
对转移与状态特征在各个位置i求和,记作
step 3
将 𝜆𝑥 和 𝜇𝑙 用统一的权重表示,记作
step 4
转化后的条件随机场可表示为:
step 5
若 𝑤 表示权重向量:
以 𝐹(𝑦,𝑥) 表示特征向量,即
则,条件随机场写成内积形式为:
基本问题
- 条件随机场包含概率计算问题、学习问题和预测问题三个问题。
概率计算问题:已知模型的所有参数,计算观测序列 𝑌 出现的概率,常用方法:前向和后向算法; - 学习问题:已知观测序列 𝑌 ,求解使得该观测序列概率最大的模型参数,包括隐状态序列、隐状态间的转移概率分布和从隐状态到观测状态的概率分布,常用方法:Baum-Wehch 算法;
- 预测问题:一直模型所有参数和观测序列 𝑌 ,计算最可能的隐状态序列 𝑋 ,常用算法:维特比算法。