先验概率、后验概率、似然函数的理解

2024-05-28 20:08

本文主要是介绍先验概率、后验概率、似然函数的理解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

注释:最近一直看到先验后验的说法,一直不懂,这次查了资料记录一下。

1.先验和后验的区别:

A.简单的了解两个概率的含义

  先验概率可理解为统计概率,后验概率可理解为条件概率。

  -----------------------------------------------------------------------------------------------------------  设定背景:酒至半酣,忽阴云漠漠,骤雨将至。

  情景一:    “天不会下雨的,历史上这里下雨的概率是20%”----先验概率    “但阴云漠漠时,下雨的概率是80%”----后验概率

情景二: “飞飞别急着走啊,历史上酒桌上死人的概率只有5%“----先验概率 ”可他是曹操啊,梦里都杀人“----后验概率
B.区别两者的含义

我们来看一下贝叶斯统计的一个有趣的案例案例:假如你是一个女生, 你在你的老公书包里发现了一个别的女人的内裤那么他出轨的概率是多少。

图:贝爷居然能解决家庭纠纷?

稍微熟悉这个问题的人对会知道做这个题目你要先考察基率,你要把这个问题分解为几步考虑:

1,你老公在没有任何概率情况下出轨的概率是多少? 如果他是个天生老实巴交的程序员或者风流倜傥的CEO, 那么显然不该一视同仁

2,如果你老公出轨了, 那么他有一条内裤的概率是多少, 如果他没出轨, 出现这个情况概率有多少? 想想一般人即使出轨也不会犯那么傻的错误, 会不会有没出轨而出现内裤的状况? 有没有可能是某个暗恋你老公的人的陷害?

3, 根据1 和2求解最终问题,这才是拥有大学数学能力的你该做的分析。

在这里1其实就是先验概率P(A),而2是条件概率P(B|A), 最终得到3后验概率P(A|B)。这三种即是贝叶斯统计的三要素。

基于条件概率的贝叶斯定律数学方程极为简单:

A即出轨, B是内裤出现, 你得到1,2,就可以根据公式算出根据根据内裤出现判断出轨的概率。

先验概率在贝叶斯统计中具有重要意义,首先先验概率即我们在取得证据之前所指定的概率P(A), 这个值通常是根据我们之前的常识,带有一定的主观色彩。 就像刚刚说的出轨的问题, 你的先验概率代表了你对你男人的信心。

有一个非常有趣的现象是如果我们的先验概率审定为1或0(即肯定或否定某件事发生), 那么无论我们如何增加证据你也依然得到同样的条件概率(此时P(A)=0 或 1 , P(A|B)= 0或1) 这告诉我们的第一个经验就是不要过早的下论断, 下了论断你的预测也就无法进化了, 或者可以称之为信仰。 你如果想让你的认知进步,就要给各种假设留一点空间。

贝叶斯分析的思路对于由证据的积累来推测一个事物发生的概率具有重大作用, 它告诉我们当我们要预测一个事物, 我们需要的是首先根据已有的经验和知识推断一个先验概率, 然后在新证据不断积累的情况下调整这个概率。整个通过积累证据来得到一个事件发生概率的过程我们称为贝叶斯分析。

2.似然函数:

    应用在概率函数中,其实和概率函数差不多,就是一个数产生的概率函数,比如:

    

    引申到“最大似然函数”:就是求最大概率下的参数。

    知乎上这个解释感觉很完美:

最大似然估计:现在已经拿到了很多个样本(你的数据集中所有因变量),这些样本值已经实现,最大似然估计就是去找到那个(组)参数估计值,使得前面已经实现的样本值发生概率最大。因为你手头上的样本已经实现了,其发生概率最大才符合逻辑。这时是求样本所有观测的联合概率最大化,是个连乘积,只要取对数,就变成了线性加总。此时通过对参数求导数,并令一阶导数为零,就可以通过解方程(组),得到最大似然估计值。

3.先验、后验和似然函数的区别

  先验和后验都是一个概率问题,然而似然函数不是一个概率,似然的作用是找到一个最大概率发生的值,所以他是一个确定的值或者近似接近的值。

  有个不成熟的比喻:后验概率=先验概率*似然函数

参考知乎大神回答:https://www.zhihu.com/question/27398304

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

这篇关于先验概率、后验概率、似然函数的理解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1011560

相关文章

Python中help()和dir()函数的使用

《Python中help()和dir()函数的使用》我们经常需要查看某个对象(如模块、类、函数等)的属性和方法,Python提供了两个内置函数help()和dir(),它们可以帮助我们快速了解代... 目录1. 引言2. help() 函数2.1 作用2.2 使用方法2.3 示例(1) 查看内置函数的帮助(

C++ 函数 strftime 和时间格式示例详解

《C++函数strftime和时间格式示例详解》strftime是C/C++标准库中用于格式化日期和时间的函数,定义在ctime头文件中,它将tm结构体中的时间信息转换为指定格式的字符串,是处理... 目录C++ 函数 strftipythonme 详解一、函数原型二、功能描述三、格式字符串说明四、返回值五

Python中bisect_left 函数实现高效插入与有序列表管理

《Python中bisect_left函数实现高效插入与有序列表管理》Python的bisect_left函数通过二分查找高效定位有序列表插入位置,与bisect_right的区别在于处理重复元素时... 目录一、bisect_left 基本介绍1.1 函数定义1.2 核心功能二、bisect_left 与

java中BigDecimal里面的subtract函数介绍及实现方法

《java中BigDecimal里面的subtract函数介绍及实现方法》在Java中实现减法操作需要根据数据类型选择不同方法,主要分为数值型减法和字符串减法两种场景,本文给大家介绍java中BigD... 目录Java中BigDecimal里面的subtract函数的意思?一、数值型减法(高精度计算)1.

C++/类与对象/默认成员函数@构造函数的用法

《C++/类与对象/默认成员函数@构造函数的用法》:本文主要介绍C++/类与对象/默认成员函数@构造函数的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录名词概念默认成员函数构造函数概念函数特征显示构造函数隐式构造函数总结名词概念默认构造函数:不用传参就可以

C++类和对象之默认成员函数的使用解读

《C++类和对象之默认成员函数的使用解读》:本文主要介绍C++类和对象之默认成员函数的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、默认成员函数有哪些二、各默认成员函数详解默认构造函数析构函数拷贝构造函数拷贝赋值运算符三、默认成员函数的注意事项总结一

Python函数返回多个值的多种方法小结

《Python函数返回多个值的多种方法小结》在Python中,函数通常用于封装一段代码,使其可以重复调用,有时,我们希望一个函数能够返回多个值,Python提供了几种不同的方法来实现这一点,需要的朋友... 目录一、使用元组(Tuple):二、使用列表(list)三、使用字典(Dictionary)四、 使

PyTorch中cdist和sum函数使用示例详解

《PyTorch中cdist和sum函数使用示例详解》torch.cdist是PyTorch中用于计算**两个张量之间的成对距离(pairwisedistance)**的函数,常用于点云处理、图神经网... 目录基本语法输出示例1. 简单的 2D 欧几里得距离2. 批量形式(3D Tensor)3. 使用不

MySQL 字符串截取函数及用法详解

《MySQL字符串截取函数及用法详解》在MySQL中,字符串截取是常见的操作,主要用于从字符串中提取特定部分,MySQL提供了多种函数来实现这一功能,包括LEFT()、RIGHT()、SUBST... 目录mysql 字符串截取函数详解RIGHT(str, length):从右侧截取指定长度的字符SUBST

Kotlin运算符重载函数及作用场景

《Kotlin运算符重载函数及作用场景》在Kotlin里,运算符重载函数允许为自定义类型重新定义现有的运算符(如+-…)行为,从而让自定义类型能像内置类型那样使用运算符,本文给大家介绍Kotlin运算... 目录基本语法作用场景类对象数据类型接口注意事项在 Kotlin 里,运算符重载函数允许为自定义类型重