softmax

softmax(data=None, length=None, axis=_Null, temperature=_Null, dtype=_Null, use_length=_Null, out=None, name=None, **kwargs)

Applies the softmax function.

The resulting array contains elements in the range (0,1) and the elements along the given axis sum up to 1.

(14)\[softmax(\mathbf{z/t})_j = \frac{e^{z_j/t}}{\sum_{k=1}^K e^{z_k/t}}\]

for \(j = 1, ..., K\)

t is the temperature parameter in softmax function. By default, t equals 1.0

Example:

x = [[ 1.  1.  1.]
     [ 1.  1.  1.]]

softmax(x,axis=0) = [[ 0.5  0.5  0.5]
                     [ 0.5  0.5  0.5]]

softmax(x,axis=1) = [[ 0.33333334,  0.33333334,  0.33333334],
                     [ 0.33333334,  0.33333334,  0.33333334]]

Defined in src/operator/nn/softmax.cc:L103

Parameters:
data : ndarray

The input array.

length : ndarray

The length array.

axis : int, optional, default=’-1’

The axis along which to compute softmax.

temperature : double or None, optional, default=None

Temperature parameter in softmax

dtype : {None, ‘float16’, ‘float32’, ‘float64’},optional, default=’None’

DType of the output in case this can’t be inferred. Defaults to the same as input’s dtype if not defined (dtype=None).

use_length : boolean or None, optional, default=0

Whether to use the length input as a mask over the data input.

out : ndarray, optional

The output ndarray to hold the result.

Returns:
out : ndarray or list of ndarrays

The output of this function.