# tf.keras.metrics.SparseTopKCategoricalAccuracy

<br />

|---|---|
| [![](https://www.tensorflow.org/images/tf_logo_32px.png) TensorFlow 2 version](https://www.tensorflow.org/api_docs/python/tf/keras/metrics/SparseTopKCategoricalAccuracy) | [![](https://www.tensorflow.org/images/GitHub-Mark-32px.png) View source on GitHub](https://github.com/tensorflow/tensorflow/blob/v1.15.0/tensorflow/python/keras/metrics.py#L802-L833) |

Computes how often integer targets are in the top `K` predictions.

#### View aliases


**Compat aliases for migration**

See
[Migration guide](https://www.tensorflow.org/guide/migrate) for
more details.

[`tf.compat.v1.keras.metrics.SparseTopKCategoricalAccuracy`](https://www.tensorflow.org/api_docs/python/tf/keras/metrics/SparseTopKCategoricalAccuracy), \`tf.compat.v2.keras.metrics.SparseTopKCategoricalAccuracy\`, \`tf.compat.v2.metrics.SparseTopKCategoricalAccuracy\`

<br />

    tf.keras.metrics.SparseTopKCategoricalAccuracy(
        k=5, name='sparse_top_k_categorical_accuracy', dtype=None
    )

#### Usage:

    m = tf.keras.metrics.SparseTopKCategoricalAccuracy()
    m.update_state([2, 1], [[0.1, 0.9, 0.8], [0.05, 0.95, 0]])
    print('Final result: ', m.result().numpy())  # Final result: 1.0

Usage with tf.keras API:

    model = tf.keras.Model(inputs, outputs)
    model.compile(
      'sgd',
      metrics=[tf.keras.metrics.SparseTopKCategoricalAccuracy()])

<br />

<br />

<br />

| ## Args ||
|---|---|
| `k` | (Optional) Number of top elements to look at for computing accuracy. Defaults to 5. |
| `name` | (Optional) string name of the metric instance. |
| `dtype` | (Optional) data type of the metric result. |

<br />

## Methods

### `reset_states`

[View source](https://github.com/tensorflow/tensorflow/blob/v1.15.0/tensorflow/python/keras/metrics.py#L204-L210)

    reset_states()

Resets all of the metric state variables.

This function is called between epochs/steps,
when a metric is evaluated during training.

### `result`

[View source](https://github.com/tensorflow/tensorflow/blob/v1.15.0/tensorflow/python/keras/metrics.py#L362-L372)

    result()

Computes and returns the metric value tensor.

Result computation is an idempotent operation that simply calculates the
metric value using the state variables.

### `update_state`

[View source](https://github.com/tensorflow/tensorflow/blob/v1.15.0/tensorflow/python/keras/metrics.py#L559-L584)

    update_state(
        y_true, y_pred, sample_weight=None
    )

Accumulates metric statistics.

`y_true` and `y_pred` should have the same shape.

<br />

<br />

<br />

| Args ||
|---|---|
| `y_true` | The ground truth values. |
| `y_pred` | The predicted values. |
| `sample_weight` | Optional weighting of each example. Defaults to 1. Can be a `Tensor` whose rank is either 0, or the same rank as `y_true`, and must be broadcastable to `y_true`. |

<br />

<br />

<br />

<br />

| Returns ||
|---|---|
| Update op. ||

<br />