上海红酒网站建设沈阳工程建设监理咨询

web/2025/10/4 13:38:55/文章来源:
上海红酒网站建设,沈阳工程建设监理咨询,深圳网站提升排名,巨鹿网站建设多少钱文章目录 Batch Normalizationinternal covariate shift激活层的作用BN执行的位置数据白化网络中的BN层训练过程 BN的实验效果MNIST与GoogleLeNet V1比较 GoogleLeNet出来之后#xff0c;Google在这个基础上又演进了几个版本#xff0c;一般来说是说有4个版本#xff0c;之前… 文章目录 Batch Normalizationinternal covariate shift激活层的作用BN执行的位置数据白化网络中的BN层训练过程 BN的实验效果MNIST与GoogleLeNet V1比较 GoogleLeNet出来之后Google在这个基础上又演进了几个版本一般来说是说有4个版本之前的那个是V1然后有一个V2V3和V4。 其实我个人感觉V2和V3应该是在一起的都是综合了两篇论文中的一些改进点来的 Accelerating deep network training by reducing internal covariate shiftRethinking the Inception Architecture for Computer Vision 其中第一篇是提出了一个重要的概念Batch Normalization是针对内部协变量偏移问题的简单的说就是加速训练过程。把BN作为激活层之前的另外一个网络层可以加速网络训练的收敛速度。 第二篇就提出了一些新的卷积方法等然后总和第一篇论文一起就提出了一个inception v2的网络结构没有明确提到v3但是其中的一些变形作为了v3版本。 我们就来看一下这两篇论文说了点啥这个v2和v3又改进了点啥。 Batch Normalization internal covariate shift 讲BN之前肯定要说说BN到底是解决一个什么问题在论文中提到的就是internal covariate shift问题翻译过来是内部协变量偏移。不明觉厉这个看不太懂是什么东西。 原文中的描述为 Training Deep Neural Networks is complicated by the fact that the distribution of each layer’s inputs changes during training, as the parameters of the previous layers change. This slows down the training by requiring lower learning rates and careful parameter initialization, and makes it notoriously hard to train models with saturating nonlinearities. We refer to this phenomenon as internal covariate shift, and address the problem by normalizing layer inputs。 大致意思是在训练的反向传播过程中每个输入数据的分布情况回发生变化在计算损失的之后这一层的输出也会发生变化从而导致下一层的输入数据分布发生变化。这种情况就叫做内部协变量偏移。 简单点说就是网络的隐藏层数据分布变化很大容易出现梯度消失和梯度爆炸导致训练过程很难收敛。一个梯度一下大到天上一下就等于0确实很难收敛。 那么BN的基本逻辑就是针对每个训练的batch数据在每个激活层(Sigmond或者ReLU之类)前增加一个BN层也就是做一次数据标准化把上一层的输出线性变化到一个固定的分布内(fixed distribution) 激活层的作用 这里增加一点就是之前一直没太弄明白激活层的作用。看完这篇论文之后大概了解了。整个网络中间基本都是卷积和全连接层不管是卷积还是全连接层都是针对前一层数据的一种线性变换。也就是前一层数据的一种多项式变化如果中间没有激活层的话那么实际上无论增加多少层都可以简化成一层因为线性变化是可以叠加的。 举个例子如果第一层的处理是 F ( x ) 2 x 3 F(x)2x3 F(x)2x3 第二层的处理是: H ( x ) 4 x − 4 H(x)4x-4 H(x)4x−4 这里的x就是上一层的 F ( x ) F(x) F(x)所以就是 H ( x ) 4 ( 2 x 3 ) − 4 8 x − 8 H(x)4(2x3)-48x-8 H(x)4(2x3)−48x−8 那么就可以简化成一层。复杂的线性变化也是一样的。但是如果增加了激活层的话就不一样了激活层是非线形函数不满足 f ( x y ) f ( x ) f ( y ) f(xy)f(x) f(y) f(xy)f(x)f(y)所以就不存在上述的变换。 这样就可以增强模型的表达能力(reprensetation power)就是对数据分布的拟合能力。 所以基本上在网络结构里每个卷积层后面都会跟一个非线性层(池化或者激活)。 BN执行的位置 论文中的描述是To Batch-Normalize a network, we specify a subset of activations and insert the BN transform for each of them。 增加在所有的激活层之前。 数据白化 论文中提到By fixing the distribution of the layer inputs x as the training progresses, we expect to improve the training speed. It has been long known that the network training converges faster if its inputs are whitened, linearly transformed to have zero means and unit variances, and decorrelated。 这里提到就是利用了LeCun 1998年的论文中提到的白化(whiten)的输入数据可以加速训练。而这个白化数据就是指数据分布符合均值为0方差为1。 白化过程为一个d维的矢量样本( x ( x ( 1 ) , x ( 2 ) . . . . x ( d ) ) x(x^{(1)},x^{(2)}....x^{(d)}) x(x(1),x(2)....x(d)))的白化过程 x ^ ( k ) x ( k ) − E [ x ( k ) ] V a r [ x ( k ) ] \hat{x}^{(k)}\frac{x^{(k)}-E[x^{(k)}]}{\sqrt{Var[x^{(k)}]}} x^(k)Var[x(k)] ​x(k)−E[x(k)]​ 把每一维计算完成之后就形成了服从0-1分布的 x ^ \hat{x} x^向量。 网络中的BN层 在白化之后实际上还需要做一个线性变换 y ( k ) γ ( k ) x ^ ( k ) β ( k ) y^{(k)}\gamma^{(k)}\hat{x}^{(k)}\beta^{(k)} y(k)γ(k)x^(k)β(k) 至于为什么要增加这么一个动作论文中是说 Note that simply normalizing each input of a layer may change what the layer can represent. For instance, normalizing the inputs of a sigmoid would constrain them to the linear regime of the nonlinearity. 我理解是直接标准化会降低网络的表达能力可能是直接强行拉到一个0-1的分布会造成一些损失吧。所以可以做一些拉伸和偏移(正态分布的那个图做一些拉伸和偏移)然后在学习的过程中去动态的调整这两个参数 γ \gamma γ和 β \beta β。也就是学习到底是拉伸多少偏移多少能更好的拟合数据。 上面的数据白话相当于是把一个样本作了标准化然后需要把一个训练batch的数据一起做标准化。 论文中是说since we use mini-batches in stochastic gradient training, of the mean and variance each mini-batch produces estimates of each activation。 也就是说为每个批次也要做一个normalization。 计算方法为 从上图可以看出来前面三步就是对数据作了一次白化(类似)只是方向上需要理解一下。 比如输入为一张图像图像为 p ∗ q p * q p∗q宽总共有m张图像那么这里的向量 x x x的长度就是 m m m也就是沿着图像数的方向。总共有p✖️q个这样的向量。也就是要做p✖️q次normalization计算。 这样就完成了BN层的计算。计算之后相当于这个批次中的图像中的每个像素都是服从同一分布的但是 γ \gamma γ和 β \beta β不同。 训练过程 以SGD随机梯度下降的反向传播算法来说 从输出层开始计算完loss和随机梯度后就会向后传播那么这个BN层也是需要传播的。 通过下图就可以计算出 γ \gamma γ和 β \beta β每次的更新量 Δ γ \Delta \gamma Δγ和 Δ β \Delta \beta Δβ 整个训练过程为 针对每一个BN层通过上述的计算过程进行训练。 BN的实验效果 MNIST 在手写上与最古老的LeNet比较达到同样的精确度训练次数大大减少。 与GoogleLeNet V1比较 针对V1做了一些改动 增大学习率去掉DropOut去掉LRN重新打乱训练集减少图像的扩展 做了下面几个模型的比对 基于上面改动增加了BN层的基本模型BN-BaselineBaseline的基础上学习率提升5倍到 0.0075BN-x5学习率提升30倍到0.045BN-x30激活层使用Sigmond5倍学习率的BN-x5-Sigmond 结论是在BN-x5的情况下达到v1版本的精确率训练次数最少。 而BN-30可以达到更高的精度但是训练次数要多一点。 Sigmond根本达不到这个精度BN更适用于ReLU激活层。

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

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

相关文章

与安网站建设广州短视频网站开发

国外主流还是使用apache;国内现在主流是nginx(并发能力强,相对稳定) nginx:高性能、轻量级的web服务软件 特点: 1.稳定性高(没apache稳); 2.系统资源消耗比较低&#xf…

一些设计网站投票链接制作

运行示例项目报错缺少dll,发现运用了这个大老李,通过添加PATH路径也无法解决,看到debug文件夹下面没有其他的依赖项。 通过depneds工具可以看到 OCCTProxy_D3D.dll 缺少依赖项,图中的缺项都是OCCT生成的模块dll所以讲这些dll从..…

商城网站建设价位asp.net门户网站项目怎么做

本文转载自公众号: 美团技术团队.作为人工智能时代最重要的知识表示方式之一,知识图谱能够打破不同场景下的数据隔离,为搜索、推荐、问答、解释与决策等应用提供基础支撑。美团大脑围绕吃喝玩乐等多种场景,构建了生活娱乐领域超大规模的知识图…

站内推广方案公司部门名字大全

2016年五一杯数学建模 C题 二孩政策问题 原题再现 多年来实施的严、紧计划生育政策对控制人口增长起到关键作用。在优生优育政策的指引下,我国人口质量显著提高,但也带来了不利影响,生育率偏低、男女比例失衡、人口老龄化情况严重等问题。2…

郑州网站app建设微信应用平台开发

如果调试是消除软件错误的过程,那么编程一定是添加错误的过程。Edsger Dijkstra。来自 https://www.azquotes.com/quote/561997 一、说明 在这篇文章中,我想谈谈 TensorFlow 中的调试。 在之前的一些帖子(此处、此处和此处)中&…

仿网站教程关键词搜索排行榜

Java 条件语句 - if…else Java 中的条件语句允许程序根据条件的不同执行不同的代码块。 一个 if 语句包含一个布尔表达式和一条或多条语句。 语法 if 语句的语法如下: if(布尔表达式) {//如果布尔表达式为true将执行的语句 }如果布尔表达式的值为 true&#x…

网站集约化建设工作总结郑州男科医院怎么样啊

随着计算机技术的不断发展,企业的办公系统得到了很大提升,但是随之而来的网络安全威胁也不断增加,勒索病毒的攻击事件时有发生。近期,我们收到某地连锁超市的求助,企业的计算机服务器遭到了360后缀勒索病毒攻击&#x…

怎么做投票网站什么网站可以免费做视频的软件

在 C 中&#xff0c;可以使用 std::map 统计值出现次数为 2 的键。具体步骤如下&#xff1a; 遍历 std::map&#xff0c;找出所有值为 2 的键。使用条件语句检查每个值&#xff0c;符合条件时记录对应键。 #include <iostream> #include <map> #include <vect…

网站开发公对公转账合同模板自己在网站开发的客户怎么联系

2019独角兽企业重金招聘Python工程师标准>>> lrzsz linux与windows互传 # 前提是使用 xshell 或者 securecrt 这两个远程软件&#xff0c;putty不支持 yum install -y lrzsz //安装文件包 linux向windows 传文件使用 &#xff1a; sz 文件名 回…

在手机制作网站90设计官方网站

目录 前言 项目规划&#xff08;第二周&#xff09; 具体实现 用户大类 AccountOperations接口 UserOperations接口 Operations类&#xff08;实现类&#xff09; Account类 User类 Area类 &#xff08;父类&#xff09; 货币大类 Money类&#xff08;抽象类&…

泰州网站建设方案优化安徽建设厅网站考勤

数据库是什么 数据库是一种用来存储数据的仓库&#xff0c;是一种高效存储和处理数据的介质&#xff08;载体&#xff09;。我们通常口中所说的数据库指的是数据库管理系统&#xff08;DBMS&#xff09;&#xff0c;是一种用于方便管理数据库的软件。 数据库的分类 根据存储…

网站设计知名企业剑三做月饼活动网站

是cocoaChina网站上下载的知识点整理&#xff0c;共669个知识点&#xff0c;我花了点时间给文件全部做了重命名&#xff0c;这样用来查阅或者选择性的学习会有些帮助。 文件放在115网盘&#xff0c;下载地址&#xff1a;http://115.com/file/bhkqjlx2#cocoaChina整理知识点.rar…

网站点击量在哪里看网站推广方法有哪些

目录 stack类介绍 stack类定义 stack类常见构造函数 stack数据操作 empty()函数 size()函数 top()函数 push()函数 pop()函数 swap()函数 stack类介绍 stack是一种容器适配器&#xff0c;专门用在具有后进先出操作的上下文环境中&#xff0c;其删除只能从容器的一端…

做特价网站百度云网站建设视频教程

10.1 文件I/O操作概述在Linux系统中&#xff0c;文件I/O操作可以分为两类&#xff0c;一类是基于文件描述符的I/O操作&#xff0c;另一类是基于数据流的I/O操作。10.1.1 文件描述符简介在文件操作一章中&#xff0c;也经常提到文件描述符这个概念。所谓文件描述符&#xff0c;就…

济南网站建设制作设计北京引流推广公司

为什么80%的码农都做不了架构师&#xff1f;>>> 1、图形简介 与html5不同&#xff0c;Raphael提供了以下基本图形&#xff1a;矩形、圆形、椭圆形&#xff08;html5只有矩形&#xff09;。 Paper.rect(x,y,width,height,r)&#xff1a;绘制矩形&#xff1b; 参…

海宁市建设局官方网站6APP编辑WordPress

前言 在说到对图片资源进行优化时&#xff0c;那就不得不提到图片预加载和图片懒加载&#xff0c;可能很多朋友都了解这两者&#xff0c;但是一直没有很清晰的概念&#xff0c;以及什么时候用&#xff0c;用在什么场景下&#xff0c;今天就来详细的了解一下吧&#xff01; 图…

网站建网站建设做水利网站需要多少钱

一、前言 K8S经过多年的发展&#xff0c;构建了云原生的基石&#xff0c;成为了云原生时代的统治者。我将用三个博客系列全面&#xff0c;循序渐进的介绍K8S相关知识。 初级入门系列&#xff0c;主要针对K8S初学者&#xff0c;以及希望对K8S有所了解的研发人员&#xff0c;重点…

怎么做汽车网站php和什么语言做网站

最近富文本编辑器jodit终于更新发布到了4.0版本&#xff0c;加入了css变量、有更好的typescript支持&#xff0c;截止发文时的版本是&#xff1a;4.0.5&#xff0c;看到有了新版本于是便想着将本地项目中的jodit版本也进行升级&#xff0c;琢磨着再丰富和添加一些功能&#xff…

建设六马路小学 网站网站集约化建设的好处

1.概要 初步搭建了Layout界面的布局&#xff0c;其中包括左侧导航栏及其路由功能&#xff0c;和右侧头、体、脚部分的大致排版。最后在头部分中的昵称与头像替换成动态数据。 2.Layout主页布局 文件地址&#xff1a;src\views\Layout.vue 2.1 script行为模块 从elementUI中…

建站排行榜有哪些站内推广的方式

文章目录基本介绍入门步骤执行原理Servlet 生命周期线程安全问题解决方式Servlet 注解配置Servlet 继承与实现体系基本介绍 servlet&#xff0c;server applet&#xff0c;服务器端小程序 servlet 是一个接口&#xff0c;定义了 Java 类被浏览器访问&#xff08;tomcat 识别&…