机器学习 | 贝叶斯神经网络

机器学习 | 贝叶斯神经网络

贝叶斯神经网络通过引入参数的概率分布来描述模型的不确定性。与传统的确定性神经网络不同,BNNs 通过学习参数的后验分布来对模型进行建模,从而在预测中提供不确定性的估计

让 ( x , θ ) ↦ g θ ( x ) (x,\theta)\mapsto g_{\boldsymbol{\theta}}(\boldsymbol{x}) (x,θ)↦gθ(x)定义的 g : X × Θ → Y g: \mathcal{X} \times \Theta \rightarrow \mathcal{Y} g:X×Θ→Y 作为神经网络(NN),其中 g θ ( x ) g_{\theta}(x) gθ(x) 是由 x x x 和 θ \theta θ 确定的函数。贝叶斯神经网络(BNNs)的主要假设是通过一个简单的分布来近似参数 g g g 的后验分布 p ( θ ∣ D ) p(\theta | D) p(θ∣D) ,该分布在参数空间 Θ ⊆ R P \Theta \subseteq \mathbb{R}^P Θ⊆RP 上编码了不确定性。

标准的点估计定义为:
θ ∗ = arg ⁡ max ⁡ ⁡ θ ∈ Θ log ⁡ p ( D ∣ θ ) + log ⁡ p ( θ ) ⏟ = log ⁡ p ( θ ∣ D ) − c o n s t \theta_*=\underset{\boldsymbol{\theta}\in\Theta}{\operatorname*{\arg\max}}\underbrace{\log p(\mathcal{D}\mid\boldsymbol{\theta})+\log p(\boldsymbol{\theta})}_{=\log p(\boldsymbol{\theta}\mid\mathcal{D})\mathrm{-const}} θ∗=θ∈Θargmax=logp(θ∣D)−const logp(D∣θ)+logp(θ)

其中 log ⁡ p ( D ∣ θ ) \log p(D | \theta) logp(D∣θ) 是对数似然损失, log ⁡ p ( θ ) \log p(\theta) logp(θ)是对参数 θ \theta θ 的正则化项,虽然在参数空间上可以被视为对 Θ \Theta Θ的狄拉克雷分布,但并不是一个 BNN,因为根据任何标准度量(方差、熵等),它都具有零不确定性。

拉普拉斯近似(LA)

其中最简单的贝叶斯神经网络之一是拉普拉斯近似(LA),并且越来越多地被用于贝叶斯优化(BO)。给定一个(局部)最大值 θ ∗ \theta^* θ∗,拉普拉斯近似拟合了一个以 θ ∗ \theta^* θ∗ 为中心的高斯分布 q ( θ ∣ D ) : = N ( θ ∗ , Σ ∗ ) q(\theta | D) := \mathcal{N}(\theta^*, \Sigma^*) q(θ∣D):=N(θ∗,Σ∗),其中协方差由逆海森矩阵给出,即

Σ ∗ = ( − ∇ θ 2 log ⁡ p ( θ ∣ D ) ∣ θ ∗ ) − 1 \Sigma^* = (-\nabla^2_{\theta} \log p(\theta | D)|_{\theta^*})^{-1} Σ∗=(−∇θ2logp(θ∣D)∣θ∗)−1

线性化拉普拉斯近似(LLA)

拉普拉斯近似的一个流行类别是线性化拉普拉斯近似(LLA),它通过广义高斯-牛顿矩阵近似海森矩阵,并对神经网络在参数空间上进行线性化 g θ lin ( x ) = g θ ∗ ( x ) + J ∗ ( x ) ⋅ ( θ − θ ∗ ) g^{\text{lin}}{\theta}(x) = g{\theta^*}(x) + J^*(x) \cdot (\theta - \theta^*) gθlin(x)=gθ∗(x)+J∗(x)⋅(θ−θ∗)。这里, J ∗ ( x ) J^*(x) J∗(x)是网络在 θ ∗ \theta^* θ∗ 处的雅可比矩阵 ( ∂ g / ∂ θ ∣ θ ∗ ) \left({\partial g}/{\partial \theta}|{\theta^*}\right) (∂g/∂θ∣θ∗) 。需要注意的是,网络函数 x → g θ lin ( x ) x \rightarrow g^{\text{lin}}{\theta}(x) x→gθlin(x) 仍然是非线性的。

关键是,由于 g g g在 θ \theta θ上的线性性以及 θ \theta θ的高斯性,输出分布 p ( g lin ( x ) ∣ D ) = ∫ g θ lin ( x ) q ( θ ∣ D ) d θ p(\text{g}^{\text{lin}}(x) | D) = \int \text{g}^{\text{lin}}_{\theta}(x) q(\theta | D) d\theta p(glin(x)∣D)=∫gθlin(x)q(θ∣D)dθ 也是高斯的,给出为

p ( g lin ( x ) ∣ D ) = N ( g θ ∗ ( x ) , J ∗ ( x ) Σ J ∗ ( x ) ⊤ ) p(\text{g}^{\text{lin}}(x) | D) = \mathcal{N}(\text{g}_{\theta^*}(x), J^*(x)\Sigma J^*(x)^{\top}) p(glin(x)∣D)=N(gθ∗(x),J∗(x)ΣJ∗(x)⊤)

超参数优化与模型校准

BNNs 的性能和稳定性在很大程度上取决于超参数的选择,例如权重衰减强度和数据噪声强度。因此,优化超参数成为了重要的研究方向。

事实上, p ( g lin ∣ D ) p(\text{g}^{\text{lin}} | D) p(glin∣D)是一个具有神经网络 g g g作为均值函数和与经验神经切向核相关的协方差函数的高斯过程(GP)。

这些事实使得线性化拉普拉斯近似(LLA)具有解释性:它简单地为原始神经网络预测 g θ ∗ ( x ) g_{\theta^*}(x) gθ∗(x)添加了一个不确定性估计。这种不确定性可以通过拉普拉斯近似的边缘似然近似进行进一步校准:

Z ( γ ) = log ⁡ p ( θ ∗ ∣ D ; γ ) + P 2 log ⁡ 2 π + 1 2 log ⁡ ∣ Σ ∗ ( γ ) ∣ Z(\gamma) = \log p(\theta^*|D; \gamma) + \frac{P}{2} \log 2\pi + \frac{1}{2} \log |\Sigma^*(\gamma)| Z(γ)=logp(θ∗∣D;γ)+2Plog2π+21log∣Σ∗(γ)∣

其中明确地表明了后验和海森矩阵对超参数 γ \gamma γ的依赖性。例如, γ \gamma γ可以是一个集合,其中包含了权重衰减强度(对应于 Θ \Theta Θ上的高斯先验的先验精度)以及 g g g的似然中的噪声强度。在这种设置下,优化 max ⁡ γ log ⁡ Z ( γ ) \max_{\gamma} \log Z(\gamma) maxγlogZ(γ) 可以被看作是学习一个合适的先验并估计数据噪声。

相关推荐
Coder_Boy_8 分钟前
【人工智能应用技术】-基础实战-小程序应用(基于springAI+百度语音技术)智能语音控制-单片机交互代码
java·人工智能·后端·嵌入式硬件
deephub10 分钟前
Scikit-Learn 1.8引入 Array API,支持 PyTorch 与 CuPy 张量的原生 GPU 加速
人工智能·pytorch·python·机器学习·scikit-learn
KG_LLM图谱增强大模型12 分钟前
因果知识图谱增强大模型重构生命历程风险路径和慢病防控新范式:从妊娠期糖尿病到痴呆症的研究突破
人工智能·重构·知识图谱
万俟淋曦19 分钟前
【论文速递】2025年第37周(Sep-07-13)(Robotics/Embodied AI/LLM)
人工智能·ai·机器人·大模型·论文·robotics·具身智能
free-elcmacom21 分钟前
机器学习高阶教程<11>当数据开始“折叠”:流形学习与深度神经网络如何发现世界的隐藏维度
人工智能·python·神经网络·学习·算法·机器学习·dnn
阿杰学AI23 分钟前
AI核心知识61——大语言模型之Embedding (简洁且通俗易懂版)
人工智能·机器学习·ai·语言模型·自然语言处理·embedding·词向量
RockHopper202533 分钟前
一种面向服务LLM应用系统的显式世界模型架构原理
人工智能·llm·世界模型·显式模型
tap.AI36 分钟前
(一)初识 Stable Diffusion 3.5 —— 下一代多模态架构详解
人工智能·stable diffusion
Master_oid38 分钟前
机器学习26:增强式学习(Deep Reinforcement Learn)①
人工智能·学习·机器学习
鲨莎分不晴1 小时前
从 0 实现一个 Offline RL 算法 (以 IQL 为例)
人工智能·深度学习·机器学习