人工智能之数学基础 离散数学:第四章 离散概率

人工智能之数学基础 离散数学

第四章 离散概率


文章目录

  • [人工智能之数学基础 离散数学](#人工智能之数学基础 离散数学)
  • 前言
  • 一、离散概率基础
    • [1. 概率空间(Probability Space)](#1. 概率空间(Probability Space))
    • [2. 条件概率与贝叶斯定理](#2. 条件概率与贝叶斯定理)
  • [二、离散型随机变量(Discrete Random Variable)](#二、离散型随机变量(Discrete Random Variable))
    • [1. 定义](#1. 定义)
    • [2. 概率质量函数(PMF)](#2. 概率质量函数(PMF))
  • 三、重要离散分布
    • [1. 伯努利分布(Bernoulli Distribution)](#1. 伯努利分布(Bernoulli Distribution))
    • [2. 二项分布(Binomial Distribution)](#2. 二项分布(Binomial Distribution))
    • [3. 其他重要分布](#3. 其他重要分布)
  • 四、期望与方差
    • [1. 期望(Expectation)](#1. 期望(Expectation))
    • [2. 方差(Variance)](#2. 方差(Variance))
  • [五、AI 中的离散概率应用](#五、AI 中的离散概率应用)
    • [1. 分类任务的统计建模](#1. 分类任务的统计建模)
    • [2. 贝叶斯分类器](#2. 贝叶斯分类器)
    • [3. 强化学习中的动作选择](#3. 强化学习中的动作选择)
  • [六、Python 代码实现](#六、Python 代码实现)
    • [1. 导入库](#1. 导入库)
    • [2. 伯努利与二项分布 PMF 可视化](#2. 伯努利与二项分布 PMF 可视化)
    • [3. 二项分布模拟:分类任务性能分析](#3. 二项分布模拟:分类任务性能分析)
    • [4. 自定义二项 PMF 与累积分布(CDF)](#4. 自定义二项 PMF 与累积分布(CDF))
    • [5. AI 应用:分类误差的假设检验](#5. AI 应用:分类误差的假设检验)
    • [6. 泊松近似二项分布](#6. 泊松近似二项分布)
  • 七、总结
  • 后续
  • 资料关注

前言

离散概率是离散数学与概率论的交叉核心 ,为机器学习中的分类、采样、不确定性建模提供理论基础。本文系统讲解:

  • 离散概率空间与基本公理
  • 离散型随机变量及其分布
  • 重要离散分布:伯努利、二项、泊松、几何
  • 期望与方差
  • 在 AI 分类任务中的应用(如二项分布建模正确/错误预测)
  • 配套 Python 代码实现scipy.stats、自定义模拟、可视化、分类误差分析)

一、离散概率基础

1. 概率空间(Probability Space)

三元组 (\\Omega, \\mathcal{F}, P)

  • 样本空间 \\Omega :所有可能结果的集合(离散 ⇒ 可数)
  • **事件域 \\mathcal{F} ∗ ∗ : \*\*: ∗∗: \\Omega 的子集族(通常为幂集)
  • 概率测度 P :满足:
    1. 0 \\leq P(A) \\leq 1
    2. P(\\Omega) = 1
    3. 可列可加性:若 A_i 互斥,则 P\\left(\\bigcup_i A_i\\right) = \\sum_i P(A_i)

✅ 示例:掷骰子

\\Omega = {1,2,3,4,5,6} , , , P({1}) = \\frac{1}{6}


2. 条件概率与贝叶斯定理

  • 条件概率
    P ( A ∣ B ) = P ( A ∩ B ) P ( B ) , P ( B ) > 0 P(A \mid B) = \frac{P(A \cap B)}{P(B)}, \quad P(B) > 0 P(A∣B)=P(B)P(A∩B),P(B)>0
  • 贝叶斯定理
    P ( H ∣ E ) = P ( E ∣ H ) P ( H ) P ( E ) → ∗ ∗ 朴素贝叶斯分类器 ∗ ∗ 的理论基础 P(H \mid E) = \frac{P(E \mid H) P(H)}{P(E)} → **朴素贝叶斯分类器**的理论基础 P(H∣E)=P(E)P(E∣H)P(H)→∗∗朴素贝叶斯分类器∗∗的理论基础

二、离散型随机变量(Discrete Random Variable)

1. 定义

函数 X: \\Omega \\to \\mathbb{R} ,其取值为可数集合(有限或可列无限)。

2. 概率质量函数(PMF)

p X ( x ) = P ( X = x ) 满足: p_X(x) = P(X = x) 满足: pX(x)=P(X=x)满足:

  • p_X(x) \\geq 0
  • \\sum_{x} p_X(x) = 1

📌 对比:连续变量用概率密度函数(PDF)


三、重要离散分布

1. 伯努利分布(Bernoulli Distribution)

  • 场景:单次试验,成功(1)或失败(0)
  • PMF
    P ( X = x ) = p x ( 1 − p ) 1 − x , x ∈ { 0 , 1 } P(X = x) = p^x (1 - p)^{1 - x}, \quad x \in \{0, 1\} P(X=x)=px(1−p)1−x,x∈{0,1}
  • 记作 X \\sim \\text{Bernoulli}§
  • 期望/方差
    E [ X ] = p , Var ( X ) = p ( 1 − p ) \mathbb{E}[X] = p, \quad \text{Var}(X) = p(1 - p) E[X]=p,Var(X)=p(1−p)

AI 应用:单个二分类预测(如"是否垃圾邮件")


2. 二项分布(Binomial Distribution)

  • 场景 n 次独立伯努利试验,成功次数
  • PMF
    P ( X = k ) = ( n k ) p k ( 1 − p ) n − k , k = 0 , 1 , ... , n P(X = k) = \binom{n}{k} p^k (1 - p)^{n - k}, \quad k = 0,1,\dots,n P(X=k)=(kn)pk(1−p)n−k,k=0,1,...,n
  • 记作 X \\sim \\text{Binomial}(n, p)
  • 期望/方差
    E [ X ] = n p , Var ( X ) = n p ( 1 − p ) \mathbb{E}[X] = np, \quad \text{Var}(X) = np(1 - p) E[X]=np,Var(X)=np(1−p)

AI 核心应用

  • 分类任务性能建模:假设模型准确率为 p ,在 n 个测试样本中正确预测 k 个的概率
  • A/B 测试:比较两个模型的成功率

3. 其他重要分布

分布 场景 PMF 期望
几何分布 首次成功所需试验次数 P(X=k) = (1-p)\^{k-1}p 1/p
泊松分布 单位时间事件发生次数 P(X=k) = \\frac{\\lambda\^k e\^{-\\lambda}}{k!} \\lambda
多项分布 多类别分类(扩展二项) P(\\mathbf{X}=\\mathbf{k}) = \\frac{n!}{k_1!\\cdots k_m!} p_1\^{k_1}\\cdots p_m\^{k_m} np_i

💡 泊松近似:当 n 大、 p 小、 \\lambda = np 适中时, \\text{Binomial}(n,p) \\approx \\text{Poisson}(\\lambda)


四、期望与方差

1. 期望(Expectation)

E [ X ] = ∑ x x ⋅ p X ( x ) \mathbb{E}[X] = \sum_{x} x \cdot p_X(x) E[X]=x∑x⋅pX(x)

  • 线性性 \\mathbb{E}\[aX + bY\] = a\\mathbb{E}\[X\] + b\\mathbb{E}\[Y\] (无需独立)

2. 方差(Variance)

Var ( X ) = E [ ( X − E [ X ] ) 2 ] = E [ X 2 ] − ( E [ X ] ) 2 \text{Var}(X) = \mathbb{E}[(X - \mathbb{E}[X])^2] = \mathbb{E}[X^2] - (\mathbb{E}[X])^2 Var(X)=E[(X−E[X])2]=E[X2]−(E[X])2

  • 性质 \\text{Var}(aX + b) = a\^2 \\text{Var}(X)

五、AI 中的离散概率应用

1. 分类任务的统计建模

  • 假设测试集有 n = 1000 个样本
  • 模型真实准确率 p = 0.85
  • 则正确预测数 X \\sim \\text{Binomial}(1000, 0.85)
  • 可计算:
    • P(X \\geq 840) :模型表现不低于 84% 的概率
    • 置信区间: \\hat{p} \\pm z \\sqrt{\\frac{\\hat{p}(1-\\hat{p})}{n}}

2. 贝叶斯分类器

  • 使用贝叶斯定理计算后验概率:
    P ( y ∣ x ) = P ( x ∣ y ) P ( y ) P ( x ) P(y \mid \mathbf{x}) = \frac{P(\mathbf{x} \mid y) P(y)}{P(\mathbf{x})} P(y∣x)=P(x)P(x∣y)P(y)
  • 朴素贝叶斯假设特征条件独立 → 乘积形式

3. 强化学习中的动作选择

  • 策略 \\pi(a \\mid s) 是离散概率分布(如 softmax 输出)

六、Python 代码实现

1. 导入库

python 复制代码
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
from scipy.stats import bernoulli, binom, poisson
from scipy.special import comb

# 设置风格
sns.set(style="whitegrid")
plt.rcParams['font.sans-serif'] = ['SimHei']  # 支持中文

2. 伯努利与二项分布 PMF 可视化

python 复制代码
# 参数
p = 0.7
n = 10

# 伯努利分布
x_bern = [0, 1]
pmf_bern = [1 - p, p]

# 二项分布
x_binom = np.arange(0, n + 1)
pmf_binom = binom.pmf(x_binom, n, p)

# 绘图
fig, axes = plt.subplots(1, 2, figsize=(12, 4))

# 伯努利
axes[0].bar(x_bern, pmf_bern, color='skyblue', edgecolor='black')
axes[0].set_title('伯努利分布 (p=0.7)')
axes[0].set_xlabel('X'); axes[0].set_ylabel('P(X)')
axes[0].set_xticks([0, 1])

# 二项分布
axes[1].bar(x_binom, pmf_binom, color='lightcoral', edgecolor='black')
axes[1].set_title(f'二项分布 (n={n}, p={p})')
axes[1].set_xlabel('成功次数 k'); axes[1].set_ylabel('P(X=k)')

plt.tight_layout()
plt.show()

3. 二项分布模拟:分类任务性能分析

python 复制代码
# 模拟:1000 次实验,每次测试 100 个样本,真实准确率 0.8
np.random.seed(42)
n_trials = 1000
n_samples = 100
true_acc = 0.8

# 模拟正确预测数
correct_counts = np.random.binomial(n_samples, true_acc, size=n_trials)

# 理论分布
x_theory = np.arange(70, 91)
pmf_theory = binom.pmf(x_theory, n_samples, true_acc)

# 绘图:模拟 vs 理论
plt.figure(figsize=(10, 5))
plt.hist(correct_counts, bins=20, density=True, alpha=0.6, label='模拟结果', color='lightgreen')
plt.plot(x_theory, pmf_theory, 'ro-', label='理论 PMF')
plt.axvline(n_samples * true_acc, color='red', linestyle='--', label=f'期望值 = {n_samples * true_acc}')
plt.title('分类任务正确预测数分布(n=100, p=0.8)')
plt.xlabel('正确预测数'); plt.ylabel('概率密度')
plt.legend()
plt.show()

# 计算 95% 置信区间(经验)
lower = np.percentile(correct_counts, 2.5)
upper = np.percentile(correct_counts, 97.5)
print(f"95% 经验置信区间: [{lower:.1f}, {upper:.1 f}]")
print(f"理论标准差: {np.sqrt(n_samples * true_acc * (1 - true_acc)):.2f}")

4. 自定义二项 PMF 与累积分布(CDF)

python 复制代码
def binom_pmf(k, n, p):
    """手动计算二项 PMF"""
    if k < 0 or k > n:
        return 0.0
    return comb(n, k) * (p ** k) * ((1 - p) ** (n - k))

def binom_cdf(k, n, p):
    """手动计算二项 CDF"""
    return sum(binom_pmf(i, n, p) for i in range(0, k + 1))

# 测试
n, p = 5, 0.5
for k in range(n + 1):
    print(f"P(X ≤ {k}) = {binom_cdf(k, n, p):.4f}")

# 验证与 scipy 一致
assert abs(binom_cdf(3, 5, 0.5) - binom.cdf(3, 5, 0.5)) < 1e-10
print("✅ 手动实现与 scipy 一致")

5. AI 应用:分类误差的假设检验

问题:模型 A 在 1000 个样本上正确 850 个,模型 B 正确 830 个。差异是否显著?

python 复制代码
from statsmodels.stats.proportion import proportions_ztest

# 数据
count = np.array([850, 830])
nobs = np.array([1000, 1000])

# 双样本比例 z 检验
stat, pval = proportions_ztest(count, nobs)

print(f"Z 统计量: {stat:.4f}")
print(f"p 值: {pval:.4f}")

if pval < 0.05:
    print("✅ 差异显著(p < 0.05)")
else:
    print("❌ 差异不显著")

📌 原理:在零假设(两模型准确率相同)下,正确数服从二项分布,可用正态近似进行检验。


6. 泊松近似二项分布

python 复制代码
n_large = 1000
p_small = 0.01
lam = n_large * p_small  # λ = 10

x = np.arange(0, 20)
pmf_binom = binom.pmf(x, n_large, p_small)
pmf_poisson = poisson.pmf(x, lam)

plt.figure(figsize=(8, 5))
plt.plot(x, pmf_binom, 'bo-', label='Binomial(n=1000, p=0.01)')
plt.plot(x, pmf_poisson, 'r*--', label='Poisson(λ=10)')
plt.title('泊松近似二项分布(n大, p小)')
plt.xlabel('k'); plt.ylabel('P(X=k)')
plt.legend()
plt.show()

七、总结

概念 公式 AI 应用
伯努利分布 P(X=1)=p 单样本二分类预测
二项分布 \\binom{n}{k} p\^k (1-p)\^{n-k} 分类准确率建模、A/B 测试
泊松分布 \\frac{\\lambda\^k e\^{-\\lambda}}{k!} 稀有事件建模(如异常检测)
期望 \\mathbb{E}\[X\] = \\sum x p(x) 损失函数设计、策略梯度
方差 \\text{Var}(X) = \\mathbb{E}\[X\^2\] - (\\mathbb{E}\[X\])\^2 不确定性量化、置信区间

💡 关键洞见

  • 离散概率是理解分类模型性能不确定性的语言
  • 二项分布是评估准确率的标准工具
  • 贝叶斯思维贯穿整个 AI 决策过程
  • 避免"点估计陷阱":报告准确率时应附带置信区间(如 85% ± 1.2%)。

后续

python过渡项目部分代码已经上传至gitee,后续会逐步更新。

资料关注

公众号:咚咚王

gitee:https://gitee.com/wy18585051844/ai_learning

《Python编程:从入门到实践》

《利用Python进行数据分析》

《算法导论中文第三版》

《概率论与数理统计(第四版) (盛骤) 》

《程序员的数学》

《线性代数应该这样学第3版》

《微积分和数学分析引论》

《(西瓜书)周志华-机器学习》

《TensorFlow机器学习实战指南》

《Sklearn与TensorFlow机器学习实用指南》

《模式识别(第四版)》

《深度学习 deep learning》伊恩·古德费洛著 花书

《Python深度学习第二版(中文版)【纯文本】 (登封大数据 (Francois Choliet)) (Z-Library)》

《深入浅出神经网络与深度学习+(迈克尔·尼尔森(Michael+Nielsen)》

《自然语言处理综论 第2版》

《Natural-Language-Processing-with-PyTorch》

《计算机视觉-算法与应用(中文版)》

《Learning OpenCV 4》

《AIGC:智能创作时代》杜雨+&+张孜铭

《AIGC原理与实践:零基础学大语言模型、扩散模型和多模态模型》

《从零构建大语言模型(中文版)》

《实战AI大模型》

《AI 3.0》

相关推荐
Faker66363aaa23 分钟前
指纹过滤器缺陷检测与分类 —— 基于MS-RCNN_X101-64x4d_FPN_1x_COCO模型的实现与分析_1
人工智能·目标跟踪·分类
金融小师妹36 分钟前
基于LSTM-GARCH-EVT混合模型的贵金属极端波动解析:黄金白银双双反弹的逻辑验证
大数据·人工智能·深度学习·机器学习
代码匠心43 分钟前
Trae IDE 隐藏玩法:接入即梦 AI,生成高质量大片!
人工智能·ai·trae·skills
陈天伟教授1 小时前
人工智能应用- 语言理解:01. 写作与对话
人工智能·深度学习·语音识别
铁蛋AI编程实战1 小时前
OpenClaw+Kimi K2.5开源AI助手零门槛部署教程:本地私有化+远程控制+办公自动化全实操
人工智能·开源
liliangcsdn1 小时前
文本视频音频分块工具 - Semantic Chunkers
人工智能·音视频
OPEN-Source1 小时前
大模型实战:大模型推理性能优化与成本控制实战
人工智能·性能优化·rag
雨大王5121 小时前
工业AI+如何赋能汽车供应链智能化升级?
人工智能
彬鸿科技1 小时前
bhSDR Studio/Matlab 入门指南(三):频谱检测演示界面全解析
人工智能·软件无线电
新缸中之脑1 小时前
为什么氛围编程有意义
人工智能