贝叶斯计算公式_贝叶斯公式推导

贝叶斯计算公式_贝叶斯公式推导【文章搬运自我的网易博客(http://zhenxuan1991.blog.163.com/)】今天下午偶然机会,又去看贝叶斯公式。就是这样简单的号称是“概率论中的勾股定理”的一个公式。有非常有趣

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

【文章搬运自我的网易博客(http://zhenxuan1991.blog.163.com/)】

  今天下午偶然机会,又去看贝叶斯公式。

  P(A|B) = \frac{P(B | A)\, P(A)}{P(B)}

  就是这样简单的号称是“概率论中的勾股定理”的一个公式。有非常有趣的一点。
  所谓“反直觉”的一点。
http://www.guokr.com/article/517/ 这个链接中,果壳网友讨论了一个问题:粗略估计大概每1000人中就有一人得艾滋病。采用某种血液试验检测法用于检测身体中是否含有艾滋病病毒,这种方法相当精确,但也可能带来两种误诊。首先,他可能会让某些真有艾滋病的人得到阴性结果,称为假阴性,不过只有0.05的概率发生;其次,它还可能让某些没有艾滋病的人得到阳性结果,称为假阳性,不过只有0.01的概率会发生。那么如果一个人检测结果为阳性,那么他得艾滋病的概率到底是多大?
当然,解答这个问题,我们要借助贝叶斯公式。
  (1)我们定义事件A为“被检测人带有艾滋病病毒”,则A‘表示被检测人不携带艾滋病病毒;定义事件T为“试验结果呈阳性”;
  (2)要求概率 P(A|T)。由贝叶斯公式可知:
  
/gkimage/us/ad/xi/usadxi.png
  

  (3)计算得,P(A|T)=0.087
  结论是:如果一个人检测结果为阳性,那么他患病的概率是8.7% 。很低的一个概率。试想,一个人在得知自己的血检是阳性的时候又听说其实患病的概率只是8.7%会有什么感受?
对,唯一的感受是:这哪儿跟哪儿啊?!
  可是贝叶斯公式错了吗?推导过程一步步在那摆着呢。那直觉错了吗?直觉怎么会错,难道我看到阳性结果不应该为自己担心吗?
  

  同样在那个链接中,有一个ID为 on9 的人说:我认为这样解释能让更多人容易理解:假设有这么一个理想统计人群,一共有十万人。那么按照文中的发病率千分之一,那么应该有一百人有艾滋病。而根据那两个误诊率,那么这一百个人里面,有九十五个会验出是阳性,而有五个(5%)会被验出为阴性(假阴性)。而在剩下的九万九千九百个没病的人里面,会有九百九十九个人(1%)验出是阳性(假阳性)。因此,总结所有十万个人里面,验出阳性的人有999+95=1094人,其中真正有病的只有95个,占其中的8.68%。那位被验出是阳性的哥,真正杯具的几率只有不到10%!
参考他的说法,我自己又整理了一下思路:用直白的话说,一个健康人检验结果为阳性的概率是0.01,但是有很多“不幸”的健康人落入到这个概率中。而在所有检测为阳性的人中,真正的病人与“不幸”的健康人比例大概为10:90,也就是100个阳性检测结果中,有90个人是健康的。所以就会有这种反直觉的计算结果。而出现这种结果的原因是什么?因为健康人检验结果为阳性的概率(0.01)太高,也就是检测可靠性太低。我算了一下,如果健康人检验结果为阳性的概率降低到0.0001,那么如果一个人检验结果为阳性,那么他患病的概率就飙升到0.9056.
 
  所以我认为,所谓的反直觉这种情况,其实是不存在的。如果机器的检测结果可靠性更好,也不存在“阳性结果患病的概率只有8%”这种情况。而题中所言的0.01的误诊率,其实是非常高的。而这也是我认为唯一存在“反直觉”的地方——在概率与统计中,0.1的误差其实比我们所认为的大得多。

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/167141.html原文链接:https://javaforall.net

(0)
上一篇 2022年8月5日 下午4:46
下一篇 2022年8月5日 下午5:00


相关推荐

  • JS替换字符串中所有指定的字符(串)

    JS替换字符串中所有指定的字符(串)JavaScript 中 replace 方法如果直接用 str replace 只会替换第一个匹配的字符 而 str replace g 则可以全部替换掉匹配的字符 g 为全局标志 String prototype replaceAll function reallyDo replaceWith ignoreCase if RegE

    2026年3月18日
    2
  • C++中sizeof 和 strlen 区别

    C++中sizeof 和 strlen 区别最近公司要求 又开始学习 C 但是看到 sizeof 和 strlen 忽然有点混淆 不理解区别 下面的两个显著不同方便快速记忆 1 sizeof 是运算符 strlen 是函数 2 charstr 20 0 inta strlen str a 10 intb sizeof str 而 b 20

    2025年9月3日
    5
  • elasticsearch部署方案_elasticsearch安装配置

    elasticsearch部署方案_elasticsearch安装配置除非您使用Elasticsearch进行开发和测试,否则创建和维护Elasticsearch集群将是一项会占用您大量时间的任务。Elasticsearch是一个极其强大的搜索和分析引擎,其强大的部分在于能够对其进行扩展以获得更好的性能和稳定性。本教程将提供有关如何设置Elasticsearch集群的一些信息,并将添加一些操作技巧和最佳实践来帮助您入门。但应该强调的是,每个Elasticsearch设置可能会因多种因素而异,包括服务器上的工作负载、索引数据量、硬件规格,甚至操作员的经验。什么

    2022年10月10日
    6
  • C++ 引用与引用作为函数的参数

    C++ 引用与引用作为函数的参数对一个数据建立一个 引用 他的作用是为一个变量起一个别名 这是 C 对 C 语言的一个重要补充

    2026年3月19日
    2
  • docker 镜像构建_如何更新docker镜像内的文件

    docker 镜像构建_如何更新docker镜像内的文件前言如果我们已经安装了一个python3的环境,如果另一台机器也需要安装同样的环境又要敲一遍,很麻烦,这里可以配置Dockerfile文件,让其自动安装,类似shell脚本Dockerfile编写

    2022年7月31日
    14
  • html怎么隐藏播放器_css遮罩

    html怎么隐藏播放器_css遮罩<!DOCTYPEhtml><htmllang=”en”><head><metacharset=”UTF-8″><metaname=”viewport”content=”width=device-width,initial-scale=1.0″><metahttp-equiv=”X-UA-Compatible”content=”ie=edge”><title>视.

    2025年5月26日
    12

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号