常见分布:正态分布、伯努利分布、泊松分布
一句话概述
概率分布是随机现象的"DNA"——它完整描述了随机变量所有可能取值及其概率。伯努利分布是二分类的数学基础,二项分布量化了多次独立试验的成功次数,正态分布是大自然最偏爱的"默认分布",而泊松分布则是计数事件的天然模型。理解这些分布,是理解 AI 中权重初始化、激活函数设计、损失函数选择的钥匙。
💡 核心要点:①伯努利分布描述单次二值试验(0-1),是二分类问题的最小概率单元 ②二项分布是 n 次独立伯努利试验的成功次数,当 n 很大时近似正态分布 ③正态分布由均值 μ 和标准差 σ 完全确定,中心极限定理保证了它在自然界中的普遍性 ④泊松分布建模单位时间/空间内随机事件发生的次数,是二项分布的极限形式(n→∞, p→0, np→λ)
教学与演示
一、伯努利分布——二分类的基础
是什么(定义):伯努利分布(Bernoulli Distribution)是最简单的离散分布,随机变量 X 只取 0 或 1 两个值。P(X=1) = p,P(X=0) = 1-p。一次试验只有"成功"或"失败"两种结果。
大白话 抛一次硬币,正面记 1,反面记 0。抛一次硬币的"结果"就是一个伯努利随机变量。p 是正面概率,如果是公平硬币,p=0.5。这个看似简单的分布,却是所有二分类问题(是/否、猫/狗、垃圾邮件/正常邮件)的数学根基。
为什么(原理):伯努利分布的期望 E[X] = p,方差 Var(X) = p(1-p)。当 p=0.5 时方差最大(不确定性最高),当 p→0 或 p→1 时方差最小(几乎确定)。这个性质在决策树(用基尼系数或信息增益选择分裂点)和主动学习(选择最不确定的样本)中至关重要。
怎么做(实现):
import numpy as np
# 伯努利分布:模拟单次二值试验
np.random.seed(42) # 固定随机种子
p = 0.7 # 成功概率70%
# 生成10000次伯努利试验
n_trials = 10000 # 试验次数
bernoulli_samples = np.random.binomial(n=1, p=p, size=n_trials) # 伯努利分布采样
# 统计结果
prob_1 = np.mean(bernoulli_samples == 1) # 成功频率
prob_0 = np.mean(bernoulli_samples == 0) # 失败频率
print(f"理论值: P(X=1)={p}, P(X=0)={1-p}") # 理论概率
print(f"模拟值: P(X=1)={prob_1:.4f}, P(X=0)={prob_0:.4f}") # 模拟频率
# 期望和方差
mean_val = np.mean(bernoulli_samples) # 样本均值
var_val = np.var(bernoulli_samples) # 样本方差
print(f"期望: 理论={p}, 模拟={mean_val:.4f}") # 期望对比
print(f"方差: 理论={p*(1-p):.4f}, 模拟={var_val:.4f}") # 方差对比
# 不同p值下的方差变化
for p_test in [0.1, 0.3, 0.5, 0.7, 0.9]:
var = p_test * (1 - p_test) # 伯努利方差公式
print(f"p={p_test}: 方差={var:.2f}") # p=0.5时方差最大
什么用(应用):二分类问题的标签(y∈{0,1})服从伯努利分布。逻辑回归的输出就是对伯努利参数 p 的估计:P(y=1|x) = σ(w^T x)。Dropout 中每个神经元保留与否也是伯努利随机变量。GAN 中判别器的输出"真/假"也是伯努利。
哪些坑(缺点):伯努利分布假设每次试验独立,但实际分类任务中,相邻样本的标签可能相关(如视频帧中的相邻帧)。另外,当类别极度不平衡时(p 接近 0 或 1),模型容易退化到"全预测多数类"。
二、二项分布——多次伯努利
是什么(定义):二项分布 Binomial(n, p) 描述 n 次独立伯努利试验中成功次数的分布。PMF:P(X=k) = C(n,k) · p^k · (1-p)^{n-k},k=0,1,...,n。
大白话 抛 10 次硬币,有几次正面?这就是二项分布。每次抛硬币是伯努利(正面=1,反面=0),10 次的结果加起来(正面总次数)就是二项分布。n 是试验次数,p 是每次成功的概率。
为什么(原理):二项分布是 n 个独立同分布伯努利随机变量之和。期望 E[X] = np,方差 Var(X) = np(1-p)。当 n 很大时,根据中心极限定理,二项分布近似正态分布 N(np, np(1-p))。当 p 很小而 n 很大时,近似泊松分布 Poisson(np)。
怎么做(实现):
import numpy as np
from math import comb
# 二项分布 Binomial(n=20, p=0.3)
n, p = 20, 0.3 # 参数设置
k_values = np.arange(0, n + 1) # 可能取值 0~20
# 计算PMF和CDF
pmf = np.array([comb(n, k) * (p**k) * ((1-p)**(n-k)) for k in k_values]) # PMF计算
cdf = np.cumsum(pmf) # CDF = PMF累积和
print(f"期望 E[X] = n*p = {n*p:.1f}") # 理论期望
print(f"方差 Var(X) = n*p*(1-p) = {n*p*(1-p):.1f}") # 理论方差
print(f"PMF之和 = {np.sum(pmf):.10f}") # 验证归一化
# 找出最可能的值(众数)以及概率区间
print(f"众数: k={k_values[np.argmax(pmf)]}") # 概率最大处
print(f"P(4≤X≤8) = {cdf[8] - cdf[3]:.4f}") # 区间概率(期望附近)
# 模拟验证:100000次实验
np.random.seed(42) # 固定种子
samples = np.random.binomial(n=n, p=p, size=100000) # 蒙特卡洛模拟
print(f"\n模拟均值: {np.mean(samples):.2f}") # 应接近np=6
print(f"模拟方差: {np.var(samples):.2f}") # 应接近np(1-p)=4.2
# 演示二项分布近似正态分布
n_large, p_large = 100, 0.3 # 大n
large_samples = np.random.binomial(n=n_large, p=p_large, size=50000) # 大样本
print(f"\nn={n_large}, p={p_large}时:")
print(f"均值={np.mean(large_samples):.2f}(理论={n_large*p_large})") # 均值验证
print(f"标准差={np.std(large_samples):.2f}(理论={np.sqrt(n_large*p_large*(1-p_large)):.2f})") # 验证
什么用(应用):模型评估中,测试集 n 个样本的正确预测次数服从二项分布,可以用来计算准确率的置信区间。A/B 测试中,每个版本的点击次数也是二项分布。批量训练中 mini-batch 的准确率也是二项分布。
哪些坑(缺点):二项分布要求每次试验独立同分布,但实际预测中相邻样本往往不独立。二项分布还假设 p 对所有试验相同,但模型在不同样本上的预测难度可能不同,违反同分布假设。
三、正态分布——大自然的"默认"分布
是什么(定义):正态分布(Normal/Gaussian Distribution)N(μ, σ²) 是连续分布,PDF 为 f(x) = (1/σ√(2π))·exp(-(x-μ)²/(2σ²))。μ 是均值(中心位置),σ 是标准差(离散程度)。
大白话 正态分布就是那个著名的"钟形曲线"。人类身高、测量误差、考试成绩——大量自然现象都近似正态分布。中间高、两边低、左右对称。μ 告诉你"钟的顶点在哪",σ 告诉你"钟有多胖"——σ 越小,钟越瘦高(数据越集中)。
为什么(原理):正态分布之所以无处不在,根本原因是中心极限定理:大量独立同分布随机变量的和(或均值)趋向于正态分布,无论原始分布是什么。正态分布还有数学上的优雅性质:①线性变换后仍是正态分布;②独立正态分布之和仍是正态分布;③它是给定均值和方差下熵最大的分布(最"随机")。
怎么做(实现):
import numpy as np
# 正态分布 N(μ=0, σ²=1) —— 标准正态分布
np.random.seed(42) # 固定种子
mu, sigma = 0, 1 # 标准正态参数
n_samples = 100000 # 样本量
samples = np.random.normal(mu, sigma, size=n_samples) # 标准正态采样
# 验证68-95-99.7规则
for k, label in [(1, "1σ"), (2, "2σ"), (3, "3σ")]:
in_range = np.mean(np.abs(samples - mu) <= k * sigma) # μ±kσ内比例
theory = {1: 0.6827, 2: 0.9545, 3: 0.9973}[k] # 理论值
print(f"μ±{label}: 模拟={in_range:.4f}, 理论={theory:.4f}") # 验证68-95-99.7
# 正态分布的性质:线性变换
a, b = 3, 2 # Y = aX + b
transformed = a * samples + b # 线性变换
print(f"\nX~N(0,1), Y=3X+2:") # 变换说明
print(f"Y的均值: {np.mean(transformed):.2f}(理论={a*mu+b})") # 均值验证
print(f"Y的标准差: {np.std(transformed):.2f}(理论={abs(a)*sigma})") # 标准差验证
# 正态分布的和:X1+X2 ~ N(μ1+μ2, σ1²+σ2²)
x1 = np.random.normal(5, 2, 50000) # N(5, 4)
x2 = np.random.normal(-3, 3, 50000) # N(-3, 9)
sum_samples = x1 + x2 # 独立正态之和
print(f"\nX1~N(5,4), X2~N(-3,9), X1+X2:") # 和分布说明
print(f"均值: {np.mean(sum_samples):.2f}(理论=2)") # 均值验证
print(f"标准差: {np.std(sum_samples):.2f}(理论={np.sqrt(4+9):.2f})") # 标准差验证
什么用(应用):正态分布是 AI 中最无处不在的分布——权重初始化(He/Xavier 初始化用正态或均匀分布)、Batch Normalization(将激活值标准化到 N(0,1) 再缩放)、Layer Normalization、梯度噪声的分布假设、VAE 中潜在变量的先验分布 p(z) = N(0,I)。正态分布还用于异常检测(3σ 原则)和置信区间构建。
哪些坑(缺点):现实数据很少精确服从正态分布——股价收益率有"肥尾"(极端事件比正态分布预测的更频繁),图像像素值有界([0,255]),这些偏差可能导致基于正态假设的模型失效。另外,正态分布对所有实数都有非零概率(支撑集为 R),但很多实际变量有天然边界(如概率在 [0,1]),此时用 Beta 分布更合适。
四、泊松分布——计数分布
是什么(定义):泊松分布 Poisson(λ) 描述单位时间/空间内随机事件发生次数的分布。PMF:P(X=k) = λ^k · e^{-λ} / k!,k=0,1,2,...。λ 是单位时间内的平均发生次数。
大白话 一个小时内有多少辆车经过路口?一页书上有多少个错别字?一天内网站有多少次访问?这些"计数"问题都适合用泊松分布建模。λ 就是"平均来说,单位时间内发生多少次"。如果平均每小时路过 10 辆车,那么 λ=10。
为什么(原理):泊松分布是二项分布 Binomial(n, p) 在 n→∞, p→0, np→λ 时的极限分布。泊松分布有"无记忆性"——下一个事件何时发生与上一个事件何时发生无关。期望 E[X] = λ,方差 Var(X) = λ(期望和方差相等!这是一个独特性质)。
怎么做(实现):
import numpy as np
# 泊松分布 Poisson(λ=4)
lam = 4 # 平均发生率
np.random.seed(42) # 固定种子
poisson_samples = np.random.poisson(lam=lam, size=100000) # 泊松分布采样
# 统计性质
print(f"期望: 理论={lam}, 模拟={np.mean(poisson_samples):.3f}") # 期望验证
print(f"方差: 理论={lam}, 模拟={np.var(poisson_samples):.3f}") # 方差验证(期望=方差!)
# 查看不同k值的概率
max_k = 15 # 最大显示到k=15
for k in range(max_k + 1):
sim_prob = np.mean(poisson_samples == k) # 模拟频率
# 理论PMF
theo_prob = (lam**k) * np.exp(-lam) / np.math.factorial(k) # 泊松PMF公式
if k <= 10 or theo_prob > 0.001: # 只显示有意义的值
print(f"P(X={k:2d}): 理论={theo_prob:.4f}, 模拟={sim_prob:.4f}") # 理论与模拟对比
# 泊松分布展现二项分布极限
n_large, p_small = 1000, 0.004 # n很大,p很小,np=4=λ
binomial_samples = np.random.binomial(n=n_large, p=p_small, size=100000) # 二项分布采样
print(f"\n二项分布(n={n_large}, p={p_small}) vs 泊松(λ={n_large*p_small})")
print(f"二项均值: {np.mean(binomial_samples):.3f}") # 二项均值
print(f"二项方差: {np.var(binomial_samples):.3f}") # 二项方差
print(f"泊松均值: {np.mean(poisson_samples):.3f}") # 泊松均值
print(f"泊松方差: {np.var(poisson_samples):.3f}") # 泊松方差(二者应接近)
什么用(应用):在 NLP 中,词频分布近似泊松分布(虽然实际更接近 Zipf 分布)。推荐系统中,用户对某类内容的点击次数可建模为泊松分布。在强化学习中,泊松过程用于建模随机事件到达。在异常检测中,偏离泊松分布的模式可能指示异常行为。
哪些坑(缺点):泊松分布的"期望=方差"假设在现实中经常被违反——实际数据中方差往往大于期望(称为"过度离散" over-dispersion),此时需要使用负二项分布(Negative Binomial)替代。另外,泊松过程假设事件发生率恒定,但现实中很多计数问题有周期性(如网站访问量白天高晚上低),需要用非齐次泊松过程。
五、AI中的分布——权重初始化、数据分布
是什么(定义):在深度学习中,权重初始化策略(He初始化、Xavier初始化)基于正态分布或均匀分布,精心设计方差以确保信号在前向和反向传播中保持稳定。数据分布假设影响模型设计——如假设数据服从正态分布时使用均方误差(MSE),假设伯努利时使用交叉熵。
大白话 训练神经网络时,一开始的权重是随机给的。如果给得太小,信号传着传着就没了(梯度消失);给得太大,信号会爆炸(梯度爆炸)。He 和 Xavier 初始化通过精心计算"该用多大的方差"来解决这个问题。另外,损失函数的选择也暗含了分布假设——交叉熵假设标签是伯努利/类别分布,MSE 假设误差是正态分布。
为什么(原理):Xavier 初始化(Glorot 初始化)基于 tanh 激活函数,确保前向传播的方差 ≈ 反向传播的方差,方差 = 2/(n_in + n_out)。He 初始化针对 ReLU 激活函数,考虑到 ReLU 会"砍掉"一半的负值,方差 = 2/n_in。从概率角度看,初始化决定了优化起点在参数空间中的位置,好的初始化让你从一个"好位置"开始——各方差的尺度一致,梯度能有效流动。
怎么做(实现):
import numpy as np
# 比较不同权重初始化策略
np.random.seed(42) # 固定种子
n_in = 100 # 输入维度
n_out = 50 # 输出维度
# 三种初始化方法
# 1. 简单正态初始化(方差过大)
W_simple = np.random.normal(0, 1.0, size=(n_out, n_in)) # 标准差1.0太大
# 2. Xavier初始化
std_xavier = np.sqrt(2.0 / (n_in + n_out)) # Xavier标准差
W_xavier = np.random.normal(0, std_xavier, size=(n_out, n_in)) # Xavier初始化
# 3. He初始化
std_he = np.sqrt(2.0 / n_in) # He标准差
W_he = np.random.normal(0, std_he, size=(n_out, n_in)) # He初始化
# 模拟一个随机输入向量,观察前向传播后的方差
x = np.random.normal(0, 1, size=(n_in, 1000)) # 1000个样本,每个n_in维
# 前向传播
y_simple = W_simple @ x # 简单初始化
y_xavier = W_xavier @ x # Xavier初始化
y_he = W_he @ x # He初始化
print("输出方差比较(理想情况应接近1):")
print(f"简单初始化: std={np.std(y_simple):.4f}(方差爆炸!)") # 方差太大
print(f"Xavier初始化: std={np.std(y_xavier):.4f}") # 接近1
print(f"He初始化: std={np.std(y_he):.4f}") # 接近1
# 演示 Batch Normalization 的效果
# 模拟一层激活值(偏态分布)
raw_activations = np.random.exponential(scale=2.0, size=(100, 1000)) # 偏态分布
# Batch Normalization:减均值除标准差
bn_mean = np.mean(raw_activations, axis=1, keepdims=True) # 沿batch计算均值
bn_std = np.std(raw_activations, axis=1, keepdims=True) + 1e-8 # 沿batch计算标准差
bn_activations = (raw_activations - bn_mean) / bn_std # 标准化到N(0,1)
print(f"\nBatch Normalization效果:")
print(f"原始激活值均值: {np.mean(raw_activations):.4f}, 标准差: {np.std(raw_activations):.4f}") # 偏态
print(f"BN后均值: {np.mean(bn_activations):.6f}, 标准差: {np.std(bn_activations):.4f}") # ~N(0,1)
什么用(应用):He 初始化是 ResNet 和大多数使用 ReLU 的 CNN 的标配。Xavier 初始化用于 tanh 网络。Batch Normalization 通过强制每层输出近似 N(0,1) 来稳定训练。Layer Normalization 是 Transformer 的核心组件。
哪些坑(缺点):初始化策略的选择依赖于激活函数——He 初始化对 ReLU 有效但对 Sigmoid 无效。Batch Normalization 在 batch size 很小时不稳定(统计量估计不准),在小 batch 场景下可用 Layer Norm 或 Group Norm 替代。BN 的训练和推理行为不一致(训练用 batch 统计量,推理用全局统计量),这也是一个常见坑。
概念关系图谱
| 概念 | 核心含义 | 与AI的关系 | 关联概念 |
|---|---|---|---|
| 伯努利分布 | 单次0-1试验,参数p | 二分类标签、Dropout掩码 | 二项分布、逻辑回归 |
| 二项分布 | n次独立伯努利试验的成功次数 | 模型准确率分布、A/B测试 | 伯努利、正态分布、泊松分布 |
| 正态分布 | 钟形连续分布,N(μ,σ²) | 权重初始化、BN、VAE先验 | 中心极限定理、标准化 |
| 泊松分布 | 计数分布,Poisson(λ) | 词频建模、点击次数、异常检测 | 二项分布、指数分布 |
| 68-95-99.7规则 | 正态分布的概率区间 | 异常检测阈值、置信区间 | 正态分布、标准差 |
| He初始化 | 针对ReLU的权重初始化 | ResNet、CNN训练稳定性 | 正态分布、方差传播 |
| Xavier初始化 | 针对tanh的权重初始化 | 传统网络训练 | 正态分布、方差传播 |
| Batch Normalization | 将中间层输出标准化到N(0,1) | 加速训练、允许更大学习率 | 正态分布、标准化 |
| 中心极限定理 | 大量独立变量之和趋向正态 | 理解为什么正态分布无处不在 | 正态分布、大数定律 |
| 交叉熵损失 | 基于伯努利/类别分布的似然 | 分类任务的标准损失函数 | 伯努利分布、softmax |
重点答疑
Q1: 正态分布为什么叫"正态"?它真的那么"正常"吗?
"正态"(Normal)这个名字其实有点误导。它最初由高斯在研究天文观测误差时发现——测量误差的分布呈现钟形。后来中心极限定理证明:大量独立微小因素叠加的结果趋向正态分布,这让它有了"正常/普遍"的含义。但现实数据并不总是正态的——收入分布是偏态的(长尾向右),股票收益是肥尾的(极端事件更多),这催生了更灵活的分布族(如 t 分布、偏态分布)。所以正态分布是"好用的近似"而非"普遍真理"。
Q2: 为什么激活函数从 Sigmoid 换到 ReLU 后,初始化方法也要变?
Sigmoid 在 0 附近近似线性,方差传播大约 1:1。但 ReLU 会把所有负值变成 0,相当于"砍掉"了一半信号,输出方差会减半。所以 He 初始化的方差是 Xavier 的两倍(2/n_in vs 1/n_in),恰好补偿了 ReLU 的"砍半"效应。如果 ReLU 网络用了 Xavier 初始化,信号会在一层一层中逐渐衰减,导致深层网络梯度消失。
Q3: 什么时候用泊松分布而不是二项分布?
当 n 很大且 p 很小时,泊松分布是二项分布的极好近似,而且计算更简单(不需要组合数 C(n,k))。经典场景:一本书有 100000 个字母(n 很大),每个字母是错别字的概率 p=0.0001(很小),错别字数量 ≈ Poisson(10)。更本质的区别是:二项分布有上限 n(最多 n 次成功),而泊松分布在理论上没有上限。所以如果事件可能发生"任意多次"(如网站访问量),用泊松更自然。
章节单词汇总
| 英文 | 音标 | 术语/释义 |
|---|---|---|
| Bernoulli Distribution | /bərˈnuːli ˌdɪstrɪˈbjuːʃən/ | 伯努利分布,单次0-1试验的概率分布 |
| Binomial Distribution | /baɪˈnoʊmiəl ˌdɪstrɪˈbjuːʃən/ | 二项分布,n次独立伯努利试验的成功次数分布 |
| Normal/Gaussian Distribution | /ˈnɔːrməl/ /ˈgaʊsiən/ | 正态/高斯分布,钟形连续分布 |
| Poisson Distribution | /pwɑːˈsɔːn ˌdɪstrɪˈbjuːʃən/ | 泊松分布,单位时间/空间内事件计数分布 |
| Standard Deviation | /ˈstændərd ˌdiːviˈeɪʃən/ | 标准差,衡量数据离散程度,σ |
| Variance | /ˈveriəns/ | 方差,标准差的平方,σ² |
| Central Limit Theorem | /ˈsentrəl ˈlɪmɪt ˈθɪərəm/ | 中心极限定理,大量独立变量之和趋向正态 |
| He Initialization | /hiː ɪˌnɪʃəlaɪˈzeɪʃən/ | He初始化,针对ReLU的权重初始化方法 |
| Xavier/Glorot Initialization | /ˈzeɪviər/ /ˈglɔːrət/ | Xavier初始化,针对tanh的权重初始化 |
| Batch Normalization | /bætʃ ˌnɔːrməlaɪˈzeɪʃən/ | 批标准化,将中间层输出标准化到N(0,1) |
| Empirical Rule (68-95-99.7) | /ɪmˈpɪrɪkəl ruːl/ | 经验法则,正态分布的概率区间规则 |
| Over-dispersion | /ˈoʊvər dɪˈspɜːrʒən/ | 过度离散,实际方差大于理论方差 |
| Standardization (Z-score) | /ˌstændərdaɪˈzeɪʃən/ | 标准化,将数据转换为均值0标准差1 |
| Exponential Distribution | /ˌekspəˈnenʃəl ˌdɪstrɪˈbjuːʃən/ | 指数分布,泊松过程中事件间隔的分布 |
面试练习
Q1 [单选] 伯努利分布 Bernoulli(p) 的方差在 p 取何值时最大?
- A. p = 0
- B. p = 0.3
- C. p = 0.5
- D. p = 1
解答:Var = p(1-p),这是一个开口向下的二次函数,在 p=0.5 时取得最大值 0.25。p=0.5 时最不确定,方差最大。
Q2 [单选] 标准正态分布 N(0,1) 中,P(-1 < X < 1) 约等于?
- A. 0.5
- B. 0.68
- C. 0.95
- D. 0.99
解答:根据 68-95-99.7 规则,μ±1σ 区间包含约 68% 的概率。标准正态 μ=0, σ=1,所以 (-1, 1) 就是 μ±1σ,概率约 68.27%。
Q3 [多选] 关于泊松分布,以下哪些是正确的?
- A. 期望和方差相等,都等于 λ
- B. 它是二项分布在 n→∞, p→0, np→λ 时的极限
- C. 泊松分布只能取有限个值
- D. 泊松分布适用于单位时间内事件发生次数的建模
解答:A 正确,E[X]=Var(X)=λ。B 正确。C 错误,泊松分布取值 k=0,1,2,... 理论上可以到无穷大。D 正确,这是泊松分布最典型的应用场景。
Q4 [单选] 对于 ReLU 激活函数的全连接层,推荐使用哪种权重初始化?
- A. 全零初始化
- B. Xavier 初始化(方差 1/n_in)
- C. He 初始化(方差 2/n_in)
- D. 标准差为 1 的正态分布
解答:He 初始化方差 2/n_in 补偿了 ReLU 将负值置零导致方差减半的效应。Xavier 初始化对 ReLU 会导致信号逐层衰减。全零初始化会导致对称性破坏失败。
Q5 [单选] 如果 X~Binomial(100, 0.02),则 X 近似服从什么分布?
- A. 正态分布 N(2, 1.96)
- B. 泊松分布 Poisson(2)
- C. 伯努利分布 Bernoulli(0.02)
- D. 均匀分布
解答:n=100(大),p=0.02(小),np=2(适中),满足泊松近似的条件。Binomial(100, 0.02) ≈ Poisson(2)。
Q6 [多选] 关于 Batch Normalization,以下哪些是正确的?
- A. 它将每层输出标准化为近似 N(0,1) 分布
- B. 训练时使用 mini-batch 的统计量,推理时使用全局统计量
- C. BN 消除了对权重初始化的依赖
- D. BN 可以有效缓解梯度消失和梯度爆炸
解答:A 正确,BN 的核心操作就是标准化。B 正确,这是 BN 训练和推理行为不一致的地方。C 错误,BN 减轻了初始化的重要性但没有完全消除。D 正确,BN 通过保持激活值在合理范围内来稳定梯度。
Q7 [单选] 以下哪个分布最适合描述"一分钟内通过某路口的汽车数量"?
- A. 正态分布
- B. 伯努利分布
- C. 泊松分布
- D. 二项分布
解答:单位时间内随机事件的发生次数,是泊松分布的经典应用场景。正态分布是连续的,不适用于计数数据。伯努利只有 0/1。二项分布有上限 n。
Q8 [多选] 以下哪些是正态分布的性质?
- A. 线性变换后仍是正态分布
- B. 独立正态分布之和仍是正态分布
- C. 给定均值和方差下熵最大的分布
- D. 正态分布完全对称,偏度为 0
解答:以上全部都是正态分布的经典性质。A 是线性变换封闭性,B 是可加性,C 是最大熵性质,D 是对称性。
Q9 [单选] 在二分类问题中,标签 y 服从什么分布(给定 x 的条件下)?
- A. 正态分布
- B. 伯努利分布
- C. 泊松分布
- D. 均匀分布
解答:二分类标签 y∈{0,1},P(y=1|x)=p, P(y=0|x)=1-p,这正是伯努利分布。逻辑回归建模的就是参数 p,交叉熵损失也是基于伯努利分布的负对数似然推导出来的。
Q10 [多选] 关于二项分布、泊松分布、正态分布之间的关系,正确的有?
- A. 二项分布在 n 很大时近似正态分布
- B. 二项分布在 n 很大 p 很小时近似泊松分布
- C. 泊松分布在 λ 很大时近似正态分布
- D. 伯努利分布是泊松分布的特例
解答:A、B、C 都是经典的大样本近似关系。D 错误,伯努利分布是二项分布的特例(n=1),不是泊松分布的特例。