评价此页

torch.nn.functional.softmax#

torch.nn.functional.softmax(input, dim=None, _stacklevel=3, dtype=None)[source]#

应用 softmax 函数。

Softmax 定义为

Softmax(xi)=exp(xi)jexp(xj)\text{Softmax}(x_{i}) = \frac{\exp(x_i)}{\sum_j \exp(x_j)}

该函数应用于沿 dim 的所有切片,并对其进行重新缩放,使元素处于 [0, 1] 范围内且总和为 1。

更多详细信息,请参阅 Softmax

参数:
  • input (张量) – 输入

  • dim (int) – 将计算 softmax 的维度。

  • dtype (torch.dtype, 可选) – 返回张量所需的预期数据类型。如果指定,则在执行操作之前将输入张量转换为 dtype。这对于防止数据类型溢出很有用。默认值:None。

返回类型:

张量

注意

该函数不能直接与 NLLLoss 一起使用,因为 NLLLoss 要求在 Softmax 之后计算 Log。请改用 log_softmax(它计算速度更快,且具有更好的数值稳定性)。