AI数学基础之:概率和上帝视角
简介
天要下雨,娘要嫁人。虽然我们不能控制未来的走向,但是可以一定程度上预测为来事情发生的可能性。而这种可能性就叫做概率。什么是概率呢?概率就是事情出现的可能性。比如扔骰子,我们知道骰子有六面,很容易知道扔出1点的概率是1/6,听起来很简单,但是如果放在复杂事件中,概率计算就变得比较麻烦和抽象,很多时候,我们可能没办法很简单的进行计算。今天我们来介绍一个计算概率的完全不同的视角:上帝视角。
蒙题霍尔问题
蒙题霍尔问题出自美国的一个电视节目Let's Make a Deal,问题名字来自该节目的主持人蒙提·霍尔(Monty Hall)。该问题内容大概是这样的:有三扇门,其中一个门中藏的是汽车,另外两扇门中藏的是山羊。这三扇门最开始都是关闭的,参赛者可以选择其中的一扇门,选择有汽车的那扇门就可以赢得汽车。
一开始的时候,参赛者会选择其中一扇门,然后主持人会打开剩下两扇门中藏有山羊的那扇,然后问参赛者是否需要更换选择。
聪明的读者,你们的选择是换还是不换呢?
最开始参赛者的中奖几率是1/3大家应该是没有问题的。问题是打开一扇门之后,参赛者最初选择的门和剩下那个未开的门中奖几率是否发生了变化呢?假设三个门分别被标记为A,B,C。
有人可能这样想,最开始的时候A,B,C三个门的中奖概率都是1/3。
现在打开了一个门,假设是B门被打开了。那么剩下的A和C的概率都变成了1/2。
听起来好像很有道理。
那么我们再换一个角度来看下这个问题。
如果参赛者最初选择了A,那么A有1/3的概率中奖,还有2/3的概率不中奖。这很好理解。
我们来考虑下如果重选,那么会发生什么事情:
假如A是正确的,那么重选一定错误。
假如A是不正确的,那么重选一定正确。
换句话说,A正确的概率也就是重选错误的概率。重选正确的概率= 1 - A正确的概率 = 1- 1/3 = 2/3。
也就是说重选更加有利。
问题的关键在于,在参赛者做出选择的时候,几率就已经确定了。后面发生的任何事情都不会影响它的几率。也就是说当参赛者选择A的时候,A获胜的几率就是1/3,不会因为后面发生事情的改变而改变。
注意,概率指的是事件发生多次的统计结果,并不是指确切的某个事件。
上帝视角解决概率问题
概率还是太抽象了。上面我的解释可能还有一些小伙伴不相信。那么我们来换个角度看概率的问题,我们把这个角度称之为上帝视角。
概率是指事情多次发生的时候,某种特殊情况可能出现的比率。比如扔骰子,我们仍1000次,1点出现的次数大概是170次,也就是1/6,我们说1点出现的概率是1/6。
回到上面的蒙题霍尔的问题,我们来构建一个上帝视角,这次不再是3个门了,而是3*360个门。假设我们有360个电视节目都在做猜奖的活动。每个电视节目都有3个门,其中只有1个门有汽车。那么我们总共会有总共有360个汽车。因为A,B,C三个编号的门中放有汽车的概率是一样的。
我们可以构建下面的一张表:
| 参赛者选择A | 参赛者选择B | 参赛者选择C | |
|---|---|---|---|
| A中有汽车 | 40个电视节目中奖 | 40 | 40 |
| B中有汽车 | 40 | 40个电视节目中奖 | 40 |
| C中有汽车 | 40 | 40 | 40个电视节目中奖 |
可以看到在360个电视节目中,选择A的会中奖40次,选择B的会中奖40次,选择C的同样会中奖40次。总共中奖120次,也就是说中奖的概率是1/3。
再来详细看一下主持人选择打开一个门时,参赛者如果选择更换会什么情况。
在A中有汽车的情况中,参赛者本来选择A,如果换选择,不管选择B或者C,都会失败,也就是说有40个电视节目是未中奖的。
如果参赛者本来选择的是B或者C,如果换选择则一定会成功,也就是说有40+40个节目会中奖。
同样的情况发送在B或者Z中有汽车的情况。统计一下,如果换选择,中奖的次数说80*3 = 240 。 中奖的几率是 240/360= 2/3。
明显看出,换选择之后,中奖比例是提高的。
上帝视角的好处
从上面的例子中,我们可以看出,上帝视角将一个概率问题,转换成了大数据情况下的,统计问题。在某些情况下,可以为我们的概率计算提供更加直观可靠的解释。
本文已收录于 http://www.flydean.com/02-probability-god-mod/
最通俗的解读,最深刻的干货,最简洁的教程,众多你不知道的小技巧等你来发现!
欢迎关注我的公众号:「程序那些事」,懂技术,更懂你!
AI数学基础之:概率和上帝视角的更多相关文章
- 图解AI数学基础 | 概率与统计
作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/83 本文地址:http://www.showmeai.tech/article-det ...
- 图解AI数学基础 | 线性代数与矩阵论
作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/83 本文地址:http://www.showmeai.tech/article-det ...
- AI 数学基础 : 熵
什么是熵(entropy)? 1.1 熵的引入 事实上,熵的英文原文为entropy,最初由德国物理学家鲁道夫·克劳修斯提出,其表达式为: 它表示一个系系统在不受外部干扰时,其内部最稳定的状态.后来一 ...
- AI 数学基础 张量 范数
1.张量 几何代数中定义的张量是基于向量和矩阵的推广,通俗一点理解的话,我们可以将标量视为零阶张量,矢量视为一阶张量,那么矩阵就是二阶张量. 例如,可以将任意一张彩色图片表示成一个三阶张量,三个维度分 ...
- AI数学基础:符号
1.sigma 表达式 ∑ 是一个求和符号,英语名称:Sigma,汉语名称:西格玛(大写Σ,小写σ) 第十八个希腊字母.在希腊语中,如果一个单字的最末一个字母是小写sigma,要把该字母写成 ς ,此 ...
- AI 数学基础:概率分布,幂,对数
1.概率分布 参考: https://blog.csdn.net/ZZh1301051836/article/details/89371412 p 2.幂次的意义 物理理解:幂次描述的是指数型的变化 ...
- AI数学基础之:奇异值和奇异值分解
目录 简介 相似矩阵 对角矩阵 可对角化矩阵 特征值 特征分解 特征值的几何意义 奇异值 Singular value 奇异值分解SVD 简介 奇异值是矩阵中的一个非常重要的概念,一般是通过奇异值分解 ...
- AI数学基础之:确定图灵机和非确定图灵机
目录 简介 图灵机 图灵机的缺点 等效图灵机 确定图灵机 非确定图灵机 简介 图灵机是由艾伦·麦席森·图灵在1936年描述的一种抽象机器,它是人们使用纸笔进行数学运算的过程的抽象,它肯定了计算机实现的 ...
- AI数学基础之:P、NP、NPC问题
目录 简介 P问题 NP问题 NP问题的例子 有些NP问题很难解决 NPC问题 NP-hard P和NP问题 简介 我们在做组合优化的时候需要去解决各种问题,根据问题的复杂度不同可以分为P.NP.NP ...
随机推荐
- KMP——POJ-3461 Oulipo && POJ-2752 Seek the Name, Seek the Fame && POJ-2406 Power Strings && POJ—1961 Period
首先先讲一下KMP算法作用: KMP就是来求在给出的一串字符(我们把它放在str字符数组里面)中求另外一个比str数组短的字符数组(我们叫它为ptr)在str中的出现位置或者是次数 这个出现的次数是可 ...
- c语言文件的读取和写入
文件打开类型: 文件打开输出就用: 1 #include <stdio.h> 2 3 int main() 4 { 5 FILE *fp = NULL; 6 7 fp = fopen(&q ...
- 571A Lengthening Sticks
time limit per test 1 second memory limit per test 256 megabytes input standard input output standar ...
- 在程序中通过Process启动外部exe的方法及注意事项
启动外部进程的方法: /// <summary> /// 启动外部进程 /// </summary> /// <param name="path"&g ...
- VMware虚拟化与Kubernetes(K8s)类比阐述-适合VMware用户
概述 容器技术是最近几年非常热门的技术,它似乎就是为云端的应用量身定制的,所以它也被贴上了云原生应用 (Cloud Native Application) 技术的标签.目前最为流行的容器管理调度平台是 ...
- Linux添加系统调用
Linux添加系统调用 1 概述 通常添加系统调用有两种方案: * 重新编译内核 * 添加内核模块 此处我们采用重新编译内核的方式增加系统调用. 实验环境:X86_64 GNU/Linux 4.15. ...
- Error Code: 1055.Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'userinfo.
环境:mysql-8.0.15-winx64 问题描述: Error querying database. Cause: java.sql.SQLSyntaxErrorException: Expre ...
- vue中子组件更新父组件
当在子组件里更改了某些信息且关闭子组件后,需要父组件更新修改后的内容,该如何操作 1.$emit触发 父组件 @add="add(val)" 子组件 this.$emit('add ...
- HDU4578 Transformation(多标记线段树)题解
题意: 操作有:\(1\).区间都加\(a\):\(2\).区间都乘\(a\):\(3\).区间都重置成\(a\):\(4\).询问区间幂次和\(\sum_{i=l}^rnum[i]^p(p\in\{ ...
- ysoserial Commons Collections3反序列化研究
0x00 前言 在ysoserial中,官方是没给gadget,这儿经过文章分析我认为的gadget,继承自AbstractTranslate的类被Javassist插桩后返回一个被修改过的templ ...