【Python-Keras】keras.layers.BatchNormalization解析与使用
Python 解析 Keras 使用 Layers
2023-09-14 09:12:40 时间
1 什么是BatchNormalization?
(1)Batch Normalization 于2015年由 Google 提出数据归一化方法,往往用在深度神经网络中激活层之前。
(2)其规范化针对单个神经元进行,利用网络训练时一个 mini-batch 的数据来计算该神经元的均值和方差,因而称为 Batch Normalization。
(3)BatchNormalization层在每个batch上将前一层的激活值重新规范化,即使得其输出数据的均值接近0,其标准差接近1
(4)是Normalization 方法中的一种,其他方法有
Layer Normalization —— 横向规范化
Weight Normalization —— 参数规范化
2 作用
(1)将输入神经网络的数据先对其做平移和伸缩变换,将数据分布规范化成在固定区间范围的标准分布
(2)可以加快模型训练时的收敛速度,使得模型训练过程更加稳定,避免梯度爆炸或者梯度消失
(3)并且起到一定的正则化作用,几乎代替了Dropout。控制过拟合,可以少用或不用Dropout和正则
(4)降低网络对初始化权重不敏感
(5)允许使用较大的学习率
3 使用
在调用keras.layers.BatchNormalization 时,我们几乎不需要设定任何参数,只需要输入数据就好。
from tensorflow.python.keras.layers import *
input_bits = Input(shape=(256 ,))
temp = BatchNormalization()(input_bits)
相关文章
- pycharm整理格式快捷键_python代码对齐快捷键
- Python多线程通信_python socket多线程
- python 生成数组_Python创建数组「建议收藏」
- python编程是什么-Python编程
- 极具参考价值的Python面试题!从创业公司到一线大厂的所有面经汇总
- python解压bz2文件命令,在Python中解压缩.bz2文件
- python pyc文件解析_pyc文件
- python之类与面向对象
- python socket recvfrom_Python:socket.recvfrom()不返回任何地址
- 怎么用python打开csv文件_Python文本处理之csv-csv文件怎么打开[通俗易懂]
- 按照图片尺寸自动分类 手机分辨率 电脑分辨率 python脚本
- python chr()和ord()_Python函数ord
- 【说站】python字符串如何简单运算
- python使用smtp发送字符串邮件
- lambda表达式python_Python中的Lambda表达式「建议收藏」
- Python 冒泡排序_python
- python制作自动交易程序_Python如何实现自动化交易
- python deepcopy函数_Python deepcopy
- pycharm写脚本_pycharm运行python脚本
- python多进程编程-进程池的使用(二)
- python-Python与MongoDB数据库-使用Python执行MongoDB查询(一)
- python-Python与PostgreSQL数据库-使用Python执行PostgreSQL查询(一)
- python入门(四):标准输出和文件读写详解编程语言
- Python MRO方法解析顺序详解
- 运维学Python之爬虫系列教程
- Python编程连接MySQL:从零开始(python与mysql)
- Linux下Python编程:从入门到精通(linux下python编程)
- python将html转成PDF的实现代码(包含中文)
- python抓取某汽车网数据解析html存入excel示例
- python解析XMLpython模块xml.dom解析xml实例代码
- 跟老齐学Python之有点简约的元组