一、Bernoulli分布
1. 基本概念
想象你抛一枚硬币:
-
正面朝上(记为
1
)概率是p
(比如 0.6)。 -
反面朝上(记为
0
)概率是1-p
(比如 0.4)。
这就是一个Bernoulli分布:只有两种可能结果的事件(成功/失败、是/否、开/关等),且概率固定。
2. 数学表示
Bernoulli分布的概率公式:
-
P(X=1) = p (比如“硬币正面”概率)
-
P(X=0) = 1-p (比如“硬币反面”概率)
3. 机器语言例子(Python)
假设你写代码模拟一个故障的灯泡(有60%概率亮,40%概率灭):
import numpy as np
# 生成一个Bernoulli分布的样本(p=0.6)
result = np.random.binomial(n=1, p=0.6) # n=1表示单次试验
print("灯泡状态:", "亮" if result == 1 else "灭")
运行结果可能是 亮
(1)或 灭
(0),多次运行会看到大约60%的情况是“亮”。
4. 为什么叫“Bernoulli”?
这是以数学家雅各布·伯努利命名的,专门用来描述这种“非黑即白”的随机事件。
5. 实际应用场景
-
扔硬币、赌博输赢
-
二分类问题(如邮件是垃圾邮件/非垃圾邮件)
-
设备故障检测(正常/故障)
简单总结:Bernoulli分布就是描述一个只有两种结果的事件,且你知道每种结果的概率。
二、Multinoulli分布
1. 生活场景比喻
想象你有一个 骰子(不是普通的6面骰子,而是一个各面概率可能不同的骰子):
-
可能的结果:
A面
、B面
、C面
(比如分别代表“猫、狗、鸟”) -
每个面的概率:
P(A)=0.5
、P(B)=0.3
、P(C)=0.2
(总和为1)
这就是Multinoulli分布:一个事件有多个(≥2)离散结果,每个结果有固定概率。
2. 和Bernoulli分布的区别
-
Bernoulli:只有两种结果(如硬币正反面)。
-
Multinoulli:多种结果(如骰子、分类任务中的类别)。
3. 数学表示
Multinoulli分布的概率公式:
-
结果有
K
种,记为{1, 2, ..., K}
。 -
每个结果的概率为
(满足
)。
4. 机器学习的例子(Python)
假设你有一个图片分类模型,预测一张图片是 猫、狗、鸟 的概率分别为 [0.5, 0.3, 0.2]
。用代码模拟这个分布:
import numpy as np
# 定义类别和概率
categories = ["猫", "狗", "鸟"]
probs = [0.5, 0.3, 0.2]
# 从Multinoulli分布采样一次
result = np.random.choice(categories, p=probs)
print("模型预测结果:", result)
运行结果可能是 猫
、狗
或 鸟
,多次运行会接近设定的概率比例。
5. 实际应用场景
-
多分类问题(如手写数字识别、垃圾邮件分类)
-
生成模型(如生成文本或图像时选择下一个词/像素)
-
强化学习(如选择动作“左、右、跳”)
6. 和Multinomial分布的区别
-
Multinoulli:单次试验的多类别结果(如掷一次骰子)。
-
Multinomial:多次独立的Multinoulli试验(如掷多次骰子,统计各面次数)。