朴素贝叶斯(NB)、逻辑回归(LR)、隐马尔科夫模型(HMM)、条件随机场(CRF)

版权声明:本文为博主原创文章,如若转载,请注明出处! https://blog.csdn.net/u013010889/article/details/81148809

一直在搞CNN/RNN,对传统的知识了解一直不够,今天恰好看一篇论文需要CRF的知识,就借机都学习一下

梗概

这里写图片描述

  1. 朴素贝叶斯:生成式模型,条件独立 —> 序列形式 隐马尔科夫模型 —> 图形式 通用有向图模型
  2. 逻辑回归:判别式模型,条件不独立 —> 序列形式 线性链条件随机场 —> 序列形式 通用条件随机场

朴素贝叶斯(NB)

贝叶斯公式

P ( Y | X ) = P ( X | Y ) P ( Y ) P ( X )

一般形式:
P ( Y | X 1 , X 2 , X 3 , . . . X n ) = P ( X 1 , X 2 , X 3 , . . . X n | Y ) P ( Y ) P ( X 1 , X 2 , X 3 , . . . X n )

条件独立性假设: 特征之间互相独立,没有耦合,互不干扰。
P ( X 1 , X 2 , X 3 , . . . X n | Y ) = P ( X 1 | Y ) P ( X 2 | Y ) P ( X 3 | Y ) . . . P ( X n | Y )

===>
P ( Y | X 1 , X 2 , X 3 , . . . X n ) = P ( X 1 , X 2 , X 3 , . . . X n | Y ) P ( Y ) P ( X 1 , X 2 , X 3 , . . . X n ) = [ P ( X 1 | Y ) P ( X 2 | Y ) P ( X 3 | Y ) . . . P ( X n | Y ) ] P ( Y ) P ( X 1 , X 2 , X 3 , . . . X n )

因为有条件独立假设,朴素贝叶斯可以不使用梯度下降,而直接通过统计每个特征的逻辑发生比来当做权重
它是生成模型,实际上用作分类时比的是分子大小,即联合概率分布P(X,Y),而P(X,Y)=P(X|Y)*P(Y), P(X|Y)和P(Y)都可由从训练数据里统计获得

P ( Y | X ) = P ( X , Y ) P ( X ) = P ( X | Y ) P ( Y ) P ( X )

逻辑回归(LR)

逻辑回归(Logistic Regression)与线性回归(Linear Regression)都是一种广义线性模型(generalized linear model)因此与线性回归有很多相同之处,去除Sigmoid映射函数的话,逻辑回归就是一个线性回归。可以说,逻辑回归是以线性回归为理论支持的,但是逻辑回归通过Sigmoid函数引入了非线性因素,因此可以轻松处理0/1分类问题。
注意逻辑回归和线性回归都是回归,但是线性回归就是用来回归,而是逻辑回归回归的是概率,是用来分类的,这是因为由于条件之间不独立,不能求出联合概率分布,只能回归后验概率,大于0.5即为yes,所以是判别模型

P ( y | x ) = g ( w T x ) = 1 1 + e x p ( w T x )

损失函数(逻辑回归就是BCE,二分类是逻辑回归,多分类就是softmax):
这里写图片描述

线性回归中的代价函数看上去很好理解,但却不能用于逻辑回归,原因如下:由于g(x)是一个sigmoid函数,使用mse作为损失函数,会成为一个非凸函数,因此,我们需要另外找到一个不同的代价函数,它是凸函数,使得我们可以使用很好的算法,如梯度下降法,而且能保证找到全局最小值。

从概率角度解释(最大似然估计):
逻辑回归假设因变量 y 服从伯努利分布
这里写图片描述
线性回归假设因变量 y 服从高斯分布 y = f ( x , w ) + ε , ε is a zero mean Gaussian with precision β
这里写图片描述
这里写图片描述
线性回归的MSE损失函数加上L2正则化后,概率解释就是在MAP中假设权重W服从高斯分布了,这个更多解释搜索MLE(Maximum Likelihood Estimation)和MAP(Maximum A Posteriori)

隐马尔科夫模型(HMM)

这里写图片描述
HMM模型中存在两个假设:一是输出观察值之间严格独立,二是状态的转移过程中当前状态只与前一状态有关。
可以求出联合概率分布:
这里写图片描述
例子参考李航老师的《统计机器学习方法》p173 例10.1:概率计算算法有有前向算法(α算法)和后向算法(β算法)

(线性链)条件随机场(CRF)

HMM模型中存在两个假设:一是输出观察值之间严格独立,二是状态的转移过程中当前状态只与前一状态有关。但实际上序列标注问题不仅和单个词相关,而且和观察序列的长度,单词的上下文,等等相关。MEMM解决了HMM输出独立性假设的问题。因为HMM只限定在了观测与状态之间的依赖,而MEMM引入自定义特征函数,不仅可以表达观测之间的依赖,还可表示当前观测与前后多个状态之间的复杂依赖。
这里由于去掉了独立性假设,所以不能给出联合概率分布,只能求后验概率,所以是判别模型
这里写图片描述
但是MEMM存在标注偏置问题(Label Bias Problem)
这里写图片描述
实际上,在上图中,状态1偏向于转移到状态2,而状态2总倾向于停留在状态2。
而路径1-1-1-1的概率:0.4*0.45*0.5=0.09
而路径1-2-2-2的概率:0.6*\0.3*0.3=0.054
这是因为s1的转移状态很少,由于每一步的状态转移概率都要归一化,所以s1的转移概率都会被放大,而s2由于转移状态多,因此每一步转移概率归一化的时候都被平均分摊了(比如s2到s2在那个状态最大但由于s2的转移状态多,一分摊才为0.3,而s1到s2在它那个状态下概率最小但是由于转移状态少,不用分摊太多为0.4)。
这里写图片描述
CRF不仅解决了HMM输出独立性假设的问题,还解决了MEMM的标注偏置问题,MEMM容易陷入局部最优是因为只在局部做归一化,而CRF统计了全局概率,在做归一化时考虑了数据在全局的分布,而不是仅仅在局部归一化,这样就解决了MEMM中的标记偏置的问题。使得序列标注的解码变得最优解,和MEMM一样是判别模型


猜你喜欢

转载自blog.csdn.net/u013010889/article/details/81148809