chainer.functions.softmax_cross_entropy¶
-
chainer.functions.softmax_cross_entropy(x, t, normalize=True, cache_score=True, class_weight=None, ignore_label=-1, reduce='mean')[source]¶ Computes cross entropy loss for pre-softmax activations.
Parameters: - x (Variable) – Variable holding a multidimensional array whose element indicates unnormalized log probability: the first axis of the variable represents the number of samples, and the second axis represents the number of classes. While this function computes a usual softmax cross entropy if the number of dimensions is equal to 2, it computes a cross entropy of the replicated softmax if the number of dimensions is greater than 2.
- t (Variable) – Variable holding an int32 vector of ground truth
labels. If
t[i] == ignore_label, correspondingx[i]is ignored. - normalize (bool) – If
True, this function normalizes the cross entropy loss across all instances. IfFalse, it only normalizes along a batch size. - cache_score (bool) – When it is
True, the function stores result of forward computation to use it on backward computation. It reduces computational cost though consumes more memory. - class_weight (ndarray or ndarray) – An array
that contains constant weights that will be multiplied with the
loss values along with the second dimension. The shape of this
array should be
(x.shape[1],). If this is notNone, each class weightclass_weight[i]is actually multiplied toy[:, i]that is the corresponding log-softmax output ofxand has the same shape asxbefore calculating the actual loss value. - ignore_label (int) – Label value you want to ignore. Its default value
is
-1. See description of the argument t. - reduce (str) – A string that determines whether to reduce the loss
values. If it is
'mean', it computes the sum of the individual cross entropy and normalize it according tonormalizeoption. If it is'no', this function computes cross entropy for each instance and does not normalize it (normalizeoption is ignored). In this case, the loss value of the ignored instance, which hasignore_labelas its target value, is set to0.
Returns: A variable holding a scalar array of the cross entropy loss. If
reduceis'mean', it is a scalar array. Ifreduceis'no', the shape is same as that ofx.Return type: Note
This function is differentiable only by
x.