概率相关问题

问题汇总

  • [1. 贝叶斯定理(贝叶斯公式和全概率公式)](#1. 贝叶斯定理(贝叶斯公式和全概率公式))
  • [2. 概率题](#2. 概率题)
    • [2.1 随机发生器的概率为1/2](#2.1 随机发生器的概率为1/2)

1. 贝叶斯定理(贝叶斯公式和全概率公式)

定义:在信息和条件有限的情况下,基于过去的数据,通过动态调整的方法,帮助我们一步步预测出事件发生的接近真实的概率。

贝叶斯定理基于条件概率的定义,条件概率表示事件 A 在事件 B 已经发生的条件下发生的概率

条件概率公式:
P ( A ∣ B ) = P ( A ∩ B ) P ( B ) , P ( B ∣ A ) = P ( A ∩ B ) P ( A ) P(A|B) = \frac{P(A∩B)}{P(B)},P(B|A) = \frac{P(A∩B)}{P(A)} P(A∣B)=P(B)P(A∩B),P(B∣A)=P(A)P(A∩B)

上述二者结合可以得到贝叶斯公式
P ( A ∣ B ) = P ( B ∣ A ) ⋅ P ( A ) P ( B ) P(A|B) = \frac{P(B|A)·P(A)}{P(B)} P(A∣B)=P(B)P(B∣A)⋅P(A)

各个部分的含义

P(A|B):后验概率

P(A):先验概率

P(B|A):似然函数 在 A 发生的条件下,事件 B 发生的概率,通常由模型或数据决定。

P(B):边际概率,事件 B的总体概率,可以通过所有可能导致 B发生的情况求和得到
P ( B ) = P ( B ∣ A ) ⋅ P ( A ) + P ( B ∣ ¬ A ) ⋅ P ( ¬ A ) P(B) =P(B|A)·P(A)+P(B|¬A)·P(¬A) P(B)=P(B∣A)⋅P(A)+P(B∣¬A)⋅P(¬A)

由边际概率可以引出全概率公式 :用于计算一个复杂事件的概率,方法是把它拆分成多个互斥的简单情况(划分完备事件组),再分别加权求和。

2. 概率题

2.1 随机发生器的概率为1/2

已知一个随机发生器,生成 0 的概率为 p ,生成 1 的概率为 1 - p 。请构造一个新的随机发生器,使其生成 0 和 1 的概率均为 1/2。

答案:让该随机数生成器生成两个数,那么序列是00,01,10,11概率分别为 p* p,p(1-p),(1-p)p,(1-p)(1-p)。这四种情况中存在两个独立的事件概率是相等。也就是01和10,那么我把01看成是0,10看成是1,那么他们输出的概率均为p(1-p),其他的情况舍弃。这样就得到了0和1均等生成的随机器了。这种解法可以推广到n个数的情况,我们知道,取n个随机数发生器,存在n个概率相同的独立事件,我们只使用这n个事件就得到1/n的概率了。例如n=3, 有8中情况000, 001, 010, 011, 100, 101, 110, 111,其中001,010,100的概率都是p^2*(1-p)。

相关推荐
代码无bug抓狂人20 小时前
动态规划习题篇(不同路径和整数拆分)
算法·动态规划
码农水水20 小时前
从 OpenFeign 到 RestClient:Spring Cloud 新时代的轻量化 HTTP 调用方案
java·运维·后端·spring·http·spring cloud·面试
难得的我们20 小时前
基于C++的区块链实现
开发语言·c++·算法
季明洵20 小时前
Java实现顺序表
java·数据结构·算法·顺序表
Σίσυφος190020 小时前
点云计算曲率以及法向量的方向问题
算法
大闲在人20 小时前
使用有向莱顿算法进行供应链/物料流转网络的集群划分
网络·算法
im_AMBER20 小时前
Leetcode 110 奇偶链表
数据结构·学习·算法·leetcode
踩坑记录1 天前
leetcode hot100 easy 101. 对称二叉树 递归 层序遍历 bfs
算法·leetcode·宽度优先
2501_940315261 天前
leetcode182动态口令(将字符的前几个元素放在字符串后面)
算法
老鼠只爱大米1 天前
LeetCode经典算法面试题 #98:验证二叉搜索树(递归法、迭代法等五种实现方案详解)
算法·leetcode·二叉树·递归·二叉搜索树·迭代