简介

假设你有冠西哥一天生活中的照片(这些照片是按时间排好序的),然后你很无聊的想给每张照片打标签(Tag),比如这张是冠西哥在吃饭,那张是冠西哥在睡觉,那么你该怎么做呢?

一种方法是不管这些照片的序列性(照片本来是按照时间排序的),然后给每张图片弄一个分类器。例如,给了你冠西哥一个月的生活照作为训练样本(打了Tag的),你可能就会学习到:早上6点黑乎乎的照片可能就是冠西哥在睡觉;有很多亮色的照片可能就是冠西哥在跳舞;有很多车的照片可能就是冠西哥在飙车。

很明显,照片的序列性包含有很多信息,忽视它是不对滴。比如,你看到了一张大嘴的特写,这个时候冠西哥是在吃饭呢还是在唱歌?如果你知道冠西哥在前一个时间点的照片上是在煮饭,那么很有可能这张就是在吃饭了;如果前一个时间点的照片上他是在唱歌或者跳舞,那么这张就很有可能是在唱歌。

因此呢,我们应该利用nearby照片的信息来提高我们标签机(暂时这么叫吧)的准确性,这正是条件随机场所干的事。


词性标注

下面用词性标注的例子来阐述一些细节。

词性标注:给你一个句子(a sequence of words or tokens),然后你给每个单词标注它是动词、副词还是形容词,或者其他。

就像其他的分类器一样,我们需要定义一些特征函数(feature functions) f i


条件随机场里的特征函数

在条件随机场里面,每个特征函数有下面几个输入值:

  • 一个句子 s
  • 一个单词在句子中的位置 i
  • 当前单词的标签l i
  • 前一个单词的标签l i−1

输出为一个实数(虽然通常就是0或者1)

(注释:实际上,在这里我们把特征限制在了当前单词和前一个单词的标签上,而不是整个句子中的任意标签,我们在这儿构建了一个条件随机场的特例——linear chain CRF。为了简洁性,我们这里就讨论这种特例)

比如,一个可能的特征函数:度量前一个单词是"very"的时候,当前单词被标为形容词的可能性。


特征转化为概率

接下来我们给每一个特征函数f j  
赋一个权值λ j  
(在下面我会交代怎么学习这些权值)。现在给定一个句子s,我们就能计算一个特定的标签集l 
的加权得分了(l 
是a sequence of labels,如(NOUN, ABJECTIVE...) 表示给s的第一个单词标为NOUN,第二个单词标为ABJECTIVE):

score(l|s)=∑ m j=1 ∑ n i=1 λ j f j (s,i,l i ,l i−1 )

(外层的求和是对所有的feature function求和,内层的求和是对句子中的所有单词求和)

最后,我们将这些得分(score)正则化到0-1:

Missing open brace for superscript


一些特征函数的例子

  • 如果l i  
    是副词并且第i个单词以"ly"结尾,则f 1 (s,i,l i ,l i−1 )=1 
    ,否则为0

    • 如果我们给这个特征函数赋大且正的权重,那么就是说我们很愿意将以"ly"结尾的单词看成是副词。(因为权重大,最后对总score的贡献大嘛)
  • 如果i=1 
    并且l i  
    是动词,并且句子以"?"结尾,则f 2 (s,i,l i ,l i−1 )=1 
    ,否则为0

    • 同样的,如果我们给这个特征函数赋大且正的权重,说明我们很愿意将以"?"结尾的句子的第一个单词标为动词。
  • 如果l i−1  
    是形容词并且l i  
    是名词,则f 1 (s,i,l i ,l i−1 )=1 
    ,否则为0

    • 一样的,大且正的权重,说明我们愿意将形容词后面的词标为名词(或者将名词前面的词标为形容词)
  • 如果l i−1  
    是介词并且l i  
    也是介词,则f 1 (s,i,l i ,l i−1 )=1 
    ,否则为0

    • 这个就是反着的了,英语里面好像木有两个介词连用的情况,所以这个时候我们的权重得是负的,说明我们不喜欢这种搭配。

现在你该明白了吧,总结一下:为了建一个条件随机场,你只需要定义一些特征函数(它们依赖于整个句子,当前的位置,附近的标签),然后将这些函数加权求和,再正则化就可以得到最终的概率了。

转载于:https://www.cnblogs.com/hebulingding/p/4396236.html

条件随机场 Conditional Random Fields相关推荐

  1. 条件随机场(conditional random fields) 及代码实现

    条件随机场模型是由Lafferty在2001年提出的一种典型的判别式模型.它在观测序列的基础上对目标序列进行建模,重点解决序列化标注的问题条件随机场模型既具有判别式模型的优点,又具有产生式模型考虑到上 ...

  2. 条件随机场(Conditional random fields,CRFs)文献阅读指南

    与最大熵模型相似,条件随机场(Conditional random fields,CRFs)是一种机器学习模型,在自然语言处理的许多领域(如词性标注.中文分词.命名实体识别等)都有比较好的应用效果.条 ...

  3. 条件随机场CRF简介Introduction to Conditional Random Fields

    Imagine you have a sequence of snapshots from a day in Justin Bieber's life, and you want to label e ...

  4. 条件随机场介绍(7)—— An Introduction to Conditional Random Fields

    参考文献 [1] S.M.AjiandR.J.McEliece,"Thegeneralizeddistributivelaw,"IEEETrans- actions on Info ...

  5. Conditional Random Fields:ProbabilisticModels for Segmenting and Labeling Sequence Data

    Conditional Random Fields:Probabilistic Models for Segmenting and Labeling Sequence Data 条件随机场:对于段落和 ...

  6. 条件随机场介绍(5)—— An Introduction to Conditional Random Fields

    5. 参数估计 本节我们讨论如何估计条件随机场的参数\(\theta = \{ \theta_k \}\).在最简单最典型情况下,我们面对的数据是完全标注的独立数据,但是也有关于半监督学习的条件随机场 ...

  7. matlab 高斯随机场,条件随机场(Conditional random fields)

    条件随机场模型是Lafferty于2001年,在最大熵模型和隐马尔科夫模型的基础上,提出的一种判别式概率无向图学习模型,是一种用于标注和切分有序数据的条件概率模型.CRF最早是针对序列数据分析提出的, ...

  8. 机器学习之条件随机场CRF一点理解

    https://blog.csdn.net/FX677588/article/details/53157878 1. 前言 最近看了一些有关于CRF的论文,基本概念懂,但是到求解的部分有些疑惑.CRF ...

  9. 条件随机场 (CRF) 分词序列谈之一(转)

    http://langiner.blog.51cto.com/1989264/379166 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.ht ...

  10. 经典算法复现!(条件随机场)CRF原理及实现代码

    Datawhale 作者:丁媛媛,Datawhale优秀学习者 寄语:本文先对马尔可夫过程及隐马尔可夫算法进行了简单的介绍:然后,对条件随机场的定义及其三种形式进行了详细推导:最后,介绍了条件随机场的 ...

最新文章

  1. 国家智慧城市战略实施 保温材料等建材万亿市场待挖掘
  2. 零基础入门学习Python22-递归2 斐波那契数列和汉诺塔
  3. java 加法不用_【Java】 剑指offer(65) 不用加减乘除做加法
  4. c语言有图小游戏,【图片】C语言小游戏~贪吃蛇【c语言吧】_百度贴吧
  5. linux版本的redis bin,Linux下安装Redis4.0版本(简便方法)
  6. Oracle中输出一个变量
  7. Virtual Studio 2013 每次加载程序(dll)缓慢的问题
  8. 【Linux】设置虚拟内存
  9. 超越SiamRPN++,SiamMan达到目标跟踪新SOTA
  10. azure 使用_使用Azure Data Studio开始您的旅程
  11. 【转】snmpwalk命令常用方法
  12. 【python问题系列--4】ValueError: operands could not be broadcast together with shapes (100,3) (3,1)...
  13. 天气预报接口api(中国天气网)
  14. linux sox用法 播放,SoX——linux终端播放音频文件
  15. ReactOS的SVN服务器
  16. 【计算机毕业设计】437物流管理系统设计与实现
  17. 遇到的问题--docker---gitlab---k8s---error pulling image configuration: Get https://production.cloudflare.
  18. 生存分析彭非_21世纪统计学系列教材 生存分析_11396967.pdf
  19. 服务器更换桌面壁纸,通过VBS更换桌面设置壁纸源码
  20. svpwm的matlab仿真实现

热门文章

  1. 现在最火的深度学习框架是什么?
  2. 实力采坑----记录一下windows下我的MySQL8.0.11安装过程
  3. 拼多多算法工程师笔试题之分配巧克力
  4. Cookie与Session的区别-总结很好的文章
  5. 程序的静态链接,动态链接和装载
  6. Servlet(2) 三个域对象
  7. C++ shared_ptr make_shared是什么意思
  8. al32utf8的日期格式_五分钟学会Oracle数据库字符集
  9. 基于SSM的理财系统
  10. Oracle编译小结,20090525 Oracle知识总结