AI学习记录 - 怎么理解 torch 的 torch.nn.BatchNorm2d

画图不易,有用就点个赞

这里创建了一个随机张量,形状为 (4, 3, 4, 4),分别对应

形状为 (batch_size, num_channels, height, width)

batch_size:批次

num_channels: 通道(什么是通道看上一章节)

python 复制代码
input_tensor = torch.randn(4, 3, 4, 4)

创建了个下面这样子的东西

计算归一化是需要参考值的,因为需要知道最大值最小值,已经参与计算的数量,参考值来自于哪里呢,如下

合并起来,可以看到 num_channels = 3,所以分别计算3次

计算均值和方差公式如下:

看不懂是不是,我也看不懂,举个简单的例子

假设一批数字为 [3, 7, 2, 9, 4]

均值

方差

然后进行归一化

计算完之后形状不会改变,只是值变了而已,上面新的数字组合起来均值接近0,方差接近1。其实认识这个计算过程意义不是很大,你就当在实际模型运算的时候,肯定会产生一些很大的值很小的值,假如生成的数据区间在[ 50,120 ],我们需要将这些值传入到激活函数里面,把 50 到120 传sigmoid激活函数里面,基本上都是0.9999...,数据之间根本没差异。

sigmoid函数,不进行归一化

sigmoid函数,归一化,将数字移动到激活函数有明显变化的区域,这就有差异了,充分发挥了激活函数的作用

相关推荐
学海无涯,行者无疆1 分钟前
Tauri框架实战——鼠标左键单击托盘图标不显示菜单
人工智能·ai编程·tauri·trae·氛围编程·托盘功能·托盘点击
2501_944934732 分钟前
高职学历转行电商运营的数据分析学习路径
学习·数据挖掘·数据分析
liliangcsdn2 分钟前
LLM训练中batchsize与过拟合和泛化的关系
人工智能·算法·机器学习
ccLianLian2 分钟前
Segment Anything Model
人工智能·深度学习·计算机视觉
承渊政道3 分钟前
C++学习之旅【C++String类介绍】
c语言·c++·vscode·学习
week_泽4 分钟前
第10课:从零构建生产级AI Agent服务技术方案 - 学习笔记_10
人工智能·笔记·学习·ai agent
lynnlovemin4 分钟前
AI时代信息安全:从挑战突围到智能防御体系构建
人工智能·信息安全
西柚小萌新4 分钟前
【计算机视觉CV:标注工具】--labelimg+labelme
人工智能·计算机视觉
躺平的赶海人4 分钟前
PyTorch 安装指南:快速开启深度学习之旅
人工智能·pytorch·深度学习
IT_陈寒6 分钟前
Vue3性能优化实战:5个被低估的API让我减少了40%的代码量
前端·人工智能·后端