当前位置: 首页 > article >正文

PyTorch Instance Normalization介绍

Instance Normalization(实例归一化) 是一种标准化技术,与 Batch Normalization 类似,但它对每个样本独立地对每个通道进行归一化,而不依赖于小批量数据的统计信息。这使得它非常适合小批量训练任务以及图像生成任务(如风格迁移)。


Instance Normalization 的原理

对每个样本 xx 的每个通道 cc 独立进行标准化。
对于输入数据 (以二维输入为例):

1. 计算每个通道的均值和方差

    • n:样本索引。
    • c:通道索引。
    • H,W:输入的高度和宽度。

2. 归一化

    • ϵ 是一个小值,用于防止除零。

3. 缩放和平移

  • γc​ 和 βc 是可学习参数,用于恢复表达能力。

Instance Normalization 的特点

  1. 独立于批量大小:每个样本独立进行归一化,解决了小批量训练中均值和方差不稳定的问题。
  2. 适用于风格迁移任务:在风格迁移中,Instance Normalization 能更好地捕捉图像的风格特征。
  3. 不适合特征间强相关任务:Instance Normalization破坏了样本之间的特征相关性,因此不适用于依赖特征间关系的任务(如分类)。

PyTorch 中的 InstanceNorm 类

PyTorch 提供了以下三种适用于不同输入维度的 Instance Normalization 类:

  • torch.nn.InstanceNorm1d:适用于一维数据(如序列或嵌入向量)。
  • torch.nn.InstanceNorm2d:适用于二维数据(如图像)。
  • torch.nn.InstanceNorm3d:适用于三维数据(如视频或体数据)。

1. torch.nn.InstanceNorm1d
参数:
  • num_features:输入的通道数。
  • eps

http://www.kler.cn/a/465390.html

相关文章:

  • RabbitMq的Java项目实践
  • 本地测试文件解析
  • 嵌入式学习(21)-正点原子脱机下载器Mini-Pro的使用
  • 微信小程序获取后端数据
  • MySQL 入门大全:运算符
  • Redis的生态系统和社区支持
  • 第81期 | GPTSecurity周报
  • 【前端,TypeScript】TypeScript速成(六):函数
  • 自动化办公 | 根据成绩进行自动评级
  • 昆仑万维大数据面试题及参考答案
  • 基于基本滤波器的图像滤波理论与实验分析-附Matlab源程序
  • Lambda 表达式学习
  • springboot3+vue项目实践-黑马
  • 力扣-数据结构-7【算法学习day.78】
  • 周末总结(2024/12/28)
  • 解決當前IP地址僅適用於本地網路
  • 在 Blazor 和 ASP.NET Core 中使用依赖注入和Scoped 服务实现数据共享方法详解
  • Elasticsearch检索之三:官方推荐方案search_after检索实现(golang)
  • 【SpringBoot教程】IDEA快速搭建正确的SpringBoot版本和Java版本的项目
  • PCA降维算法详细推导
  • UE5材质节点Camera Vector/Reflection Vector
  • 2024-12-29-sklearn学习(26)模型选择与评估-交叉验证:评估估算器的表现 今夜偏知春气暖,虫声新透绿窗纱。
  • 【MySQL】通过 Binlog 恢复MySQL数据
  • 解决Docker国内网络问题
  • Yeelight易来与Control4达成战略合作,开启智能家居全球战略新篇
  • Servlet中配置和使用过滤器