tf.math.in_top_k
Выводит, находятся ли целевые значения в числе лучших K прогнозов.
tf.math.in_top_k(
targets, predictions, k, name=None
)
Это выводит массив bool, в котором запись out[i] равна true, если прогноз для целевого класса конечен (не inf, -inf или nan) и входит в лучшие k прогнозов среди всех прогнозов для примера i. predictions не обязательно должен быть нормализован.
Обратите внимание, что поведение InTopK отличается от операции TopK в обработке совпадений; если несколько классов имеют одинаковое значение прогноза и находятся на границе лучших k, все эти классы считаются в числе лучших 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)
| Аргументы | |
|---|---|
targets | Вектор идентификаторов классов. Должен быть int32 или int64. |
predictions | Массив тензорного типа batch_size x classes типа float32. |
k | Целое число. Параметр для указания области поиска. |
name | Имя операции (необязательно). |
| Возвращаемые значения | |
|---|---|
Массив Tensor, имеющий ту же форму, что и targets, с типом bool. Каждый элемент указывает, попадает ли целевое значение в топ-k прогнозов. |
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/math/in_top_k