theanets.losses.CrossEntropy¶

class
theanets.losses.
CrossEntropy
(target, weight=1.0, weighted=False, output_name='out')¶ Crossentropy (XE) loss function for classifiers.
Parameters: target : int
Number of dimensions required to store the target values for computing the loss.
weight : float, optional
The importance of this loss for the model being trained. Defaults to 1.
weighted : bool, optional
If True, a floatingpoint array of weights with the same dimensions as
out_dim
will be required to compute the “weighted” loss. Defaults to False.output_name : str, optional
Name of the network output to tap for computing the loss. Defaults to ‘out:out’, the name of the default output of the last layer in a linear network.
Notes
The crossentropy between a “true” distribution over discrete classes \(p(t)\) and a “model” distribution over predicted classes \(q(x)\) is the expected number of bits needed to store the model distribution, under the expectation of the true distribution. Mathematically, this loss computes:
\[\mathcal{L}(x, t) =  \sum_{k=1}^K p(t=k) \log q(x=k)\]The loss value is similar to the KL divergence between \(p\) and \(q\), but it is specifically aimed at classification models. When using this loss, targets are assumed to be integers in the halfopen interval \([0, k)\); internally, the loss is computed by first taking the log of the model distribution and then summing up only the entries in the resulting array corresponding to the true class.
Attributes
weight (float, optional) The importance of this loss for the model being trained. output_name (str) Name of the network output to tap for computing the loss. 
__init__
(target, weight=1.0, weighted=False, output_name='out')¶
Methods
__init__
(target[, weight, weighted, output_name])accuracy
(outputs)Build a Theano expression for computing the accuracy of graph output. log
()Log some diagnostic info about this loss. Attributes
variables
A list of Theano variables used in this loss. 
accuracy
(outputs)¶ Build a Theano expression for computing the accuracy of graph output.
Parameters: outputs : dict of Theano expressions
A dictionary mapping network output names to Theano expressions representing the outputs of a computation graph.
Returns: acc : Theano expression
A Theano expression representing the accuracy of the output compared to the target data.
