Aliases:
tf.nn.learned_unigram_candidate_sampler
tf.random.learned_unigram_candidate_sampler
tf.random.learned_unigram_candidate_sampler(
true_classes,
num_true,
num_sampled,
unique,
range_max,
seed=None,
name=None
)
Defined in tensorflow/python/ops/candidate_sampling_ops.py
.
Samples a set of classes from a distribution learned during training.
This operation randomly samples a tensor of sampled classes
(sampled_candidates
) from the range of integers [0, range_max)
.
The elements of sampled_candidates
are drawn without replacement
(if unique=True
) or with replacement (if unique=False
) from
the base distribution.
The base distribution for this operation is constructed on the fly
during training. It is a unigram distribution over the target
classes seen so far during training. Every integer in [0, range_max)
begins with a weight of 1, and is incremented by 1 each time it is
seen as a target class. The base distribution is not saved to checkpoints,
so it is reset when the model is reloaded.
In addition, this operation returns tensors true_expected_count
and sampled_expected_count
representing the number of times each
of the target classes (true_classes
) and the sampled
classes (sampled_candidates
) is expected to occur in an average
tensor of sampled classes. These values correspond to Q(y|x)
defined in this
document.
If unique=True
, then these are post-rejection probabilities and we
compute them approximately.
Args:
true_classes
: ATensor
of typeint64
and shape[batch_size, num_true]
. The target classes.num_true
: Anint
. The number of target classes per training example.num_sampled
: Anint
. The number of classes to randomly sample.unique
: Abool
. Determines whether all sampled classes in a batch are unique.range_max
: Anint
. The number of possible classes.seed
: Anint
. An operation-specific seed. Default is 0.name
: A name for the operation (optional).
Returns:
sampled_candidates
: A tensor of typeint64
and shape[num_sampled]
. The sampled classes.true_expected_count
: A tensor of typefloat
. Same shape astrue_classes
. The expected counts under the sampling distribution of each oftrue_classes
.sampled_expected_count
: A tensor of typefloat
. Same shape assampled_candidates
. The expected counts under the sampling distribution of each ofsampled_candidates
.