本文简要介绍python语言中 torch.nn.LayerNorm
的用法。
用法:
class torch.nn.LayerNorm(normalized_shape, eps=1e-05, elementwise_affine=True, device=None, dtype=None)
~LayerNorm.weight-当
elementwise_affine
设置为True
时,形状为 的模块的可学习权重。这些值被初始化为 1。~LayerNorm.bias-当
elementwise_affine
设置为True
时,形状为 的模块的可学习偏差。这些值被初始化为 0。
如论文 Layer Normalization 中所述,对小批量输入应用层规范化
均值和标准差是在最后
D
维度上计算的,其中D
是normalized_shape
的维度。例如,如果normalized_shape
是(3, 5)
(二维形状),则在输入的最后 2 维(即input.mean((-2, -1))
)上计算平均值和标准差。 和 是normalized_shape
的可学习仿射变换参数,如果elementwise_affine
是True
。标准差是通过有偏估计器计算的,相当于torch.var(input, unbiased=False)
。注意
与使用
affine
选项为每个整个通道/平面应用标量比例和偏差的批量归一化和实例归一化不同,层归一化通过elementwise_affine
应用 per-element 比例和偏差。该层使用从训练和评估模式中的输入数据计算的统计数据。
- 形状:
输入:
输出: (与输入的形状相同)
例子:
>>> # NLP Example >>> batch, sentence_length, embedding_dim = 20, 5, 10 >>> embedding = torch.randn(batch, sentence_length, embedding_dim) >>> layer_norm = nn.LayerNorm(embedding_dim) >>> # Activate module >>> layer_norm(embedding) >>> >>> # Image Example >>> N, C, H, W = 20, 5, 10, 10 >>> input = torch.randn(N, C, H, W) >>> # Normalize over the last three dimensions (i.e. the channel and spatial dimensions) >>> # as shown in the image below >>> layer_norm = nn.LayerNorm([C, H, W]) >>> output = layer_norm(input)
参数:
变量:
相关用法
- Python PyTorch LazyModuleMixin用法及代码示例
- Python PyTorch LambdaLR用法及代码示例
- Python PyTorch Laplace用法及代码示例
- Python PyTorch LazyModuleExtensionMixin.apply用法及代码示例
- Python PyTorch LinearLR用法及代码示例
- Python PyTorch LKJCholesky用法及代码示例
- Python PyTorch L1Loss用法及代码示例
- Python PyTorch LPPool2d用法及代码示例
- Python PyTorch LeakyReLU用法及代码示例
- Python PyTorch LogSigmoid用法及代码示例
- Python PyTorch LowRankMixtureCrossNet用法及代码示例
- Python PyTorch LineReader用法及代码示例
- Python PyTorch LogNormal用法及代码示例
- Python PyTorch LocalResponseNorm用法及代码示例
- Python PyTorch LSTM用法及代码示例
- Python PyTorch LowRankMultivariateNormal用法及代码示例
- Python PyTorch Linear用法及代码示例
- Python torchrec.modules.crossnet.LowRankCrossNet用法及代码示例
- Python PyTorch LogSoftmax用法及代码示例
- Python PyTorch LSTMCell用法及代码示例
- Python PyTorch LocalElasticAgent用法及代码示例
- Python PyTorch LPPool1d用法及代码示例
- Python PyTorch LinearReLU用法及代码示例
- Python PyTorch frexp用法及代码示例
- Python PyTorch jvp用法及代码示例
注:本文由纯净天空筛选整理自pytorch.org大神的英文原创作品 torch.nn.LayerNorm。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。