当前位置: 首页 > news >正文

大学生活动网站开发文案营销策划方案公司

大学生活动网站开发文案,营销策划方案公司,对互联网网站的理解,wordpress 页面栏目摘要#xff1a; 一项优化神经网络的技术#xff0c;点进来了解一下#xff1f; 认识上图这些人吗#xff1f;这些人把自己叫做“The Myth Busters”#xff0c;为什么#xff1f;在他们的启发下#xff0c;我们才会在Paperspace做类似的事情。我们要解决是Batch Normal…摘要 一项优化神经网络的技术点进来了解一下 认识上图这些人吗这些人把自己叫做“The Myth Busters”为什么在他们的启发下我们才会在Paperspace做类似的事情。我们要解决是Batch NormalizationBN是否确实解决了Internal Covariate Shift的问题。虽然Batch Normalization已经存在了几年并且已经成为深度神经网络的主要内容但它仍然是深度学习中最容易被误解的概念之一。 Batch Normalization真的解决了Internal Covariate Shift问题了吗它是用来做什么的你所学的深度学习是真的吗我们来看看吧 在开始之前 我们曾经讨论过 1、如何利用随机梯度下降来解决深度学习中局部极小值和鞍点的问题。 2、Momentum动量和Adam自适应矩估计等优化算法如何增强梯度下降以解决优化曲面中的曲率问题。 3、如何使用不同的激活函数来解决梯度消失问题。 为了有效地学习神经网络神经网络的每一层分布都应该均值为0、始终保持相同的分布第二个条件意味着通过批梯度下降输入到网路层的数据分布不应该变化太多并且随着训练的进行它应该保持不变而不是每一层的分布都在发生变化。 Internal Covariate Shift Batch Normalization通过减少Internal Covariate Shift来加快深度网络训练其前提是解决一个称为Internal Covariate Shift的问题。 就像我们现在所称的那样Internal Covariate Shift是指在训练过程中隐层的输入分布老是变来变去Internal指的是深层网络的隐层是发生在网络内部的事情Covariate指的是输入分布被变化的权重参数化Shift指分布正在发生变化。 所以让我们试着观察这件事情怎样发生的。再次尽可能想象一下最简单的神经网络之一线性堆叠的神经元这样你也可以通过替换神经元网络层来扩展类比。 假设我们正在优化损失函数L,神经元d权重的更新规则是 我们可以看到权重d的梯度取决于c的输出对于神经网络中的任何层也是如此。神经元的权重梯度取决于它的输入或者下一层的输出。 然后梯度向着反方向更新权重此过程一直重复让我们回到d层因为我们对d进行了梯度更新我们期望omega_d可以有更小的损失然而并非如此让我们看一下原因。 我们从i开始进行初始迭代更新。假设输出c在迭代i为p_c^i d层更新不妨假设c的输入分布为p_c^i。在向下传递期间comega_c的权重也会更新这导致c的输出分布发生变化。在下一次迭代i1中假设z_c的分布已转变到p_c^{i1}。由于d层的权重是根据p_c^i更新的现在d层对应输入分布p_c^{i1}这种差异可能导致网络层产生根本不会减少损失的输出。 现在我们可以提出两个问题 输入分布的变化究竟如何使神经网络层更难学习 这种分布的变化是否足够引起上述情况 我们先回答第一个问题 为什么Internal Covariate Shift造成上述情况 神经网络的作用是生成映射f将输入x映射到输出y。x的分布发生变化为什么会使神经网络层更难学习 下图为x标准分布图 x的非标准分布如下图 假设我们正在尝试的映射是f2x如果x的分布在一个地方压缩了很多密度或者它是否均匀分布为什么那么重要 事实证明这很重要现代精确的深层网络是非常强大的曲线拟合器。假设我们有一个l层对应输入为x其分布如下。另外我们假设由层l学习的函数由虚线表示 i的迭代 假设在梯度更新之后当到下一层网络小批量梯度下降时x的分布变为这样: i1迭代 注意这个小批量梯度下降的损失与之前的损失相比更多为什么会这样让我们回到我们之前的数据,我们最初学到的映射f可以很好地减少之前小批量梯度下降的损失。对于许多其他函数也是如此在x不密集的区域中这些函数差别很大。 适应相同输入xi的不同函数 如果我们选择红色虚线给出的函数下一个小批量梯度下降的损失也会很低。 更合适的另一个函数 现在明显的问题是我们如何修改我们的算法以便我们最终学习的映射对应红色虚线的映射没有简单的答案对于这种情况更好的办法是预防它们而不是等这种情况发生了再去解决它。 ICS最终搞砸我们学习的原因是我们的神经网络总是在输入分布的密集区域上表现更好。由于较密集区域中的数据点主导平均损失我们试图最小化因此密集区域中点的损失减少得更多。 但是如果ICS最终在训练期间的后续批次中更改输入分布的密集区域则网络在之前迭代期间学习的权重不再是最佳的。它可能需要非常仔细地调整超参数来获得合理的学习。这就解释了为什么ICS会出现这样的问题。 我们所说的是在小批量梯度下降中存在很大的方差。方差确保我们的映射不会在输入分布的一个区域中过度专门化我们也希望均值在零附近。 规范化输入 解决此问题的一种方法是将输入归一化到神经网络以使输入分布均值为0和方差为1。但是这仅适用于网络不够深的情况。当网络变得更深比如20层或更多层时即使输入被归一化超过20多个层的权重的微小波动也会导致输入到更深层的输入分布发生很大变化。 例如语言变化不完全正确我们旅行距离发生变化语言也会发生变化。 但是较短距离内的语言有很多相似之处。比如西班牙语和葡萄牙语它们都源于史前印欧语言。印度斯坦语也是如此印度语是8000公里以外的地方。 但是西班牙语和印度斯坦语之间的差异比西班牙语和葡萄牙语之间的差异要大得多。原因是小距离的微小变化已经放大了很多深度网络也是如此。 输入批量归一化 我们现在介绍批量归一化的概念它实际上规范了网络层的输出激活然后做了更多的事情下面是详细的描述 上述等式描述了BatchNorm的原理2-4描述了某个神经元对应的原始的激活x通过减去mini-Batch内m个实例获得的m个激活x求得的均值E(x)并除以求得的方差Var(x)来进行转换由此求出每一次小批量梯度下降激活的标准差。 等式5是中γ和β是所谓的批量归一化层的超参数。式5的输出具有β的平均值和γ的标准偏差。实际上批量归一化层有助于优化算法来控制层的输出的均值和方差。 揭穿ICS的神秘面纱 Internal Covariate Shift是指我们训练网络时输入分布的变化。Batch Norm具有超参gamma和beta用于调整激活的均值和方差。但是当这些超参数被训练时它们也会发生变化而BN导致激活分布或ICS的变化。如果它能阻止ICS超参数gamma和beta没有任何意义。 为什么Batch Norm有效呢 Ian GoodfellowGANs的创始人人工智能领域最重要的研究员之一他在一个讲座中给出了可能的解释在这一点上我必须提醒你除非我们通过具体证据支持否则这只是猜测不管它可能来自现代深度学习中的重量级人物之一。Goodfellow认为关键是BN的两个超参数。 让我们再次考虑超级简单的玩具网络 当我们对a的权重进行梯度更新时我们只计算 frac {\ partial {L}} {\ partial {a}}即损失函数相对于a的敏感度。但是我们没有考虑到改变a的权重也会改变更多层的输出如层bcd。 同样由于使用这些算法的计算难度这实际上归结为我们无法使用二阶或更高阶优化方法梯度下降及其变型只适用于一阶。 深度神经网络具有高阶相互作用这意味着除了损失函数之外改变一个层的权重也可能影响其他层的统计。这些跨层在没有列入考虑的情况下交互会导致ICS。每次我们更新图层的权重时它都有可能以不好的方式影响神经网络中图层的统计。 在这种情况下收敛可能需要仔细初始化调整超参数和更长的训练持续时间。但是当我们在图层之间BN图层时图层的统计信息仅受两个超参数gamma和beta的影响。 现在我们的优化算法只必须仅两个超参数来控制任何层的统计数据而不是前一层中的权重这极大地加速了收敛并且避免了初始化和超参数调整的需要。因此Batch Norm更像是一个检查指向机制。 请注意任意设置图层均值和标准差的能力也意味着如果充分地进行正确地训练我们就可以恢复其原始分布。 激活前或激活后的BatchNorm 理论上在激活函数之前应用BN更好但实际上已经发现在激活之后应用BN会产生更好的结果。在BN之后进行激活BN无法完全控制进入下一层的输入的统计数据因为BN的输出必须经过激活在激活后应用BN却不是这种情况。 推论中的批量规范 在推理期间使用BN可能有点棘手,因为我们在推理期间可能并不总是有批处理。例如在视频上实时运行对象检测器。一次处理一个帧因此没有批处理。 我们需要计算批处理的均值hat {x}和方差sigma ^ 2 来生成BN的输出。在这种情况下我们在训练期间保持均值和方差的滑动平均然后在推理期间将这些值插入均值和方差,这很重要也是大多数深度学习库采用的方法可以开箱即用。 使用滑动平均的理由取决于大数定律。小批量的均值和方差是对真实均值和方差的非常粗糙的估计。批量估计称为批量统计均值和方差的真实值我们未知称为人口统计。对于大量样本批量统计数据往往会收敛于人口的统计数据这就是为什么我们在训练时使用滑动平均。 由于我们的优化算法的小批量特性它还有助于我们除去平均估计产生的噪声。 BNS是正则化器 Batch Norm其实是一个正规化器每个批次估计的均值和方差是真实均值的噪声版本这在我们的最优搜索中注入了随机性有助于正规化。 结论 虽然Batch Norm现已成为深层架构的标准元素但直到最近研究一直致力于理解它是如何工作的。去年我们还介绍了SELU或缩放指数线性单位激活函数这些函数隐含地规范了通过它们的激活这是通过BN明确完成的。 原文链接  本文为云栖社区原创内容未经允许不得转载。
http://www.zqtcl.cn/news/929959/

相关文章:

  • 免费的网站申请做电影网站被告版权
  • 网站后台显示不全百姓网招聘信息最新招聘
  • 前端手机网站同企网站建设做网站
  • 重庆专业网站公司查看网站是否收录
  • 网站怎么做网上报名学多久可以做网站 知乎
  • 网站建设项目总结报告织梦模板建站
  • 关于网站建设的基础知识中石化十建公司官网
  • 江苏做网站怎么收费wordpress的wap插件
  • 企业营销网站建设公司哪家好网站建设团队名称
  • 法制网站建设问卷调查手机网站打开自动wap
  • 建设网站 如何给文件命名佛山网站推广市场
  • 网站客户问题解答网站建设网站规划书
  • 罗湖网站公司网络营销的种类有哪些
  • 怎么做微网站推广做一个自己的网站需要什么
  • 一个静态网站开发考虑什么最近一周新闻热点回顾
  • 北京网站设计知名乐云seo汝州建设局网站
  • 珠海左右创意园网站开发注册安全工程师报名条件和要求
  • 建设文明网站包括怎么用手机建设网站
  • 网站建设商城宁波seo深度优化平台有哪些
  • 免费企业查询网站网站建设有关的职位
  • 有哪些网站是可以做会计题目的广告网站建设设计
  • 房地产项目网站建设wordpress codecolorer
  • 网站服务器机房html5写的网站有什么好处
  • 三网合一网站源码下载宣传片拍摄手法及技巧
  • 重庆有网站公司公司做网站能抵扣进项税吗
  • 深圳南山网站开发卖东西的网站怎么建设
  • 网站开发教程全集网站内外链建设
  • 购物网站排名数商云科技
  • 哪种网站百度网盘登录入口官网
  • 做淘宝网站多少钱wordpress 七牛云存储