tf.nn.compute_accidental_hits
Вычисляет идентификаторы позиций в sampled_candidates, соответствующие true_classes.
tf.nn.compute_accidental_hits(
true_classes, sampled_candidates, num_true, seed=None, name=None
)
При выборке кандидатов эта операция позволяет фактически исключить выбранные классы, совпадающие с целевыми классами. Это используется в Sampled Softmax и Sampled Logistic.
См. справочник по алгоритмам выборки кандидатов.
Предполагается, что sampled_candidates уникальны.
Случай, когда один из целевых классов совпадает с одним из выбранных классов, называется «случайным совпадением». Эта операция возвращает случайные совпадения в виде троек (index, id, weight), где index обозначает номер строки в true_classes, id обозначает позицию в sampled_candidates, а weight равен -FLOAT_MAX.
Результат этой операции следует передать в операцию sparse_to_dense, а затем прибавить к логитам выбранных классов. Это устраняет противоречивый эффект случайного выбора истинных целевых классов в качестве классов шума для того же примера.
| Аргументы | |
|---|---|
true_classes | Tensor типа int64 и формы [batch_size, num_true]. Целевые классы. |
sampled_candidates | Тензор типа int64 и формы [num_sampled]. Выход sampled_candidates операции CandidateSampler. |
num_true | int. Число целевых классов для каждого обучающего примера. |
seed | int. Начальное значение для конкретной операции. По умолчанию — 0. |
name | Имя операции (необязательно). |
| Возвращает | |
|---|---|
indices | Tensor типа int32 и формы [num_accidental_hits]. Значения обозначают строки в true_classes. |
ids | Tensor типа int64 и формы [num_accidental_hits]. Значения обозначают позиции в sampled_candidates. |
weights | Tensor типа float и формы [num_accidental_hits]. Каждое значение равно -FLOAT_MAX. |
© 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/nn/compute_accidental_hits