机器学习笔记:线性链条件随机场(CRF)

0 引入:以词性标注为例

  • 比如我们要对如下句子进行标注:
    • "小明一把把把把住了"
  • 那么我么可能有很多种词性标注的方法,中间四个"把",可以是"名词+名词+动词+名词",可以是"名词+动词+动词+名词"等多种形式。

那么,哪种标注序列最有可能是正确的呢?

  • 我们如果可以给每一个标注序列进行打分,打分越高的表示这个标注序列越靠谱,那么就会容易的多。打分最高的就是最可能的标注序列。

  • 对于标注序列问题,我们可以设计一组特征函数

    • (比如动词后面接动词,那么给他一个很负的分数;动词后面接名词,可以给0.8左右的分数之类)
    • 用这个特征函数集合来为一个标注序列打分,并据此选出最靠谱的标注序列
    • 也就是说,每一个特征函数都可以用来为一个标注序列评分
      • 把集合中所有特征函数对同一个标注序列的评分综合起来,就是这个标注序列最终的评分值

1 特征函数

  • 线性链CRF 中的特征函数接受四个参数:

    • 句子s(在前面的样例中是需要标注词性的句子)
    • i(句子s中第i个单词)
    • (要评分的标注序列给第i个单词标注的词性)
    • (要评分的标注序列给第i-1个单词标注的词性)
  • 定义好一组特征函数后,我们要给每个特征函数赋予一个权重

    • 对于一个句子s,和一种可能的标注序列l
    • 我们利用特征函数集对其评分
  • 对这个分数进行指数化和标准化,我们就可以得到选择标注序列l的概率值p(l|s)

    • 类似于softmax

2 和HMM的对比

机器学习笔记&Python笔记:HMM(隐马尔科夫模型)_UQI-LIUWJ的博客-CSDN博客

HMM可以看成一种特殊的线性链CRF

  • 我们考虑一个HMM
    • 状态集合(隐藏状态):
    • 观测集合(可见观测):
    • 初始化概率:,初始状态为的概率
    • 状态转移概率:
    • 观测转移概率:
  • 定义HMM观测序列的联合概率为:
  • 线性链CRF的概率
      • Z(O)是归一化常数(softmax的分母)
      • 是模型的权重参数
      • 是特征函数
        • 第一个式子相当于i*j个特征函数组成的集合
          • 每一个特征函数评价前一个隐藏状态是j,后一个隐藏状态是i的情况
        • 第二个式子相当于i个特征函数组成的集合
          • 当前时刻隐藏状态是i,观测状态是Ot的情况
  • 现在令
      • 那么
        • 进而等于 【只有时指示函数才为1,其余情况指示函数为0】
      • 那么
        • 进而等价于【只有,且观测值为时指示函数才为1,其余情况指示函数为0】
    • 所以
      • 这样也就把线性链CRF桥接到HMM中了
    • 所以HMM可以看成一种特殊情况的线性链CRF
      • CRF要比HMM更加强大
        • CRF可以定义数量更多,种类更丰富的特征函数
        • CRF可以使用任意的权重
          • 将对数HMM模型看做CRF时,特征函数的权重由于是log形式的概率,所以都是小于等于0的
          • 在CRF中,每个特征函数的权重可以是任意值
相关推荐
Li_RuiQi3 小时前
DAgger方法演进_独立学习笔记
笔记·学习·计算机视觉
Li_RuiQi8 小时前
DAgger与交互式模仿学习_ACT学习笔记
笔记·学习
He BianGu8 小时前
【笔记】C# 中BindingFlags的详细作用
笔记·c#
AI视觉网奇8 小时前
turtle 入门教程笔记
笔记
跨知易知识产权8 小时前
美国专利确权是什么,和专利诉讼有什么不一样?
笔记
杨逢昌工厂6S管理8 小时前
126-杨逢昌6S三环体系:越做越乱的现场熵增机理与基准化治理——一线现场诊断笔记
经验分享·笔记·职场和发展·学习方法
悟道书生8 小时前
若依 RBAC 权限控制学习笔记
java·网络·笔记·sql·学习·vue
陈哈哈11119 小时前
折腾了半天,总算把 Vim 9.2 装明白了
笔记
陈哈哈11119 小时前
折腾了半天,总算把 OpenGL 的开发环境给装明白了
笔记
深圳老胡10 小时前
STM32F103 硬件 SPI 与软件 IO 模拟 SPI 最高速度差异详解
笔记·stm32·单片机·代码规范·1024程序员节