贝叶斯神经网络(Bayesian Neural Network, BNN)
贝叶斯神经网络(BNN)是传统人工神经网络(ANN)与贝叶斯概率理论结合的产物。传统神经网络通过“点估计”学习模型参数(如权重和偏置),而BNN则将参数视为随机变量,学习其概率分布(而非单一固定值),从而天然具备量化不确定性的能力,是解决“模型不确定性”问题的核心方法之一。
一、核心思想:从“点估计”到“分布估计”
要理解BNN,首先需要对比其与传统神经网络(如CNN、MLP)的核心差异——对“参数”的认知不同:
维度 | 传统神经网络(ANN) | 贝叶斯神经网络(BNN) |
---|---|---|
参数认知 | 参数是固定值(如权重w=0.5) | 参数是随机变量(如w~N(0, 0.1)) |
参数学习目标 | 最小化损失函数(如MSE、交叉熵),找到最优“点估计” | 计算参数的后验分布,描述参数的不确定性 |
不确定性量化 | 无原生支持(需额外方法如Dropout近似) | 原生支持(从参数分布中自然推导) |
数据依赖程度 | 依赖大量数据(数据不足时易过拟合) | 数据不足时可通过先验约束减少过拟合 |
贝叶斯理论的核心公式:贝叶斯定理
BNN的参数学习完全基于贝叶斯定理,其核心是通过“先验分布”和“数据似然”推导“后验分布”,公式如下:
各部分含义:
:参数先验分布(Prior):在观察数据前,对参数(如权重 )的概率假设(如假设权重服从均值为0、方差为0.1的正态分布)。先验是BNN“注入领域知识”的关键(例如已知权重不应过大,可设小方差先验)。 :数据似然(Likelihood):在给定参数 的情况下,观察到训练数据 的概率(与传统神经网络的损失函数对应,如回归任务中似然常为高斯分布,分类任务中为Softmax分布)。 :证据(Evidence):边际似然,即“所有可能参数下观察到 的概率”,是一个与 无关的归一化常数,计算公式为 。 :参数后验分布(Posterior):观察到数据 后,对参数 概率分布的更新结果——这是BNN最终要学习的目标。
二、BNN的关键挑战:后验推断的不可计算性
BNN的核心难点在于:后验分布
原因是“证据”
为解决这一问题,学界提出了多种近似推断方法,这里只介绍变分推断一种方法。
变分推断(Variational Inference, VI):高效但近似
变分推断的核心思想是:用一个“简单、可计算的近似分布
核心步骤:
- 定义近似分布族
( 为变分参数,如正态分布的均值和方差); - 最小化KL散度
,等价于最大化“证据下界(ELBO)”: - 第一项
:似然期望,鼓励模型拟合数据; - 第二项
:KL散度正则项,鼓励近似分布 贴近先验 ,避免过拟合。
- 第一项
常见VI变种:
- mean-field变分推断:假设所有参数的近似分布相互独立(如每个权重的分布都是独立的正态分布),计算最简单,但近似精度较低。
- 结构化变分推断:引入参数间的依赖关系(如层内权重共享方差),提升近似精度,但计算复杂度增加。
优缺点:
- 优点:将推断转化为“优化问题”,可通过梯度下降高效求解,适合深度神经网络和大规模数据。
- 缺点:存在“近似偏差”(KL散度最小化无法保证
与 完全一致),可能低估参数不确定性。
关于变分推断的更详细推导,可见变分推理、ELBO与变分自编码器一文。