贝叶斯视角的
神经网络
从从业者的角度以及对于许多不同的
机器学习应用程序的最终用户来说,了解模型不知道的内容都很重要。在之前的博客文章中,我们讨论了不确定性的不同类型。我们解释了如何使用它来解释和调试模型。
在本文中,我们将讨论在深度神经网络中获取不确定性的不同方法。让我们从贝叶斯角度来看神经网络。
贝叶斯学习101
贝叶斯统计使我们能够基于证据(数据)和我们对世界的先验知识得出结论。这通常与只考虑证据的常客主义统计数据形成对比。 先验知识抓住了我们对哪个模型生成数据或该模型的权重的信念。我们可以使用模型权重上的先验分布p(w)来表示这种信念。
随着我们收集更多数据,我们在称为贝叶斯更新的过程中更新了先验分布并使用贝叶斯定律将其转换为后验分布:
这个方程式引入了贝叶斯学习中的另一个关键角色-可能性,定义为p(y | x,w)。该术语表示在给定模型权重w的情况下数据的可能性。
贝叶斯视角的神经网络
神经网络的目标是估计似然率p(y | x,w)。即使未明确执行此操作(例如,最小化MSE),也是如此。
为了找到最佳的模型权重,我们可以使用最大似然估计 (MLE):
或者,我们可以使用先验知识(表示为权重的先验分布)来最大化后验分布。这种方法称为最大后验估计(MAP):
术语的logP(W) ,这代表了我们之前,作为正则化项。选择均值0为先验的高斯分布,您将获得L2正则化的数学等价性。
现在,我们开始将神经网络视为概率性生物,我们就可以开始乐趣了。首先,谁说我们必须在训练过程结束时输出一组权重?如果不是学习模型的权重,而是学习权重的分布怎么办?这将使我们能够估计权重的不确定性。那么我们该怎么做呢?
一旦您使用贝叶斯算法,就再也不会返回
我们再次从权重的先验分布开始,旨在找到它们的后验分布。这次,我们将直接对所有可能的权重(称为边缘化)进行平均,而不是直接优化网络的权重。
推断时,我们不考虑使后验分布(或可能性,如果我们正在使用MLE)最大化的单个权重集,而是考虑所有可能的权重,并按其概率加权。这是通过使用积分实现的:
x 是我们要推断y的数据点,而X,Y是训练数据。第一项p(y | x,w)是我们很好的旧可能性,第二项p(w | X,Y)是给定数据的模型权重的后验概率。
我们可以将其视为由每个模型的概率加权的模型集合。实际上,这等效于无数个神经网络的集合,具有相同的体系结构但权重不同。
我们到了吗?
y,有摩擦!事实证明,这种积分在大多数情况下是棘手的。这是因为无法对后验概率进行分析评估。
这个问题并非贝叶斯神经网络独有。在贝叶斯学习的许多情况下,您都会遇到此问题,并且多年来已经开发出许多解决方法。我们可以将这些方法分为两个系列:变异推理和采样方法。
蒙特卡洛采样
我们出现了问题。后部分布很难处理。如果不是用真实分布来计算积分,而是用从中抽取的样本平均值来近似它,该怎么办?一种方法是马尔可夫链蒙特卡洛(Markov Chain Monte Carlo) ?—您可以构造一个马尔可夫链,并以所需的分布作为其平衡分布。
变异推理
另一个解决方案是用与易处理族不同的分布来近似真实的难处理分布。为了测量两个分布的相似性,我们可以使用KL散度:
令q为由θ参数化的变化分布。我们想找到使KL散度最小的θ值:
看看我们得到了什么:第一项是变分分布与先验分布之间的KL散度。第二项是与问候的可能性q θ。因此,我们正在寻找q θ最说明数据,但另一方面是尽可能接近现有分布。这只是将正则化引入神经网络的另一种方式!
现在,我们有q θ,我们可以用它来作出预测:
上面的公式来自DeepMind在2015年的工作。类似的想法在2011年由坟墓提出,并在1993年回到Hinton和van Camp。NIPS贝叶斯
深度学习研讨会的主题演讲很好地概述了这些想法如何演变。这些年。
好的,但是如果我们不想从头开始训练模型怎么办?如果我们有一个训练过的模型想要获得不确定性估计,该怎么办?我们能做到吗?
事实证明,如果我们在训练期间使用辍学,我们实际上可以。
专业数据科学家正在考虑其模型的不确定性-插图
辍学是不确定性的平均值
辍学 是一种用作正则化工具的良好实践。 在训练期间,您随机采样节点并将其丢弃,即-将其输出设置为0。动机是什么?您不想过度依赖特定的节点,这可能意味着过度拟合。
在2016年,Gal和Ghahramani指出,如果您在推理时也应用辍学,则可以轻松获得不确定性估算器:
多次推断y | x,每次采样要丢弃的不同节点集。
对预测取平均以得出最终预测E(y | x)。
计算预测的样本方差。
而已!您已估算出方差!这种方法背后的直觉是,可以将训练过程视为同时训练2 ^ m个不同的模型-其中m是网络中的节点数:未被丢弃的每个节点子集定义了一个新模型。所有模型都共享它们不会丢失的节点的权重。在每一批中,都会训练一组随机抽样的模型。
训练后,您手中的模型便很完整。如果您如上所述在推理时使用此集成体,则会得到集成体的不确定性。
抽样方法与变分推理
在偏差-偏差权衡方面,由于我们选择分布族,所以变异推理具有较高的偏差。这是我们正在做的一个很强的假设,并且任何一个强大的假设都会带来偏差。但是,它很稳定,方差很小。
另一方面,由于我们不对分布进行假设,因此抽样方法的偏差较小。这是以高方差为代价的,因为结果取决于我们抽取的样本。
最后的想法
能够估计模型不确定性是一个热门话题。在高风险应用(例如医疗助手和自动驾驶汽车)中要意识到这一点很重要。这也是了解哪些数据可以使模型受益的有用工具,因此我们可以开始获取它。
题库