神经网络不确定性综述(Part III)——Uncertainty estimation_Bayesian neural networks

news2024/11/16 18:10:56

 相关链接:

神经网络不确定性综述(Part I)——A survey of uncertainty in deep neural networks-CSDN博客

神经网络不确定性综述(Part II)——Uncertainty estimation_Single deterministic methods-CSDN博客

神经网络不确定性综述(Part III)——Uncertainty estimation_Bayesian neural networks-CSDN博客

神经网络不确定性综述(Part IV)——Uncertainty estimation_Ensemble methods&Test-time augmentation-CSDN博客

神经网络不确定性综述(Part V)——Uncertainty measures and quality-CSDN博客


3.2 Bayesian neural networks

贝叶斯神经网络将神经网络与贝叶斯学习相结合,通过推断网络参数 \theta=(w_1,\ldots,w_K) 的概率分布来实现。具体来说,给定input-target-pair (x,y),假设参数的先验分布p(\theta),并使用贝叶斯定理,对后验分布的参数空间进行建模:

p(\theta|x,y)=\frac{p(y|x,\theta)p(\theta)}{p(y|x)}\propto p(y|x,\theta)p(\theta)

where p(y|x)=\int p(y|x,\theta)p(\theta)d\theta.

估计得到权重参数的后验分布后,the prediction output y^\ast for a new data x^\ast can be obtained by Bayesian Model Averaging or Full Bayesian Analysis that involves marginalizing the likelihood p(y|x,\theta) with the posterior distribution p(\theta|x,y)

p(y^*|x^*,x,y)=\int p(y^*|x^*,\theta)p(\theta|x,y)d\theta

上式的积分是intractable的,因此通常采用近似的手段,其中使用最广泛的近似方法是Monte Carlo Approximation。此方法遵循大数定律,通过N个随机网络的预测均值来逼近期望值,

y^*\approx\frac1N\sum_{i=1}^Ny_i^*=\frac1N\sum_{i=1}^Nf_{\theta_i}(x^*)

Wilson and Izmailov (2020)认为BNN的一个关键优势就在于marginalization,它可以提高深度神经网络的accuracy and calibration。此外,BNN不仅局限于uncertainty estimation,还为深度学习提供了强大的Bayesian toolboxes,例如,Bayesian model selection, model compression, active learning, theoretic advances. 虽然这个formulation是很简单的,但是BNN仍然存在挑战,例如,对于后验推断通常不存在闭式解,因为复杂模型,如神经网络,一般不存在共轭先验(Bishop and Nasrabadi2006),因此往往需要使用approximate Bayesian inference techniques来计算后验概率。然而,直接使用近似贝叶斯推断技术已被证明是困难的,因为DNN的数据量和参数量太大,即,上述积分在数据规模和参数量增长时不易计算。此外,为DNN指定有意义的prior是另一个挑战。

作者根据how the posterior distribution is inferred to approximate Bayesian inference将BNNs分为三种类别:

  • Variational inference

Variational inference approaches approximate the (in general intractable) posterior distribution by optimizing over a family of tractable distributions.

  • Sampling approaches

Sampling approaches deliver a representation of the target random variable from which realizations can be sampled. Such methods are based on Markov Chain Monte Carlo and further extensions.

  • Laplace approximation

Laplace approximation simplifies the target distribution by approximating the log-posterior distribution and then, based on this approximation, deriving a normal distribution over the network weights.

3.2.1 Variational inference

The goal of variational inference is to infer the posterior probabilities p(\theta|x,y) using a prespecifed family of distributions q(\theta). Here, this so-called variational family q(\theta) is defined as a parametric distribution.

——变分推断的目标是利用预先指定的分布族 q(\theta) 推断后验概率 p(\theta|x,y)。所谓的变分分布族q(\theta)被定义为一个参数化分布。比如,Multivariate Normal distribution的参数为均值和协方差矩阵;变分推断的主要思想是找到这些参数,使得q(\theta)接近所关注的后验概率p(\theta|x,y)。而概率分布之间的接近程度由Kullback-Leibler (KL) 散度给出:

\mathrm{KL}(q\parallel p)=\mathbb{E}_q\left[\log\frac{q(\theta)}{p(\theta|x,y)}\right]

由于KL散度中包含有后验p(\theta|x,y)因此无法直接优化,实际操作中是优化Evidence Lower Bound, ELBO:

ELBO=\mathbb{E}_q\left[\log\frac{p(y|x,\theta)}{q(\theta)}\right]

而KL散度也可以写为

\mathrm{KL}(q\parallel p)=-L+\log p(y|x).

最小化KL散度实际上就是最大化ELBO,二者是一致的。

其它关键词(请读者自行查阅):重参数reparameterization;平均场假设mean-field approximations;Monte Carlo Dropout。

3.2.2 Sampling methods

Sampling methods通常被称为Monte Carlo methods,是另一种贝叶斯推断算法。该方法从分布中抽取一组样本来获得后验,不受分布类型的限制hence probability distributions are obtained non-parametrically。流行的算法包括粒子滤波、拒绝采样、重要性采样和MCMC采样。在神经网络中,因为基于拒绝采样和重要性采样的方法对于高维问题来说十分低效,MCMC是普遍被使用的方法。MCMC的主要思想是通过transition in state space从而在任意分布中进行抽样,this transition is governed by a record of the current state and the proposal distribution that aims to estimate the target distribution (e.g. the true posterior). 为了进一步解释,定义:

a Markov Chain is a distribution over random variables x_1,\cdots,x_T which follows the state transition rule:

p(x_1,\cdots,x_T)=p(x_1)\prod_{t=2}^Tp(x_t|x_{t-1})

i.e. the next state only depends on the current state and not on any other former state.

即,下一时刻的状态只依赖于当前状态,而与之前的状态无关。

每一次采样都通过一定的规则选择接受或拒绝当前样本,这个过程一直进行下去,最终会保证在某个时间点后采样得到的样本近似来自于目标分布。

其它关键词:Hamiltonian Monte Carlo / Hybrid Monte Carlo; Stochastic Gradient Markov Chain Monte Carlo; Langevin dynamics.

其余请参见原文。

3.2.3 Laplace approximation

The goal of the Laplace Approximation is to estimate the posterior distribution over the parameters of neural networks p(\theta|x,y) around a local mode of the loss surface with a Multivariate Normal distribution.

The Laplace Approximation to the posterior can be obtained by taking the second-order Taylor series expansion of the log posterior over the weights around the MAP estimate \widehat{\theta} given some data (x,y). If we assume a Gaussian prior with a scalar precision value \tau>0, then this corresponds to the commonly used L2-regularization, and the Taylor series expansion results in

\begin{aligned}\log p(\theta|x,y)&\approx\log p(\widehat{\theta}\mid x,y)\\&+\frac12(\theta-\widehat{\theta})^T(H+\tau I)(\theta-\widehat{\theta})\\\end{aligned}

where the first-order term vanishes because the gradient of the log posterior \delta\theta=\nabla\mathrm{log~}p(\theta\mid x,y) is zero at the maximum \widehat{\theta}. Taking the exponential on both sides and approximating integrals by reverse engineering densities, the weight posterior is approximately a Gaussian with the mean \widehat{\theta} and the covariance matrix  (H+\tau I)^{-1} where H is the Hessian of \mathrm{log~}p(\theta\mid x,y). This means that the model uncertainty is represented by the Hessian H resulting in a Multivariate Normal distribution:

p(\theta\mid x,y)\thicksim N(\hat{\theta},(H+\tau I)^{-1})

The core of the Laplace Approximation is the estimation of the Hessian.

3.2.4 Sum up Bayesian methods

贝叶斯深度学习已经逐渐成为一个热门且强大的研究领域,对BNN的研究主要集中在如何推断后验p(\theta|x,y)。此外,出现了一些新的挑战:

(i) how to specify meaningful priors?

(ii) how to efficiently marginalize over the parameters for fast predictive uncertainty?

(iii) infrastructures such as new benchmarks, evaluation protocols and software tools.

(iv) towards better understandings on the current methodologies and their potential applications.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1713879.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

11. Django 常用的Web应用程序

11. 常用的Web应用程序 Django为开发者提供了常见的Web应用程序, 如会话控制, 缓存机制, CSRF防护, 消息框架, 分页功能, 国际化和本地化, 单元测试和自定义中间件. 内置的Web应用程序大大优化了网站性能, 并且完善了安全防护机制, 同时也提高了开发者的开发效率.11.1 会话控制…

纷享销客当选江西省数字经济学会首席信息官专业委员会副主任委员

5月11日,江西省数字经济学会首席信息官(CIO)专业委员会成立大会暨“新质生产力”企业数字化转型论坛在南昌香格里拉大酒店隆重举行。 江西省工业和信息化厅作为指导单位,由江西省数字经济学会、南昌市中小企业服务局主办,金蝶软件&#xff0…

idea、datagrip注册记录下

一、DataGrip注册 DataGrip版本号:DataGrip 2023.2 访问地址:https://3.jetbra.in/ 点击“hardbin.com”,下载“jetbra.zip” 在vm里面添加上: -javaagent:D:\work\idea\jetbra\ja-netfilter.jarjetbrains重启datagrip 在刚刚…

香港苏州商会、香港青年科学家协会博士团参观李良济,加强人才交流,促进科创合作与共赢

近日,香港苏州商会、香港青年科学家协会联合主办的苏港青年科创交流会成功举行,香港青年科学家协会博士团神州行苏州站启动。 5月26日,香港苏州商会及香港青年科学家协会博士团走进李良济,先后参观了李良济中医药文化展厅&#xf…

zynq之UART

之前尝试UART0(MIO50、51),串口调试助手收到发送的内容。 现在板子上EMIO端有多个串口,所以看看这个怎么弄。 串口是484的转接板(接232的串口就会输出乱码) https://blog.51cto.com/u_15262460/2882973 …

vue+css解决图片变形问题(flex-shrink: 0)

解决前 给图片添加 flex-shrink: 0;即可解决图片变形问题

leetcode 1270 向公司CEO汇报工作的所有人(postgresql)

需求 员工表:Employees ---------------------- | Column Name | Type | ---------------------- | employee_id | int | | employee_name | varchar | | manager_id | int | ---------------------- employee_id 是这个表的主键。 这个表中每一行中,e…

四川音盛佳云电子商务有限公司可靠吗?怎么样?

在数字经济的浪潮中,抖音电商以其独特的魅力逐渐崭露头角,成为电商领域的一股新势力。而四川音盛佳云电子商务有限公司,正是这股新势力中的佼佼者,以其专业的服务和创新的理念,引领着抖音电商的发展潮流。 四川音盛佳…

用docker搭建的Vulfocus镜像管理界面没有镜像可以拉取解决办法

ps:截止到今天2023.4.2,kali和vps的docker拉取的vulfocus镜像会有版本的区别,虽然都是拉取的最新版,vps上镜像为3个月以前,kali上为16个月以前,所以在修改 views.py 文件时,可能会发现文件内容不…

Sping源码(九)—— Bean的初始化(非懒加载)— getMergedLocalBeanDefinition

序言 前两篇文章介绍了Bean初始化之前的一些准备工作,包括设置BeanFacroty的ConversionService属性以及将Bean进行冻结。这篇文章将会进入到preInstantiateSingletons方法。进一步了解Bean的初始化流程。 preInstantiateSingletons public void preInstantiateSin…

JS实现彩色图片转换为黑白图片

1. 使用 Canvas 研究 canvas 时发现一个有趣的现象——将彩色图片巧妙地转换为黑白图片。以下是实现这一功能的简洁代码示例&#xff1a; <div style"display: flex"><img src"./panda.jpeg" /><button onclick"change()">转…

[C++]debug介绍+debug时如何查看指针指向内存处的值

一、简介 预备工具和知识&#xff1a;使用使用VSCode使用Debug。 本文简介&#xff1a;本文将简要介绍debug中Continue&#xff0c;Step Over&#xff0c;Step Into和Restart的功能。并介绍如何在debug时查看动态内存地址&#xff08;指针&#xff09;的值&#xff1b; 二、D…

强国机械制造有限公司开展中国制造2050系列高端论坛

为深入探讨中国制造2050战略的实施路径和未来发展方向,强国机械制造有限公司2023年10月13日举办了一系列高端论坛。这些论坛吸引了众多业内专家、学者和企业代表参加,共同交流前沿观点和经验,以推动中国制造业的创新与发展。 本次系列高端论坛涵盖了多个关键主题,以下是各论坛…

《Ai企业知识库》rasa-rasa Core核心-认知理解以及配置文件应用

阿丹&#xff1a; 其实在整个rasa中的关键元素和关键的核心在前面多多少少也涉及到了很多&#xff0c;这里就是开始涉及到了rasa的训练核心core。 Rasa Core: Rasa Core 是Rasa框架中的一个组件&#xff0c;它负责处理对话管理部分&#xff0c;即决定对话流程中机器人的下一步…

大模型预训练结果到底是什么?

近日参加一个线下 AI 交流会议&#xff0c;会上有个非本行业的老师提问&#xff1a;“大家说的训练好的大模型到底是什么&#xff1f;是像 Word 软件一样可以直接使用的程序吗&#xff1f;” 这个问题看似简单&#xff0c;却一下把我问住了。的确&#xff0c;我们这些身处 AI 领…

如何培养元技能?

如何培养元技能&#xff1f; 一、引言 在当今社会&#xff0c;仅仅依靠某一专业技能是远远不够的。我们需要拓宽自己的能力和视野&#xff0c;从而更好地应对日新月异的社会发展和工作需求。在这个过程中&#xff0c;培养元技能变得至关重要。元技能不仅有助于我们在各个领域中…

智能变革:领域大模型重塑企业知识管理!

在如今知识密集型的行业领域里&#xff0c;企业员工每天都要与海量的文档和信息打交道&#xff0c;工作邮箱里充斥着无数邮件&#xff0c;办公桌上堆满了各种报告和文档&#xff0c;而每一个文件里都可能藏有关键信息。 然而&#xff0c;要从这些杂乱无章的信息海洋中找到需要…

JavaDS-学习数据结构之如果从零开始手搓顺序表,顺带学习自定义异常怎么用!

前言 笔者开始学习数据结构了,虽然笔者已经会用了,不管是C 中的stl亦或是Java 中的集合,为了算法比赛多少都突击过,但只知其然而不知其所以然,还是会限制发展的,因此,笔者写下这篇博客.内容是手搓一个顺序表.顺带加一点异常的使用,大伙看个乐子就好了.有错误直接私信喷我就好了…

wxPython Demo大全系列:ActivityIndicator控件分析

一、ActivityIndicator介绍 wx.ActivityIndicator 控件是 wxPython 中用于显示活动指示器的控件&#xff0c;通常用于指示程序正在执行某些后台任务或操作。它在用户界面中以动画的形式表现出活动状态&#xff0c;让用户知道应用程序正在进行处理而不是被挂起。 主要特点 可视…

Data Lakehouse:你的下一个数据仓库

作者&#xff1a;张友东 StarRocks TSC member/镜舟科技 CTO 数据分析是现代企业和组织决策过程中不可或缺的一部分&#xff0c;数据分析技术经过数十年的发展&#xff0c;需求场景从 BI 报表到数据探寻、实时预测、用户画像等不断丰富&#xff0c;技术架构经历从数据仓库、数据…