Softmax2D

class paddle.nn. Softmax2D ( name=None ) [源代码]

Softmax2D 是 Softmax 的变体,其针对 3D 或者 4D 的 Tensor 在空间维度上计算 Softmax。具体来说,输出的 Tensor 的每个空间维度 \((channls, h_i, w_j)\) 求和为 1。

Softmax 的详细介绍请参考 Softmax

参数

  • name (str,可选) - 具体用法请参见 Name ,一般无需设置,默认值为 None。

形状:

  • input: 任意形状的 Tensor。

  • output: 和 input 具有相同形状的 Tensor。

代码示例

>>> import paddle
>>> paddle.seed(100)

>>> x = paddle.rand([1, 2, 3, 4])
>>> m = paddle.nn.Softmax2D()
>>> out = m(x)
>>> print(out)
Tensor(shape=[1, 2, 3, 4], dtype=float32, place=Place(cpu), stop_gradient=True,
[[[[0.42608523, 0.32081410, 0.39483935, 0.55642301],
   [0.38131708, 0.45118359, 0.44891062, 0.46053308],
   [0.35746980, 0.60766530, 0.38638926, 0.70425135]],
  [[0.57391477, 0.67918587, 0.60516071, 0.44357699],
   [0.61868292, 0.54881644, 0.55108935, 0.53946698],
   [0.64253020, 0.39233473, 0.61361068, 0.29574865]]]])