CRF:Conditional Random Field,即条件随机场。

首先介绍一下基础背景知识。机器学习中的分类问题可以分为硬分类和软分类。硬分类常见的模型有SVM、PLA、LDA等。SVM可以称为max margin classifier,基于几何间隔进行分类。软分类一般分为logistic Regnesstion(概率判别模型)和 Naive Bayes(概率生成模型)。概率判别模型和概率生成模型的区别是,概率判别模型是对\(P\left ( y|x \right )\)进行建模,概率生成模型是对\(P\left ( x,y \right )\)进行建模。

1.概率生成模型

Naive即朴素贝叶斯假设,公式表示就是\(P\left ( x|y=y_{0} \right )= \prod_{i=1}^{p}P\left ( x_{i}|y=y_{0} \right )\),通俗的解释就是给定隐变量的条件下,观测变量之间相互独立,即\(x_{i}\perp x_{j}|y,i\neq j\),如图1所示。当\(y\)被观测时,阻断了观测变量之间的路径。



当隐变量一个line的时候,就是HMM(Hidden markov model)模型,如图2所示。



如果大家有学过概率图模型的话,肯定知道有向图中的d-分离。通过有向图的独立性假设,我们可以非常直观的得到HMM的两大假设。即齐次Markov假设和观测独立假设。这两个假设的表达式分别为:

齐次Markov假设:\(P\left ( y_{t}|y_{1:t-1},x_{1:t-1} \right )= P\left ( y_{t}|y_{t-1} \right )\)

观测独立假设:\(P\left ( x_{t}|y_{1:t},x_{1:t-1} \right )= P\left ( x_{t}|y_{t} \right )\)

2.概率判别模型

比如最大熵模型,采用最大熵思想。比如:给定方差和均值,高斯分布熵最大。。

3.两者结合就出现了MEMM:Maximum Entropy Markov Model。这是一种概率判别模型。



进行独立性分析可以发现,该模型打破了HMM的观测独立假设,模型变得更加的合理了。比如,文本标注问题中,上下文对于标注会产生影响。

但是同样存在标注偏差问题,原因是局部归一化。John Lafferty的论文中讲解了该问题为什么存在。用一句话来概括就是:Conditional distribution with low entropy take less notice of observation.

4.Chain-structure CRF

该模型克服了标注偏差问题,CRF的模型如下图4所示,隐变量之间变为无向边,所以是全局归一化。



接下来会写如何利用CRF实现Learning、Inference等任务。

CRF基础知识以及如何实现Learning,Inference的更多相关文章

  1. 转载 Deep learning:一(基础知识_1)

    前言: 最近打算稍微系统的学习下deep learing的一些理论知识,打算采用Andrew Ng的网页教程UFLDL Tutorial,据说这个教程写得浅显易懂,也不太长.不过在这这之前还是复习下m ...

  2. Deep learning:一(基础知识_1)

    本文纯转载: 主要是想系统的跟tornadomeet的顺序走一遍deeplearning; 前言: 最近打算稍微系统的学习下deep learing的一些理论知识,打算采用Andrew Ng的网页教程 ...

  3. Deep Reinforcement Learning 基础知识

    Introduction 深度增强学习Deep Reinforcement Learning是将深度学习与增强学习结合起来从而实现从Perception感知到Action动作的端对端学习的一种全新的算 ...

  4. Deep Reinforcement Learning 基础知识(DQN方面)

    Introduction 深度增强学习Deep Reinforcement Learning是将深度学习与增强学习结合起来从而实现从Perception感知到Action动作的端对端学习的一种全新的算 ...

  5. 关于图计算&图学习的基础知识概览:前置知识点学习(Paddle Graph Learning (PGL))

    关于图计算&图学习的基础知识概览:前置知识点学习(Paddle Graph Learning (PGL)) 欢迎fork本项目原始链接:关于图计算&图学习的基础知识概览:前置知识点学习 ...

  6. PRML 基础知识

    1 一个经典例子 ​ 一个经典的例子就是Polynomial Curve Fitting问题,现在将以此为基础介绍一些基本概念和方法.该问题的主要思路是针对给定的训练集\(\mathbf{x}\equ ...

  7. TFLite基础知识

    此基础知识仅为个人学习记录,如有错误或遗漏之处,还请各位同行给个提示. 概述 TFLite主要含有如下内容: (1)TFLite提供一系列针对移动平台的核心算子,包括量化和浮点运算.另外,TFLite ...

  8. C/C++ 基础知识

    C/C++ 基础知识 C 语言优秀学习网站 [C Programming Language] C 语言的注释 单行注释 /* comment goes here */ // comment goes ...

  9. 逻辑回归Logistic Regression 之基础知识准备

    0. 前言   这学期 Pattern Recognition 课程的 project 之一是手写数字识别,之二是做一个网站验证码的识别(鸭梨不小哇).面包要一口一口吃,先尝试把模式识别的经典问题—— ...

随机推荐

  1. PIoU Loss:倾斜目标检测专用损失函数,公开超难倾斜目标数据集Retail50K | ECCV 2020 Spotlight

    论文提出从IoU指标延伸来的PIoU损失函数,能够有效地提高倾斜目标检测场景下的旋转角度预测和IoU效果,对anchor-based方法和anchor-free方法均适用.另外论文提供了Retail5 ...

  2. Netty内置的编解码器和ChannelHandler

    Netty 为许多通用协议提供了编解码器和处理器,几乎可以开箱即用,这减少了你在那些相当繁琐的事务上本来会花费的时间与精力. 通过SSL/TLS 保护Netty 应用程序 SSL和TLS这样的安全协议 ...

  3. 关于Vue-loader的那些事儿

    什么是Vue-loader 一个webpack的加载器,负责将vue组件编译成普通的JavaScript模块. 关于webpack的介绍 这里呢?用到webpack,在项目的编译打包的过程中,将复杂的 ...

  4. SpringCloud-config分布式配置

    为什么要统一管理微服务配置? 随着微服务不断的增多,每个微服务都有自己对应的配置文件.在研发过程中有测试环境.UAT环境.生产环境,因此每个微服务又对应至少三个不同环境的配置文件.这么多的配置文件,如 ...

  5. conda和pip重新配置源

    conda设置源之后出现了问题,报错condaHTTPError: 之前按照网上的一些教程设置了清华源之后,过了一段时间,今天来装新的库时报了以上错误,特此记录一下. conda 源重新设置 重新去清 ...

  6. Roadblocks(POJ 3255)

    原题如下: Roadblocks Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 19314   Accepted: 6777 ...

  7. python之类方法和静态方法

    在类中定义的函数称为方法,主要有三种:实例方法.类方法.静态方法. class MyTest(): # 普通实例函数 def func1(self, arg1, arg2): pass # 类函数 @ ...

  8. Mybatis快速逆向生成代码

    先下载生成器的文件, 并在eclipse或者IDEA里面打开这个工程 热乎乎的链接 然后配置一下 选择你需要生成的数据的ip和端口 点击运行入口函数 运行成功 接着在浏览器输入localhost: 这 ...

  9. 从 LRU Cache 带你看面试的本质

    前言 大家好,这里是<齐姐聊算法>系列之 LRU 问题. 在讲这道题之前,我想先聊聊「技术面试究竟是在考什么」这个问题. 技术面试究竟在考什么 在人人都知道刷题的今天,面试官也都知道大家会 ...

  10. zabbix安装要求

    zabbix server 和 zabbix Agent都在一个压缩包中,可以从官网上下载源码包,www.zabbix.com/download.php zabbix是C语言编写,压缩包的文件夹介绍: ...