• 猪猪的机器学习笔记(十八)条件随机场


    条件随机场

     

    作者:樱花猪

     

    摘要:

    本文为七月算法(julyedu.com12月机器学习第十八次课在线笔记。条件随机场是一种判别式概率模型,是随机场的一种,常用于标注或分析序列资料,如自然语言文字或是生物序列。

     

    引言:

       “条件随机场”被用于中文分词和词性标注等词法分析工作,一般序列分类模型常常采用隐马尔科夫模型(HMM),像基于类的中文分词。但隐马尔可夫模型中存在两个假设:输出独立性假设和马尔可夫性假设。其中,输出独立性假设要求序列数据严格相互独立才能保证推导的正确性,而事实上大多数序列数据不能被表示成一系列独立事件。而条件随机场则使用一种概率图模型,具有表达长距离依赖性和交叠性特征的能力,能够较好地解决标注(分类)偏置等问题的优点,而且所有特征可以进行全局归一化,能够求得全局的最优解。

        隐马尔科夫模型可以用于分词,而条件随机场则是可以用于词性的判断。

     

    预备知识:

    最大熵模型,隐马尔科夫模型、Logistic回归

     

    一、概述

    1、几种网络模型的比较

    HMM

     

    MEMM

     

    CRF

     

    RVM

     

     

    2、对数线性模型

       x为某样本,yx的可能标记,将Logistic/Softmax回归的特征记做Fj(x,y),则对数线性模型的一般形式:

     

    其中,归一化因子:

     

    给定x的预测标记为:

     

    3、特征函数的选择

    特征函数几乎可任意选择,甚至特征函数间重叠;

    以自然语言处理为例:

    假定观测x是单词,则下列都是合理可行的特征:

    x以大写字母开头xJ开头x的长度为7x中包含两个大写字母

    NLP中常用的特征:前缀、后缀、词典位置、前置/后置标点

     

    4、词性标注的特征函数

       词性标注是指将每个单词标记为名词/动词/形容词/介词等。

       词性:POSPart Of Speech

    o记w为句子s的某个单词,则特征函数可以是:

    • w在句首/句尾(位置相关)
    • w的前缀是anti-/co-/dis-/inter-(单词本身)
    • w的后缀是-able/-ation/-er/-ing(单词本身)
    • w前面的单词是a/could/SALUTATION(单词间)
    • w后面的单词是am/is/are/(单词间)

    w前面两个单词是Wouldlike/Therebe(单词和句子)

    高精度的POS会使用超过10万个特征。

    • 每个特征只和当前词性有关,最多只和相邻词的词性有关;
    • 但特征可以和所有词有关。

     

    5、词性标注

       词性标注被称为“结构化预测”,该任务与标准的类别学习任务存在巨大不同:

    • 如果每个单词分别预测,将丢失众多信息;
    • 相邻单词的标记是相互影响的,非独立。
    • 不同的句子有不同长度;
    • 这导致不方便将所有句子统一成同长度向量。
    • 标记序列解集与句子长度呈指数级增长。
    • 这使得穷举计算几乎无法实用。

     

    二、线性条件随机场

    线性条件随机场可以使用对数线性模型。

    使用表示n个词的序列;表示相应的词性

    定义:

     

        

        次特征:

    定义句子的第j个特征是由若干次特征组合而成的,这里的依赖或部分依赖于当前整个句子、当前词的标记、前一个词的标记、当前词在句子中的位置i

     

    将每一个位置i上的次特征相加,即得到特征,从而解决训练样本变长的问题。

     

    参数训练:

    给定一组训练样本(x,y),找出权向量w,使得下式成立:

     

    满足上式的w,即为最终的推断参数。

     

    二、条件随机场

         X=(X1,X2Xn)Y=(Y1,Y2Ym)都是联合随机变量,若随机变量Y构成一个无向图G=(V,E)表示的马尔科夫随机场(MRF),则条件概率分布P(Y|X)称为条件随机场(Conditional Random Field,CRF)

    • X称为输入变量、观测序列
    • Y称为输出序列、标记序列、状态序列

      一般而言,MRF是关于隐变量(状态变量、标记变量)的图模型,而给定观测变量后考察隐变量的条件概率,即为CRF但这种混用,类似较真总理和周恩来的区别。混用的原因:在计算P(Y|X)时需要将X也纳入MRF中一起考虑

     

    三、线性链条件随机场

    X=(X1,X2Xn)Y=(Y1,Y2Ym)都是联合随机变量,若随机变量Y构成一个无向图G=(V,E)表示的马尔科夫随机场(MRF),则条件概率分布P(Y|X)称为条件随机场(Conditional Random Field,CRF)

    即:

    其中,表示与结点v相连的所有结点wo一种重要而特殊的CRF是线性链条件随机场(Linear Chain Conditional Random Field),可用于标注等问题。这时,条件概率P(Y|X)中,Y表示标记序列(或称状态序列)X是需要标注的观测序列。

     

    线性条件随机场的定义:

    X=(X1,X2Xn)Y=(Y1,Y2Yn)均为线性链表示的随机变量序列,若在给定随机变量序列X的条件下,随机变量序列Y的条件概率分布P(Y|X)构成条件随机场,即满足马尔科夫性

     

    则称P(Y|X)为线性链条件随机场。在标注问题中,X表示输入序列或称观测序列,Y表述对应的输出标记序列或称状态序列。

     

    四、CRF总结

    条件随机场可以使用对数线性模型表达。不严格的说,线性链条件随机场可看成是隐马尔科夫模型的推广,隐马尔科夫模型可看成是线性链条件随机场的特殊情况。

    • 概率计算使用前向-后向算法;
    • 参数学习使用梯度上升算法(IIS)
    • 应用于标注/分类,在给定参数和观测序列(样本)的前提下,使用Viterbi算法进行标记的预测。
    • 标记序列y要求链状,但x无要求,除了一维的词性标注、中文分词,还可以用于离散数据(如用户信息),或二维数据(如图像),用途广泛。

    缺点:有监督学习计算参数、参数估计的速度慢。





  • 相关阅读:
    python 图像处理(12):基本形态学滤波
    python 图像处理(11):基本图形的绘制
    python 图像处理(10):图像自动阈值分割
    python 图像处理(9):图像简单滤波
    python 图像处理(8):直方图与均衡化
    python 图像处理(7):对比度与亮度调整
    python 图像处理(6):图像的形变与缩放
    python 图像处理(5):图像的批量处理
    博客说明
    TestNG 添加监听器的方式
  • 原文地址:https://www.cnblogs.com/Dr-XLJ/p/5466856.html
Copyright © 2020-2023  润新知