try ai
科普
编辑
分享
反馈
  • 贝叶斯神经网络

贝叶斯神经网络

SciencePedia玻尔百科
核心要点
  • 贝叶斯神经网络使用概率分布而非单点估计来为权重建模。
  • BNN 能独特地将预测不确定性分解为偶然不确定性(数据噪声)和认知不确定性(模型无知)。
  • 实用的 BNN 依赖于变分推断(VI)和马尔可夫链蒙特卡洛(MCMC)等近似方法来克服难以处理的计算。
  • 通过量化不确定性,BNN 得以为主动学习、可靠的工程代理模型和风险感知决策等应用提供支持。

引言

标准神经网络已成为极其强大的工具,能够从海量数据中发现复杂的模式。然而,它们存在一个关键的局限:过度自信的倾向。通过寻找单一、最优的一组权重,它们产生确定的预测,却不表达任何怀疑或不确定性。这种“智识上的谦逊”的缺失,在那些“知道自己不知道什么”至关重要的高风险领域,是一个重大障碍。本文旨在通过介绍贝叶斯神经网络(BNN)来弥补这一差距,BNN 是一类用概率语言从根本上重构深度学习的模型。

这种视角的转变——从寻求单一答案到接纳可能解的分布——为我们的模型注入了一种有原则的不确定性形式。读者将会发现,这种能力如何让我们构建更可靠、更值得信赖、更具科学价值的人工智能系统。我们将首先深入探讨 BNN 的核心“原理与机制”,探索贝叶斯定理如何用于对模型权重进行推理,以及这如何让我们将自身的无知剖析为不同且有意义的不确定性类型。随后,“应用与跨学科联系”部分将展示这些理论基础如何在从自动化科学发现到负责任的工程设计和风险评估等领域中,解锁变革性的能力。

原理与机制

一个标准的神经网络是一个了不起的东西。我们给它展示数据,通过耐心、磨砺的优化过程,它能在一个数百万维度的空间中找到一组权重——一个单一的点——来解决我们的问题。它做出一个确定的陈述:“对于这个输入,答案是 42.0。”但科学,甚至是常识,是这样运作的吗?当我们不确定时,我们不会以绝对的信念给出一个答案。我们会表达一个可能性的范围,一个信念的程度。一个标准的网络,尽管功能强大,却缺乏一种基本的品德:谦逊。它不知道自己不知道什么。

进入贝叶斯神经网络(BNN)领域的探索,正是一场为模型注入这种谦逊的征途。这是一种视角的转变,从寻找单一“最佳”权重集,到拥抱一个充满各种合理解释的权重宇宙。

从点估计到概率分布

贝叶斯范式的核心是,将我们不确定的每一件事物都视为由概率分布描述的随机变量。对于一个权重为 w\mathbf{w}w 的神经网络,我们不再寻求一个单一的最优向量 w∗\mathbf{w}^*w∗,而是寻求一个关于所有可能权重的*分布*。这通过优雅而强大的贝叶斯定理得以形式化:

p(w∣D)=p(D∣w)p(w)p(D)p(\mathbf{w} | \mathcal{D}) = \frac{p(\mathcal{D} | \mathbf{w}) p(\mathbf{w})}{p(\mathcal{D})}p(w∣D)=p(D)p(D∣w)p(w)​

让我们来剖析这个深刻的陈述。

  • ​​先验分布​​ p(w)p(\mathbf{w})p(w),代表了我们在看到任何数据之前对网络权重的信念。它是我们最初的“猜测”或归纳偏置。你可能认为这是随意的,但你很可能一直都在不知不觉地使用先验。常见的​​L2 正则化​​(在损失函数中加入与权重平方范数成正比的惩罚项 λ∥w∥22\lambda \|\mathbf{w}\|_2^2λ∥w∥22​)在数学上等同于为权重设置一个零均值的​​高斯先验​​。同样,​​L1 正则化​​对应于一个​​拉普拉斯先验​​,它偏好稀疏性——即促使许多权重变为严格的零。从贝叶斯的视角看,正则化不再仅仅是防止过拟合的数学“技巧”;它是一个关于我们期望“好”权重应该是什么样子的有原则的陈述。

  • ​​似然​​ p(D∣w)p(\mathcal{D} | \mathbf{w})p(D∣w),是模型的主力。它提出这样一个问题:“如果权重恰好是 w\mathbf{w}w,我们实际观测到的数据 D\mathcal{D}D 出现的概率是多少?”这一项将模型锚定于现实,迫使其解释证据。

  • ​​后验分布​​ p(w∣D)p(\mathbf{w} | \mathcal{D})p(w∣D),是我们的最终收获。它是在考虑了数据中的证据之后,我们对权重的更新信念。它是我们先验信念与从数据中收集到的信息的综合。它不给我们一组权重,而是给出一幅可能性的图景,在最可信的权重配置上呈现山峰,在不太可能的配置上呈现山谷。

使用 BNN 进行预测,则是一种集体智慧的行为。我们不是使用一个网络,而是对后验分布中包含的所有合理网络的预测进行平均:

p(y∣x,D)=∫p(y∣x,w)p(w∣D)dwp(y | \mathbf{x}, \mathcal{D}) = \int p(y | \mathbf{x}, \mathbf{w}) p(\mathbf{w} | \mathcal{D}) d\mathbf{w}p(y∣x,D)=∫p(y∣x,w)p(w∣D)dw

结果不是一个单一的数字,而是一个完整的​​预测分布​​。该分布的均值是我们的最佳猜测,其方差是我们的总不确定性。

无知的两面:偶然不确定性与认知不确定性

不确定性不是一个单一的概念。BNN 允许我们对自身的无知进行一次精美的剖析。利用一个称为全方差定律的基本原则,总预测方差 Var(y∣x,D)\mathrm{Var}(y | \mathbf{x}, \mathcal{D})Var(y∣x,D) 可以被分解为两个不同且有意义的组成部分:

Var(y∣x,D)=Ep(w∣D)[Var(y∣x,w)]⏟Aleatoric Uncertainty+Varp(w∣D)(E[y∣x,w])⏟Epistemic Uncertainty\mathrm{Var}(y | \mathbf{x}, \mathcal{D}) = \underbrace{\mathbb{E}_{p(\mathbf{w}|\mathcal{D})}\big[\mathrm{Var}(y | \mathbf{x}, \mathbf{w})\big]}_{\text{Aleatoric Uncertainty}} + \underbrace{\mathrm{Var}_{p(\mathbf{w}|\mathcal{D})}\big(\mathbb{E}[y | \mathbf{x}, \mathbf{w}]\big)}_{\text{Epistemic Uncertainty}}Var(y∣x,D)=Aleatoric UncertaintyEp(w∣D)​[Var(y∣x,w)]​​+Epistemic UncertaintyVarp(w∣D)​(E[y∣x,w])​​
  • ​​偶然不确定性​​(Aleatoric uncertainty)源于数据生成过程本身固有的随机性或噪声。这个名字来自拉丁语 alea,意为“骰子”——它是我们无法预测的骰子投掷结果。即使我们拥有了那个唯一的、真实模型,某些现象本质上就是随机的。这是我们不确定性中无法通过收集更多数据来减少的部分。一个经典的例子是测量误差。然而,这种“噪声”有时可能具有结构。在材料科学中,相同的化学成分可能会产生两种具有不同带隙的不同晶体结构(多晶型)。一个被训练来预测带隙的 BNN 将面临双峰的偶然不确定性。除非模型经过专门设计来处理这种情况(例如,使用混合密度网络作为输出层),否则它将错误地在两个真实模式之间预测一个单一值,并伴有被夸大的巨大方差。

  • ​​认知不确定性​​(Epistemic uncertainty)是模型本身的不确定性。其名称源自希腊语 episteme,意为“知识”。它代表了我们的模型因未见过足够数据而产生的未知。它是我们后验分布中不同合理解释的模型之间的分歧。当我们向 BNN 提供一个与其训练数据非常不同的输入——一个分布外(Out-of-Distribution, OOD)输入时,后验中的各种模型会做出大相径庭的预测。这导致认知不确定性急剧上升,这是 BNN 诚实地说“我完全不知道这是什么!”的方式。相反,在我们拥有大量数据的区域,所有合理的模型都倾向于达成一致,认知不确定性也随之缩小。这是我们可以通过更多数据来消除的不确定性。

难以逾越的大山:后验分布的挑战

这个框架虽然优美,但隐藏着一个巨大的实践挑战。对于一个拥有数百万参数的神经网络,后验分布 p(w∣D)p(\mathbf{w} | \mathcal{D})p(w∣D) 是一个极其复杂的对象,存在于一个数百万维度的空间中。计算归一化常数 p(D)p(\mathcal{D})p(D)(称为模型证据)所需的积分是毫无希望的棘手问题。我们无法计算出精确的后验。

这正是贝叶斯深度学习真正的工程设计和创造力开始的地方。如果我们无法找到精确的后验,我们就必须对其进行近似。两大近似方法族群主导着该领域:变分推断和马尔可夫链蒙特卡洛。

近似策略一:变分推断

想象一下,你有一片复杂、崎岖的山脉(真实的后验分布),而你想描述它。一种策略是找到一个简单的、平滑的形状,比如一个巨大的帆布帐篷(一个简单的分布 q(w)q(\mathbf{w})q(w)),并将其放置在能够最好地覆盖最重要山峰的位置。这就是​​变分推断(Variational Inference, VI)​​的核心思想。

我们为我们的帐篷选择一个易于处理的分布族——一个常见的选择是简单的​​平均场高斯​​,它假设所有权重都是独立的。然后,我们通过调整其参数(其位置和大小)来将这个帐篷“覆盖”在山脉上,以最小化与真实后验的“距离”。这个距离由​​Kullback-Leibler(KL)散度​​来衡量。

标准 VI 中使用的 KL 散度的特定形式 KL(q∣∣p)\mathrm{KL}(q || p)KL(q∣∣p) 有一个至关重要的特性:它是​​寻找众数的(mode-seeking)​​。如果 q(w)q(\mathbf{w})q(w) 在真实后验 p(w∣D)p(\mathbf{w}|\mathcal{D})p(w∣D) 为零的地方非零,这个散度的惩罚会急剧增加。为了避免这种惩罚,我们简单的单峰帐篷 qqq 会收缩并找到后验山脉中的一个山峰来覆盖,而完全忽略任何其他山峰。如果真实后验是多峰的——包含多个不同但同样好的解——VI 将呈现一幅过于自信、不完整的真相图景。它会找到一个解,并假装它是唯一的解。这可能导致对真实认知不确定性的严重低估,特别是对于 OOD 输入,因为在这些输入上不同的模式可能会做出迥然不同的预测。

整个过程被优雅地包装在优化一个单一目标函数中:​​证据下界(ELBO)​​。ELBO 由两项组成:一项鼓励模型拟合数据,另一项是 KL 散度,作为正则化项,将我们的近似推向先验。有时,这种正则化可能过强,导致一种称为​​变分欠拟合​​的奇怪现象,即模型变得如此专注于匹配简单的先验,以至于无法从数据中学习,即使 ELBO 目标在改善。

也许最令人惊讶的联系是,​​Dropout​​——标准深度学习中一种流行的正则化技术——可以被解释为一种近似的 VI。在训练期间应用 dropout 就像在优化一种特定类型的变分近似。这表明贝叶斯视角不仅仅是一种学术上的好奇心;它为我们已知行之有效的实践提供了更深层次的理论基础。

近似策略二:马尔可夫链蒙特卡洛

与其试图用一个简单的形状来近似整个后验山脉,我们为什么不派一个徒步者去探索它呢?这就是​​马尔可夫链蒙特卡洛(MCMC)​​的精神。其目标是生成一系列样本 w1,w2,w3,…\mathbf{w}_1, \mathbf{w}_2, \mathbf{w}_3, \dotsw1​,w2​,w3​,…,从长远来看,这些样本是从真实的后验分布中抽取的。

一种优雅的 MCMC 算法是​​随机梯度朗之万动力学(SGLD)​​。它感觉上非常像训练神经网络时使用的标准梯度下降,但有一个关键的转折。其更新规则是:

wt+1=wt+ηt2∇wlog⁡p(wt∣Bt)+ηt ξt\mathbf{w}_{t+1} = \mathbf{w}_{t} + \frac{\eta_t}{2} \nabla_{\mathbf{w}} \log p(\mathbf{w}_{t} | \mathcal{B}_t) + \sqrt{\eta_{t}}\,\boldsymbol{\xi}_{t}wt+1​=wt​+2ηt​​∇w​logp(wt​∣Bt​)+ηt​​ξt​

第一部分只是在数据的一个小批量 Bt\mathcal{B}_tBt​ 上的标准梯度步长。第二部分 ξt\boldsymbol{\xi}_{t}ξt​ 是注入的随机噪声,通常来自高斯分布。这是一场在权重空间中的“醉汉漫步”。梯度项将徒步者拉向后验分布的山峰,而噪声项则将他们四处踢动,使他们能够探索整个景观,而不仅仅是卡在最高的山峰上。

为了使这场随机漫步最终能够勾勒出整个后验分布,步长 ηt\eta_tηt​ 必须以一种非常特殊的方式随时间减小。它必须满足条件 ∑t=1∞ηt=∞\sum_{t=1}^{\infty} \eta_{t} = \infty∑t=1∞​ηt​=∞ 和 ∑t=1∞ηt2<∞\sum_{t=1}^{\infty} \eta_{t}^{2} \lt \infty∑t=1∞​ηt2​<∞。第一个条件确保徒步者有足够的“能量”探索整个山脉,无论多么广阔。第二个条件确保徒步者最终“平静下来”,使其样本集中在高概率区域。

虽然 MCMC 方法在理论上可以收敛到精确的后验并完全捕捉多峰性,但它们是有代价的。它们通常比 VI 慢得多,而且确定徒步者是否真的探索了整个景观,还是仅仅被困在一个山谷里,本身就是一个深刻而困难的问题。

本质上,BNN 的原理邀请我们用一个分布的诚实而信息丰富的智慧,来换取单一答案的虚假确定性。实现这一目标的机制是统计理论和工程创造力的迷人结合,通过巧妙的近似来解决一个棘手的问题,而这些近似方法至今仍然是一个激动人心且活跃的研究前沿。

应用与跨学科联系

在我们迄今为止的旅程中,我们拆解了贝叶斯神经网络这台精美的机器。我们窥视了它的齿轮,检查了它的概率心脏,并理解了使其能够不以僵化的确定性,而是以可能性的图景来看待世界的原理。现在,我们提出最重要的问题:它有什么用?对于一台知道自己不知道什么的机器,我们能用它来做什么?

正如我们将看到的,答案是,这个单一而优雅的想法——将模型的参数不视为固定数字,而是视为信念的分布——解锁了令人惊叹的应用范围。它将深度学习从一个强大但常常脆弱的工具,转变为科学发现、工程设计和负责任决策的明智而灵活的伙伴。

指导科学探索:主动学习

想象你是一位正在寻找一种新的救命药物的化学家,或是一位正在设计一种微生物来生产清洁生物燃料的合成生物学家。你面临的挑战是巨大的。可能的分子或 DNA 序列空间几乎是无限的,而测试每一种新设计的实验都成本高昂且耗时。你该从何入手?

一个标准的神经网络可能会在现有数据上进行训练,并用于预测哪种新设计将具有最高的活性。这提出了一种纯粹的“利用”(exploitative)策略:测试预测得分最高的候选者。但如果最佳设计位于你从未探索过的“化学空间”区域呢?你的模型由于不熟悉该区域,很可能会在那里做出糟糕的预测。它被自己有限的经验所困。

这是经典的​​利用与探索(exploitation versus exploration)​​困境,而正是在这里,贝叶斯神经网络展现了其真正的天才。对于每一个潜在的设计,BNN 都会为你提供两个关键信息:预测结果(均值 μ\muμ)和该预测的不确定性。至关重要的是,它允许我们将这种不确定性分解为两种类型。​​偶然不确定性​​是世界固有的噪声——实验中无法摆脱的不可避免的随机性。而​​认知不确定性​​则是模型自身的自我怀疑,是它因在特定区域缺乏数据而承认的无知。

这便是关键所在。为了取得进展,我们必须减少我们的无知。BNN 允许我们制定一种策略,智能地平衡寻找好的候选者与进行信息量最大的实验。我们可以设计一个“采集函数”来指导我们的搜索,该函数偏好那些要么具有高预测均值(利用),要么具有高认知不确定性(探索)的候选者。通过靶向高认知不确定性,我们明确选择进行能教给模型最多东西的实验,减少它的无知,并为其所有未来的预测提升能力。

这不仅仅是一种巧妙的启发式方法;它是一种在不确定性下进行决策的、有数学原则支持的方法。我们可以通过定义一个效用函数来形式化这一点,该函数明确奖励模型选择那些具有高认知不确定性的行动,从而有效地为信息本身赋予了价值。用信息论的语言来说,最优的下一个实验是那个能够最大化我们即将进行的观察与我们试图了解的潜在真相之间的“互信息”的实验。这个优美的概念可以归结为一个简单、直观的规则:选择在你能学到的东西(认知不确定性)与无可救药的噪声(偶然不确定性)之比最高的地方进行测量。这就是主动学习的精髓,它是由 BNN 谦逊的智慧所驱动的一场自动化科学发现的革命。

以诚实态度进行工程设计:可靠的代理模型与数字孪生

现代工程中的许多重大挑战——从设计高超音速飞机到预测山坡的稳定性——都依赖于复杂、极其昂贵的计算机模拟。一次模拟可能需要数天或数周。为了加快速度,工程师们构建了“代理模型”:即学习近似慢速模拟的快速机器学习模型。

一个标准的神经网络代理是一个黑箱。你输入设计参数,它吐出一个单一的数字:预测的升力系数,或安全系数。但这个数字正确吗?我们应该在多大程度上信任它?相比之下,一个 BNN 代理给出的答案带有一份必不可少的谦逊。它可能会说:“根据我的训练,升力系数很可能是 1.2,但我不确定性大约为 10%,因为这种机翼形状与我之前见过的有很大不同。”

这种量化不确定性的能力不仅仅是学术上的好奇;它是负责任工程的先决条件。BNN 预测中(例如,流体动力学模拟中湍流粘度)的不确定性并不仅止于此。它可以被传播到整个计算链中,最终为那个重要的量(如飞机机翼的升力)提供一个诚实可信的误差棒。

考虑评估像大坝或斜坡这样结构可靠性的艰巨任务,其中土壤特性可能因地而异且难以预测。模拟每一种可能的土壤配置是不可能的。BNN 可以被训练为昂贵的岩土力学模拟器的代理。因为它了解自身的局限性,它可以被用来比标准模型更有效、更诚实地估计总体失效率。在这些高维问题中,BNN 通常比高斯过程等其他方法更具实践优势,能更好地扩展到更大的数据集和更复杂的输入空间。此外,我们可以设计这些 BNN 以融入已知的物理定律,确保它们的预测即使在稀疏数据上训练,也能尊重力学或材料科学的基本原理。这将 BNN 从一个简单的函数逼近器转变为一个真正的“数字孪生”——一个不仅模仿现实,而且还理解自身知识边界的虚拟模型。

从大数据到大洞见:解读复杂性

在基因组学等领域,我们正被数据淹没。人类基因组包含数十亿个碱基对,我们拥有来自数百万个个体的数据。挑战不再是获取数据,而是理解数据。我们如何在数百万个干扰项中找到少数几个与疾病真正相关的遗传变异(SNP)?

一个标准的机器学习模型可能会生成一个“重要”SNP 的排名列表。而 BNN 提供的则要丰富得多。通过为每个 SNP 的“权重”或重要性赋予一个后验分布,它为证据提供了更加细致入微的视角。一个远离零且狭窄的权重后验分布,让我们高度确信我们找到了一个真正的关联。一个以零为中心且狭窄的后验告诉我们,我们有高度信心认为这个特定的 SNP 很可能不重要。

但最有趣的情况是 BNN 表达不确定性的地方。一个非常宽的权重后验分布意味着数据尚无定论;模型在告诉我们,“这个 SNP 可能很重要,但你需要更多数据才能确定。”更微妙的是,模型可能会揭示一个双峰后验,其峰值同时出现在正值和负值上。这是一个引人入胜的信号!它表明该 SNP 具有一个复杂的、依赖于上下文的角色,不能被一个简单的正向或负向关联所捕获。它是一个指向新的、更深层次科学假说的路标。从这个意义上说,BNN 不仅仅是一个预测引擎;它是一个用于科学探索的仪器,一个用于观察复杂数据隐藏结构的显微镜。

信任、责任与人的因素

归根结底,我们构建的模型旨在用于现实世界,它们的预测可能会产生深远的后果。这便引出了最重要的应用:做出影响人类生活、值得信赖的决策。

考虑为沿海社区预测风暴潮的任务。一个只预测单一浪涌高度的简单模型是危险且不完整的。决策者——应急管理员、急救人员、居民——真正需要的是一种风险感。BNN 非常适合这项任务。它不是提供一个单一的数字,而是提供一个预测分布,可以用来回答直接、可操作的问题:“浪涌超过防洪墙高度的概率是多少?”这允许了一个理性的、基于风险的决策过程。

然而,这种力量伴随着巨大的责任。一个声称灾难性事件有“30%的几率”发生的 BNN,只有当这个概率是可靠的时候才有用。模型对其不确定性的声明本身必须是值得信赖的。这就引出了​​校准​​这一关键概念。我们必须对我们的模型进行经验性测试,以确保当它们预测有 30% 的概率时,相关事件实际上也大约有 30% 的时间发生。我们有像可靠性图这样的工具来执行这些检查,甚至可以在训练后重新校准模型的不确定性估计,使其更加准确。

这是贝叶斯神经网络带来的最后一个、优美的启示。它们代表了我们与人工智能关系的一次根本性转变。我们从构建发布看似绝对真理的神谕,转向创造与我们一同就未知进行对话的科学仪器。它们之所以强大,是因为它们具有预测能力;但它们之所以值得信赖,是因为它们对自己局限性的诚实。通过提供一种严谨的、数学的语言来表达怀疑,BNN 让我们能够构建不仅更智能,而且更明智的系统——在我们航行于不确定的未来时,这种智慧至关重要。