Softmax#
- class torch.nn.Softmax(dim=None)[source]#
对 n 维输入张量应用 Softmax 函数。
重新缩放这些值,使得 n 维输出张量的元素位于 [0,1] 范围内,并且它们的和为 1。
Softmax 定义为
当输入张量是稀疏张量时,未指定的值被视为
-inf
。- 形状
输入: ,其中 * 表示任何数量的附加维度
输出: ,与输入形状相同
- 返回
一个维度和形状与输入相同的张量,其值在 [0, 1] 范围内
- 参数
dim (int) – 计算 Softmax 的维度(因此沿 dim 的每个切片将求和为 1)。
- 返回类型
无
注意
此模块不能直接与 NLLLoss 一起使用,NLLLoss 需要在 Softmax 和它自身之间计算 Log。请改用 LogSoftmax(它更快,并且具有更好的数值特性)。
示例
>>> m = nn.Softmax(dim=1) >>> input = torch.randn(2, 3) >>> output = m(input)