在计算机视觉的贝叶斯深度学习中,我们需要哪些不确定性?
https://proceedings.neurips.cc/paper_files/paper/2017/file/2650d6089a6d640c5e85b2b88265dc2b-Paper.pdf
![]()
摘要
我们可以建模的不确定性主要有两类:偶然不确定性(Aleatoric uncertainty)用于刻画观测数据中固有的噪声;而认知不确定性(Epistemic uncertainty)则用于刻画模型本身的不确定性——这种不确定性在获得足够数据后可以被消除。传统上,计算机视觉领域对认知不确定性的建模十分困难,但随着新型贝叶斯深度学习工具的发展,目前已成为可能。我们研究了在视觉任务的贝叶斯深度学习模型中,分别建模认知不确定性与偶然不确定性的益处。为此,我们提出了一种贝叶斯深度学习框架,将输入依赖的偶然不确定性与认知不确定性结合起来。我们在该框架下分别对逐像素语义分割与深度回归任务进行了模型研究。进一步地,我们对不确定性的显式建模导出了这些任务的新损失函数,可将其解释为学习得到的衰减(learned attenuation)。这使损失函数对含噪数据更具鲁棒性,同时在分割与深度回归基准任务上取得了新的最先进(state-of-the-art)结果。
1 引言
理解模型“不知道什么”是许多机器学习系统的关键组成部分。如今,深度学习算法已能够学习强大的表征,实现从高维数据到多种输出的映射。然而,人们往往盲目信任这些映射,并假定其准确无误,而事实并非总是如此。近期两个实例即凸显了这一问题的严重后果:2016年5月,某辅助驾驶系统发生了首例致死事故,其感知系统将一辆拖车的白色侧面误判为明亮天空[1];另一例中,某图像分类系统错误地将两名非洲裔美国人识别为大猩猩[2],引发了对种族歧视的担忧。倘若这两个算法能对其错误预测赋予较高的不确定性,则系统本可能做出更优决策,从而避免灾难。
在计算机视觉应用中,量化不确定性可大致分为两类场景:回归任务(如深度估计)和分类任务(如语义分割)。现有在计算机视觉中建模不确定性的方法包括粒子滤波与条件随机场[3, 4]。然而,诸多现代应用要求采用深度学习以实现最先进的性能[5],而大多数深度学习模型本身无法表征不确定性。例如,在回归任务中,深度学习通常无法表征不确定性;而在分类任务中,深度学习模型输出的常是归一化的得分向量,未必能反映模型的不确定性。针对上述两类任务,贝叶斯深度学习方法均可提供一种实用框架,用于理解深度学习模型中的不确定性[6]。
在贝叶斯建模中,可建模的不确定性主要有两类[7]:
- 偶然不确定性(Aleatoric uncertainty)刻画观测数据中固有的噪声。例如传感器噪声或运动噪声,即使收集更多数据,此类不确定性亦无法降低。
- 认知不确定性(Epistemic uncertainty)刻画模型参数的不确定性——即我们对“何种模型生成了所收集数据”这一问题的无知。这种不确定性可通过获得足够数据得以消除,常被称为模型不确定性
偶然不确定性还可进一步划分为:
- 同方差不确定性(homoscedastic uncertainty):对不同输入保持恒定的不确定性;
- 异方差不确定性(heteroscedastic uncertainty):依赖于模型输入的不确定性,不同输入可能导致输出噪声程度不同。
异方差不确定性在计算机视觉中尤为重要:例如在深度回归任务中,纹理丰富且具有显著消失线的输入图像理应产生高置信度预测;而对无特征墙面的输入图像,预测则应具有极高不确定性。
本文指出,在诸多大数据场景下(如图像数据的深度学习常见情形),对偶然不确定性(无法通过更多数据消除的不确定性)进行建模最为有效;相较而言,认知不确定性在机器视觉中通常因数据量庞大而被大幅削弱。我们进一步表明,仅建模偶然不确定性具有一定代价:对于分布外(out-of-distribution)样本(本可由认知不确定性识别出),仅靠偶然不确定性则无法识别。
为此,我们提出一种统一的贝叶斯深度学习框架,可在学习从输入数据到偶然不确定性的映射的同时,将其与认知不确定性的近似估计进行组合。我们为回归与分类两类任务推导了该框架,并在逐像素深度回归与语义分割任务上给出了实验结果(参见图1及补充视频中的示例)。我们说明了:在回归任务中对偶然不确定性的建模可用于实现损失衰减的学习(learning loss attenuation);并进一步为分类任务提出了互补方法。这验证了我们的方法在困难且大规模任务上的有效性。
![]()
本工作的主要贡献如下:
- 我们对偶然不确定性与认知不确定性给出了准确的理解,尤其针对分类任务提出了一种新颖方法;
- 通过对偶然不确定性的显式建模,获得隐含的衰减机制,从而降低含噪数据的影响,相较非贝叶斯基线模型,性能提升1–3%;
- 我们通过刻画两类不确定性的特性,并比较模型性能与推理时间,系统研究了建模偶然不确定性与认知不确定性之间的权衡取舍。
2 相关工作
现有的贝叶斯深度学习方法仅单独捕捉认知不确定性,或仅单独捕捉偶然不确定性[6]。这些不确定性分别被形式化为模型参数或模型输出上的概率分布。认知不确定性通过在模型权重上施加先验分布进行建模,并试图捕捉在给定某些数据的情况下,这些权重的变化程度。另一方面,偶然不确定性则通过对模型输出施加分布进行建模。例如,在回归任务中,我们的输出可能被建模为受高斯随机噪声污染的值。在这种情况下,我们感兴趣的是学习噪声方差作为不同输入的函数(此类噪声也可对所有数据点使用恒定值建模,但其实际意义较小)。在本节中,我们将更详细地解释贝叶斯深度学习背景下的这些不确定性。
2.1 贝叶斯深度学习中的认知不确定性
为了捕捉神经网络(NN)中的认知不确定性,我们在其权重上施加一个先验分布,例如高斯先验分布:W ~ N(0, I)。
![]()
![]()
![]()
通过观察更多数据可以减少权重中的不确定性。这种不确定性通过边缘化(近似)权重后验分布引入预测不确定性。
![]()
2.2 异方差偶然不确定性
在上文中,我们通过近似分布 p(W|X, Y) 捕捉了模型不确定性——即关于模型参数的不确定性。为了在回归中捕捉偶然不确定性,我们需要调整观测噪声参数 σ。
同方差回归假设每个输入点 x 的观测噪声 σ 是恒定的。而异方差回归则假设观测噪声可以随输入 x 变化 [17, 18]。当观测空间中的某些部分可能比其他部分具有更高的噪声水平时,异方差模型非常有用。在非贝叶斯神经网络中,该观测噪声参数通常作为模型权重衰减的一部分被固定,并被忽略。然而,当使其成为数据依赖时,它可以被学习为数据的一个函数:
![]()
其中加入了由 λ 参数化的权重衰减项(对于 L1 损失同理)。需注意,此处与前述方法不同:我们并非对权重执行变分推断,而是进行最大后验概率(MAP)推断——即为模型参数 θ 寻找一个单一取值。该方法无法捕捉认知模型不确定性,因为认知不确定性是模型本身的属性,而非数据的属性。
在下一节中,我们将把这两种不确定性(偶然不确定性与认知不确定性)整合到一个统一模型中。我们将看到,异方差噪声可被解释为模型的衰减机制,并为分类情形开发一种与之互补的方法。
3 在一个模型中结合偶然不确定性与认知不确定性
在上一节中,我们描述了现有的贝叶斯深度学习技术。在本节中,我们将提出新颖的贡献,以扩展现有文献。我们开发了若干模型,使我们能够研究仅建模偶然不确定性、仅建模认知不确定性,或在一个单一模型中同时建模两种不确定性所带来的影响。随后,我们观察到:在回归任务中,偶然不确定性可被解释为学习得到的损失衰减机制——这使得损失函数对含噪数据更具鲁棒性。接着,我们将异方差回归的思想扩展至分类任务,从而也能为分类任务学习损失衰减机制。
3.1 结合异方差偶然不确定性与认知不确定性
我们希望在一个视觉模型中同时捕捉认知不确定性与偶然不确定性。为此,我们将 §2.2 中的异方差神经网络转化为贝叶斯神经网络,方法是在其权重上施加分布;本节中的构造特别针对视觉模型的情形¹。
我们需要推断一个贝叶斯神经网络(BNN)模型 f 的后验分布,该模型将输入图像 x 映射为一个标量输出 ŷ ∈ ℝ,以及一个由方差 σ² 给出的偶然不确定性度量。我们使用 §2.1 中的工具,通过 Dropout 变分分布来近似 BNN 的后验分布。与之前一样,我们从近似后验分布 W ∼ q(W) 中采样模型权重,以获得模型输出——但这一次的输出同时包含预测均值与预测方差:
其中,D 是对应于输入图像 x 的输出像素 yᵢ 的数量,由索引 i 标识(此外,损失函数包含权重衰减项,为简洁起见此处省略)。例如,对于图像级回归任务,我们可以设 D = 1;而对于密集预测任务(即对每个输入图像像素预测一个标量值),D 等于像素总数。σ̂ᵢ² 是 BNN 输出的第 i 个像素的预测方差。
该损失函数由两部分组成:一部分是通过模型随机采样得到的残差回归项——利用了参数上的不确定性;另一部分是不确定性正则化项。我们无需“不确定性标签”来学习不确定性,而只需监督回归任务的学习过程即可。我们从损失函数中隐式地学习方差 σ²。第二项正则化项防止网络对所有数据点预测无限大的不确定性(从而导致零损失)。
在实践中,我们训练网络以预测对数方差 sᵢ := log σ̂ᵢ²:
![]()
3.2 异方差不确定性作为学习得到的损失衰减机制
我们观察到:允许网络预测不确定性,实质上使其能够依据数据,通过因子 exp(−sᵢ) 有效调节残差损失项的大小。这一机制类似于一种智能的鲁棒回归函数。它使网络能够自适应地调整残差项的权重,甚至可学习削弱错误标签的影响,从而增强模型对含噪数据的鲁棒性:对于模型学习到应预测高不确定性的输入,其对损失函数的贡献将更小。
模型被阻止对所有数据点一概预测高不确定性(即实质上忽略数据),这一约束由损失中的 log σ² 项实现——较大的不确定性会增大该项的贡献,从而对模型施加惩罚:模型确实可以学习忽略数据,但会因此受到惩罚。同时,模型也被阻止对具有高残差误差的样本预测极低的不确定性,因为较小的 σ² 会放大残差项的贡献,进而惩罚模型。需要强调的是,这种学习得到的衰减机制并非人为设计的特设构造,而是模型概率解释的自然结果。
3.3 分类任务中的异方差不确定性
异方差神经网络在回归任务中所展现出的这种学习损失衰减特性,对于分类模型而言同样是理想的效果。然而,分类任务中的异方差神经网络是较为特殊的一类模型——从技术上讲,任何分类任务本身都具有输入依赖的不确定性。尽管如此,上述思想仍可从回归情形下的异方差神经网络,自然扩展至分类情形下的异方差神经网络。
为此,我们调整标准分类模型,使其在logit空间上对中间的异方差回归不确定性进行边缘化处理。因此,我们明确将所提出的模型变体称为异方差分类神经网络(heteroscedastic classification NN)。
对于分类任务,我们的神经网络为每个像素 i 预测一个向量 fᵢ,该向量经过 softmax 操作后形成概率向量 pᵢ。我们通过在该向量上施加高斯分布来修改模型:
![]()
4 实验
本节中,我们通过逐像素深度回归与语义分割任务对所提方法进行评估。下一节将对实验结果展开分析。为展示我们所学损失衰减机制的鲁棒性——这一机制是建模不确定性所带来的附带效应——我们在多个主流数据集(CamVid、Make3D 和 NYUv2 Depth)上给出了实验结果,并在这些数据集上刷新了当前最先进(state-of-the-art)的性能基准。
后续实验中,我们采用 DenseNet 架构 [19],并依据 [20] 的改进将其适配于密集预测任务。我们使用 TensorFlow [21] 独立实现了该架构(其性能略优于原作者在 CamVid 上的实现,高出 0.2%,参见表 1a)。所有实验均以批量大小为 4 的 224 × 224 图像裁剪块进行训练,随后在整幅图像上以批量大小为 1 进行微调。优化器选用 RMSProp,学习率固定为 0.001,权重衰减系数为 10⁻⁴。
我们对比了 §3 中所述的贝叶斯神经网络模型结果:
- 认知不确定性建模采用蒙特卡洛 Dropout方法(§2.1),DenseNet 架构在每个卷积层后设置 Dropout(丢弃率 p = 0.2);参照 [22],我们采用 50 次蒙特卡洛 Dropout 采样;
- 偶然不确定性建模采用 MAP 推断,分别对回归与分类任务使用损失函数(8)与(附录中的 12)(§2.2);
- 但不同于 §3 推导中使用的高斯先验,我们此处改用拉普拉斯先验(Laplacian prior)推导损失函数,因其对应残差项的 L1 距离度量;在视觉回归任务中,我们通常发现 L1 损失优于 L2 损失;
- 最后,依据 §3 中提出的方法,我们进一步验证了同时建模认知不确定性与偶然不确定性所带来的增益。
4.1 语义分割
为验证我们的语义分割方法,我们使用了两个数据集:CamVid [8] 和 NYUv2 [23]。
- CamVid 是一个道路场景理解数据集,包含 367 张训练图像与 233 张测试图像,涵盖白天与黄昏场景,共 11 个类别。我们将其图像统一缩放至 360 × 480 像素用于训练与评估。表 1a 展示了本架构的结果:我们的方法以平均交并比(mean IoU)刷新了该数据集的最先进性能纪录。我们观察到,同时建模偶然与认知不确定性优于基线模型;其中,偶然不确定性损失带来的隐式衰减效应比单纯建模认知不确定性贡献更大;而二者结合则进一步提升了性能。这表明,对于该任务,建模偶然不确定性更为关键——暗示在此类大数据场景下,认知不确定性大部分已被数据充分“解释掉”。
- NYUv2 [23] 是一个极具挑战性的室内场景分割数据集,涵盖 40 个语义类别,共 1449 张 640 × 480 分辨率图像,来自 464 个不同的室内场景。表 1b 给出了实验结果。相比 CamVid,该数据集难度显著更高:一方面,室内场景结构远少于街景;另一方面,语义类别数量大幅增加。我们以 DeepLab-LargeFOV [24] 作为基线模型。实验结果呈现类似趋势(定性结果见图 4):通过赋予模型估计不确定性并衰减损失的能力,我们提升了基线性能;性能提升幅度更为显著——或许正因该数据集难度更高所致。
![]()
4.2 逐像素深度回归
我们使用两个广为采用的单目深度回归数据集——Make3D [25] 和 NYUv2 Depth [23]——验证本方法在回归任务中的有效性。
- Make3D 数据集包含 400 张训练图像与 134 张测试图像,由三维激光扫描仪采集得到。我们遵循 [26] 的标准评估协议,将图像缩放至 345 × 460 像素,并仅在深度值小于 70 米的像素上进行评估。
- NYUv2 Depth 数据集与前述分类任务使用的是同一数据源,包含来自 464 个不同室内场景的 RGB-D 图像序列。
我们在表 2a(Make3D)与表 2b(NYUv2 Depth)中将本方法与先前工作进行对比,采用标准评价指标(指标说明参见 [27])。
结果表明,偶然不确定性能够有效捕捉该任务中诸多固有难点。例如,在图 5 与图 6 的定性结果中,我们观察到:大深度区域、反光表面以及图像中的遮挡边界处,偶然不确定性显著升高——这些情形正是单目深度估计算法常见的失效模式 [26]。另一方面,这些定性结果也显示,认知不确定性主要反映了由数据缺失导致的困难:例如在图 5 的第三个示例中,对于训练集中罕见的物体(如人物),模型呈现出更高的认知不确定性。
综上所述,我们已证明:本模型可通过隐式学习对系统性噪声及困难概念的衰减机制,超越非贝叶斯基线模型的性能。例如,我们观察到模型对远距离物体、物体表面以及遮挡边界处均给出了较高的偶然不确定性。
5 分析:偶然不确定性与认知不确定性分别捕捉了什么?
在第 4 节中,我们已表明:建模偶然不确定性与认知不确定性均可提升预测性能,而二者结合的表现更佳。本节将进一步研究建模这两种不确定性的有效性,尤其旨在量化这些不确定性度量的性能,并分析它们各自所捕捉的内容。
5.1 不确定性度量的质量
首先,图 2 展示了回归与分类模型的精确率-召回率曲线(precision-recall curves)。这些曲线描述了:当我们逐步移除不确定性大于不同百分位阈值的像素时,模型性能如何随之提升。该图揭示了偶然不确定性与认知不确定性度量的两类行为:
第一,所有曲线均为严格递减函数,说明不确定性度量与预测准确率之间存在良好相关性——即模型对某些像素越不确定,整体精确率越低。
第二,仅含认知不确定性或仅含偶然不确定性的模型所对应的曲线极为相似。这表明:在缺失另一种不确定性的情况下,任一不确定性度量对像素置信度的排序与另一种高度一致;换言之,当仅显式建模其中一种不确定性时,该不确定性会尽可能地补偿另一种不确定性缺失所造成的信息空缺。
![]()
其次,图 3 通过在测试集上绘制校准曲线(calibration plots)来分析我们不确定性度量的质量:
- 对分类模型,我们将模型输出的所有类别、所有像素的预测概率离散化为若干区间(bins),再对每个概率区间统计其预测标签的正确频率,并绘制成图。更优的不确定性估计应使校准曲线更贴近理想直线 y = x。
- 对回归模型,可通过比较残差落在预测分布不同置信区间内的实际频率来构建校准曲线。
图 3 展示了我们分类与回归不确定性估计的校准效果。
5.2 不确定性与偏离训练数据距离的关系
本节展示两个关键结果:
- 偶然不确定性无法通过增加数据量而被消除(即无法被“解释掉”);
- 对于分布外样本(即与训练集情形不同的样本),偶然不确定性不会升高,而认知不确定性则会显著上升。
表 3 给出了在逐步增大的训练子集上训练所得模型的准确率与不确定性结果。可见:随着训练集规模增大,认知不确定性持续下降;而偶然不确定性则基本保持稳定,无法通过更多数据予以消除。当使用不同测试集进行评估时(表中底部两行),那些远离训练数据分布的测试样本上,认知不确定性显著上升。
![]()
这些结果进一步证实:认知不确定性可在数据充足时被消除,但其对于捕捉训练中未遇见过的情形至关重要。这一点在安全攸关系统中尤为关键——认知不确定性是检测模型从未见过的新情境所必需的。
5.3 实时应用
我们基于 DenseNet [20] 的模型可在 NVIDIA Titan X GPU 上以 150 毫秒处理一幅 640 × 480 分辨率的图像。其中,偶然不确定性模型带来的额外计算开销可忽略不计;但认知不确定性模型需进行耗时的蒙特卡洛 Dropout 采样。
- 对于 ResNet 等架构 [4],该操作尚可高效实现,因其仅最后几层包含 Dropout;
- 而对于 DenseNet 等架构,则需对整个网络进行采样,受限于 GPU 显存,难以并行化,常导致推理速度下降约 50 倍(以 50 次采样为例)。
6 结论
我们提出了一种新颖的贝叶斯深度学习框架,能够从输入数据中学习到偶然不确定性的映射,并将其构建于认知不确定性模型之上。我们为回归与分类两类任务推导了该框架。结果表明,建模偶然不确定性在以下场景中尤为重要:
- 大数据情境:此时认知不确定性已被数据充分“解释掉”;
- 实时应用:因偶然不确定性模型无需昂贵的蒙特卡洛采样即可构建。
而建模认知不确定性则在以下情形中至关重要:
- 安全攸关应用:因其对识别与训练数据分布不同的样本(即分布外样本)必不可少;
- 小规模数据集:当训练数据稀疏时,认知不确定性可有效反映模型的无知程度。
然而,偶然不确定性与认知不确定性模型并非互斥。我们已证明,二者的结合能在深度回归与语义分割基准任务上取得新的最先进性能。
本文开篇提到了两起近期灾难——若当时具备实时贝叶斯深度学习工具,或可避免。因此,我们提出:开发适用于深度学习的实时认知不确定性建模方法,是未来一项重要且亟待探索的研究方向。
原文: https://proceedings.neurips.cc/paper_files/paper/2017/file/2650d6089a6d640c5e85b2b88265dc2b-Paper.pdf
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.