tf.keras.activations.softmax

TensorFlow 1 version View source on GitHub

Softmax converts a real vector to a vector of categorical probabilities.

Aliases:

tf.keras.activations.softmax(
    x,
    axis=-1
)

The the elements of the output vector are in range (0, 1) and sum to 1.

Each vector is handled independently. The axis argument sets which axis of the input the finction is applied along.

Softmax is often used as the activation for the last layer of a classification network because the result could be interpreted as a probability distribution.

The softmax of each vector x is calculated by exp(x)/tf.reduce_sum(exp(x)). The input values in are the log-odds of the resulting probability.

Arguments:

  • x: Input tensor.
  • axis: Integer, axis along which the softmax normalization is applied.

Returns:

Tensor, output of softmax transformation (all values are non-negative and sum to 1).

Raises:

  • ValueError: In case dim(x) == 1.