ANN:ML方法与概率图模型

一、ML方法分类:

         产生式模型判别式模型

假定输入x,类别标签y

        —  产生式模型(生成模型)估计联合概率P(x,y),因可以根据联合概率来生成样本:HMMs
        — 判别式模型(判别模型)估计条件概率P(y|x),因为没有x的知识,无法生成样本,只能判断分类:SVMs,CRF,MEM

一个举例:
  (1,0), (1,0), (2,0), (2, 1)

产生式模型:

p(x,y):

P(1, 0) = 1/2,          
P(1, 1) = 0 ,
P(2, 0) = 1/4,
P(2, 1) = 1/4.

判别式模型:
P( y|x ) :
P(0|1) = 1, 
P(1|1) = 0, 
P(0|2) = 1/2, 
P(1|2) = 1/2

o和s分别代表观察序列和标记序列
产生式模型: 构建o和s的联合分布p(s,o);
—判别式模型: 构建o和s的条件分布p(s|o);

—产生式模型中,观察序列作为模型的一部分;
    判别式模型中,观察序列只作为条件,因此可以针对观察序列设计灵活的特征。
    产生式模型:无穷样本==》概率密度模型=产生模型==》预测
    判别式模型:有限样本==》判别函数=预测模型         ==》预测
    一般认为判别型模型要好于生成型模型,因为它是直接根据数据对概率建模,而生成型模型还要先求两个难度相当的概率。

概率图模型:
        概率图模型, 用图的形式表示概率分布,—基于概率论中贝叶斯规则建立起来的,解决不确定性问题,可以用于人工智能、数据挖掘、 语言处理文本分类等领域,图模型是表示随机变量之间的关系的图,图中的节点表示随机变量,缺少边表示条件独立假设。因此可以对联合分布提供一种紧致表示。

根据边的方向性,有两种主要的图模型:
◦ 无向图 :亦称马尔科夫随机场 ( MarkovRandom Fields ,MRF’s) 或马尔科夫网络 ( MarkovNetworks )
◦有向图:亦称贝叶斯网络(Bayesian        Networks)                   或信念网络(Belief Networks, BN’s).
◦ 还有混合图模型,有时称为链图 ( chaingraphs )

 我们不妨拿种地来打个比方。其中有两个概念:位置(site),相空间(phasespace)。“位置”好比是一亩亩农田;“相空间”好比是种的各种庄稼。我们可以给不同的地种上不同的庄稼,这就好比给随机场的每个“位置”,赋予相空间里不同的值。所以,俗气点说,随机场就是在哪块地里种什么庄稼的事情。 
         简单地讲,随机场可以看成是一组随机变量的集合(这组随机变量对应同一个样本空间)。当给每一个位置中按照某种分布随机赋予相空间的一个值之后,其全体就叫做随机场。
        当然,这些随机变量之间可能有依赖关系,一般来说,也只有当这些变量之间有依赖关系的时候,我们将其单独拿出来看成一个随机场才有实际意义。

马尔科夫性质:
        体现了一个思想:离当前因素比较遥远 ( 这个遥远要根据具体情况自己定义)的因素对当前因素的性质影响不大。
        条件随机场模型是一种无向图模型,它是在给定需要标记的观察序列的条件下,计算整个标记序列的联合概率分布,而不是在给定当前状态条件下,定义下一个状态的状态分布。即给定观察序列 O, 求最佳序列 S
 

二、CRF:

       条件随机场模型是由Lafferty在2001年提出的一种典型的判别式模型。它在观测序列的基础上对目标序列进行建模,重点解决序列化标注的问题。条件随机场模型既具有判别式模型的优点,又具有产生式模型考虑到上下文标记间的转移概率,以序列化形式进行全局参数优化和解码的特点,解决了其他判别式模型(如最大熵马尔科夫模型)难以避免的标记偏置问题。

        条件随机场理论(CRFs)可以用于序列标记数据分割组块分析等自然语言处理任务中。在中文分词、中文人名识别、歧义消解等汉语自然语言处理任务中都有应用,表现很好。目前基于CRFs的主要系统实现有CRF,FlexCRF,CRF++。缺点:训练代价大、复杂度高

 

—PreKnowledge:
— 产生式模型和判别式模型( Generativemodel vs. Discriminative model )
— 概率图模型
— 隐马尔科夫模型
— 最大熵模型

三、HMM、MEMM、CRF区别和联系:

原文链接: http://1.guzili.sinaapp.com/?p=133
        隐马尔可夫模型(Hidden Markov Model,HMM),最大熵马尔可夫模型(Maximum Entropy Markov Model,MEMM)以及条件随机场(Conditional Random Field,CRF)是序列标注中最常用也是最基本的三个模型。HMM首先出现,MEMM其次,CRF最后。

       三个算法主要思想如下:
  • HMM模型是对转移概率和表现概率直接建模,统计共现概率。
  • MEMM模型是对转移概率和表现概率建立联合概率,统计时统计的是条件概率,但MEMM容易陷入局部最优,是因为MEMM只在局部做归一化。
  • RF模型中,统计了全局概率,在 做归一化时,考虑了数据在全局的分布,而不是仅仅在局部归一化,这样就解决了MEMM中的标记偏置(label bias)的问题。

举个例子,对于一个标注任务,“我爱北京天安门“,

                                 标注为” s s  b  e b c  e”

  • 对于HMM的话,其判断这个标注成立的概率为 P= P(s转移到s)*P(‘我’表现为s)* P(s转移到b)*P(‘爱’表现为s)* …*P().训练时,要统计状态转移概率矩阵和表现矩 阵
  • 对于MEMM的话,其判断这个标注成立的概率为 P= P(s 转移到s|’我’表现为s)*P(‘我’表现为s)* P(s转移到b|’爱’表现为s)*P(‘爱’表现为s)*..训练时,要统计条件状态转移概率矩阵和表现矩阵。
  • 对于CRF的话,其判断这个标注成立的概率为 P= F(s转移到s,’我’表现为s)….F为一个函数,是在全局范围统计归一化的概率而不是像MEMM在局部统计归一化的概率。

当前,最后出现的CRF在多项任务上达到了统治级的表现,所以如果重头搞应用的话,大家可以首选CRF。本质上,CRF有以下三个优点:

  • CRF没有HMM那样严格的独立性假设条件,因而可以容纳任意的上下文信息。               特征设计灵活(与ME一样)         ————与HMM比较
  • 同时,由于CRF计算全局最优输出节点的条件概率,它还克服了最大熵马尔可夫模型标记偏置(Label-bias)的缺点。 ­­————与MEMM比较
  • CRF是在给定需要标记的观察序列的条件下,计算整个标记序列的联合概率分布,而不是在给定当前状态条件下,定义下一个状态的状态分布。

凡事都有两面,正由于这些优点,CRF需要训练的参数更多,与MEMM和HMM相比,它存在训练代价大、复杂度高的缺点。


四、标记偏置问题:
      

那么,究竟什么是标记偏置问题呢?还是看个实际例子吧!


     基于上图各边上的转移概率简单进行计算可得每条路径的概率如下:

  • 路径1-1-1-1的概率: 0.4*0.45*0.5 =0.09
  • 路径2-2-2-2的概率:    0.2*0.3*0.3   =0.018
  • 路径1-2-1-2的概率:    0.6*0.2*0.5   =0.06
  • 路径1-1-2-2的概率:    0.4*0.55*0.3=0.066

        由此,可知最优路径为1-1-1-1. 然而,仔细观察可发现上图中stat1 中每个结点都倾向于转移到stat2,这明显是和直觉不相符的。( 因为状态2可以转换的状态比状态1要多,从而使转移概率降低;即MEMM倾向于选择拥有更少转移的状态) 这就是所谓的标注偏置问题。实际上,造成这一问题的根本原因是每个节点分支数不同,由于MEMM的局部归一化特性,使得转出概率的分布不均衡,最终导致状态的转移存在不公平的情况。

        怎么解决这种问题呢?先介绍一个最直观的最粗暴的解决方法,由于我们知道是因为概率分布不均导致的,可以简单把每个节点转出概率和为1的限制去掉,比如我们简单把上图中stat2中每个结点出发的边的概率值×10,重新计算每条路径的概率如下:

  • 路径1-1-1-1的概率: 0.4*0.45*0.5=0.09
  • 路径2-2-2-2的概率: 2*3*3=18
  • 路径1-2-1-2的概率: 0.6*2*5=6
  • 路径1-1-2-2的概率: 0.4*0.55*3=0.66

由此可得最优路径是2-2-2-2, 这就解决了MEMM的标记偏置问题。当然这个方法太粗暴了,CRF则是利用一种全局的优化思路来定向解决的。

至此,这三个算法的区别和联系基本算讲清楚了。

下面从机器学习中的概率图角度来看如何区分三者的区别呢?下面这三个图非常清晰地展示了之间的区别和联系。

上图很好诠释了HMM模型中存在两个假设:

       一是输出观察值之间严格独立,二是状态的转移过程中当前状态只与前一状态有关(一阶马尔可夫模型)。

上图说明MEMM模型克服了观察值之间严格独立产生的问题,但是由于状态之间的假设理论,使得该模型存在标注偏置问题。

上图显示CRF模型解决了标注偏置问题,去除了HMM中两个不合理的假设。当然,模型相应得也变复杂了。

最后,如果要想仔细研究下这三个算法发展历程的话,请接着阅读以下部分。

        HMM模型将标注任务抽象成马尔可夫链,一阶马尔可夫链式针对相邻标注的关系进行建模,其中每个标记对应一个概率函数。

        HMM是一种产生式模型,定义了联合概率分布p(x,y) ,其中x和y分别表示观察序列和相对应的标注序列的随机变量。为了能够定义这种联合概率分布,产生式模型需要枚举出所有可能的观察序列,这在实际运算过程中很困难,所以我们可以将观察序列的元素看做是彼此孤立的个体, 即假设每个元素彼此独立(和naive bayes类似),任何时刻的观察结果只依赖于该时刻的状态。

        HMM模型的这个假设前提在比较小的数据集(也不全是吧)上是合适的,但实际上在大量真实语料中观察序列更多的是以一种多重的交互特征形式表现的,观察元素之间广泛存在长程相关性。例如,在命名实体识别任务中,由于实体本身结构所具有的复杂性,利用简单的特征函数往往无法涵盖所有特性,这时HMM的假设前提使得它无法使用复杂特征(它无法使用多于 一个标记的特征。),这时HMM的弊端就显现无疑了。突破这一瓶颈的方法就是引入最大熵模型。下面,我们简单介绍下这个模型,大家会发现ME和HMM具有天然的杂交优势,不结合天理不容哈,呵呵(不合体天理不容 %!)。

        我们知道最大熵模型可以使用任意的复杂相关特征,在性能上也超过了Bayes分类器。最大熵模型的优点:首先,最大熵统计模型获得的是所有满足约束条件的模型中信息熵极大的模型; 其次,最大熵统计模型可以灵活地设置约束条件,通过约束条件的多少可以调节模型对未知数据的适应度和对已知数据的拟合程度; 再次,它还能自然地解决了统计模型中参数平滑的问题。最大熵模型的不足:首先,最大熵统计模型中二值化特征只是记录特征的出现是否,而文本分类需要知道特征的强度,因此,它在分类方法中不是最优的; 其次,由于算法收敛的速度较慢,所以导致最大熵统计模型它的计算代价较大,时空开销大; 再次,数据稀疏问题比较严重。最致命的是,作为一种分类器模型,最大熵对每个词都是单独进行分类的,标记之间的关系无法得到充分利用。然而,具有马尔可夫链的HMM模型可以建立标记之间的马尔可夫关联性,这是最大熵模型所没有的。

        好了,现在是时候隆重介绍杂交后的最大熵马尔科夫模型(MEMM)。

        简单来说,MEMM把HMM模型和maximum-entropy模型的优点集合成一个  统一的产生式模型 ,这个模型允许状态转移概率依赖于序列中彼此之间非独立的特征上,从而将上下文信息引入到模型的学习和识别过程中,达到了提高识别的准召率的效果。有实验证明,MEMM在序列标注任务上表现的比 HMM和无状态的最大熵模型要好得多。然而,如上面所述,MEMM并不完美,它存在明显的标记偏置问题。于是CMU的教授John Lafferty提出了更先进的CRF模型。

        CRF模型具有以下特点:(1)CRF在给定了观察序列的情况下,对整个的序列的联合概率有一个统一的指数模型,它具备一个比较吸引人的特性就是其损失函数的凸面性;(2)CRF具有很强的推理能力,并且能够使用复杂、有重叠性和非独立的特征进行训练和推理,能够充分地利用上下文信息作为 特征,还可以任意地添加其他外部特征,使得模型能够获取的信息非常丰富;(3)CRF解决了MEMM中的标记偏置问题,这也正是CRF与MEMM的本质区别所在—-最大熵模型在每个状态都有一个概率模型,在每个状态转移时都要进行归一化。如果某个状态只有一个后续 状态,那么该状态到后续状态的跳转概率即为1。这样,不管输入为任何内容,它都向该后续状态跳转。而CRFs是在所有的状态上建立一个统一的概率模型,这 样在进行归一化时,即使某个状态只有一个后续状态,它到该后续状态的跳转概率也不会为1。

        最后,我们简单汇总下实际应用中大放异彩的CRF的优缺点来结束本文。

CRF模型的优点:首先,CRF模型在结合多种特征方面的存在优势;其次,它避免了标记偏置问题;再次,CRF的性能更好,对特征的融合能力更强。

CRF 模型的不足:首先,特征的选择和优化是影响结果的关键因素,特征选择问题的好与坏,直接决定了系统性能的高低;其次,训练模型的时间比ME更长,且获得的模型很大,在一般的PC机上可能无法运行。

参考资料:

       【1】http://ssli.ee.washington.edu/people/duh/projects/CRFintro.pdf

       【2】http://blog.csdn.net/zhoubl668/article/details/7787690

       【3】http://blog.csdn.net/caohao2008/article/details/4242308

       【4】http://www.cnblogs.com/549294286/archive/2013/06/06/3121761.html

       【5】www.cs.cmu.edu/~epxing/Class/10801-07/lectures/note7.pdf


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于ANN(人工神经网络)和KNN(k最近邻)的图像分类是两种常用的机器学习算法。它们都可以用于解决图像分类问题。 首先,ANN是一种通过模拟人类神经系统的结构和功能来处理信息的机器学习模型。对于图像分类,ANN可以从图像中提取特征,并将其输入到神经网络中进行训练。神经网络是一种由多个层次组成的模型,每一层都由多个神经元组成。通过不断调整神经元之间的连接权重,神经网络可以学习到图像中不同特征之间的关系。训练完成后,ANN可以对未知图像进行分类,识别图像中的对象或模式。 而KNN算法则是一种基于实例的学习方法,它通过计算已知样本集中与未知样本最相似的k个样本,来进行分类。对于图像分类问题,KNN可以使用已知图像的特征向量作为样本集,然后计算未知图像特征向量与已知图像特征向量之间的距离。距离最近的k个样本可以决定未知图像的类别。 相比而言,ANN在训练时有更强的学习能力,可以通过调整权重来获得更准确的分类结果。然而,ANN训练的过程可能较为复杂且耗时。而KNN则是一种简单且易于实现的算法,但对于大规模图像分类可能面临计算能力和存储空间的限制。 综上所述,基于ANN和KNN的图像分类算法各有优缺点,可以根据实际需求选择。对于大规模图像分类任务,可以考虑使用ANN来进行深度学习;而对于小规模数据集和简单的图像分类问题,KNN也是一种不错的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值