聊城做网站的公司案例,泉州 网站建设公司首选,湘潭整站优化,网站制作网站建设案例**PaperWeekly 原创 作者 |**薛博阳
**单位 |**香港中文大学
**研究方向 |**语言模型 引言
近年来#xff0c;贝叶斯深度学习#xff08;Bayesian Deep Learn-ing#xff09;在诸多领域得到广泛关注应用#xff0c;效果显著。本文将针对贝叶斯深度学习框架进行系…**©PaperWeekly 原创 · 作者 |**薛博阳
**单位 |**香港中文大学
**研究方向 |**语言模型 引言
近年来贝叶斯深度学习Bayesian Deep Learn-ing在诸多领域得到广泛关注应用效果显著。本文将针对贝叶斯深度学习框架进行系统性的概述包括模型不确定性的引入贝叶斯神经网络Bayesian Neural Network、高斯过程Gaussian Process、变分自编码器Variational Auto-Encoder三个主流模型的介绍以及如何使用变分推断Variational In-ference求解上述模型的潜在变量分布最后对相关参考文献进行总结。 深度学习的不确定性
首先谈下为什么要引入贝叶斯深度学习方法。贝叶斯深度学习能够对传统深度学习模型的不确定性Model Uncertainty建模随着近年来卷积神经网络Transformer 等发展主流深度学习框架变得越来越复杂网络深度可达成百甚至上千层参数量也超过数千亿。这些大规模的神经网络虽然对信息感知和特征提取能力越来越强但也存在在有限数据集上容易过拟合及模型泛化能力弱的隐患。
针 对 这 个 问 题 一 种 常 用 的 方 法 是 引入 Dropout在模型训练时使用由一个超参数控制的伯努利分布对所有网络节点随机选择丢弃使每次训练迭代的网络都不完全相同引入了模型结构的不确定性而在预测时则考虑所有节点可看作所 有训练中不同网络的集成Ensemble或平均从而有效减小了过拟合Dropout 中的超参数通常需要手动调节。
另一种方法是在网络参数上加入随机噪声这相当于引入参数的不确定性。然而这些不确定 性建模方法都只是简单的正则化缺乏严谨的数学表述推理论证。深度学习任务通常有两种不确定性一种是来源于数据噪声的随机不确定性Aleatoric Uncertainty另一种就是重点关注的模型不确定性在不同模型框架上又可分为参数不确定性结构不确定性以及隐变量的不确定性。下面使用一个更直观的例子来说明引入不确定性如何有效提升模型泛化能力。
传统深度学习模型都是确定函数的点估计Point Estimation对于一个鉴别狗品种的图像分类模型如果输入一张训练集分布外的图像如一只猫的照片那样识别结果将很离谱。于是我们希望能在模型返回预测结果时附带不确定性信息也可以看做对结果的置信度。这需要引入能对不确定性建模的概率模型Probabilistic Model如下图所示的二氧化碳浓度预测模型蓝色虚线左边是观测数据右边是测试数据对于测试部分的数据点 传统的深度学习模型会给出确定的预测如左图红色虚线所示而概率模型则会对未知的测试部分均采用概率分布来表示如右图蓝色阴影部分所示在数据集不能学习到准确的数据分布的情况下当然实际所用的所有数据集都是有限的很显然引入不确定性更合理这也是能有效提升模型泛化能力的原因。 ▲ 图1. 传统深度学习模型左与概率模型右对二氧化碳浓度的预测
这里的概率模型就是用的贝叶斯方法建模假设存在数据集 和标签集 在预测测试数据对 的概率分布时根据边缘概率计算我们有 其中 为模型参数问题就转换为求参数 在训练集 上的最大后验分布的问题。根据贝叶斯公式有 传统深度学习通常是对参数 进行定参估计而贝叶斯模型把参数看做概率分布需要对所有 值进行积分按照 Bishop 的《Pattern Recognition and Machine Learning》的定义这种积分是贝叶斯方法的核心在深度学习模型上应用贝叶斯方法就统称为贝叶斯深度学习。我们对公式2分母部分进行归一化积分有 这部分也称作模型证据Model Evidence或边缘似然Marginal Likelihood 分布。由于积分的存在通常很难求得解析解这就需要用到一些近似推断方 法。至此我们从不确定性概率模型贝叶斯方法的基本思路着手明确了贝叶斯深度学习和不确定性的关系下面就来讲贝叶斯深度学习里最经典的模型——贝叶斯神经网络。 贝叶斯神经网络
广义的贝叶斯深度学习在不同文章课题中定义略有不同但狭义的贝叶斯深度学习公认是指贝叶斯神经网络。结合上文不确定性再来详细讨论贝叶斯神经网络和传统神经网络的区别传统神经网络中我们认为模型参数 是定值如图二左所示并且在一个任务上存在最优参数 训练时给模型参数赋一组初值 基于观测数据集 训练模型不断更新 训练时可以使用最大似然估计 或者加入正则项将最大似然变为最大后验估计 其中 正则项是将 假设为拉普拉斯先验 正则项是高斯先验不论 MLE 还是 MAP最终学习目标都是让参数无限逼近 。 ▲ 图2. 参数固定的传统神经网络左以及参数服从概率分布的贝叶斯神经网络右
需要指出虽然最大后验估计也引入先验但仍属于定参估计没有引入概率模型不需要对参数积分因此不属于贝叶斯方法。传统神经网络无法对不确定性建模在监督学习中往往对预测结果过于自信很容易发生过拟合。
顺着前文在参数上引入不确定性的思路我们 认为 服从某种概率分布而非固定参数如图二右所示为了最大化不确定性我们先假设 服从高 斯分布这样训练的也不再是单一网络而是无数个相同位置节点参数服从同一概率分布的集成网络。此时参数 的先验分布不再是简单的正则项而是对应的共轭分布高斯分布的共轭先验也应该是一 个高斯分布对应的后验分布也是一个高斯分布。模型的优化目标就是最大化后验高斯分布 也就是公式1中的后验。
现在问题的关键就是计算公式3的边缘算子了。如果模型是线性回归之类的简单模型其实也不难求出解析解但换成神经网络后就会变得异常复杂下面简单推导一下。假设有模型 输入向量 标签 模型参数为 假设模型输出服从均值为 方差为 的高斯分布有 权重 的共轭先验也是高斯分布假设其均值为 方差为 可得 后验分布由贝叶斯公式 计算代入多元高斯概率密度函数对后验分布取 其中 为常数项。对于一般的线性回归模型 是关于 的线性函数后验概率仍是是关于 的高斯分布可以直接计算出解析解但是在神经网络中由于大量非线性单元模型输出 与 不再是线性关系网络模型对于参数值的高度非线性意味着精确的贝叶斯方法即数值求解)不可行因此我们不得不借助一些近似方法如拉普拉斯近似Laplace Approximation马尔科夫链蒙特卡罗采样Markov-Chain Monte-Carlo Sampling以及近几年使用最多的变分推断法。 变分推断
本节主要讲变分推断求解贝叶斯神经网络的过程类似的也可以用于其他贝叶斯深度学习模型上。
变分法最早起源于 18 世纪欧拉、拉格朗日等关于泛函优化的研究泛函数 Functional是以函数作为输入返回泛函值作为输出的一种映射它以一个函数作为输入返回泛函的值作为输出。研究所有可能的输入函数找到最大化或者最小化泛函的函数就是问题的解。相比其他近似推断方法变分法具有更好的收敛性和可扩展性适合大规模问题的求解。贝叶斯深度学习将参数视作概率分布后误差函数的输入也就从定值变为函数从而转变为泛函优化这就是用变分法来求解贝叶斯深度学习模型的原因。
第三节已经证明了贝叶斯神经网络中的 无法直接计算解析解甚至很难采样。变分法的核心就是用一个可解的近似分布 逼近真实分布。第二节分析表明估计后验分布 需要最大化公式3边缘分布的积分假设公式3根据 Jensen 不等式有 这也被称为变分下限Variational Lower Bound 是对后验概率 的变分近似 是参数的先验分布KL 散度用来度量两个概率分布的距离如下图所示 ▲ 图3. 变分下限
一种更直观的理解是已知后验分布 是 一个未知分布我们引入已知参数分布的 去逼近 所以只需最小化 KL 可以作如下推导 最终结果第一项 与 无关可以忽略第二项 和第三项分别求 与先验 的距离以及 时似然函数 的期望值。这与公式11的结果一致也就是目标函数或误差函数即 与正则化的传统神经网络对比贝叶斯神经网络误差函数也分为两部分一是训练数据相关的似然代 价Likelihood Cost其中 服从 二是先验相关的复杂性代价Complexity Cost也就是把正则项变成 KL 散度传统方法中引入正则项就有让模型参数变得稀疏的作用控制了模型的复杂度。误差函数的优化就是在两项函数之间取平衡。
下面说说误差函数两项的求解方法为了最大化不确定性假设近似和后验均服从高斯分布即 似然代价因为积分存在无法直接求解在此借助蒙特卡罗采样Monte Carlo Sampling即 其中 是每次训练中对 的采样次数如果直接对均值 和方差 采样代入高斯分布因指数运算在反向传播时会造成训练过程不稳定在此使用一种重参数化Reparameterize方法即 这意味着在前向传播计算似然代价时参数 需要从公式17随机采样获得对应贝叶斯神经网络的参数 不再是一个定值。
对于 与 的 KL 散度项需要对积分离散化然后代入高斯分布的概率密度函数有 其中 表示 中的第 项参数 并且相互独立根据高斯分布均值和二阶矩的性质 即可完成最后一步推导。至此我们已推导出误差函数项的形式利用 梯度下降和反向传播算法就可以完成大规模参数贝叶斯神经网络的训练了为了稀疏模型我们可以 的标准高斯分布反向传播算法如下 由于我们假设参数服从高斯分布因此使用了均值和方差两个参数参数量为同等规模的传统神经网络的 2 倍。当然实际上只需要对部分参数做贝叶斯推断就可以取得较好的效果了。
简化后的代价函数也可以进行小批量梯度下降训练时将 随机分成 个相等的子集。每次梯度更新是小批量上的平均。如果想要衡量复杂性成本与小批量之间的关系我们可以将小批量均匀随机划分那么 KL 代价可以在每个训练周期非均匀地分布在小批量 之间令 并且 。 研究发现 时效果最好这也意味着在前几个小批量更新时在模型比较依赖先验也就是复杂性成本的影响而后面训练时很大程度上受数据的影响。也就是说当数据集趋于无穷时贝叶斯神经网络和传统神经网络相差并不大但是在有限数据集上贝叶斯神经网络明显性能更优。 高斯过程
高斯过程是结合连续函数和概率模型的一种非参数化方法函数 的高斯过程可表示为 其中 是训练集中的随机数据对 是核函数上述公式是高斯过程的核空间表述kernel space view然而由于数据集中所有数据点都需要相互运算在大规模数据集上计算复杂度会特别高另一种权重空间表述weight space view的高斯过程形式为模型中一系列基函数的插值 核函数与基函数的关系为 是第 个基函数的系数。
此前已有研究证明对于单隐层的神经网络当隐层结点数不断增加并趋于无穷时输出服从高斯分布。由于输出被描述为基函数的无穷和因此可以将输出看作高斯过程如下图所示可以看出高斯 ▲ 图4. 单隐层神经网络结点数不断增加 (a),(b),©,(d) 时输出分布
过程是和模型结构相关的这也启发了一系列将高斯过程与贝叶斯深度学习相结合的研究一种思路就是利用上述权重空间的高斯过程对基函数插值系数使用贝叶斯估计从而为模型结构的不确定性建模公式11可表示如下 相较之下多了一个变量的积分其余推导过程就按照变分下限蒙特卡罗采样重参数化反向传播等一系列步骤进行推导过程与第四节类似在此不作赘述。 变分自编码器
变分自编码器本质上也是贝叶斯深度学习只不过这次是对隐变量Latent Variables进行不确定性建模也就是将神经网络中的隐藏层输出视作随机变量。传统自编码器是一种由编码器和解码器组成的用于特征提取或数据降维的模型。如下图所示左边是编码器右边是解码器通过自编码器将输 ▲ 图5. 自编码器
入 映射到低维空间 再通过解码器还原回真实数据。
在数据处理时会遇到数据量不足的情况这时就会考虑使用生成模型生成数据变分自编码器就是在自编码器基础上对 引入变分贝叶斯估计使其能够生成数据。这涉及到一类利用变分贝叶斯求解图模型变量的方法也是变分贝叶斯在深度学习隐藏变量上的应用变分自编码器是其中的典型代表。
对于如下具有连续隐变量的概率图模型 ▲ 图6. 连续隐变量的概率图模型
我们试图推断和学习有向概率图模型的隐分布 并通过对 的采样来实现数据 的生成。由于连续 随机隐变量 不可见我们无法根据条件概率分布 生成 也就无法得到生成模型 。而数据的先验分布 因存在积分也无法求解这时候就可以构建模型 来近似 这个过程可视作编码器即由样本数据 学出一个对应的隐层分布 并使用 作为解码器实现模型生成。数据集的先验可以写作 其中 就是变分下限也可以写作 还可以进一步写作 接下来就是蒙特卡罗采样重参数化反向传播等一系列算法的运用推导过程与第四章基本类似在此不作赘述。 总结
本文从深度学习不确定性的角度切入总结了贝叶斯深度学习模型提升模型的泛化能力的作用并讲了三个主流的框架贝叶斯神经网络高斯过程变分自编码器分别在模型参数模型结构和隐藏变量进行不确定性建模并且给出变分法求解上述模型的过程。参考资料详见下文。
参考文献
模型不确定性
[1] Gal, Y. “Uncertainty in Deep Learning.”PhD Thesis, 2016.
贝叶斯神经网络变分推断
[2] D. Barber and C. M. Bishop, “Ensemble Learning in Bayesian Neural Networks,”Nato ASI Series F Computer and Systems Sciences, 1998
[3] R. M. Neal, “Bayesian Learning for Neu- ral Networks,”Springer Science Business Media, 2012.
[4] C. M. Bishop, “Pattern Recognition and Machine Learning,”Machine Learning, 2006.
[5] A. Graves, “Practical Variational Inference for Neural Networks,”NIPS 2012.
[6] C. Blundell et al., “Weight Uncertainty in Neural Network,”ICML 2014.
[7] Goan, E. Bayesian. “Neural Networks: An Introduction and Survey,”In Case Studies in Applied Bayesian Data Science 2020.
高斯过程
[8] C. E. Rasmussen, “Gaussian Processes for Machine Learning,”Machine Learning, 2006.
变分自编码器
[9] D. P. Kingma et al., “Auto-Encoding Vari- ational Bayes,”stat, 2014.
特别鸣谢
感谢 TCCI 天桥脑科学研究院对于 PaperWeekly 的支持。TCCI 关注大脑探知、大脑功能和大脑健康。
更多阅读 #投 稿 通 道#
让你的文字被更多人看到
如何才能让更多的优质内容以更短路径到达读者群体缩短读者寻找优质内容的成本呢答案就是你不认识的人。
总有一些你不认识的人知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁促使不同背景、不同方向的学者和学术灵感相互碰撞迸发出更多的可能性。
PaperWeekly 鼓励高校实验室或个人在我们的平台上分享各类优质内容可以是最新论文解读也可以是学术热点剖析、科研心得或竞赛经验讲解等。我们的目的只有一个让知识真正流动起来。 稿件基本要求
• 文章确系个人原创作品未曾在公开渠道发表如为其他平台已发表或待发表的文章请明确标注
• 稿件建议以 markdown 格式撰写文中配图以附件形式发送要求图片清晰无版权问题
• PaperWeekly 尊重原作者署名权并将为每篇被采纳的原创首发稿件提供业内具有竞争力稿酬具体依据文章阅读量和文章质量阶梯制结算 投稿通道
• 投稿邮箱hrpaperweekly.site
• 来稿请备注即时联系方式微信以便我们在稿件选用的第一时间联系作者
• 您也可以直接添加小编微信pwbot02快速投稿备注姓名-投稿 △长按添加PaperWeekly小编 现在在**「知乎」**也能找到我们了
进入知乎首页搜索**「PaperWeekly」**
点击**「关注」**订阅我们的专栏吧
·