NLP-初学条件随机场(CRF)

CRF条件随机场的原理、例子、公式推导和应用 1、CRF的概括总结2、图模型之间的关系朴素贝叶斯、HMM、逻辑回归、CRF等图模型关系如下:朴素贝叶斯、HMM、逻辑回归、CRF对比如下表所示:更多HMM可参考:刘启林:HMM隐马尔可夫模型的例子、原理、计算和应用437 赞同 · 39 评论文章更多LR逻辑回归模型可参考:刘启林:LR逻辑回归模型的原理、公式推导、Python实现和应用141 赞同 · 12 评论文章3、CRF的发展简史机器学习阶段:CRF深度学习阶段:BiLSTM-CRF、BiLSTM-CNN-CRF。 阅读详情
  • 说明:学习笔记,内容参考《机器学习》《数学之美》和七月在线课件

条件随机场

定义1:

条件随机场(conditional random field,简称CRF)是一种判别式无向图模型。生成式模型是直接对联合分布进行建模,而判别式模型则是对条件分布进行建模,隐马尔可夫模型就是生成式模型。——周志华《机器学习》

定义2:

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

普遍意义上的条件随机场:
这里写图片描述
模型解释:
①条件随机场保留了隐含马尔可夫模型的一些特性,比如图中的y1,y2,..y1,y2,..等状态的序列还是一个马尔可夫链。
②在图中,顶点x1,y1x1,y1代表一个个随机变量,顶点之间的弧代表他们之间的依赖关系,采用概率分布P(x1,y1)P(x1,y1)来描述。
③它的特殊性在于变量之间要遵守马尔可夫假设,即每个状态的转移概率只取决于相邻的状态,这一点,它和贝叶斯网络相同。不同之处在于贝叶斯网络是有向图,而条件随机场是无向图,

1.生成式模型和判别式模型

o,s分别代表观测序列和标记序列

生成式模型
构建o和s的联合分布p(s,o),可以根据联合概率来生成样本,如HMM,BNs,MRF。
缺点:目标分类问题中容易产生较大的错误率
优点:实际上带的信息比判别模型丰富;能更充分利用先验知识;模型可以通过增量学习得到
判别式模型
构建o和s的条件分布p(s|o),因为没有s的知识无法生成样本,只能判断分类,如SVM,CRF,MEMM。
缺点:不能反映训练数据本身的特性
优点:分类边界更灵活;能清晰分辨出多类或某一类与其他类之间的差异特征;适用于较多类别的识别
二者关系
由生成模型可以得到判别模型,但由判别模型得不到生成模型。

2.词性标注

除了上一章介绍的HMM进行词性标注外,也可以使用条件随机场进行词性标注。正如分类器所做,首先需要设定一组特征方程。

①CRF的特征函数

每个特征函数的输入包括:

  • 一个句子ss
  • 词在句子中的位置i
  • 当前词的标签lili
  • 前一个词的标签li−1li−1

②从特征到概率

  • 为我们每个特征函数fifi设置一个权重值λjλj(通过训练学习得到这些权重值),给定一个句子s,可以通过累加句中所有词加权后的特征来为s的打标结果打分:

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

    注:第一个求和是对遍历特征方程jj的求和,第二个球和是对句子里面的每一个位置i进行遍历求和。
  • 最终,通过求指数与归一的方式将得分转化为0,1之间的概率值:

    p(l|s)=exp[score(l|s)∑l′exp[score(l′|s)]=exp[∑mj=1∑ni=1λjfj(s,i,li,li−1)]∑l′exp[∑mj=1∑ni=1λjfj(s,i,li′,li−1′)]p(l|s)=exp[score(l|s)∑l′exp[score(l′|s)]=exp[∑j=1m∑i=1nλjfj(s,i,li,li−1)]∑l′exp[∑j=1m∑i=1nλjfj(s,i,li′,li−1′)]

    注:逻辑回归是分类问题的对数线性模型,CRF是序列标注问题的对数线性模型。

③权重学习

学习CRF权重,以梯度上升方法为例:
有一组训练样本(包括句子和相关的词性标注标签结果);先为我们的CRF模型随机初始化权重值;为了使这些随机初始的权重最终调整为正确的值,需要遍历每个训练样本,然后执行:
  • 遍历每个特征函数fifi,并为λiλi计算训练样本的对数概率梯度值:

    ∂∂wjlogp(l|s)=∑j=1mfi(s,j,lj,lj−1)−∑l′p(l′|s)∑j=1mfi(s,j,lj′,lj−1′)∂∂wjlogp(l|s)=∑j=1mfi(s,j,lj,lj−1)−∑l′p(l′|s)∑j=1mfi(s,j,lj′,lj−1′)
  • 梯度公式中第一项是特征fifi在正确标注下的贡献,梯度公式中的第二项是特征fifi在当前模型中的贡献。

  • 将λiλi朝着梯度方向移动:
    λi=λi+α[∑j=1mfi(s,j,lj,lj−1)−∑l′p(l′|s)∑j=1mfi(s,j,lj′,lj−1′)]λi=λi+α[∑j=1mfi(s,j,lj,lj−1)−∑l′p(l′|s)∑j=1mfi(s,j,lj′,lj−1′)]

    αα是学习率。

重复上述步骤,直到达到某个停止条件,例如低于某一个阈值。
总而言之就是抽取当前模型与我们想要学习到的模型的差异,将λiλi朝着正确的方向移动。


④找到最佳标注
问题:假定训练好了CRF模型,这时来了一个新的句子,应该如何标注它?

  • 最直接的方法:
为每个可能的标注ll计算p(l|s),接着选取一种概率值最大的打标。然而对一个大小为k的标签组和一个长度为m的句子,有kmkm种可能的打标方式。
  • 更好的方法:
使CRF满足最佳子结构的属性,使得我们可以使用一种动态规划算法(多项式时间复杂度)找到最佳标注,类似于HMM的维特比算法。

扩展

词性标注的方法还有许多,而CRF除了命名实体抽取的其他有趣应用:
eg.圣诞节礼物抽取
①简单匹配形如‘I want/got xxx for Christmas’的句式
②CRF变种GIFT词标注:将其转换为词性标注问题,基于类似“如果上一个词是一个GIFT-RECIVER且前一个词是gave,那么这个词就是一个GIFT”或者‘如果后面紧跟两个词是for Christmas,那么这个词就是GIFT’的规则去构造特征。

NLP之CRF++安装及使用   目录   一、CRF简介 CRF VS 词典统计分词 CRF VS HMM,MEMM CRF分词原理 二、CRF++工具包 CRF++的安装(linux) CRF++的使用 一、CRF简介 Conditional Random Field:条件随机场,一种机器学习技术(模型) CRF由John Lafferty最早用于NLP技术领域,其在NLP技术领域中主要用于文本标注... 阅读详情

相关推荐

条件随机场(CRF)

目录 1.定义 1.1 图 1.2 概率图模型(PGM) (1)有向图的联合概率: (2)概率无向图模型: 1.3 马尔可夫性 1.4 团与最大团 1.5 概率无向图模型的联合概率分布 1.6 条件随机场 1.7 线性链条件随机场 2.条件随机场的不同形式 2.1 条件随机场的参数化形式 2.2 条件随机场的简化形式 2.3 条件随机场的矩阵形式 3.概率计算问题 3.1 前向-后向算法 3.2 概率计算 3.3 期望值计算 4.学习算法(参数估计) 5.预测算法(.

惊鸿一博 9738

条件随机场原理(CRF)

条件随机场(Conditional Random Fiedl)是指给定一组输入的随机变量条件下另一组输出随机变量的条件概率分布模型,其特点是假设输出随机变量构成马尔可夫随机场。条件随机场打破了隐马尔可夫模型的俩个假设(观测独立性假设和齐次马尔可夫性假设),使输入向量和输出向量之间的关系更加明显,从而使其在文本处理等问题上的表现更加优越。概率无向图模型又称马尔可夫随机场,它是一个可以由无向图表示的联合概率分布。设无向图G=(V,E)G=(V,E)G=(V,E)表示概率分布P(Y)P(Y)P(Y),其中结v∈V

weixin_52862386的博客 2601

条件随机场(CRF)

这个文档是对条件随机场(Condition Random Field)的简单介绍,介绍清晰简单、浅显,易于理解

详解机器学习经典模型(原理及应用)——条件随机场

本文详细介绍了条件随机场的概念、模型原理以及代码实现,可用于业务或面试参考。

学习与分享人工智能技术 2670

条件随机场在关系学习中的应用

关系数据有两个特征:第一,我们希望建模的实体之间存在统计依赖关系;第二,每个实体通常都有一组丰富的特性,可以帮助分类;图模型是一种利用实体间依赖结构的自然形式。

crf条件随机场在动作识别方面应用

里面大概几十篇我先前做crf在行为识别上参考过的中文文献,都是比较典型的文章,收获很大。不仅有条件随机场,还有它的改进型等的应用,拿来和大家分享

条件随机场的简单理解

目录 什么是条件随机场 条件随机场长怎么样 如何构建特征函数 前向—后向算法 条件随机场的概率计算问题 条件随机场的预测问题 什么是条件随机场 条件随机场的定义 条件随机场总的来说就是只要满足“条件随机场”这个条件,就可以根据定义的模型去求解我们需要求解的问题,而我们时长需要解决的问题以线性的居多,所谓线性就是满足“线性链条件随机场”,本文也只涉及对“线性链条件随机场”的讲解。 ...

weixin_41911765的博客 1万+

条件随机场介绍

条件随机场介绍,但是介绍必须大于50,我就随便写写吧

随机场(Random field)

一、随机场定义 http://zh.wikipedia.org/zh-cn/随机场 随机场(Random field)定义如下: 在概率论中, 由样本空间Ω = {0, 1, …,G−1}n取样构成的随机变量Xi所组成的S= {X1, …,Xn}。若对所有的ω∈Ω下式均成立,则称π为一个随机场。π(ω) > 0. 一些已有的随机场如:马尔可夫随机场(MRF),吉布斯随机...

weixin_30950607的博客 869

使用Jacob实现将Word文件转换为Pdf文件

如果是首次使用 jacob,建议先直接从 github上下载 zip包,因为在实现Word转Pdf的时候,不仅需要用到 jacob.jar,还需要 jacob.dll 库,而zip包中都有。官方使用文档可以参考:https://github.com/freemansoft/jacob-project/blob/main/docs/UsingJacob.md。// 如果安装的是微软的 Office,需要使用 Word.Application。

qq_41672950的博客 750

接口操作MySQL跟MongoDB事务回滚问题

通常使用的事务注解:@Transactional 是不会对MongoDB生效的,但是在一些生产接口中无法避免同时使用MySQL跟MongoDB的操作。

weixin_45932023的博客 1578

福利来了!本人近300G的学习资料愿与大家分享

感谢大家我一个小小fresh NLPer,在正式记录自己在NLP道路上点滴知识的才不到一个月的道路上,收获了近200位关注者。感谢大家对我的支持,我要为您的关注负责,每篇文章都是经过深思...

zenRRan的博客 380

VM与欧姆龙PLC通讯设置实战:Fins TCP/UDP协议详解

本文详细解析了VM(VisionMaster)与欧姆龙PLC通过Fins TCP/UDP协议进行通讯的实战设置。内容涵盖网络配置、协议选择(TCP可靠性与UDP实时性)、VM端地址映射与数据点添加、以及数据接收解析流程,并提供了常见错误排查与高级调试技巧,帮助视觉与自动化工程师快速实现稳定可靠的工业通讯集成。

weixin_29172963的博客 329

CRF实战:用Python手把手教你搞定命名实体识别(附完整代码)

本文详细介绍了如何使用Python和条件随机场(CRF)算法实现命名实体识别(NER)。从环境准备、特征工程到模型训练与优化,手把手教你构建一个高效的NER系统,并附完整代码示例。CRF凭借其出色的序列建模能力,在NER任务中表现优异,适合处理人名、地名、机构名等实体识别问题。

egg99的博客 654

LiteOS | 基于LiteOS的智慧农业案例实验分享

分享一个基于小熊派+LiteOS+华为云的案例实验(智慧农业)。 实验框图 相关模块简介 1、STM32L431RCT6 2、LiteOS LiteOS是华为开发的轻量级实时操作系统: LiteOS源码GitHub仓库链接: https://github.com/LiteOS/LiteOS 其源码一级目录结构如下: 其内核包括任务管理、内存管理、时间管理、通信机制、中断管理、队列管...

嵌入式大杂烩 5990

ComfyUI面部修复FaceDetailer保姆级教程:从模型选择到参数调优全解析

本文提供ComfyUI面部修复FaceDetailer的保姆级教程,深度解析从模型选择到参数调优的全过程。针对常见的五官模糊、肤色不均等问题,详细对比了BBox与Segm检测器的优劣,并给出SD1.5与SDXL模型的核心参数联动策略与实战方案,帮助用户精准掌控AI绘画中的面部修复效果。

weixin_29073241的博客 472

BiLSTM-CRF

Outline The article series will include: Introduction - the general idea of the CRF layer on the top of BiLSTM for named entity recognition tasks A Detailed Example - a toy example to explain how CRF layer works step-by-step Chainer Implementation - a chai

Claroja 221

基于强化学习的多无人机路径规划

我们使用了Dueling Double Deep Q-Network(DDDQN)算法来训练智能体,这个算法在深度Q学习算法的基础上进行了升级,具有更快的收敛速度和更好的性能。本文提出了一种基于强化学习的算法,实现了多无人机路径规划,并提供相应的MATLAB代码。通过基于强化学习的多无人机路径规划算法,我们能够高效地解决复杂环境下的任务需求,并在实际应用中取得了良好的效果。首先,我们定义了状态空间和动作空间。实验结果表明,我们的方法能够有效地解决多无人机路径规划问题,提高了任务完成的效率和准确率。

DjjPython的博客 820

CRF代码解释

CRF代码选自[https://spaces.ac.cn/archives/5542],大神编写,由于对代码解释没有特别清晰,对初学者可能有一定难度,本文对此代码做适当解析,帮助读者阅读。 # -*- coding:utf-8 -*- from keras.layers import Layer import keras.backend as K class CRF(Layer): """纯Keras实现CRF层 CRF层本质上是一个带训练参数的loss计算层,因此CRF层只用来训练

weiyuxuan123的博客 1722

基于MATLAB的多无人机多任务调度算法——CBBA带时间窗

本文将介绍基于MATLAB的CBBA算法,并对其进行改进,加入时间窗概念,以提高多无人机系统的调度效率和性能。时间窗用于限定任务的执行时间范围,以避免任务执行时间过长或过短导致的问题。具体而言,我们为每个任务设置一个允许的最早开始时间和最晚结束时间,并在任务分配的过程中考虑这些时间约束。在多无人机系统中,需要将若干个任务分配给不同的无人机完成,以实现高效的任务执行。以上是关于基于MATLAB的多无人机多任务调度算法CBBA带时间窗的简要介绍和源代码实现。多无人机系统的调度问题。

BUG?不存在的! 1898

YOLOv11 改进 - 注意力机制 | Deformable-LKA 可变形大核注意力:自适应采样网格优化特征捕捉,提升不规则目标感知

本文介绍了可变形大核注意力(D-LKA Attention)及其在YOLOv11中的结合。D-LKA Attention是一种简化的注意力机制,采用大卷积核利用体积上下文信息,通过可变形卷积灵活调整采样网格,适应多样数据模式。它有2D和3D版本,3D版本在跨深度数据理解上表现出色,共同构成了D-LKA Net架构。我们将D-LKA Attention集成进YOLOv11,在模型的检测头部分引入deformable_LKA_Attention模块。实验表明,该方法在分割任务上表现优于现有方法,提升了模型的检测

魔改工程师的博客 1170

简单理解条件随机场CRF

一、条件随机场是什么? 什么是条件随机场?我们先从它的命名开始说起,为什么是条件随机场这么奇怪的名字,为什么不叫飞机场、火葬场?通常数学上的命名是简单而直白的,大家听我一一解释。 条件 “条件”指的是:输出的结果是依照条件概率分布 P(Y|X) 来计算的 ,其中, X = (X1, X2, ..., Xn) 是输入的观测序列,也就是词序列 Y = (Y1, Y2, ..., Yn) 是输出的标注序列,也就是标注结果 随机场 给若干位置按照某种分布赋予一个值,其全体就叫随机场。 又出现新的问题了,若干位置

ywm_up 5537

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

CRF 条件随机场

目录 1. 基本概念 1.1 各种随机场 1.2 CRF模型的训练原理 1.3 条件随机场的参数化形式 1.4条件随机场对应的简化概率表达 2. 例子 定义CRF中的特征函数 从特征函数到概率 CRF与逻辑回归的比较 CRF与HMM的比较 HMM和CRF区别 3. Tensorflow实现 tf.contrib.crf (1)tf.contrib.......

满腹的小不甘 6818

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

【NLP 36、CRF条件随机场 —— 源码解读】

① 输入序列 X,输出序列为 y的路径分数:A为转移矩阵(代表前一个字向后一个字转移的概率),P为发射矩阵(过神经网络的每个字对应的概率值),s(X, y)代表任意一条路径的正确概率得分(这里的路径分数可以看作结合两矩阵,再做 log 运算后的)② 输入序列X,预测输出序列为y的概率:对上式做softmax,对 步骤 ① 得到的所有路径分数做归一化依然希望这个路径分数是最大的其他路径的总概率得分之和的 log 值正确路径的总概率得分CRF会明显拖慢训练速度,以效率的角度考虑可以不使用CRF。

m0_73983707的博客 1591

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

自然语言处理NLP(5)——序列标注b:条件随机场(CRF)、RNN+CRF

在上一部分中,我们了解了序列标注问题以及解决该种问题的一种方法——隐马尔科夫模型HMM:自然语言处理NLP(4)——序列标注a:隐马尔科夫模型(HMM) 在这一部分中,我们将要介绍解决序列标注问题的另外两种方法:条件随机场(CRF),以及RNN+CRF。 【一】最大熵模型 在介绍条件随机场(CRF)之前,首先了解一下什么是最大熵模型。 ...

echoKangYL的博客 4854

条件随机场(CRF)的详细解释

条件随机场(CRF)结合了最大熵模型和隐马尔可夫模型的特点,是一种无向图模型,其中相邻的上下文信息或状态会影响当前预测,常用于标注或分析序列资料,如自然语言文字或是生物序列

deephub 2万+
上一篇: NLP-隐马尔可夫模型及使用实例
下一篇: NLP-使用CNN进行文本分类
spring_willow
博客等级 码龄10年 163粉丝 95原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值