正如本章引言所述,我们的目的并非仅仅是罗列定义,而是巩固概率建模的原理,从适合高级贝叶斯机器学习的角度来看。从根本上说,概率建模就是运用概率论的语言,阐明数据生成方式的假设,并对不确定性进行推理。它提供了一个连贯的数学框架,用于表达知识、结合证据和进行预测。
生成式视角
贝叶斯建模的一个主要思想是生成式视角。我们不直接对预测函数 P(y∣x) 进行建模,而是通常思考整个数据集 D(可能包含特征 X 和目标 Y)是如何产生的。我们假设一个随机过程,由某些参数 θ 和可能的隐(未观测)变量 z 控制,这个过程可能生成了 D。
这种生成式描述涉及指定所有相关量(包括已观测和未观测)的联合概率分布:P(D,θ,z)。构建模型意味着对此分布做出明确选择。
概率模型的组成部分
构建概率模型需要指定几个重要组成部分:
-
变量: 我们确定所涉及的不同类型的量:
- 观测变量: 这些构成我们的数据 D。这可以是特征、标签、传感器读数、文本文档等。我们将其视为底层生成过程的固定结果。
- 参数 (θ): 这些是未观测到的量,它们控制模型中变量之间的关系。例子包括回归系数、分布的均值和方差,或神经网络中的权重。在贝叶斯方法中,参数本身被视为随机变量,具有分布。
- 隐变量 (z): 这些是其他未观测变量,它们不是参数,而是模型结构的一部分,通常用于捕捉底层结构、簇或状态。主题模型(如第5章讨论的LDA)大量依赖表示主题分配的隐变量。
-
结构假设: 我们定义这些变量之间的概率关系。哪些变量直接影响其他变量?在给定其他变量的情况下,某些变量是否独立?这些假设定义了模型的结构,并常通过概率图模型(后面会讲到)进行可视化。条件独立性假设对于简化模型和实现高效计算尤为重要。例如,我们通常假设在给定参数的情况下,数据点是独立的。
-
概率分布: 我们为连接变量的概率分布选择具体的数学形式。这涉及选择:
- 似然函数 P(D∣θ,z): 此分布量化了在给定参数 θ 和隐变量 z 的具体值下观测到数据 D 的概率。似然函数的选择很大程度上取决于数据的性质(例如,连续数据选择正态分布,二元结果选择伯努利分布,计数数据选择泊松分布)。
- 先验分布 P(θ,z) 或 P(θ)P(z): 此分布表达了我们在观测任何数据之前对参数和隐变量的信念。它编码了假设或融入了现有知识。我们将在本章后面讨论先验选择策略。
似然函数 P(D∣θ)
我们来关注似然函数(为简洁起见,通常不明确提及隐变量 z,记为 P(D∣θ))。它直接根据在给定参数情况下数据点如何生成的生成式假设得出。例如,如果我们假设 N 个独立同分布(i.i.d.)的数据点 D={x1,...,xN} 从分布 f(x∣θ) 中抽取,则似然函数为:
P(D∣θ)=i=1∏Nf(xi∣θ)
请记住,似然函数在数据 D 固定时被视为 θ 的函数。它告诉我们,根据我们实际观测到的数据,不同参数值有多么合理。它不是 θ 上的概率分布。选择一个反映数据特征的恰当似然函数是建模的一个根本步骤。与独立同分布情况相关的一个常见假设是可交换性,这意味着观测值的顺序不影响联合概率。
先验分布 P(θ)
先验分布 P(θ) 捕捉了我们在考虑特定数据集 D 之前对参数 θ 的不确定性或知识。这是贝叶斯推断的一个标志性特征。先验分布可以:
- 融入领域知识。
- 充当正则化项,防止参数取极端值,这在复杂模型或高维场景中对于避免过拟合尤为重要。
- 反映相对无知状态(使用“无信息”或“客观”先验,尽管真正的客观性存在争议)。
先验分布和似然函数之间通过贝叶斯定理的相互作用,使我们能够正式更新信念。
整合:联合分布与推断
完整的概率模型由数据和参数(以及隐变量,如果有的话)的联合分布定义。对于参数 θ 和数据 D,即为:
P(D,θ)=P(D∣θ)P(θ)
这个联合分布概括了整个生成式描述。贝叶斯推断中的主要目标是计算后验分布 P(θ∣D),它表示我们在观测数据之后对参数的更新信念。正如本章引言所述,这通过贝叶斯定理实现:
P(θ∣D)=P(D)P(D∣θ)P(θ)
其中 P(D)=∫P(D∣θ)P(θ)dθ 是边际似然或证据。
一个简单例子:抛掷一枚有偏硬币
考虑对抛掷 N 次可能有偏硬币的结果进行建模。
-
观测数据 D: 一系列正面 (H) 和反面 (T),例如 NH 次正面和 NT 次反面 (N=NH+NT)。
-
参数 θ: 未知的出现正面的概率,0≤θ≤1。
-
生成过程:
- 根据某些先验信念选择偏置 θ 的值。
- 对于每次抛掷 i=1..N,根据概率 θ 生成一个结果 xi∈{H,T}。
-
似然函数: 假设抛掷独立,观测到 NH 次正面和 NT 次反面的概率由二项式似然给出(差一个常数因子):
P(D∣θ)∝θNH(1−θ)NT
-
先验: 我们需要为 θ 指定一个先验分布。概率的常见选择是 Beta 分布,P(θ)=Beta(θ∣α,β)∝θα−1(1−θ)β−1,其中 α 和 β 是反映先验信念的超参数(例如,α=1,β=1 对应于均匀先验,表示没有偏好)。
-
后验: 使用贝叶斯定理,θ 的后验分布也是一个 Beta 分布:
P(θ∣D)∝P(D∣θ)P(θ)∝θNH(1−θ)NTθα−1(1−θ)β−1=θNH+α−1(1−θ)NT+β−1
因此,P(θ∣D)=Beta(θ∣NH+α,NT+β)。
以下是这个简单生成模型的图形表示:
此图展示了硬币抛掷示例的生成过程。超参数 α,β(固定,由点表示)确定了硬币偏置 θ(未观测参数,红色节点)的先验。偏置 θ 随后决定了每次观测到的硬币抛掷 xi(观测变量,双环形,蓝色节点)的概率。板(plate)表示此过程重复 N 次。
尽管此示例简单,但其基本原理适用于机器学习中遇到的更复杂模型。定义清晰的生成过程、指定恰当的似然函数和先验分布,然后运用贝叶斯定理推导后验,这些构成了构建高斯过程和贝叶斯深度学习等复杂技术的基础。理解这些原理使我们不仅能够应用现有模型,还能根据特定问题构建新颖的概率模型,明确处理和量化不确定性。我们将会看到,挑战通常在于计算后验分布,尤其当证据 P(D) 的积分难以处理时,这促使我们在后续章节中讨论高级推断方法。