返回顶部
首页 > 资讯 > 精选 >批标准化层tf.keras.layers.Batchnormalization的使用位置是什么
  • 402
分享到

批标准化层tf.keras.layers.Batchnormalization的使用位置是什么

2023-07-05 05:07:35 402人浏览 独家记忆
摘要

这篇文章主要介绍“批标准化层tf.keras.layers.BatchnORMalization的使用位置是什么”,在日常操作中,相信很多人在批标准化层tf.keras.layers.Batchnormalization的使用位置是什么问题

这篇文章主要介绍“批标准化层tf.keras.layers.BatchnORMalization的使用位置是什么”,在日常操作中,相信很多人在批标准化层tf.keras.layers.Batchnormalization的使用位置是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”批标准化层tf.keras.layers.Batchnormalization的使用位置是什么”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

    批标准化层 tf.keras.layers.Batchnormalization()

    tf.keras.layers.Batchnormalization()

    重要参数:

    • training:布尔值,指示图层应在训练模式还是在推理模式下运行。

    • training=True:该图层将使用当前批输入的均值和方差对其输入进行标准化。

    • training=False:该层将使用在训练期间学习的移动统计数据的均值和方差来标准化其输入。

    BatchNormalization 广泛用于 Keras 内置的许多高级卷积神经网络架构,比如 ResNet50、Inception V3 和 Xception。

    BatchNormalization 层通常在卷积层或密集连接层之后使用。

    批标准化的实现过程

    • 求每一个训练批次数据的均值

    • 求每一个训练批次数据的方差

    • 数据进行标准化

    • 训练参数γ,β

    • 输出y通过γ与β的线性变换得到原来的数值

    在训练的正向传播中,不会改变当前输出,只记录下γ与β。在反向传播的时候,根据求得的γ与β通过链式求导方式,求出学习速率以至改变权值。

    对于预测阶段时所使用的均值和方差,其实也是来源于训练集。比如我们在模型训练时我们就记录下每个batch下的均值和方差,待训练完毕后,我们求整个训练样本的均值和方差期望值,作为我们进行预测时进行BN的的均值和方差。

    批标准化的使用位置

    原始论文讲在CNN中一般应作用与非线性激活函数之前,但是,实际上放在激活函数之后效果可能会更好。

    # 放在非线性激活函数之前model.add(tf.keras.layers.Conv2D(64, (3, 3)))model.add(tf.keras.layers.BatchNormalization())model.add(tf.keras.layers.Activation('relu'))# 放在激活函数之后model.add(tf.keras.layers.Conv2D(64, (3, 3), activation='relu'))model.add(tf.keras.layers.BatchNormalization())

    tf.keras.layers.BatchNormalization使用细节

    关于keras中的BatchNormalization使用,官方文档说的足够详细。本文的目的旨在说明在BatchNormalization的使用过程中容易被忽略的细节。

    在BatchNormalization的Arguments参数中有trainable属性;以及在Call arguments参数中有training。两个都是bool类型。第一次看到有两个参数的时候,我有点懵,为什么需要两个?

    后来在查阅资料后发现了两者的不同作用。

    1,trainable是Argument参数,类似于c++中构造函数的参数一样,是构建一个BatchNormalization层时就需要传入的,至于它的作用在下面会讲到。

    2,training参数时Call argument(调用参数),是运行过程中需要传入的,用来控制模型在那个模式(train还是interfere)下运行。关于这个参数,如果使用模型调用fit()的话,是可以不给的(官方推荐是不给),因为在fit()的时候,模型会自己根据相应的阶段(是train阶段还是inference阶段)决定training值,这是由learning——phase机制实现的。

    重点

    关于trainable=False:如果设置trainable=False,那么这一层的BatchNormalization层就会被冻结(freeze),它的trainable weights(可训练参数)(就是gamma和beta)就不会被更新。

    注意:freeze mode和inference mode是两个概念。

    但是,在BatchNormalization层中,如果把某一层BatchNormalization层设置为trainable=False,那么这一层BatchNormalization层将一inference mode运行,也就是说(meaning that it will use the moving mean and the moving variance to normalize the current batch, rather than using the mean and variance of the current batch).

    到此,关于“批标准化层tf.keras.layers.Batchnormalization的使用位置是什么”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

    --结束END--

    本文标题: 批标准化层tf.keras.layers.Batchnormalization的使用位置是什么

    本文链接: https://www.lsjlt.com/news/349619.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    猜你喜欢
    • 批标准化层tf.keras.layers.Batchnormalization的使用位置是什么
      这篇文章主要介绍“批标准化层tf.keras.layers.Batchnormalization的使用位置是什么”,在日常操作中,相信很多人在批标准化层tf.keras.layers.Batchnormalization的使用位置是什么问题...
      99+
      2023-07-05
    • html的使用标准是什么
      这篇文章主要介绍“html的使用标准是什么”,在日常操作中,相信很多人在html的使用标准是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”html的使用标准是什么”的疑惑...
      99+
      2024-04-02
    • Div+CSS标准化的优点是什么
      这篇文章主要讲解了“Div+CSS标准化的优点是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Div+CSS标准化的优点是什么”吧!Div+CSS布局网...
      99+
      2024-04-02
    • mysql cnf标准配置的方法是什么
      要配置MySQL的my.cnf文件,可以按照以下步骤进行:1. 找到my.cnf文件:在Unix-like系统中,默认位置是/etc...
      99+
      2023-09-27
      mysql
    • python内置标准库的功能是什么
      Python内置标准库提供了许多常用的功能,包括但不限于:1. 数学计算:math模块提供了数学计算相关的功能,如三角函数、指数运算...
      99+
      2023-08-08
      python
    • 什么是粘性定位的标准?解析常见粘性定位问题
      粘性定位,指的是将元素固定在页面中的特定位置,即元素会随着页面的滚动而保持在固定位置。粘性定位可以提供更好的用户体验,并且在网页设计中经常被使用。本文将解析粘性定位的标准以及常见的问题。 一、粘性定位的标准 需要设置定位属性为...
      99+
      2024-01-29
      网页布局 粘性定位
    • Fiori标准应用的增强方式是什么
      这篇文章主要介绍“Fiori标准应用的增强方式是什么”,在日常操作中,相信很多人在Fiori标准应用的增强方式是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Fiori标准应用的增强方式是什么”的疑惑有所...
      99+
      2023-06-04
    • C语言中定义和使用的特殊标准是什么
      本文小编为大家详细介绍“C语言中定义和使用的特殊标准是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“C语言中定义和使用的特殊标准是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、ANSI C特殊标准定...
      99+
      2023-06-16
    • idc服务器租用选择的标准是什么
      idc服务器租用选择的标准:1、有IDC证书,享有国家法律保护,能保障用户自身的利益;2、有计算机房,机房的硬件设施、防火防盗管理、...
      99+
      2023-02-16
      idc服务器租用 服务器
    • 公司服务器租用的收费标准是什么
      不同的公司可能有不同的收费标准,您可以咨询具体的服务器租用公司或者在其官网上查找相关信息。公司服务器租用要注意:1. 服务器配置:选...
      99+
      2023-06-12
      公司服务器租用 服务器
    • 广州服务器租用的收费标准是什么
      广州服务器租用的收费标准因不同服务商和不同配置而异,一般来说,收费标准包括以下几个方面:1. 机房租用费用:根据机房的位置、面积、设...
      99+
      2023-06-13
      广州服务器租用 广州服务器 服务器
    • 服务器空间租用的收费标准是什么
      服务器空间租用的收费标准因服务商和服务内容而异。一般来说,服务器空间租用的收费标准包括以下方面:1. 服务器硬件配置:服务器硬件配置...
      99+
      2023-06-07
      服务器空间租用 服务器 空间
    • 广东服务器租用的收费标准是什么
      我无法提供最新的信息,因为收费标准可能随时变化。建议您联系当地的互联网服务提供商或服务器租用公司,了解最新的收费标准和服务内容。广东...
      99+
      2023-06-03
      广东服务器租用 广东服务器 服务器
    • 高防服务器租用的安全标准是什么
      高防服务器租用的安全标准通常包括以下几个方面: DDoS防护:高防服务器通常配备有强大的DDoS防护系统,能够有效抵御各种类型的...
      99+
      2024-04-26
      高防服务器
    • Python的五个标准数据类型是什么及怎么用
      这篇文章主要介绍了Python的五个标准数据类型是什么及怎么用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python的五个标准数据类型是什么及怎么用文章都会有所收获,下面我们一起来看看吧。Python的五个...
      99+
      2023-06-29
    • 云服务器租赁费用标准是什么样的啊
      计算资源:云服务器的计算资源包括CPU、内存、存储等,根据不同的云服务商,价格也会有所不同。例如,阿里云的云服务器提供的是ECS、弹性计算等高级服务,每年的价格通常在5000元以上;腾讯云的云服务器提供的是SRM、CDN等基础服务,每年的...
      99+
      2023-10-28
      费用 服务器 标准
    • python中位置参数的作用是什么
      今天就跟大家聊聊有关python中位置参数的作用是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Python主要用来做什么Python主要应用于:1、Web开发;2、数据科学研究...
      99+
      2023-06-14
    • 衡量优质香港服务器租用的标准是什么
      衡量优质香港服务器租用的标准是:1、看香港服务器所属的IDC机房设备质量是否较好;2、看香港服务器的带宽是独享带宽还是共享带宽;3、看香港服务器的售后技术支持服务是否较好。具体内容如下:机房:因为IDC机房的级别不同,所采用的网络设备也不一...
      99+
      2024-04-02
    • 个人服务器空间租用的收费标准是什么
      个人服务器空间租用的收费标准因不同的服务提供商而异,一般会根据以下因素进行定价:1. 空间大小:根据所需的存储空间大小计算价格,通常...
      99+
      2023-05-31
      服务器空间租用 服务器 空间
    • web标准中IE无法设置滚动条颜色的原因是什么
      小编给大家分享一下web标准中IE无法设置滚动条颜色的原因是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 解决办法是将b...
      99+
      2024-04-02
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作