tf.raw_ops.FixedUnigramCandidateSampler
Генерирует метки для выборки кандидатов с помощью выученной униграммной распределения.
tf.raw_ops.FixedUnigramCandidateSampler(
true_classes,
num_true,
num_sampled,
unique,
range_max,
vocab_file='',
distortion=1,
num_reserved_ids=0,
num_shards=1,
shard=0,
unigrams=[],
seed=0,
seed2=0,
name=None
)
Униграммный выборщик может использовать фиксированное униграммное распределение, считанное из файла или переданное в виде массива в оперативной памяти, вместо построения распределения из данных на лету. Также есть возможность искривить распределение, применив степень искажения к весам.
Файл словаря должен быть в формате, похожем на CSV, где последнее поле — вес, связанный со словом.
Для каждой партии этот оператор выбирает единственный набор выборочных меток кандидатов.
Преимущества выборки кандидатов в каждой партии — простота и возможность эффективного умножения плотных матриц. Недостатком является то, что выбранные кандидаты должны выбираться независимо от контекста и истинных меток.
| Аргументы | |
|---|---|
true_classes | Матрица типа int64 размером batch_size * num_true, в которой каждая строка содержит идентификаторы num_true целевых классов в соответствующей исходной метке. |
num_true | Целое число, которое является >= 1. Количество истинных меток на контекст. |
num_sampled | Целое число, которое является >= 1. Количество кандидатов, которые нужно случайным образом выбрать. |
unique | Булево значение. Если unique равно true, мы выбираем с отбраковкой, так что все выбранные кандидаты в партии уникальны. Это требует некоторого приближения для оценки вероятностей выборки после отбраковки. |
range_max | Целое число, которое является >= 1. Выборщик будет выбирать целые числа из интервала [0, range_max). |
vocab_file | Необязательный строковый путь. По умолчанию "". Каждая допустимая строка в этом файле (который должен иметь формат, похожий на CSV) соответствует допустимому идентификатору слова. Идентификаторы упорядочены последовательно, начиная с num_reserved_ids. Ожидается, что последняя запись в каждой строке будет значением, соответствующим счету или относительной вероятности. Ровно один из vocab_file и unigrams должен быть передан в этот оператор. |
distortion | Необязательное вещественное число. По умолчанию 1. Искажение используется для искривления распределения вероятностей униграмм. Сначала каждый вес возводится в степень искажения, прежде чем добавляться к внутреннему униграммному распределению. В результате, distortion = 1.0 дает регулярную выборку униграмм (как определено файлом vocab), а distortion = 0.0 дает равномерное распределение. |
num_reserved_ids | Необязательное целое число. По умолчанию 0. Пользователи могут добавить некоторые зарезервированные идентификаторы в диапазоне [0, ..., num_reserved_ids). Один из вариантов использования — использование специального токена неизвестного слова в качестве идентификатора 0. У этих идентификаторов будет вероятность выборки 0. |
num_shards | Необязательное целое число, которое является >= 1. По умолчанию 1. Выборщик может использоваться для выборки из подмножества исходного диапазона, чтобы ускорить вычисление с помощью параллелизма. Этот параметр (вместе с 'shard') указывает количество разделов, используемых в общем вычислении. |
shard | Необязательное целое число, которое является >= 0. По умолчанию 0. Выборщик может использоваться для выборки из подмножества исходного диапазона, чтобы ускорить вычисление с помощью параллелизма. Этот параметр (вместе с 'num_shards') указывает конкретный номер раздела оператора выборщика при использовании разбиения. |
unigrams | Необязательный список вещественных чисел. По умолчанию []. Список подсчетов или вероятностей униграмм, один на каждый идентификатор в последовательном порядке. Ровно один из vocab_file и unigrams должен быть передан в этот оператор. |
seed | Необязательное целое число. По умолчанию 0. Если seed или seed2 установлены не равными нулю, генератор случайных чисел инициализируется заданным seed. В противном случае он инициализируется случайным seed. |
seed2 | Необязательное целое число. По умолчанию 0. Второй seed для предотвращения столкновения seed. |
name | Имя операции (необязательно). |
| Возвращаемые значения | |
|---|---|
Кортеж объектов Tensor (sampled_candidates, true_expected_count, sampled_expected_count). | |
sampled_candidates | Матрица типа int64. |
true_expected_count | Матрица типа float32. |
sampled_expected_count | Матрица типа float32. |
© 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/raw_ops/FixedUnigramCandidateSampler