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. Vue中父组件使用子组件的emit事件,获取emit事件传出的值并添加父组件额外的参数进行操作

    需求是这样的,需要输入这样一个列表的数据,可以手动添加行,每一行中客户编号跟客户姓名是自动关联的,就是说选取了客户姓名之后,客户编号是自动填充的,客户姓名是一个独立的组件,每一个下拉项都是一个大的对象 ...

  2. 支付-微信h5

    背景 h5支付分两种 1.浏览器 2.app 浏览器里的h5,最终也会跳转到app. 而app里的h5,本质是公众号.在微信里叫公众号,支付宝叫服务窗. 这里主要讲微信h5. 核心原理 最终目标是下单 ...

  3. js map数据结构

    Map 对象保存键值对,并且能够记住键的原始插入顺序.任何值(对象或者原始值) 都可以作为一个键或一个值.  map对象常用于保存键值对,它的键是任意数据类型,常用于建立数据的映射关系 和对象的区别: ...

  4. 2020 最新python入门知识

    1. 基础语法 1.1 注释 在编写代码的时候,有些代码不需要执行或增加代码说明,那么就需要用到注释了. 被注释的文本或代码是不会被执行的. 注释可以使用如下三种方式: # 号 # 第一个注释,本行代 ...

  5. 使用Json-lib将对象和Json互转

    工程下载地址: https://files.cnblogs.com/files/xiandedanteng/jsonSample20200308.rar Depenency: <!-- 使用js ...

  6. 谈谈 mysql和oracle的使用感受 -- 差异

    之前一直使用mysql作为存储数据库,虽然中间偶尔使用sqlite作为本地数据库存储,但没有感觉多少差别. 后来遇上了oracle,且以其作为主要存储,这下就不得不好好了解其东西了.oracle作为商 ...

  7. [SqlServer]数据库备份-问题及解决

    正常数据库备份 备份:右键要备份的数据库-任务-备份 还原:右键数据库-还原数据库 问题1-"还原数据库备份时报错"介质集有2个介质簇,但只提供了1个.必须提供所有成员" ...

  8. Git切换分支开发

    入职第一家公司做开发的时候使用的项目版本管理工具是svn,公司内部搭建的服务器:在第二.第三家公司做开发的时候,使用的项目版本管理工具是Git,现在大多数公司使用的也是Git.刚进入公司的时候首先做的 ...

  9. Hadoop入门学习整理(二)

    2020-04-15 在上一篇文章中介绍了Linux虚拟机的安装,Hadoop的安装和配置,这里接着上一篇的内容,讲Hadoop的简要介绍和简单使用, 以及HBase的安装和配置. 1.首先要了解Ha ...

  10. 跨平台框架与React Native基础

    跨平台框架 什么是跨平台框架? 这里的多个平台一般是指 iOS 和 Android . 为什么需要跨平台框架? 目前,移动开发技术主要分为原生开发和跨平台开发两种.其中,原生应用是指在某个特定的移动平 ...