看了好多书籍和博客,讲先验后验、贝叶斯公式、两大学派、概率模型、或是逻辑回归,讲的一个比一个清楚 ,但是联系起来却理解不能
基本概念如下
- 后验概率:一个事件在另一个事件发生条件下的条件概率 \[P(y|x)\]
- 贝叶斯公式:联合概率公式直接能推导出来的,代表什么意义?不放在具体问题中代表不了任何意义 \[P(y|x) = \frac{{P(x|y)P(y)}}{{P(x)}}\]
拿一个实际的例子,如果用阴天预测是否下雨
- 把注意力集中在分母,公式可以理解为:阴天会下雨的概率(后验概率),不仅跟下雨并且是阴天的概率有关,还跟不下雨也是阴天的概率有关 \[P(rain|cloudy) = \frac{{P(cloudy|rain)P(rain)}}{{P(cloudy|rain)P(rain) + P)(cloudy|norain)P(norain)}}\]
在很多文献中,将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(\theta |x)\]
基于这样的定义,推导两个学派的估计方法
目前还比较顺利,但回到刚才阴天下雨的问题,在机器学习任务中,我们一般是希望通过阴天来判断是否会下雨,那么模型对应的(表现)就是P(rain|cloudy),这里用“因”到底应该对应模型参数?还是下雨?
这推导表面上顺利的不得了,大家都这么写,仔细想想不对啊!似然函数是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://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