class brainpy.dnn.Softmax2d(name=None, mode=None)[source]#

Applies SoftMax over features to each spatial location.

When given an image of Channels x Height x Width, it will apply Softmax to each location \((Channels, h_i, w_j)\)

  • Input: \((N, C, H, W)\) or \((C, H, W)\).

  • Output: \((N, C, H, W)\) or \((C, H, W)\) (same shape as input)


a Tensor of the same dimension and shape as the input with values in the range [0, 1]


>>> import brainpy as bp
>>> import brainpy.math as bm
>>> m = bp.dnn.Softmax2d()
>>> # you softmax over the 2nd dimension
>>> input = bm.random.randn(2, 3, 12, 13)
>>> output = m(input)

The function to specify the updating rule.

Return type:

TypeVar(ArrayType, Array, Variable, TrainVar, Array, ndarray)