tf.math.in_top_k | TensorFlow v2.16.1 (original) (raw)
tf.math.in_top_k
Stay organized with collections Save and categorize content based on your preferences.
Outputs whether the targets are in the top K
predictions.
View aliases
Main aliases
tf.math.in_top_k(
targets, predictions, k, name=None
)
This outputs a batch_size
bool array, an entry out[i]
is true
if the prediction for the target class is finite (not inf, -inf, or nan) and among the top k
predictions among all predictions for example i
.predictions
does not have to be normalized.
Note that the behavior of InTopK
differs from the TopK
op in its handling of ties; if multiple classes have the same prediction value and straddle the top-k
boundary, all of those classes are considered to be in the top k
.
target = tf.constant([0, 1, 3])
pred = tf.constant([
[1.2, -0.3, 2.8, 5.2],
[0.1, 0.0, 0.0, 0.0],
[0.0, 0.5, 0.3, 0.3]],
dtype=tf.float32)
print(tf.math.in_top_k(target, pred, 2))
tf.Tensor([False True True], shape=(3,), dtype=bool)
Args | |
---|---|
targets | A batch_size vector of class ids. Must be int32 or int64. |
predictions | A batch_size x classes tensor of type float32. |
k | An int. The parameter to specify search space. |
name | A name for the operation (optional). |
Returns |
---|
A Tensor with the same shape of targets with type of bool. Each element specifies if the target falls into top-k predictions. |