标注-CRF条件随机场
1.1 模型定义
1.2 因子分解
2 条件随机场的定义
2.2 条件随机场的参数化形式
2.3 条件随机场的简化形式
2.4 条件随机场的矩阵形式
3.1 前向-后向算法
3.2 概率计算
3.3 期望值的计算
4 条件随机场的学习算法
4.1 改进的迭代尺度法IIS
4.2 拟牛顿法
5 条件随机场的预测算法
条件随机场conditional random field,给定一组输入随机变量条件下另一组输出随机变量的条件概率分布模型。特点是假设输出随机变量构成马尔可夫随机场。条件随机场可用于不同的预测问题。主要的线性链条件随机场,是对输入序列对输出序列预测的判别模型,形成为对数线性模型,学习方法常为极大似然估计或正则化极大似然估计,可应用于标注问题,2001年Lafferty提出。
首先放一个链接:轻松理解CRF
理解:http://blog.csdn.net/xiangyong58/article/details/51381477
1 概率无向图模型
probabilistic undirected graphical model,又称为马尔可夫随机场(Markov random filed)是一个由无向图表示的联合概率分布。
1.1 模型定义
图graph由结点(node)和连接结点的边(edge)组成的集合。结点记作ν,边e,结点集合V,边集合E,图记作(V,E),无向图指的是没有方向。
概率图模型(probabilistic graphical model)是由图表示的概率模型。设联合概率分布P(Y),Y是一组随机变量,由无向图G(V,E)表示概率分布,即在图中,ν表示一个随机变量Yν,Y=Yν;边e表示随机变量的依赖关系。
给定一个联合概率分布P(Y)和表示它的无向图G,首先定义无向图表示的随机变量之间存在的成对马尔可夫性(pairwise Markov property),局部马尔可夫性(local Markov property)和全局马尔可夫性(global Markov property)。
pairwise Markov property:G图上任意两个没有连接的结点μ和ν对应的随机变量Yμ,Yν,其他结点用O表示,对应的随机变量为Yo,则成对Markov property指的是给定随机变量组Yo条件下随机变量Yμ,Yν是条件独立的,即
local Markov property:设ν是G的任意一个结点,W是与ν有边连接的所有结点,O是与ν和W以外的其他所有结点,那么本定义指的是给定随机变量组Yw条件下随机变量Yν与随机变量组Yo是独立的,即
在P(Yo|Yw)>0时,等价于(做除法即可得到)
global Markov property:设结点集合A,B是在无向图G中被结点集合C分开的任意结点集合,本定义是指给定随机变量组Yc条件下随机变量组YA和YB是条件独立的,即
概率无向图模型的定义:设有联合概率分布P(Y),由无向图G=(V,E)表示,在图G中结点表示随机变量,边表示随机变量之间的依赖关系。如果联合概率分布P(Y)满足成对,局部或全局马尔可夫性就称为马尔可夫随机场(Markov random filed)。
目标:给定马尔可夫随机场希望求得其概率,那么如果将整体的联合概率分布写成若干联合概率的乘积形式,也就是将联合概率进行因子分解。而概率无向图模型最大的特点就是易于因子分解。
1.2 因子分解
团与最大团:无向图中任何两个结点均有边连接的结点子集称为团(clique);若C是无向图G的一个团,并且不能再加进任何一个G的结点使其称为更大的一个团,则称C为最大团(maximal clique)。
因子分解(factorization):将概率无向图的联合概率分布表示为其最大团上的随机变量函数的乘积形式的操作。
给定概率无向图模型,设为G,C为G上最大团,Yc表示C对应的随机变量,那么概率无向图模型的联合概率分布P(Y),可写作最大团C上函数的乘积形式:
,其中Z是规范化因子(normalization factor)保证了P(Y)构成一个概率分布;
函数称为势函数(potential function),要求势函数必须为严格正的,因此常定义为指数函数:
2 条件随机场的定义
条件随机场(conditional random field,CRF):给定随机变量X条件下,随机变量Y的马尔可夫随机场。这里主要介绍线性链上特殊的条件随机场——线性链条件随机场(linear chain conditional random field)。这是,条件概率模型P(Y|X)中Y是输出变量,表示标记序列;X是输入变量表示需要标注的观测序列。也把标记序列称为状态序列。学习时,利用训练数据集通过极大似然估计或正则化极大似然估计得到条件概率模型;预测时,对于给定的输入序列x,求出条件概率最大的输出序列Y hat。
条件随机场数学定义:设X,Y是随机变量,P(Y|X)是给定X条件下Y的条件概率分布。若随机变量Y构成一个由无向图G=(V,E),表示的马尔可夫随机场,即
对任意结点ν成立,则称条件概率分布P(Y|X)为条件随机场,w~ν表示在图G中与结点ν有边连接的所有结点w,表示结点ν以外的所有结点,Yν,Yμ,Yw表示结点ν,μ,w对应的随机变量。
线性链条件随机场数学定义:设X=(X1,X2,…,Xn),Y=(Y1,Y2,…,Yn)均为线性链表示的随机变量序列,若给定随机变量序列X条件下,随机变量序列Y的条件概率分布P(Y|X)构成条件随机场,即满足马尔可夫性:
,i=1,2,…n(i=1和i=n时只考虑单边)
则称P(Y|X)为线性链条件随机场。标注问题中,X表示输入观测序列,Y表示对应的输出标记序列或状态序列。
2.2 条件随机场的参数化形式
由线性链的特点可知,其最大团为相邻的结点,由因子分解定理可知P(Y|X)可以因子分解。
线性链条件随机场的参数化形式:设P(Y|X)为线性链条件随机场,则在随机变量X取值为x条件下,随机变量Y取值为y条件概率形式为:
其中,
式中tk和sl是特征函数,λk和μl是对应的权值,Z(x)是规范化因子,求和是在所有可能的输出序列上进行。
本式为线性链条件概率随机场模型的基本形式,表示给定输入序列x,对输出序列y预测的条件概率。tk是定义在边上的特征函数,称为转移特征,依赖于当前和前一个位置;sl是定义在结点上特征函数,称为状态特征,依赖于当前特征。tk和sl都依赖于位置,是局部特征。通常,特征函数tk和sl取值为1 or 0;当满足特征条件时取1,否则为0;条件随机场完全由特征函数tk和sl及对应的权值λk和μl确定。线性链条件随机场也是对数线性模型(log linear model)。
2.3 条件随机场的简化形式
条件随机场的原始公式中同一特征在各个位置都有定义,可以对同一特征在各个位置求和,将局部特征函数转化为一个全局特征函数,这样就可以将条件随机场写成权值向量和特征向量的内积形式,即条件随机场的简化形式。
首先将转移特征和状态特征及其权值用统一符号表示,设K1个转移特征,K2个状态特征,K=K1+K2,记
对转移和状态特征在各个位置i求和,记作,
用wk表示权值,即
条件随机场可表示为
,;
若w表示权值向量,即;
若F(y,x)表示全局特征向量,即;
则条件随机场写成w和F的内积形式:
,其中
2.4 条件随机场的矩阵形式
Pw(y|x)表示对给定观测序列x,相应的标记序列y的条件概率,引进特殊的起点和终点状态标记y0=start,yn+1=stop,这时Pw可通过矩阵形式表示。
对观测序列x的每一个位置i=1,2,…,n+1,定义一个m阶矩阵(m是标记yi的取值个数):
因此,给定观测序列x,标记序列y的非规范化概率通过n+1个矩阵的乘积表示,于是,条件概率Pw为:
,Zw(x)是规范化因子;
注意:规范化因子是从start到stop通过状态的所有路径y1y2.。。yn的非规范化概率之和。
3 条件随机场的概率计算问题
条件随机场概率计算问题是给定条件随机场P(Y|X),输入序列x和输出序列y,计算条件概率P(Yi=yi|x),P(Yi-1=yi-1|x)以及相应的数学期望。为了计算方便,引入前向-后向向量,递归地计算以上概率问题及期望值——前向-后向算法。
3.1 前向-后向算法
对每个指标i=0,1,…, n+1,定义前向向量αi(x):
递推公式为:
又可以表示为
表示在位置i标记是yi并且到位置i的前部分标记序列的非规范化概率,yi可取的值由m个,所以αi(x)是m维向量(m是yi的取值个数)。
同样,对每个指标i=0,1,…,n+1,定义后向向量βi(x):
递推公式:
又可以表示为:
βi(yi|x)表示在位置i的标记为yi并且从i+1到n的后半部分标记序列的非规范化概率。
由前向-后向向量得到规范化因子:,1是元素均为1的m维列向量。
3.2 概率计算
标记序列在位置i是标记yi的条件概率和位置i-1与i是标记yi-1和yi的条件概率为:
;
;
其中,
3.3 期望值的计算
利用前向-后向向量可以计算特征函数关于联合分布P(X,Y)和条件P(Y|X)的数学期望。
特征函数fk关于条件分布P(Y|X)的数学期望是
,k=1,2,3…,K,其中
假设经验分布为,特征函数fk关于联合分布P(X,Y)的数学期望是
对于转移特征:;
对于状态特征:,同理。
4 条件随机场的学习算法
学习算法指的是给定条件随机场估计条件随机场模型参数。CRF实际上是定义在时序数据上对数线性模型,学习算法包括:极大似然估计,正则化极大似然估计。具体的优化实现算法是改进的IIS,GD,及拟牛顿法。
4.1 改进的迭代尺度法IIS
已知训练集可知经验概率分布通过极大化训练数据的对数似然函数来求模型参数。
训练数据对数似然函数为
代入Pw的等式得,
改进的迭代尺度法通过迭代的方法不断优化对数似然函数该变量的下界,达到极大化对数似然函数的目的。假设模型的当前参数向量为,向量的增量为,更新参数向量为w+δ=(w1+δ1,…,wk+δk)T,在每次迭代过程中,IIS通过依次求解L得到。
关于转移特征tk的更新方程为
关于状态特征sl更新方程为
其中,T是所有数据(x,y)中出现所有特征数总和
条件随机场模型学习的改进的迭代尺度算法:
问题:T为所有数据(x,y)的特征总数,对不同的数据(x,y)可能取值不同,为了处理这个问题,定义松弛特征:
,S是一个常数, 通常选择S要 足够大,使得s(x,y)>=0。这时总特征总数取S。
那么,对于转移特征tk,δk的更新方程是
,
其中,
对状态特征sl,δk的更新方程是
,
其中,
以上称为算法S。在S中需要使常数S取足够大,这样每步的迭代增量向量会变大,算法收敛会变慢。因此算法T将解决这个问题。算法T对每个观测序列x计算其特征总数的最大值T(x),
利用前向-后向递推公式,得T(x)=t.两个更新方程为:
,
there,ak,t是特征tk的期待值,δk=logβk(βk是上述方程唯一的实根,可用牛顿法求得);
bl,t是特征sl的期待值,δl=logγl(γl是上述方程唯一的实根,可用牛顿法求得);
4.2 拟牛顿法
对于条件随机场模型:
学习的优化目标函数是:
其梯度函数是:
BFGS算法:
5 条件随机场的预测算法
条件随机场的预测问题是给定条件随机场P(Y|X)和输入序列(观测序列)x,求条件概率最大的输出序列(标记序列)y*,对观测序列进行标注。条件随机场的预测算法是维特比算法。
目标:
于是,CRF预测问题成为求非规范概率最大的最优路径问题,这里,路径表示标记序列。
其中,
只需计算非规范概率而不必求解概率。为了求解最优路径将上式max修改为,其中
是局部特征向量。
讲解维特比算法:
首先位置1的各个标记j=1,2,3,..,m的非规范化概率:;
递推公式,求得位置i的各个标记j=1,2,3,…,m的非规范概率,同时记录非规范化概率最大值的路径:
直到i=n时终止。这时求得非规范化概率最大值是;
最优路径的终点:;
由终点回溯:;
求得最优路径
条件随机场的维特比算法:
总结:CRF模型主要是对含有序列的信息打上标签,尤其是词性标注;这里主要理解CRF的主要工作过程,IIS,拟牛顿法,Viterbi算法都是常见的通用算法,可用于解决很多问题,理解即可。
标注-CRF条件随机场的更多相关文章
- 【算法】CRF(条件随机场)
CRF(条件随机场) 基本概念 场是什么 场就是一个联合概率分布.比如有3个变量,y1,y2,y3, 取值范围是{0,1}.联合概率分布就是{P(y2=0|y1=0,y3=0), P(y3=0|y1= ...
- CRF 条件随机场工具包
CRF - 条件随机场 工具包(python/c++) 项目案例 ConvCRF+FullCRF https://github.com/MarvinTeichmann/ConvCRF 需要的包Opti ...
- CRF条件随机场简介
CRF(Conditional Random Field) 条件随机场是近几年自然语言处理领域常用的算法之一,常用于句法分析.命名实体识别.词性标注等.在我看来,CRF就像一个反向的隐马尔可夫模型(H ...
- CRF条件随机场
CRF的进化 https://flystarhe.github.io/2016/07/13/hmm-memm-crf/参考: http://blog.echen.me/2012/01/03/intro ...
- Machine Learning系列--CRF条件随机场总结
根据<统计学习方法>一书中的描述,条件随机场(conditional random field, CRF)是给定一组输入随机变量条件下另一组输出随机变量的条件概率分布模型,其特点是假设输出 ...
- CRF条件随机场简介<转>
转自http://hi.baidu.com/hehehehello/item/3b0d1f8ba1c2e5c698255f89 CRF(Conditional Random Field) 条件随机场是 ...
- CRF(条件随机场)与Viterbi(维特比)算法原理详解
摘自:https://mp.weixin.qq.com/s/GXbFxlExDtjtQe-OPwfokA https://www.cnblogs.com/zhibei/p/9391014.html C ...
- Viterbi(维特比)算法在CRF(条件随机场)中是如何起作用的?
之前我们介绍过BERT+CRF来进行命名实体识别,并对其中的BERT和CRF的概念和作用做了相关的介绍,然对于CRF中的最优的标签序列的计算原理,我们只提到了维特比算法,并没有做进一步的解释,本文将对 ...
- CRF条件随机场在机器视觉中的解释
CRF是一种判别模型,本质是给定观察值集合的马尔科夫随机场(MRF),而MRF是加了马尔科夫性质限制的随机场. 马尔科夫性质:全局.局部.成对 随机场:看做一组随机变量的集合(对应于同一个样本空间), ...
随机推荐
- 洛谷P1783 海滩防御 分析+题解代码
洛谷P1783 海滩防御 分析+题解代码 题目描述: WLP同学最近迷上了一款网络联机对战游戏(终于知道为毛JOHNKRAM每天刷洛谷效率那么低了),但是他却为了这个游戏很苦恼,因为他在海边的造船厂和 ...
- [APIO2015]雅加达的摩天楼
Description 印尼首都雅加达市有 N 座摩天楼,它们排列成一条直线,我们从左到右依次将它们编号为 0 到 N−1.除了这 N 座摩天楼外,雅加达市没有其他摩天楼. 有 M 只叫做 " ...
- abp中文件下载,将内存数据导出到Excel并下载
1.数据导出为Excel的Stream using System; using System.Collections.Generic; using System.IO; using Abp.Colle ...
- Python自动化--语言基础7--操作日志、加密、发送邮件、线程、生产者消费者
1.操作日志 logging.basicConfig:日志的统一处理器,对日志的输出格式和方式做配置日志级别等级CRITICAL > ERROR > WARNING > INFO & ...
- bzoj 3166 [Heoi2013]Alo 可持久化Trie
3166: [Heoi2013]Alo Time Limit: 20 Sec Memory Limit: 256 MBSubmit: 1227 Solved: 569[Submit][Status ...
- 转:【web前端开发】浏览器兼容性处理大全
解决思路: ①.写代码的时候遵循W3C标准,按照最新稳定版本的IE或WebKit内核浏览器进行编码 ②.遇到部分无法全面解决浏览器兼容的时候,采取CSS的hack手段进行针对性微调.简单的说,CSS ...
- 【推荐】开源项目minapp-重新定义微信小程序的开发
minapp 重新定义微信小程序的开发 官网:https://qiu8310.github.io/minapp/ 作者:Mora minapp 重新定义微信小程序的开发 使用 用 npm 安装命令行工 ...
- 关于 Java 面试,你应该准备这些知识点
来源:占小狼, www.jianshu.com/p/1b2f63a45476 马老师说过,员工的离职原因很多,只有两点最真实: 钱,没给到位 心,受委屈了 当然,我是想换个平台,换个方向,想清楚为什么 ...
- ubuntu常用命令操作
建立文件夹软链接 ln -s 源文件 目标文件 当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其它的目录下 ...
- android判断网络是否可用
private boolean isNetworkConnected(Context context) { ConnectivityMannger cManager = (ConnectivityMa ...