《贝叶斯思维:统计建模的Python学习法》一1.6 M&M豆问题
本节书摘来自异步社区《贝叶斯思维:统计建模的Python学习法》一书中的第1章,第1.6节,作者【美】Allen B. Downey,更多章节内容可以访问云栖社区“异步社区”公众号查看
M M豆是有各种颜色的糖果巧克力豆。制造M M豆的Mars公司会不时变更不同颜色巧克力豆之间的混合比例。
1995年,他们推出了蓝色的M M豆。在此前一袋普通的M&M豆中,颜色的搭配为:30%褐色,20%黄色,20%红色,10%绿色,10%橙色,10%黄褐色。这之后变成了:24%蓝色,20%绿色,16%橙色,14%黄色,13%红色,13%褐色。
假设我的一个朋友有两袋M M豆,他告诉我一袋是1994年,一袋是1996年。
但他没告诉我具体哪个袋子是哪一年的,他从每个袋子里各取了一个M M豆给我。一个是黄色,一个是绿色的。那么黄色豆来自1994年的袋子的概率是多少?
这个问题类似于曲奇饼问题,只是变化了我抽取样品的方式 (碗还是袋)。这个问题也给了我一个机会演示纸面方法:也就在仅仅在纸上画画就可以解决类似这样的问题(译注:作者为后续章节的计算型方法铺垫)。在下一章中,我们将以计算方法解这些问题。
第一步是枚举所有假设。取出黄色M&M豆的袋子称为袋1,另一个称为袋2,所以假设是:
A:袋1是1994年的,袋2是1996年的。 B:袋1是1996年的,袋2是1994年的。接着我们设计一个表格,每行表示每个假设,每列表示贝叶斯定理中的每一项:
![d7ac64c64bd363a382e77fe0e952f328012c1fd4](https://yqfile.alicdn.com/d7ac64c64bd363a382e77fe0e952f328012c1fd4.png)
第一列表示先验。基于问题的声明,选择p(A)=p(B)= 1/2是合理的。
第二列表示似然度,表明了问题的背景信息。举例来说,如果A为真,黄色M&M是来自1994年的袋概率20%,而绿色来自1996包的概率为20%。因为选择是独立的,我们将其相乘以得到联合概率。
第三列由前两列得到。此列的总和270是归一化常数(译注:参考全概率公式)。为了得到最后一列的后验概率,我们将第三列的值归一化后得到第四列的值。
就是这样。简单吧?
还有,你可能会被一个细节所困扰。我将p(D|H)写成了百分数的形式而不是概率形式,这意味着它没有除以因子10000。但是当我们将其除以归一化常数时就抵消了,因此这不影响结果。
当设定的假设是互斥和穷举的,你可以将似然度乘以任何因子,如果方便,将同一个因子应用到整列上。
异步社区 异步社区(www.epubit.com)是人民邮电出版社旗下IT专业图书旗舰社区,也是国内领先的IT专业图书社区,致力于优质学习内容的出版和分享,实现了纸书电子书的同步上架,于2015年8月上线运营。公众号【异步图书】,每日赠送异步新书。
相关文章
- Python中的可迭代Iterable和迭代器Iterator
- Python精髓之括号家族:方括号、花括号和圆括号,你真的会用吗?
- python3.7 -m pip python版本决定pip版本,pip要指定版本去安装
- python - 如何使用 Docker 运行多个 Python 脚本和一个可执行文件?
- 【华为OD机试真题 python】最多颜色的车辆【2022 Q4 | 100分】
- 【华为OD机试真题 python】 最大N个数与最小N个数的和【2022 Q4 | 100分】
- Google Earth Engine(python)——用 Python 修复影像栅格的接缝
- Python从入门到数据分析第一篇—Python简介- Python介绍与初探
- Python Decorator Closure
- 安装python虚拟环境&设置jupyter notebook在虚拟环境中运行
- python数字图像处理(1):环境安装与配置
- Python & Selenium & UI自动化 & ⽂件上传
- 《Python和HDF 5大数据应用》——2.2 设置
- Python新闻网站项目-6.Django内容后台管理系统配置
- Python 和 DVC 进行 git 版本控制详解
- 在 Python 中集成一个 Hermite 系列
- 哪个更适合数据分析:R 还是 Python?
- 2018年最常见的Python面试题&答案(上篇)
- python递归遍历查询文件 & 文件夹
- python之海象运算符
- 2022&2023华为OD机试 - 预订酒店(Python)
- 2022&2023华为OD机试 - 找单词(Python)
- python xlwings 插入公式,自动计算
- Python 常见问题 之 python 安装包下载安装速度慢 的 快速解决方法(之一)
- Python 基础 之 Ubuntu 上安装 python 和 python-pip
- 【历史上的今天】1 月 31 日:Python 之父出生;宏碁大战联想;SBC 收购 AT&T
- 【集成学习】:Stacking原理以及Python代码实现
- (17)python消息队列,python RabbitMQ
- 【Python】python 库分类大全
- 【爬虫系列】【Python】python with as的用法
- 学习笔记(12):Python网络编程&并发编程-解决粘包问题-简单版本
- 学习笔记(11):Python网络编程&并发编程-粘包底层原理分析
- 学习笔记(04):Python网络编程&并发编程-什么是socket
- [Python]2分钟完成python + Selenium Web端自动化环境搭建,开启~~~