Table of Contents
Shortcuts

# Softmax

class torch.nn.Softmax(dim=None)

  Applies the Softmax function to an n-dimensional input Tensor rescaling them so that the elements of the n-dimensional output Tensor lie in the range [0,1] and sum to 1.

  Softmax is defined as:

  Softmax(x i)=exp⁡(x i)∑j exp⁡(x j)\text{Softmax}(x_{i}) = \frac{\exp(x_i)}{\sum_j \exp(x_j)} Softmax(x i​)=∑j​exp(x j​)exp(x i​)​

  When the input Tensor is a sparse tensor then the unspecified values are treated as `-inf`.

  Shape:

    - Input: (∗)(*)(∗) where * means, any number of additional dimensions

    - Output: (∗)(*)(∗), same shape as the input

  Returns:

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

  Parameters:

    dim (int) – A dimension along which Softmax will be computed (so every slice along dim will sum to 1).

  Return type:

    None

  Note

  This module doesn’t work directly with NLLLoss, which expects the Log to be computed between the Softmax and itself. Use LogSoftmax instead (it’s faster and has better numerical properties).

  Examples:

      >>> m = nn.Softmax(dim=1)
      >>> input = torch.randn(2, 3)
      >>> output = m(input)

## Docs

Access comprehensive developer documentation for PyTorch

View Docs

## Tutorials

Get in-depth tutorials for beginners and advanced developers

View Tutorials

## Resources

Find development resources and get your questions answered

View Resources

To analyze traffic and optimize your experience, we serve cookies on this site. By clicking or navigating, you agree to allow our usage of cookies. As the current maintainers of this site, Facebook’s Cookies Policy applies. Learn more, including about available controls: Cookies Policy.