Pytorch BatchNormal

文章目录

  • Pytorch BatchNormal
    • BatchNormal使用原理
    • 代码实现
      • Image Normalization
      • Batch Normalization
    • eg:
      • Batch Norm
      • Layer Norm
      • Insatnce Norm
    • 处理过程
    • 代码实现
      • 正式写法
      • BatchNorm2d
        • 全局打印
    • 处理结果

BatchNormal使用原理


sigmoid函数一般会在(-4-4)的范围内,有较大变动,当超出了以后就不能很好显示,这是使用BatchNorm,将数据映射以0为均值,到(-1,1)范围内,以便于计算


当采用梯度下降时,如果由w2方向下降,很容易进行变换,但是当w1方向时,很难变换,此时可以使用batchnormal达到右图效果,这样任何方向内,梯度下降的效果都相同

代码实现

Image Normalization


eg:

将R,G,B三个求出均值std,然后使用noralization,使数据分布更加均匀,以便于找到最优解

Batch Normalization

四种Batch Normalization

eg:

Batch Norm


数据的结构:[N,C,HW]

N:图片数量 C:RGB,三种色彩 HW:像素点

对N方向(eg:6张图片),采集6张图片的784个图片像素点,求一个均值,生成维度为3的一个batch

Layer Norm

统计当前图片的数据的C和HW整体均值

Insatnce Norm

统计当前图片,当前色彩RGB下的一个像素点HW均值

处理过程



方差

统计数据

处理结果会更加接近N(0,1)的正态分布


这两个参数需要学习得到

代码实现


数据集为[100,16,784] 100个图片,16个经历过池化层的数据,784的像素

统计16个batch的batchnormal

正式写法

BatchNorm2d

全局打印

处理结果

更加便于训练,拟合训练曲线效果更好,拟合速度更快

更加容易搜索到最优解,梯度信息更加明显,参数调整更加方便

Pytorch BatchNorm相关推荐

  1. batchnorm pytorch,BatchNorm动量惯例PyTorch

    Is the batchnorm momentum convention (default=0.1) correct as in other libraries e.g. Tensorflow it ...

  2. pytorch BatchNorm参数详解,计算过程

    目录 说明 BatchNorm1d参数 num_features eps momentum affine track_running_stats BatchNorm1d训练时前向传播 BatchNor ...

  3. Pytorch的BatchNorm层使用中容易出现的问题

    前言 本文主要介绍在pytorch中的Batch Normalization的使用以及在其中容易出现的各种小问题,本来此文应该归属于[1]中的,但是考虑到此文的篇幅可能会比较大,因此独立成篇,希望能够 ...

  4. pytorch学习笔记(二十七):Batch-Norm

    文章目录 前言 1. 批量归一化层 1.1 对全连接层做批量归一化 1.2 对卷积层做批量归一化 1.3 预测时的批量归一化 2. 从零开始实现 2.1 使用批量归一化层的LeNet 3. 简洁实现 ...

  5. pytorch之BatchNorm

    为了解决 Internal Covariate Shift问题引入,该问题具体表现为: 中间层输入分布总是变化,增加了模型拟合的难度. 中间层输入分布会使输出逐渐靠近激活函数梯度较小的地方,导致梯度消 ...

  6. 详解Pytorch中的requires_grad、叶子节点与非叶子节点、with torch.no_grad()、model.eval()、model.train()、BatchNorm层

    requires_grad requires_grad意为是否需要计算梯度 使用backward()函数反向传播计算梯度时,并不是计算所有tensor的梯度,只有满足下面条件的tensor的梯度才会被 ...

  7. PyTorch 51.BatchNorm和Dropout层的不协调现象

    点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者 | 科技猛兽@知乎(已授权) 来源 | https://zhu ...

  8. batchnorm pytorch_GitHub趋势榜第一:TensorFlow+PyTorch深度学习资源大汇总

    [新智元导读]该项目是Jupyter Notebook中TensorFlow和PyTorch的各种深度学习架构,模型和技巧的集合.内容非常丰富,适用于Python 3.7,适合当做工具书. 本文搜集整 ...

  9. pytorch中的BatchNorm和LayerNorm

    参考文章 https://blog.csdn.net/weixin_39228381/article/details/107896863 https://blog.csdn.net/weixin_39 ...

  10. PyTorch学习之归一化层(BatchNorm、LayerNorm、InstanceNorm、GroupNorm)

    BN,LN,IN,GN从学术化上解释差异: BatchNorm:batch方向做归一化,算NHW的均值,对小batchsize效果不好:BN主要缺点是对batchsize的大小比较敏感,由于每次计算均 ...

最新文章

  1. proxmox 宕机转义_Proxmox+Ceph的HCI环境搭建
  2. 清华姚班校友陈丹琦斩获2022斯隆奖!「诺奖风向标」27位华人学者入选
  3. 利用python读取txt文档的方法_利用Python读取txt文档的方法讲解
  4. JS 禁用键盘按钮
  5. 乙肝相关药物服用信息汇总
  6. 字谜 java_java - 2字的字谜 - 堆栈内存溢出
  7. [流体输配管网]古罗马渡槽从水源到城市的落差估计
  8. OSI/RM体系结构
  9. 5.TCP/IP 详解卷1 ---RARP:逆地址解析协议
  10. java跨平台_Java如何实现跨平台
  11. 四种大数据分析方法 ,大数据学习入门必须掌握!
  12. java.lang.IllegalStateException: onMeasure() did not set the measured dimension by calling setMeasur
  13. 安装watchdog监控系统
  14. 谷歌统计Google Analytics使用入门
  15. 面试官没想到我对redis数据结构这么了解,直接给offer
  16. AI技术是什么?AI对生活的影响有哪些?
  17. [ERROR Port-10250]: Port 10250 is in use
  18. fortran matlab eng,[转载]关于MATLAB转FORTRAN的几点注意
  19. python 词库 匹配_python从一段文本中找出存在于词库的词语
  20. java 教学大纲_Java程序设计课程教学大纲

热门文章

  1. 使用 C++11 编写类似 QT 的信号槽——上篇
  2. 2017年1月14 15开车总结 英西
  3. Elasticsearch 单模式下API的增删改查操作
  4. Xcode中AutoLayOut的简单使用
  5. OBJECT和EMBED标签(转载)
  6. UML类图关系大全【转】
  7. PHP一个文件内多个php代码段的写法
  8. nest.js 使用express需要提供多个静态目录的操作
  9. 每天一道剑指offer-栈的压入,弹出序列
  10. windows java环境搭建_Java环境搭建(Windows环境)-Fun言