Type SparseCategoricalCrossentropy
Namespace tensorflow.keras.metrics
Parent MeanMetricWrapper
Interfaces ISparseCategoricalCrossentropy
Computes the crossentropy metric between the labels and predictions. Use this crossentropy metric when there are two or more label classes.
We expect labels to be provided as integers. If you want to provide labels
using `one-hot` representation, please use `CategoricalCrossentropy` metric.
There should be `# classes` floating point values per feature for `y_pred`
and a single floating point value per feature for `y_true`. In the snippet below, there is a single floating point value per example for
`y_true` and `# classes` floating pointing values per example for `y_pred`.
The shape of `y_true` is `[batch_size]` and the shape of `y_pred` is
`[batch_size, num_classes]`. Usage:
Usage with tf.keras API:
Show Example
m = tf.keras.metrics.SparseCategoricalCrossentropy() m.update_state( [1, 2], [[0.05, 0.95, 0], [0.1, 0.8, 0.1]]) # y_true = one_hot(y_true) = [[0, 1, 0], [0, 0, 1]] # logits = log(y_pred) # softmax = exp(logits) / sum(exp(logits), axis=-1) # softmax = [[0.05, 0.95, EPSILON], [0.1, 0.8, 0.1]] # xent = -sum(y * log(softmax), 1) # log(softmax) = [[-2.9957, -0.0513, -16.1181], [-2.3026, -0.2231, -2.3026]] # y_true * log(softmax) = [[0, -0.0513, 0], [0, 0, -2.3026]] # xent = [0.0513, 2.3026] # Reduced xent = (0.0513 + 2.3026) / 2 print('Final result: ', m.result().numpy()) # Final result: 1.176
Properties
- activity_regularizer
- activity_regularizer_dyn
- built
- count
- dtype
- dtype_dyn
- dynamic
- dynamic_dyn
- inbound_nodes
- inbound_nodes_dyn
- input
- input_dyn
- input_mask
- input_mask_dyn
- input_shape
- input_shape_dyn
- input_spec
- input_spec_dyn
- losses
- losses_dyn
- metrics
- metrics_dyn
- name
- name_dyn
- name_scope
- name_scope_dyn
- non_trainable_variables
- non_trainable_variables_dyn
- non_trainable_weights
- non_trainable_weights_dyn
- outbound_nodes
- outbound_nodes_dyn
- output
- output_dyn
- output_mask
- output_mask_dyn
- output_shape
- output_shape_dyn
- PythonObject
- reduction
- stateful
- submodules
- submodules_dyn
- supports_masking
- total
- trainable
- trainable_dyn
- trainable_variables
- trainable_variables_dyn
- trainable_weights
- trainable_weights_dyn
- updates
- updates_dyn
- variables
- variables_dyn
- weights
- weights_dyn