View source on GitHub
|
Computes how often integer targets are in the top K predictions.
Inherits From: MeanMetricWrapper, Mean, Metric
tf.keras.metrics.SparseTopKCategoricalAccuracy(
k=5,
name='sparse_top_k_categorical_accuracy',
dtype=None,
from_sorted_ids=False
)
By default, the arguments expected by update_state() are:
y_true: a tensor of shape(batch_size)representing indices of true categories.y_pred: a tensor of shape(batch_size, num_categories)containing the scores for each sample for all possible categories.
With from_sorted_ids=True, the arguments expected by update_state are:
y_true: a tensor of shape(batch_size)representing indices or IDs of true categories.y_pred: a tensor of shape(batch_size, N)containing the indices or IDs of the topNcategories sorted in order from highest score to lowest score.Nmust be greater or equal tok.
The from_sorted_ids=True option can be more efficient when the set of
categories is very large and the model has an optimized way to retrieve the
top ones either without scoring or without maintaining the scores for all
the possible categories.
Example:
m = keras.metrics.SparseTopKCategoricalAccuracy(k=1)m.update_state([2, 1], [[0.1, 0.9, 0.8], [0.05, 0.95, 0]])m.result()0.5
m.reset_state()m.update_state([2, 1], [[0.1, 0.9, 0.8], [0.05, 0.95, 0]],sample_weight=[0.7, 0.3])m.result()0.3
m = keras.metrics.SparseTopKCategoricalAccuracy(k=1,from_sorted_ids=True)m.update_state([2, 1], [[1, 0, 3], [1, 2, 3]])m.result()0.5
Usage with compile() API:
model.compile(optimizer='sgd',
loss='sparse_categorical_crossentropy',
metrics=[keras.metrics.SparseTopKCategoricalAccuracy()])
Attributes | |
|---|---|
dtype
|
|
variables
|
|
Methods
add_variable
add_variable(
shape, initializer, dtype=None, aggregation='sum', name=None
)
add_weight
add_weight(
shape=(), initializer=None, dtype=None, name=None
)
from_config
@classmethodfrom_config( config )
get_config
get_config()
Return the serializable config of the metric.
reset_state
reset_state()
Reset all of the metric state variables.
This function is called between epochs/steps, when a metric is evaluated during training.
result
result()
Compute the current metric value.
| Returns | |
|---|---|
| A scalar tensor, or a dictionary of scalar tensors. |
stateless_reset_state
stateless_reset_state()
stateless_result
stateless_result(
metric_variables
)
stateless_update_state
stateless_update_state(
metric_variables, *args, **kwargs
)
update_state
update_state(
y_true, y_pred, sample_weight=None
)
Accumulate statistics for the metric.
__call__
__call__(
*args, **kwargs
)
Call self as a function.
View source on GitHub