歪果选修课
假设检验超详细基础教程(贝叶斯决策、MAP、ML规则与错误概率)
0. 从生活例子理解假设检验
场景:医生判断患者是否患病(假设检验简化版) • 假设: • $H_0$(原假设):患者健康 • $H_1$(备择假设):患者患病 • 数据:检测结果 $X$(如血液指标) • 目标:根据 $X$ 选择接受 $H_0$ 或 $H_1$,尽量少犯错。
1. 核心概念与符号
1.1 基本定义
• 条件概率分布: • $f_X(x \mid H_0)$:健康时检测结果的分布(如正态分布)。 • $f_X(x \mid H_1)$:患病时检测结果的分布。 • 先验概率: • $P(H_0) = P_0$(人群中健康者的比例)。 • $P(H_1) = P_1 = 1 - P_0$(患病的比例)。
1.2 两类错误
错误类型 | 定义 | 概率符号 | 生活例子 |
---|---|---|---|
第一类错误(假阳性) | $H_0$ 为真时错误拒绝 $H_0$ | $P_{FA}$ | 健康人被误诊为患病 |
第二类错误(假阴性) | $H_1$ 为真时错误接受 $H_0$ | $P_M$ | 患病者被漏诊 |
1.3 总错误概率
$$ P(\text{error}) = \underbrace{P(\text{误诊} \mid H_0)}{P{FA}} \cdot P_0 + \underbrace{P(\text{漏诊} \mid H_1)}_{P_M} \cdot P_1 $$ 目标:找到决策规则,使 $P(\text{error})$ 最小。
2. 决策规则:从直觉到公式
2.1 最大似然(ML)规则
• 思想:只相信数据,忽略人群患病率。 • 判决条件: • 如果 $f_X(x \mid H_1) > f_X(x \mid H_0)$,选 $H_1$;否则选 $H_0$。 • 公式: $$ L(x) = \frac{f_X(x \mid H_1)}{f_X(x \mid H_0)} \gtrless 1 \quad \text{(似然比)} $$ • 适用场景:无先验信息(如 $P_0 = P_1 = 0.5$)。
2.2 最大后验概率(MAP)规则
• 思想:结合数据与先验知识(如人群患病率)。 • 判决条件: • 如果 $P(H_1 \mid x) > P(H_0 \mid x)$,选 $H_1$;否则选 $H_0$。 • 公式(利用贝叶斯定理): $$ \frac{P(H_1 \mid x)}{P(H_0 \mid x)} = \frac{f_X(x \mid H_1)P_1}{f_X(x \mid H_0)P_0} \gtrless 1 $$ 简化为: $$ L(x) \gtrless \frac{P_0}{P_1} $$ • 意义:如果疾病罕见($P_1$ 小),需要更强的数据证据才能诊断患病。
2.3 贝叶斯决策规则
• 思想:考虑不同错误的代价(如误诊健康人 vs. 漏诊患者)。 • 成本矩阵:
决策选 $H_0$ | 决策选 $H_1$ | |
---|---|---|
真实 $H_0$ | $C_{00} = 0$ | $C_{10} = 1$ |
真实 $H_1$ | $C_{01} = 5$ | $C_{11} = 0$ |
- 例:漏诊患者(C01=5)比误诊健康人(C10=1)更严重。
判决条件: $$ L(x) \gtrless \frac{(C_{10} - C_{00})P_0}{(C_{01} - C_{11})P_1} $$
特殊情形(均匀成本):
- 当 C00=C11=0,C10=C01=1 时,退化为 MAP 规则。
3. 逐步推导:为什么MAP最小化错误概率?
3.1 后验概率与错误的关系
• 后验概率:$P(H_0 \mid x)$ 和 $P(H_1 \mid x)$ 是给定数据后的修正信念。 • 直觉:选择后验概率大的假设,犯错概率自然最小。
3.2 数学证明
• 总错误概率: $$ P(\text{error} \mid x) = \min{P(H_0 \mid x), P(H_1 \mid x)} $$ • MAP选择:若 $P(H_1 \mid x) > P(H_0 \mid x)$,则错误概率为 $P(H_0 \mid x)$,这是可能的最小值。
3.3 均匀成本下的贝叶斯规则
• 当所有错误成本相等时,最小化 $E[\text{cost}]$ = 最小化 $P(\text{error})$。 • 公式推导: $$ E[\text{cost}] = P_{FA} \cdot C_{10} \cdot P_0 + P_M \cdot C_{01} \cdot P_1 $$ 若 $C_{10}=C_{01}=1$,则 $E[\text{cost}] = P(\text{error})$。
4. 对比表格:三大规则核心差异
规则 | 输入 | 阈值公式 | 优化目标 | 生活例子类比 |
---|---|---|---|---|
ML规则 | 数据似然度 | $L(x) \gtrless 1$ | 仅依赖数据 | 抛硬币10次8次正面,认为硬币不均匀 |
MAP规则 | 数据+先验概率 | $L(x) \gtrless P_0/P_1$ | 最小化错误概率 | 结合新冠流行率判断检测结果 |
贝叶斯规则 | 数据+先验+成本矩阵 | $L(x) \gtrless \frac{(C_{10}-C_{00})P_0}{(C_{01}-C_{11})P_1}$ | 最小化期望损失 | 医疗决策中权衡误诊和漏诊代价 |
5. 实际应用步骤
案例:工厂质检(判断产品合格 $H_0$ vs. 不合格 $H_1$)
-
步骤1:建立模型 • 测量数据 $X$(如零件尺寸),假设: ◦ $X \mid H_0 \sim N(\mu_0, \sigma^2)$(合格产品尺寸分布) ◦ $X \mid H_1 \sim N(\mu_1, \sigma^2)$(不合格产品尺寸分布) • 先验概率:$P_0 = 0.95$(合格率95%),$P_1 = 0.05$。
-
步骤2:选择决策规则 • 若只考虑数据:ML规则,阈值 $L(x) = 1$。 • 若考虑先验:MAP规则,阈值 $L(x) > 0.95/0.05 = 19$。 • 若考虑成本(如误判合格损失100元,误判不合格损失10元): $$ \text{阈值} = \frac{(100 - 0) \cdot 0.95}{(10 - 0) \cdot 0.05} = 190 $$
-
步骤3:计算与决策 • 假设某零件测得 $x = 12.1$,计算似然比 $L(x) = \frac{f_X(12.1 \mid H_1)}{f_X(12.1 \mid H_0)}$。 • 比较阈值,决定是否拒收零件。
6. 常见问题解答
Q1:先验概率未知怎么办? • 使用ML规则,或假设均匀先验($P_0 = P_1 = 0.5$)。
Q2:如何确定成本参数? • 依赖领域知识(如医学中漏诊成本远高于误诊)。
Q3:非高斯分布如何处理? • 原理相同,只需替换 $f_X(x \mid H_i)$ 的具体分布形式(如泊松分布、指数分布)。
7. 总结
• 核心逻辑链: $$ \text{数据} + \text{先验} + \text{成本} \xrightarrow{\text{贝叶斯框架}} \text{决策规则} \rightarrow \text{最小化损失} $$ • 关键记忆点:
- ML规则:纯数据驱动,阈值=1。
- MAP规则:数据+先验,阈值=$P_0/P_1$。
- 贝叶斯规则:广义形式,可调成本参数。
- 最小化错误概率:当成本均匀时,MAP=贝叶斯最优。
假设检验的判决规则通常基于统计量(如似然比 L(x))与阈值 τ 的比较:
若 L(x)>τ→拒绝 H0(选 H1),若 L(x)<τ→接受 H0.
第二堂课
第一部分:假设检验(Hypothesis Testing)
一、基本概念
- 原假设(H₀):我们先默认它是真的
- 备择假设(H₁):我们想证明它是真的
- 从样本数据出发,决定是否拒绝 H₀
二、四种决策结果
实际情况 / 决策 | 选择 H₀ | 选择 H₁ |
---|---|---|
H₀ 为真 | 正确(True Negative) | 第一类错误 Type I Error (α) |
H₁ 为真 | 第二类错误 Type II Error (β) | 正确(True Positive) |
- 显著性水平 α:错误拒绝 H₀ 的概率
- 检验功效 Power = 1 - β
三、最优检验准则(Neyman-Pearson)
- 似然比检验: [ \Lambda(x) = \frac{f(x|H_1)}{f(x|H_0)} ]
- 如果 ( \Lambda(x) > \eta ) 则拒绝 H₀,接受 H₁
四、p 值
- 定义:在 H₀ 成立的条件下,观察到比当前数据更极端的概率
- 越小,越不支持 H₀
p 值解释规则:
- p < 0.01:非常强证据反对 H₀
- 0.01 < p < 0.05:强证据
- 0.05 < p < 0.1:弱证据
- p > 0.1:几乎无证据反对 H₀
例子:
抛 5 次硬币全为正面,假设 H₀:p=0.5,则 [ p = (0.5)^5 = 0.03125 < 0.05 \Rightarrow \text{拒绝 H₀} ]
第二部分:参数估计(Parametric Estimation)
一、点估计(Point Estimation)
目标:使用样本估计未知参数 (\theta)
性质:
- 无偏性: [ \mathbb{E}[\hat{\theta}] = \theta ]
- 方差: [ \text{Var}(\hat{\theta}) ]
- 均方误差(MSE): [ \text{MSE} = \text{Bias}^2 + \text{Var} ]
- 一致性:( \hat{\theta}_n \xrightarrow{p} \theta )
二、最大似然估计(MLE)
定义: [ \hat{\theta}{\text{MLE}} = \arg\max{\theta} L(\theta) = \arg\max_{\theta} f(x_1, …, x_n | \theta) ]
例子:抛硬币
设观察到正面次数为 S,总次数为 n: [ L(\theta) = \theta^S (1 - \theta)^{n - S} \ \log L(\theta) = S \log \theta + (n - S) \log (1 - \theta) ] 求导得: [ \hat{\theta} = \frac{S}{n} ]
三、贝叶斯估计(Bayesian Estimation)
- 给定先验分布 ( p(\theta) )
- 后验分布: [ p(\theta | x) = \frac{f(x|\theta)p(\theta)}{p(x)} ]
估计方法:
- MAP:最大后验概率估计: [ \hat{\theta}_{\text{MAP}} = \arg\max p(\theta|x) ]
- MMSE:最小均方误差估计: [ \hat{\theta}_{\text{MMSE}} = \mathbb{E}[\theta | x] ]
第三部分:置信区间(Confidence Interval)
Hoeffding 不等式(用于构造置信区间)
若 (X_1, \dots, X_n\in[a,b]),独立同分布,记样本均值为: [ \bar{X}_n = \frac{1}{n}\sum X_i ] 则有: [ P(|\bar{X}_n - \mathbb{E}[X]| \geq \varepsilon) \leq 2 \exp\left(-\frac{2n\varepsilon^2}{(b - a)^2}\right) ]
例子:
抛 100 次硬币观察到 60 次正面,样本比例 ( \bar{X} = 0.6 )
设 ( \delta = 0.05 ),则 [ \varepsilon = \sqrt{\frac{\log(2/\delta)}{2n}} \approx 0.135 ] 置信区间为: [ [0.465, 0.735] ] 表示我们有 95% 的把握,认为正面概率落在这个区间内。
总结表格
内容 | 关键公式 | 举例 |
---|---|---|
假设检验 | ( \Lambda(x) = \frac{f(x | H_1)}{f(x |
点估计 | MLE: ( \hat{\theta} = \arg\max L(\theta) ) | 硬币正面比例 ( \hat{\theta} = \frac{S}{n} ) |
贝叶斯估计 | 后验:( p(\theta | x) ),MAP、MMSE |
置信区间 | Hoeffding: ( \varepsilon = \sqrt{\frac{\log(2/\delta)}{2n}} ) | [0.465, 0.735] |
如果需要图示或例题演练,也可以继续加!
第三堂课
Stochastic Stationary Bandits 课程讲义简明记
【一、基础设定】
- 有 k 个操作选择,或称 “arms”
- 每轮 t = 1, 2, …, n:
- 选择一个 arm: ( A_t \in A )
- 获得奖励: ( X_t \sim P_{A_t} )
目标: 最大化累计奖励 [ S_n = \sum_{t=1}^{n} X_t ]
【二、核心概念】
-
Mean reward: [ \mu_a = \mathbb{E}[X \mid A = a] ] 例如 Bernoulli 奖励: ( \mu_a = \theta_a )
-
Best Arm: [ a^* = \arg\max_a \mu_a ]
-
Regret (懵悔): [ R_n = n \cdot \mu^* - \mathbb{E}\left[\sum_{t=1}^{n} X_t \right] ]
-
分解公式:
- ( T_a(n) ): arm a 被选的次数
- ( \Delta_a = \mu^* - \mu_a )
[ R_n = \sum_{a \in A} \mathbb{E}[T_a(n)] \cdot \Delta_a ]
【三、Explore-Then-Commit (ETC) 算法】
思路:
- 每个 arm 先游玩 m 次
- 选择平均奖励最大的 arm,一直选它
Regret 分析: [ R_n = m \cdot \sum_{i \neq a^} \Delta_i + (n - km) \cdot \sum_{i \neq a^} P(\text{commit to } i) \cdot \Delta_i ]
优化选择 m 可以让 regret 约为 ( \mathcal{O}(\log n) )
【四、UCB (Upper Confidence Bound) 算法】
思路: 基于 “optimism under uncertainty” 原则,给每个 arm 一个证信上界值
[ \text{UCB}_i(t) = \hat{\mu}_i(t) + \sqrt{\frac{2 \log t}{T_i(t)}} ]
- ( \hat{\mu}_i(t) ): arm i 当前平均奖励
- ( T_i(t) ): arm i 被选个数
- 选择 UCB 最大的 arm
Regret 界: [ R_n \leq \sum_{i \neq a^*} \left( \frac{8 \log n}{\Delta_i} + \text{const} \right) ]
【五、ETC 和 UCB 对比】
算法 | 是否需知 ( \Delta ) | 是否均衡探索/利用 | Regret | 特点 |
---|---|---|---|---|
ETC | 需要 | 不均衡 | ( \mathcal{O}(\log n) ) | 简单,需控 m |
UCB | 不需要 | 动态均衡 | ( \mathcal{O}(\log n) ) | 实际效果好 |
【六、示例:UCB 在广告点击率优化中的应用】
场景: 你需要在两个广告位之间选择一个显示,每次显示都会矩阵形成点击,点击=1,未点击=0。
- Arm A: ( \theta_A = 0.7 ) 点击率 (unknown)
- Arm B: ( \theta_B = 0.5 ) 点击率 (unknown)
前 4 轮操作:
轮 t | 选择 | 点击 X | ( \hat{\mu} ) | ( T_i(t) ) | UCB |
---|---|---|---|---|---|
1 | A | 1 | 1.0 | 1 | ( \infty ) |
2 | B | 0 | 0.0 | 1 | ( \infty ) |
3 | A | 1 | 1.0 | 2 | 2.18 |
4 | A | 0 | 0.66 | 3 | 1.78 |
分析:
- UCB 算法初始会对每个 arm 进行基本探索,然后根据资信区间的上界条件进行利用
- 随着时间探索增加,正确的 arm 会被选中的次数增加,接近真实均值
- UCB 会自动抑制对次优 arm 的过度探索
【总结】
Stochastic Bandits 是探索 vs 利用问题的典型形式,通过智能选择操作,最大化累计奖励。
ETC 和 UCB 是两种分别体现类似 trade-off 思想的算法,UCB 更先进。
第四堂课
以下是课程知识点的详细总结,包含公式和示例:
1. 多臂老虎机问题 (Multi-Armed Bandit Problem)
核心目标:在探索(Exploration)与利用(Exploitation)之间平衡,最大化累积奖励。
关键指标
• Regret(遗憾):长期累积奖励与最优策略的差距
$$ R_n = n \cdot \mu^* - \sum_{t=1}^n \mu_{A_t} $$
其中 $\mu^*$ 是最优臂的期望奖励,$\mu_{A_t}$ 是第$t$步选择的臂的期望奖励。
2. UCB 算法 (Upper Confidence Bound)
思想:通过置信区间选择潜在收益最高的臂。
公式
$$ UCB_i(t) = \hat{\mu}_i + \sqrt{\frac{2 \ln t}{T_i(t)}} $$
• $\hat{\mu}_i$:臂$i$的历史平均奖励
• $T_i(t)$:臂$i$被拉取的次数
• $\sqrt{\frac{2 \ln t}{T_i(t)}}$:置信区间宽度(随时间减少)
示例
假设有两臂:
• 臂1:平均奖励 $\hat{\mu}_1 = 0.8$,被拉取10次
• 臂2:平均奖励 $\hat{\mu}_2 = 0.7$,被拉取100次
则:
$$ UCB_1 = 0.8 + \sqrt{\frac{2 \ln 100}{10}} \approx 0.8 + 0.9 = 1.7 $$
$$ UCB_2 = 0.7 + \sqrt{\frac{2 \ln 100}{100}} \approx 0.7 + 0.45 = 1.15 $$
此时选择臂1。
3. ETC 算法 (Exploit-Then-Commit)
思想:先探索所有臂固定次数$m$,再选择平均奖励最高的臂持续利用。
性能
• 若$m$选择合理,性能接近UCB,但通常略差。 • 变种UCB(如汤普森采样)通常表现更优。
4. 贝叶斯方法
核心思想:通过概率模型(先验分布)动态更新对环境的认知(后验分布)。
公式
$$ q(u) = P(\text{环境为} u) $$ 最优策略为最小化期望损失: $$ \pi^* = \arg\min_\pi \sum_{u \in \mathcal{E}} q(u) \cdot \mathbb{E}[L(\pi, u)] $$
示例
假设环境有两种可能:
- 两白球(WW),奖励1
- 一白一黑(WB),奖励0.5
初始先验:$P(WW) = P(WB) = 0.5$
观察数据:随机抽取一球为黑色。 • 后验概率: $$ P(WW | \text{黑球}) = 0 $$ $$ P(WB | \text{黑球}) = 1 $$
5. 汤普森采样 (Thompson Sampling)
思想:从每个臂的奖励分布中随机抽样一个值,选择抽样值最高的臂。
关键步骤
- 为每个臂$i$维护一个后验分布(如Beta分布)。
- 抽样$\theta_i \sim \text{Beta}(\alpha_i, \beta_i)$。
- 选择$\theta_i$最大的臂$i$。
- 根据奖励更新后验参数。
示例
假设奖励服从伯努利分布(0或1): • 初始参数:$\alpha_1 = 1, \beta_1 = 1$(均匀先验) • 拉取臂1,获得奖励1 → 更新为$\alpha_1=2, \beta_1=1$ • 下次抽样时,$\theta_1 \sim \text{Beta}(2,1)$ 更可能偏高。
6. 算法对比
算法 | 优点 | 缺点 |
---|---|---|
UCB | 理论保证强,方差小 | 探索效率可能低 |
ETC | 实现简单 | 需要预定义探索次数$m$ |
汤普森采样 | 实际表现优异,适应性强 | 方差较大,理论分析困难 |
7. 数学工具
• Sub-Gaussian 分布:若随机变量$X$满足$P(|X - \mu| \geq t) \leq e^{-t^2/(2\sigma^2)}$,则称$X$是$\sigma$-sub-Gaussian。 • 例如:奖励范围$[a,b]$时,$\sigma = \frac{b-a}{2}$。
总结
- UCB和汤普森采样是解决多臂老虎机问题的经典算法。
- 贝叶斯方法通过动态更新信念优化决策。
- ETC适合探索次数明确的场景,但灵活性较低。
建议结合具体代码实现(如Python的numpy
和scipy
库)加深理解。
第五堂
以下是本节课的核心知识点总结,我会尽量用通俗的语言和例子帮助你理解:
一、在线学习(Online Learning)
核心思想:数据逐个到达,模型实时更新,无需完整训练集。
1. 关键概念
• 累积后悔(Regret):模型当前损失与事后最优模型的累计差距
公式:
$$R(T)=\sum_{t=1}^{T}\left[I\left(x_{t}, y_{t},\beta_{t}\right)-I\left(x_{t}, y_{t},\beta^{*}\right)\right]$$
目标:让后悔随时间次线性增长(即最终接近最优模型)。
• 应用场景:
处理大数据流、适应数据分布变化(如房价预测)。
2. 典型算法
• 随机梯度下降(SGD):每次用单个样本更新模型参数。 • 多臂老虎机(Multi-armed Bandits):在探索(尝试新动作)与利用(选择已知最优动作)间权衡。
二、强化学习(Reinforcement Learning, RL)
核心思想:智能体通过与环境的交互学习最优策略,最大化长期奖励。
1. 基本要素
• 状态(State, (s)):环境的描述(如机器人位置、游戏画面)。
例:机器人当前坐标 [3,3]
。
• 动作(Action, (a)):智能体可执行的操作(如移动方向)。
例:机器人可选 UP/DOWN/LEFT/RIGHT
。
• 奖励(Reward, (r)):执行动作后的反馈(正/负/零)。
例:抓取物体得+1分,撞墙得-1分,移动扣-0.04分。
• 策略(Policy, (\pi)):状态到动作的映射。
确定性策略:(\pi(s) = a)(直接指定动作)。
随机策略:(\pi(a|s))(给出动作的概率分布)。
2. 目标函数
• 无限时域折扣奖励:
$$R(\infty)=\sum_{t=0}^{\infty} \gamma^{t} r(a(t), s(t))$$
(\gamma \in [0,1)) 是贴现因子(平衡短期与长期奖励)。
3. 马尔可夫决策过程(MDP)
核心假设:未来状态仅依赖当前状态和动作(无记忆性)。
• 组成: • 状态空间 (S)(如网格世界的所有坐标)。 • 动作空间 (A)(如四个移动方向)。 • 转移概率 (P(s’|s,a))(从状态 (s) 执行动作 (a) 后转移到 (s’) 的概率)。 • 奖励函数 (r(s,a))(执行动作 (a) 在状态 (s) 时的即时奖励)。
• 示例:
下图展示一个简单的网格世界,智能体需通过上下左右移动到达目标位置 [4,3]
(奖励+1)或避免 [4,2]
(奖励-1)。
4. 贝尔曼方程(Bellman Equation)
作用:将长期奖励分解为即时奖励和未来奖励的加权和。
• 状态值函数(State-Value Function):
$$V_{\pi}(s) = E\left[\sum_{t=0}^{\infty} \gamma^{t} r(a(t), s(t)) \mid s(0)=s\right]$$
表示从状态 (s) 出发,遵循策略 (\pi) 的期望总奖励。
• 动作值函数(Action-Value Function):
$$Q_{\pi}(a,s) = E\left[r(a,s) + \gamma \sum_{s’} P(s’|s,a) V_{\pi}(s’) \right]$$
表示在状态 (s) 执行动作 (a) 后,遵循 (\pi) 的期望总奖励。
• 最优策略:
通过贪心选择动作最大化 (Q^(a,s)):
$$\pi^(s) = \arg\max_a Q^*(a,s)$$
5. 挑战与解决方案
• 未知动态:需通过试错学习状态转移规律。 • 部分可观测:需推断隐藏状态(如自动驾驶中仅通过摄像头观察环境)。 • 延迟奖励:需平衡短期收益与长期目标(如围棋中牺牲局部利益换取全局胜利)。
三、经典案例:机器人导航
目标:从起点 [START]
移动到目标 [4,3]
(奖励+1),避开 [4,2]
(奖励-1),每步扣除-0.04分。
1. 策略分析
• 状态:机器人当前位置(如 [3,3]
)。
• 动作:上/下/左/右移动。
• 奖励:根据是否到达目标或执行动作计算。
2. 值函数计算
假设折扣因子 (\gamma=0.9),使用贝尔曼方程迭代更新各状态的值函数,最终找到最优路径。
四、总结
- 在线学习:处理动态数据流,关注累积后悔的最小化。
- 强化学习:通过与环境交互学习策略,核心是贝尔曼方程和马尔可夫决策过程。
- 关键挑战:探索与利用的平衡、延迟奖励的处理。
学习建议:
• 从简单环境(如网格世界)开始实践,理解状态、动作、奖励的关系。
• 尝试推导贝尔曼方程,理解其递归分解的思想。
• 对比监督学习(有标注数据)与强化学习(通过试错学习)的差异。
如果有具体问题(如公式推导或代码实现),可以进一步讨论! 🚀