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

举报
竹叶青 发表于 2019/09/03 19:56:00 2019/09/03
【摘要】 梗概朴素贝叶斯:生成式模型,条件独立 —> 序列形式 隐马尔科夫模型 —> 图形式 通用有向图模型逻辑回归:判别式模型,条件不独立 —> 序列形式 线性链条件随机场 —> 序列形式 通用条件随机场朴素贝叶斯(NB)贝叶斯公式 P(Y|X)=P(X|Y)∗P(Y)P(X)P(Y|X)=P(X|Y)∗P(Y)P(X)一般形式: P(Y|X1,X2,X3,...Xn)=P(X1,X2,X3,......

   666.png


梗概

1111.png




朴素贝叶斯:生成式模型,条件独立 —> 序列形式 隐马尔科夫模型 —> 图形式 通用有向图模型

逻辑回归:判别式模型,条件不独立 —> 序列形式 线性链条件随机场 —> 序列形式 通用条件随机场

朴素贝叶斯(NB)


贝叶斯公式 

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

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


一般形式: 

P(Y|X1,X2,X3,...Xn)=P(X1,X2,X3,...Xn|Y)∗P(Y)P(X1,X2,X3,...Xn)

P(Y|X1,X2,X3,...Xn)=P(X1,X2,X3,...Xn|Y)∗P(Y)P(X1,X2,X3,...Xn)


条件独立性假设: 特征之间互相独立,没有耦合,互不干扰。 

P(X1,X2,X3,...Xn|Y)=P(X1|Y)∗P(X2|Y)∗P(X3|Y)∗...P(Xn|Y)

P(X1,X2,X3,...Xn|Y)=P(X1|Y)∗P(X2|Y)∗P(X3|Y)∗...P(Xn|Y)


===> 

P(Y|X1,X2,X3,...Xn)=P(X1,X2,X3,...Xn|Y)∗P(Y)P(X1,X2,X3,...Xn)=[P(X1|Y)∗P(X2|Y)∗P(X3|Y)∗...P(Xn|Y)]∗P(Y)P(X1,X2,X3,...Xn)

P(Y|X1,X2,X3,...Xn)=P(X1,X2,X3,...Xn|Y)∗P(Y)P(X1,X2,X3,...Xn)=[P(X1|Y)∗P(X2|Y)∗P(X3|Y)∗...P(Xn|Y)]∗P(Y)P(X1,X2,X3,...Xn)

因为有条件独立假设,朴素贝叶斯可以不使用梯度下降,而直接通过统计每个特征的逻辑发生比来当做权重。 

它是生成模型,实际上用作分类时比的是分子大小,即联合概率分布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)

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(wTx)=11+exp(−wTx)

P(y|x)=g(wTx)=11+exp(−wTx)


损失函数(逻辑回归就是BCE,二分类是逻辑回归,多分类就是softmax): 


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


从概率角度解释(最大似然估计): 

逻辑回归假设因变量 y 服从伯努利分布 


2222.png

 

线性回归假设因变量 y 服从高斯分布 y=f(x,w)+εy=f(x,w)+ε, ε is a zero mean Gaussian with precision β 


3333.png


999.png

 

线性回归的MSE损失函数加上L2正则化后,概率解释就是在MAP中假设权重W服从高斯分布了,这个更多解释搜索MLE(Maximum Likelihood Estimation)和MAP(Maximum A Posteriori)


隐马尔科夫模型(HMM)


4444.png

 

HMM模型中存在两个假设:一是输出观察值之间严格独立,二是状态的转移过程中当前状态只与前一状态有关。 

可以求出联合概率分布: 


5555.png

 

例子参考李航老师的《统计机器学习方法》p173 例10.1:概率计算算法有有前向算法(α算法)和后向算法(β算法)


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



HMM模型中存在两个假设:一是输出观察值之间严格独立,二是状态的转移过程中当前状态只与前一状态有关。但实际上序列标注问题不仅和单个词相关,而且和观察序列的长度,单词的上下文,等等相关。MEMM解决了HMM输出独立性假设的问题。因为HMM只限定在了观测与状态之间的依赖,而MEMM引入自定义特征函数,不仅可以表达观测之间的依赖,还可表示当前观测与前后多个状态之间的复杂依赖。 

这里由于去掉了独立性假设,所以不能给出联合概率分布,只能求后验概率,所以是判别模型 

 

66666.png

但是MEMM存在标注偏置问题(Label Bias Problem) 

 

7777.png

实际上,在上图中,状态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)。 

 

8888.png

CRF不仅解决了HMM输出独立性假设的问题,还解决了MEMM的标注偏置问题,MEMM容易陷入局部最优是因为只在局部做归一化,而CRF统计了全局概率,在做归一化时考虑了数据在全局的分布,而不是仅仅在局部归一化,这样就解决了MEMM中的标记偏置的问题。使得序列标注的解码变得最优解,和MEMM一样是判别模型

本文转载自异步社区

原文链接:

https://www.epubit.com/articleDetails?id=N0ff6ce52-88dc-42c8-8d3d-2372add46054


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。