Softmax2D¶
Softmax2D 是 Softmax 的变体,其针对 3D 或者 4D 的 Tensor
在空间维度上计算 Softmax。具体来说,输出的 Tensor
的每个空间维度 \((channls, h_i, w_j)\) 求和为 1。
Softmax 的详细介绍请参考 Softmax
形状:¶
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]]]])