贝叶斯公式在概率论和机器学习等学科中的地位和作用不需要我再多言,我认为用“核心”和“美”来形容丝毫不为过,但是很多同学可能还对贝叶斯公式的含义不是完全理解,如果光听课堂老师“PPT”复读机似的播放和各本书抄来抄去的概念描述和公式堆砌,想必大家也很难对其有更加深入的理解。下面说说我对贝叶斯公式的理解。

在当下这个网络社会,我们每天都要盯着各种终端(手机、PC、PAD和电视等)的屏幕,盯时间长了,大家眼睛都不太好,都会患有不同程度的近视,最后视力越来越差,最后不得不戴上眼镜,所以现在很多女生不戴眼镜,反而成了少数。假设我们走在大姐上,迎面过来一位美女,这位美女就不戴眼镜,文质彬彬,我们肯定心里面会想一下,这位小姐姐是做什么的,能把明亮的双眼保养得这么好?看气质,她可能是老师,但是看身材她也像一位模特,当然她也可能是做其他职业的。那么,我们如何能尽量准确的预测出她到底是做什么的呢?其实,这个问题可以用贝叶斯公式的模型进行分析,那么如何来分析呢?

我们可以先把这个问题具象化,先代入几个数字。假设我们面对500名女生,这500名女生不是教师就是模特,根据行业大数据,教师和模特在数量上的比例为7:3(毕竟模特需要颜值身材都比较好,而且确实是青春饭,而老师包括从幼儿园到大学的各个段位,所以老师的数量肯定是多的)。教师是一个需要经常看书写字的行业,模特在这方面工作量不是很大,因此不戴眼镜的模特的比例一定高于教师,我们不妨假设教师不戴眼镜的比例是0.2,而模特不戴眼镜的比例是0.8。按照这个数据和逻辑,我在这群人里面随机找一个不戴眼镜的人,这个人是教师的概率是多大呢?

其实这个问题很简单,我们不妨简单计算一下。人群中一共500个人,这500个人不是教师就是模特,且二者人数的比例是7:3,那么我们可以简单算出教师的人数是350人,模特的人数是150人。按照他们各自群体不戴眼镜人数的比率,教师中有350×0.2=70人不带眼睛,而模特则有150×0.7=105个人不戴眼镜。那么其实我们很容易就可以算出随机找一位不戴眼镜的女生,这个女生是教师的概率是多少?即:
P不带眼镜的女生是教师=7070+105=0.4(1)P_{不带眼镜的女生是教师}=\frac{70}{70+105}=0.4\tag{1}P不带眼镜的女生是教师​=70+10570​=0.4(1)
也就是说,按照上述比例和人数分配,这位不带眼镜的女生是教师的概率不足一半,是0.4。P不带眼镜的女生是教师P_{不带眼镜的女生是教师}P不带眼镜的女生是教师​这个写法还是不太有数学的美感,我们可以用条件概率的表示方法把它重新写一下,表示为:
P不带眼镜的女生是教师=P(这个女生是教师∣这个女生不带眼镜)P_{不带眼镜的女生是教师}=P({这个女生是教师|这个女生不带眼镜})P不带眼镜的女生是教师​=P(这个女生是教师∣这个女生不带眼镜)
也就是,在“这个女生没带眼镜”的条件下,这个“这个女生是教师”的概率是多少?进一步简化,我们把后者记为事件BBB,前者记为事件”A“,则上面的条件概率就简化表示为P(A∣B)P(A|B)P(A∣B)。下面我们再回顾一下刚才阐述概率结果的计算过程。实际上,公式(1)分子的70是如何计算出来的?很明显:
70=500∗0.7∗0.270=500*0.7*0.270=500∗0.7∗0.2而,0.7的本质就是教师占总共女生人群的比例,可以写成P(A)P(A)P(A)。而0.2是什么呢?是表示”教师中不戴眼镜的女生“占教师的比例,也可以用条件概率来表示,即:P(B∣A)P(B|A)P(B∣A)。因此公式(1)中分子可以改写成

70=500∗P(A)∗P(B∣A)70=500*P(A)*P(B|A)70=500∗P(A)∗P(B∣A),公式(1)中的105可以写成什么呢?它表示模特中不带眼镜的人数,咋么算出来的呢?即:
105=500∗P(⌉A)∗P(B∣⌉A)105=500*P(\rceil{A})*P(B|\rceil{A})105=500∗P(⌉A)∗P(B∣⌉A)
其中⌉A\rceil{A}⌉A表示AAA的互斥事件,那么在这个案例中A代表”教师“,那⌉A\rceil{A}⌉A就代表不是教师,显然也就是”模特“了。综上所述,公式(1)就可以写成下面公式的这种形式:
P(A∣B)=500∗P(A)∗P(B∣A)500∗P(A)∗P(B∣A)+500∗P(⌉A)∗P(B∣⌉A)(2)P(A|B)=\frac{500*P(A)*P(B|A)}{500*P(A)*P(B|A)+500*P(\rceil{A})*P(B|\rceil{A})}\tag{2} P(A∣B)=500∗P(A)∗P(B∣A)+500∗P(⌉A)∗P(B∣⌉A)500∗P(A)∗P(B∣A)​(2)
上面的公式分子分母都有500这个数,因此可以化简掉,得:
P(A∣B)=P(A)∗P(B∣A)P(A)∗P(B∣A)+P(⌉A)∗P(B∣⌉A)(3)P(A|B)=\frac{P(A)*P(B|A)}{P(A)*P(B|A)+P(\rceil{A})*P(B|\rceil{A})}\tag{3} P(A∣B)=P(A)∗P(B∣A)+P(⌉A)∗P(B∣⌉A)P(A)∗P(B∣A)​(3)
由于事件AAA代表事件“这位女生是教师”,事件⌉A\rceil{A}⌉A代表事件“这位女生是模特”,那么公式(2)中的分母表示什么意思呢?我们从公式可以分析得出其表示的含义是:教师中不戴眼镜的人数+模特中不戴眼镜的人数之和,其实就是总样本中不戴眼镜的人数,因此P(A)∗P(B∣A)+P(⌉A)∗P(B∣⌉A)P(A)*P(B|A)+P(\rceil{A})*P(B|\rceil{A})P(A)∗P(B∣A)+P(⌉A)∗P(B∣⌉A)等价于P(B)P(B)P(B),因此公式(3)可以用下面公式替换:

P(A∣B)=P(A)∗P(B∣A)P(B)(3)P(A|B)=\frac{P(A)*P(B|A)}{P(B)}\tag{3}P(A∣B)=P(B)P(A)∗P(B∣A)​(3),因此贝叶斯公式得以证明。

【最优估计学习笔记】贝叶斯公式的深入理解相关推荐

  1. Mcad学习笔记之委托再理解(delegate的构造器,MulticastDelegate,BeginInvoke,EndInvoke,Invoke4个方法的探讨)...

    相关文章导航 Sql Server2005 Transact-SQL 新兵器学习总结之-总结 Flex,Fms3相关文章索引 FlexAir开源版-全球免费多人视频聊天室,免费网络远程多人视频会议系统 ...

  2. OpenGL学习笔记(八):进一步理解VAO、VBO和SHADER,并使用VAO、VBO和SHADER绘制一个三角形

    原博主博客地址:http://blog.csdn.net/qq21497936 本文章博客地址:http://blog.csdn.net/qq21497936/article/details/7888 ...

  3. [网络流]学习笔记:一次理解网络流!

    学一个新算法,总要翻多而杂的blog,收获不多.所以我就致力于把学习笔记总结,希望一遍看懂. 简单入门 (但是不全) 一.从概念入手 网络流用于解决流量问题 网络流:所有弧上流量的集合f={f(u,v ...

  4. 【学习笔记】结合代码理解设计模式 —— 代理模式(静态代理、动态代理、延伸)

    文章目录 什么是代理模式 一. 代理模式简介 二. 静态代理模式 三. 动态代理模式 万能模版 前言:笔记基于狂神设计模式视频.<大话设计模式>观后而写 (最近一直在更新之前的刷题博客,今 ...

  5. BiLSTM-CRF学习笔记(原理和理解) 维特比

    https://www.zhihu.com/question/20136144 维特比详解 BiLSTM-CRF 被提出用于NER或者词性标注,效果比单纯的CRF或者lstm或者bilstm效果都要好 ...

  6. JVM 垃圾收集器 学习笔记(《深入理解java虚拟机》之六 垃圾收集)

    目录 新生代收集器 Serial收集器 ParNew收集器 Parallel Scavenge收集器 老年代收集器 Serial Old收集器 Parallel Old收集器 CMS收集器 Remov ...

  7. 【Docker学习笔记 五】深入理解Docker容器数据卷机制

    前几篇Blog是对Docker的一个入门和初识,本篇Blog开始就详细学习下一个新的理论基础概念:Volume,也就是容器数据卷,听起来名字高大上,实际上就是一个宿主机的目录而已,为什么需要容器数据卷 ...

  8. Linux shell 学习笔记(11)— 理解输入和输出(标准输入、输出、错误以及临时重定向和永久重定向)

    1. 理解输入和输出 1.1 标准文件描述符 Linux 系统将每个对象当作文件处理.这包括输入和输出进程.Linux 用文件描述符(file descriptor)来标识每个文件对象.文件描述符是一 ...

  9. 【网络流】学习笔记:一次理解网络流!

    一.从概念入手 网络流用于解决流量问题 网络流:所有弧上流量的集合f={f(u,v)},称为该容量网络的一个网络流. 定义:带权的有向图G=(V,E),满足以下条件,则称为网络流图(flow netw ...

最新文章

  1. NHibernate和Cuyahoga(二)(翻译):
  2. 关于升级 xcode8
  3. matlab 0000,部分结果出现虚数单位 0.0000i
  4. SAP Spartacus的自定义静态页面
  5. 用ADO.NET的ExecuteScalar方法返回单一值-资讯动态
  6. 强烈推荐 MicroSoft Office OneNote
  7. 初识Java中注解的分类
  8. Python读取文本文档转化成列表
  9. php框架和不用框架_如何选择一个PHP框架
  10. Nginx SSL 结合Tomcat 重定向URL变成HTTP的问题
  11. 淘宝现在什么类目比较好做?
  12. LVGL学习记录:Roller滚轮
  13. tp6的运行流程+一个完整的tp6请求的流程:
  14. 万年历打印Java_java实验之打印万年历
  15. 两数求和(C语言超简单解法)
  16. 【Excle数据透视表】如何移动数据透视表的位置
  17. R软件做线性回归分析
  18. C语言算一维数组均值和标准差(随机生成数组0~100)
  19. MyZip Mac一秒超快速解压/压缩
  20. 【Spark Streaming】(四)基于 Spark Structured Streaming 的开发与数据处理

热门文章

  1. oracle季初,Oracle获取月初/月末/季初/季末/半年初/半年末/年初/年末
  2. txt文件所有大写字母转小写代码
  3. 单词首字母变大写-vue
  4. 国产小家电品牌如何用dtc模式打造新中产超爆款?
  5. DAP数据分析平台介绍
  6. iOS项目集成unity(2020+ 版本)
  7. Vista发布在即 各版本详情介绍
  8. 微信支付商户号的调研
  9. 芯片的IR drop是什么
  10. Google Pixel 刷机、OpenGApps和系统分区扩容