您可以在
tf.nn.sampled_softmax_loss()
此处找到文档。TensorFlow此处(pdf)甚至提供了关于
候选采样 的很好解释。
它如何知道负面标签是什么?
TensorFlow将在所有可能的类别(对您来说,所有可能的单词)中随机选择否定类别。
难道没有从输入集中采样的风险吗?
当您要计算真实标签的softmax概率时,请计算:
logits[true_label] /sum(logits[negative_sampled_labels]。由于类别数量巨大(词汇量大),因此将true_label用作否定标签的可能性很小。
无论如何,我认为TensorFlow在随机采样时完全消除了这种可能性。(编辑:@Alex确认TensorFlow默认执行此操作)



