pytorch / 2 / generated / torch.nn.localresponsenorm.html

LocalResponseNorm

class torch.nn.LocalResponseNorm(size, alpha=0.0001, beta=0.75, k=1.0) [source]

Applies local response normalization over an input signal composed of several input planes, where channels occupy the second dimension. Applies normalization across channels.

b c = a c ( k + α n c = max ( 0 , c n / 2 ) min ( N 1 , c + n / 2 ) a c 2 ) β b_{c} = a_{c}\left(k + \frac{\alpha}{n} \sum_{c'=\max(0, c-n/2)}^{\min(N-1,c+n/2)}a_{c'}^2\right)^{-\beta}
Parameters
  • size (int) – amount of neighbouring channels used for normalization
  • alpha (float) – multiplicative factor. Default: 0.0001
  • beta (float) – exponent. Default: 0.75
  • k (float) – additive factor. Default: 1
Shape:
  • Input: ( N , C , ) (N, C, *)
  • Output: ( N , C , ) (N, C, *) (same shape as input)

Examples:

>>> lrn = nn.LocalResponseNorm(2)
>>> signal_2d = torch.randn(32, 5, 24, 24)
>>> signal_4d = torch.randn(16, 5, 7, 7, 7, 7)
>>> output_2d = lrn(signal_2d)
>>> output_4d = lrn(signal_4d)

© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/generated/torch.nn.LocalResponseNorm.html