`
- 浏览:
174016 次
- 性别:
- 来自:
北京
-
转自:http://hi.baidu.com/hehehehello/item/3b0d1f8ba1c2e5c698255f89
CRF(Conditional Random Field) 条件随机场是近几年自然语言处理领域常用的算法之一,常用于句法分析、命名实体识别、词性标注等。在我看来,CRF就像一个反向的隐马尔可夫模型(HMM),两者都是用了马尔科夫链作为隐含变量的概率转移模型,只不过HMM使用隐含变量生成可观测状态,其生成概率有标注集统计得到,是一个生成模型;而CRF反过来通过可观测状态判别隐含变量,其概率亦通过标注集统计得来,是一个判别模型。由于两者模型主干相同,其能够应用的领域往往是重叠的,但在命名实体、句法分析等领域CRF更胜一筹。当然你并不必须学习HMM才能读懂CRF,但通常来说如果做自然语言处理,这两个模型应该都有了解。
>>CRF详细的介绍和公式推导推荐这个PPT教程:http://wenku.baidu.com/view/f32a35d2240c844769eaee55.html。
>>另外推荐一篇HMM应用于中文分词的一篇易读的入门教程,非常形象:http://blog.sina.com.cn/s/blog_68ffc7a40100uebv.html
下文仅针对专门做自然语言处理的同学做一个快速形象的上手简介,并指出最重要的特征。这里假设你已经有基本的自然语言处理概念和马尔科夫链的基本知识。CRF本质上是隐含变量的马尔科夫链+可观测状态到隐含变量的条件概率。说隐含变量和可观测状态很抽象,我们以词性标注为例(如果你不知道什么是词性标注,请百度一下),在词性标注中词性标签就是隐含变量,具体的词语就是可观测状态,词性标注的目的是通过可观测到的一个个单词推断出来每个单词应该被赋予的词性标签。下文将用词性标签和词语代替上述两个名词。
先说马尔科夫链,这里体现了CRF的随机场特征(准确的说是马尔科夫随机场)。这里CRF和HMM都假设词性标签是满足马尔科夫性的,即当前词性仅和上一个词性有概率转移关系而与其它位置的词性无关,比如形容词后面跟形容词的概率是0.5,跟修饰性“的”的概率为0.5,跟动词的概率为0。因此,通过在一个标注集上进行统计,我们很容易得到一个概率转移矩阵,即任意词性A后紧邻任意词性B的概率都可以被统计出来。对HMM来说这部分就结束了,对CRF来说,可以在二维条件转移矩阵基础上再增加一维词语特征,如“当AB相邻,A是动词且B单词长度超过3时,B是名词的概率是xx"。大家可能注意到了马尔科夫链的窗口为1,即它仅考虑上1个词,这不见得是最合理的。这其实是一个对特征稀疏问题的折中,可以想象仅对两个词性AB统计P(B|A)能够得到很多数据的反馈,而如果统计长度为6的窗口,如P(G | ABCDEF)就会遇到数据稀疏的问题,因为很可能序列ABCDEF根本就没有在数据集中出现过.数据稀疏对机器学习的影响是巨大的,因此马尔科夫链实际以损失一定全局信息的基础上换来了更饱满的数据,实验证明这笔交易在词性标注时是赚的。
再说词性与词语直接的映射概率,这里体现了CRF的条件特征。如果是HMM,这里会直接统计词性-->单词的条件概率矩阵,比如 ”动词“ 生成 ”发射“ 的概率可能为1.5%,而生成”微软“ 的概率为0. 然后对于每一种可能的词性序列结合与条件概率相乘就能得到每一个候选序列的生成概率,然而取概率最高的作为标注结果即可。而CRF正好反过来,CRF通过发掘词语本身的特征(如长度,大小写,匹配特定词表等,也可以包括词语本身),把每个词语转化成为一个N维特征向量(vector),然后对于每个特征计算特征到词性的条件概率,这样每个词语对候选词性的条件概率即为所有特征条件概率的加和。比如我们假设特征向量只有两个,且P ( ”词语长度>3" --> 名词词性)的概率为0.9, P("词语位于句子末尾“ --> 名词词性)概率为0.4,且一个词恰好满足这两个特征,则其为名词的条件概率为 (0.9 + 0.4) / 2 = 0.65. 这样,CRF根据这个条件转移数值再结合词性的马尔科夫特性,就可以使用与HMM类似的方法寻找最优的词性标注序列了。
为了装得更学术一点本想再贴一个公式搞了半天没贴成功还是算了不过在上面的PPT链接中大家可以找到所以就不写了。总的来说CRF优于HMM的地方在于,它可以引入更多的特征,包括词语本身特征和词语所在上下文的特征,而非单词本身。从某种角度讲,它结合了HMM和最大熵方法。本人也刚刚接触CRF,因此都是从最浅显的角度来介绍的,如果有什么说错的地方欢迎指正啊~ 写这么多不容易,有大牛路过的话请轻拍哈~
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
### CRF条件随机场:深度解析与高效训练方法 #### 引言 条件随机场(Conditional Random Field,简称CRF)是一种广泛应用于自然语言处理、计算机视觉和其他序列标注任务的统计建模方法。由Charles A. Sutton在2008...
条件随机场(Conditional Random Field, CRF)是一种广泛应用于序列标注和结构预测的统计建模方法,尤其在自然语言处理和计算机视觉领域有着显著的作用。在这个主题中,“crf条件随机场在动作识别方面应用”主要关注...
机器学习 序列标注算法, CRF 条件随机场, python源码, 包含相关调用示例。 主要为自然语言处理 文本标注上使用。
matlab实现CRF基础模型,CRF chain
**条件随机场(Conditional Random Fields, CRF)**是一种用于序列标注和结构预测的概率图模型,广泛应用于自然语言处理(NLP)、计算机视觉等领域。它与隐马尔科夫模型(HMM)类似,但解决了HMM中后验概率独立假设...
在图像处理领域,条件随机场(Conditional Random Field, CRF)是一种常见的概率模型,它被广泛应用于图像分割任务。CRF能够捕捉图像中像素之间的上下文关系,从而提高分割的准确性。"Dense CRF"是CRF的一种变体,...
这个文档是对条件随机场(Condition Random Field)的简单介绍,介绍清晰简单、浅显,易于理解
条件随机场(Conditional Random Field, CRF)是一种用于序列标注和结构预测的统计建模方法,广泛应用于自然语言处理、计算机视觉和生物信息学等领域。它克服了传统的马尔科夫随机字段(Markov Random Field, MRF)...
条件随机场(Conditional Random Field, CRF)是一种用于序列标注和结构预测的统计建模方法,广泛应用于自然语言处理、计算机视觉等领域。CRF的主要特点是它是一个判别模型,能够直接对观察序列和标签序列的联合概率...
条件随机场(CRF)是自然语言处理中的基础模型, 广泛用于分词, 实体识别和词性标注等场景. 随着深度学习的普及, BILSTM+CRF, BERT+CRF, TRANSFORMER+CRF等模型, 逐步亮相, 并在这些标注场景, 效果有显著的提升.
介绍条件随机场最好的PPT,详细而全面。
条件随机场(Conditional Random Field,简称CRF)是一种在机器学习和自然语言处理领域广泛应用的概率图模型。它被设计用来解决序列标注问题,如词性标注、命名实体识别、语义角色标注等。与传统的隐马尔科夫模型...
不错的三类工具包,这里分享下,里面有代码,以及我遇到的一些问题说明。
条件随机场(Conditional Random Field, CRF)与马尔可夫随机场(Markov Random Field, MRF)是两种在机器学习和计算机视觉领域广泛应用的概率图模型。它们主要用于序列标注、图像分割等任务,能够捕获数据之间的上...
人工智能_CRFs_条件随机场_基于条件随机场(CRF)对中文案件语料进行命名实体识别(NER) 文件组织 corpus.py 语料类 model.py 模型类 utils.py 工具函数、映射、配置 data 语料 requirements.txt 依赖
**条件随机场(CRF)模型详解及其在音字转换中的应用** 条件随机场(Conditional Random Fields,简称CRF)是一种统计建模方法,广泛应用于自然语言处理(NLP)、计算机视觉和其他序列标注任务中。它是一种概率图...
Kevin Murphy编写的CRF条件随机场的matlab工具包,可用于图像处理建模等,,
条件随机场(Conditional Random Field,简称CRF)作为一种重要的概率模型,在机器学习领域内扮演着极其关键的角色。它不仅在自然语言处理(如词性标注、浅层句法分析等)方面有着广泛的应用,同时在图像模式识别...
内容概要:本文详细介绍了条件随机场(CRF)的基本原理及应用场景,并提供了词性标注的具体实例解析CRF的工作流程与逻辑,还对比CRF与其密切关联的逻辑斯蒂回归及隐马尔可夫模型之间的联系与区别。 适合人群:主要针对...
条件随机场(Conditional Random Field, 简称CRF)是一种概率图模型,常用于序列标注任务,如自然语言处理中的词性标注、命名实体识别等。它与马尔科夫随机场(Markov Random Field, MRF)相似,但不同之处在于条件...