先验概率后验概率似然函数与机器学习中概率模型(如逻辑回归)的关系理解

Posted jhc888007

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了先验概率后验概率似然函数与机器学习中概率模型(如逻辑回归)的关系理解相关的知识,希望对你有一定的参考价值。

看了好多书籍和博客,讲先验后验、贝叶斯公式、两大学派、概率模型、或是逻辑回归,讲的一个比一个清楚 ,但是联系起来却理解不能

 

基本概念如下

 

  • 先验概率:一个事件发生的概率 [P(y)]
  • 后验概率:一个事件在另一个事件发生条件下的条件概率 [P(y|x)]
  • 贝叶斯公式:联合概率公式直接能推导出来的,代表什么意义?不放在具体问题中代表不了任何意义 [P(y|x) = frac{{P(x|y)P(y)}}{{P(x)}}]

拿一个实际的例子,如果用阴天预测是否下雨

 

  • 先验概率:下雨的概率 [P(rain)]
  • 后验概率:已经知道阴天,下雨的概率 [P(rain|cloudy)]
  • 贝叶斯公式:表现了后验概率与先验概率的关系 [P(rain|cloudy) = frac{{P(cloudy|rain)P(rain)}}{{P(cloudy)}}] 
    • 把注意力集中在分子,公式可以理解为:阴天会下雨的概率(后验概率),不仅跟下雨那天的确是阴天的概率(条件概率)有关,还跟下雨本身的概率(先验概率)有关,如果下雨本身概率很低(先验概率=0),即便下雨一定阴天(条件概率=1),那么下雨的概率还是会很低(后验概率=0) [P(rain|cloudy) = frac{{P(cloudy|rain)P(rain)}}{{P(cloudy)}}] 
    • 把注意力集中在分母,公式可以理解为:阴天会下雨的概率(后验概率),不仅跟下雨并且是阴天的概率有关,还跟不下雨也是阴天的概率有关 [P(rain|cloudy) = frac{{P(cloudy|rain)P(rain)}}{{P(cloudy|rain)P(rain) + P)(cloudy|norain)P(norain)}}]
  • 似然函数:根据贝叶斯公式得出的先验概率与后验概率的关系参数 [{P(cloudy|rain)}] 由于已经知道是阴天了,忽略P(cloudy) [P(rain|cloudy) propto P(cloudy|rain)P(rain)]

在很多文献中,将x与y分别描述为“因”和“果”,P(因)即为先验概率,P(因|果)即已经知道结果求原因的概率为后验概率,这里产生了第一个混淆点,在很多现实的例子里,“因”“果”是什么?因为阴天所以下雨?还是因为要下雨所以阴天?

 

在上面的例子里,显然只能解释为后者,即这天要下雨是“原因”,阴天是下雨的“结果”,下雨可能引发阴天,也可能引发不阴天。这个理解本身就很别扭。

 

在英文中,P(y)先验概率、P(y|x)后验概率、P(x|y)似然函数、P(x)分别的名称为:prior、posterior、likelihood、evidence,最后的P(x)连中文名称都没有,但我个人认为这个才是理解这些概念的关键。

 

先说说概率论两大学派,频率学派和贝叶斯学派,频率学派认为事件出现的概率是一定的,贝叶斯学派认为事件的概率也是存在分布的

 

  • 频率学派:认为事件概率是确定的,所以重复实验解决一切问题,代表算法是最大似然估计MLE,这里常举的例子是硬币的例子,如果抛10次硬币,10次正面向上,则频率学派认为P(抛硬币正面向上)就为1.0。
  • 贝叶斯学派:认为事件概率本身是有分布的,所以引入先验概率(分布)的概念,代表算法是最大后验概率估计MAP,如果认为硬币很可能是均匀的,如果抛10次硬币,10次正面向上,则贝叶斯学派认为P(抛硬币正面向上)是一个介于0.5-1.0之间的数。

 

这里是怎么跟上面的先验概率、后验概率、似然函数联系起来的呢,注意频率学派和贝叶斯学派都是参数估计的方法,所以要估计的不是正面或者反面向上,而是模型的参数,P(抛硬币正面向上)其实只是模型参数的一个表现。如果用“因果论”来解释,模型参数即为因,抛硬币结果为正面向上即为果。这里为了避免混淆,许多文献令模型参数为θ,区别于之前使用的y。

 

  • 先验概率: [P( heta )] 
  • 后验概率: [P( heta |x)]
  • 似然函数: [P(x| heta )]

基于这样的定义,推导两个学派的估计方法

 

  • 频率学派:使用最大似然估计,即 [mathop {arg max }limits_ heta  (P({x_1},{x_2},...,{x_{10}}| heta ))] 像硬币实验一样的独立重复实验可化简为 [mathop {arg max }limits_ heta  (prodlimits_i {P({x_i}| heta )} )] 直观理解也很好理解,如果抛10次硬币都是正面向上,那么最可能的估计当然就是这枚硬币只有可能正面向上(说不定两面都是正面)

 

  • 贝叶斯学派:使用最大后验概率估计,即 [mathop {arg max }limits_ heta  (P( heta |{x_1},{x_2},...,{x_{10}})) propto P({x_1},{x_2},...,{x_{10}}| heta )P( heta )] 正好比最大似然估计多了一项P(θ),即对应先验分布,直观理解即硬币可能两面都是正面,也可能一面重一些,也可能是均匀的,各种情况的(先验)概率不同,各种情况下10次抛硬币结果都正面朝上的(条件)概率也不同

 

目前还比较顺利,但回到刚才阴天下雨的问题,在机器学习任务中,我们一般是希望通过阴天来判断是否会下雨,那么模型对应的(表现)就是P(rain|cloudy),这里用“因”到底应该对应模型参数?还是下雨?

 

接下来再看一个机器学习的典型模型——逻辑回归,在《统计学习方法》等文献中,逻辑回归模型如下(x为输入特征向量、θ为参数向量、y为预测结果)  [P(y = 1|x) = frac{1}{{1 + {e^{ - heta x}}}}] [P(y = 0|x) = 1 - P(y = 1) = frac{1}{{1 + {e^{ heta x}}}}] P(y=1|x)与P(y=0|x)是该模型对于后验概率的估计,可以化简为 [P(y|x) = {(frac{1}{{1 + {e^{ - heta x}}}})^y}{(1 - frac{1}{{1 + {e^{ - heta x}}}})^{1 - y}}] 然后是用最大似然估计推导逻辑回归参数估计的过程 [mathop {max }limits_ heta  prodlimits_i {{{(frac{1}{{1 + {e^{ - heta {x_i}}}}})}^{{y_i}}}{{(1 - frac{1}{{1 + {e^{ - heta {x_i}}}}})}^{1 - {y_i}}}} ] 

这推导表面上顺利的不得了,大家都这么写,仔细想想不对啊!似然函数是P(a|b)的话,后验分布应该是P(b|a),两个怎么成了一回事?x、y、θ挤到一块,哪个是哪个?

 

所以个人认为用“因”“果”描述先验后验,不太合适。英文将P(x)描述为evidence,evidence有显性的意思在里面,如果用“显示的”“隐藏的”来描述,看是不是能顺畅点。

 

在阴天下雨模型中,我们知道今天是阴天,要推断的是是否要下雨,阴天是“显示的”,下雨是“隐藏的”,那么先验概率自然是P(下雨),后验概率则为P(下雨|阴天)。

 

在硬币模型中,我们知道10次抛硬币结果是正面,要推断的是抛硬币结果模型,抛硬币结果是“显”,模型是“隐”,那么先验分布为P(模型),后验分布为P(模型|10次抛硬币结果是正面)。

 

在逻辑回归模型中,模型的功能是根据输入x预测输出y,自然x是已知的,是“显”,y是要预测的,是“隐”,所以模型将决策函数假设为后验概率P(y|x)。但是在参数估计的过程中,输入的是训练数据,训练数据的x、y都是已知的,而模型参数θ才是未知的,所以x、y是“显”,θ是“隐”,所以此时的似然函数不是P(x|y),也不是P(θ|x),而是P(θ|x,y),这样,最大似然估计的式子就可以推导出来了!

 

回头看逻辑回归的模型,其实假设的也不是P(y|x),而是P(y|x,θ)。

 

所以其实预测和参数估计是两个过程,一个是概率过程,根据模型求概率(数据),一个是统计过程,根据数据(展现出来的概率)求模型,两个过程正好相反,这里是第二个混淆点。

 

举另一个实例,如果需要根据一个人是否咳嗽判断他是否有肺炎,那么“是否咳嗽”就是“显”,“是否有肺炎”就是“隐”;如果需要根据一个人是否有肺炎判断他平时是否咳嗽,那么“是否有肺炎”就是“显”,“是否咳嗽”就是“隐”,这哪有什么绝对的因果关系嘛。

 

菜鸡见解,还请大神多多斧正!

 

 

 

 

 

参考文献:

https://blog.csdn.net/u011508640/article/details/72815981 

https://www.cnblogs.com/ldphoebe/p/5041813.html

https://blog.csdn.net/zjuPeco/article/details/77165974

https://www.zhihu.com/question/24261751

https://www.zhihu.com/question/27398304

 

以上是关于先验概率后验概率似然函数与机器学习中概率模型(如逻辑回归)的关系理解的主要内容,如果未能解决你的问题,请参考以下文章

机器学习基础系列--先验概率 后验概率 似然函数 最大似然估计(MLE) 最大后验概率(MAE) 以及贝叶斯公式的理解

机器学习中的贝叶斯方法---先验概率似然函数后验概率的理解及如何使用贝叶斯进行模型预测

信息论最大熵模型与EM算法

[转] 先验概率与后验概率&&贝叶斯与似然函数

先验概率,后验概率,似然函数,最大似然估计待整理

最大似然估计 (MLE)与 最大后验概率(MAP)在机器学习中的应用