Я пытаюсь следовать Udacity учебника по tensorflow, где я наткнулся на следующие две строк для слов встраивания моделей:Tensorflow отрицательного отбора проб
# Look up embeddings for inputs.
embed = tf.nn.embedding_lookup(embeddings, train_dataset)
# Compute the softmax loss, using a sample of the negative labels each time.
loss = tf.reduce_mean(tf.nn.sampled_softmax_loss(softmax_weights, softmax_biases,
embed, train_labels, num_sampled, vocabulary_size))
Теперь я понимаю, что второе утверждение для выборки отрицательных меток. Но вопрос в том, как он знает, что такое негативные метки? Все, что я предоставляю второй функции, это текущий ввод и соответствующие метки, а также количество меток, которые я хочу (отрицательно) отбирать. Не существует ли риск выборки из набора входных данных сам по себе?
Это полный пример: https://github.com/tensorflow/tensorflow/blob/master/tensorflow/examples/udacity/5_word2vec.ipynb
«Я думаю, что TensorFlow полностью удаляет эту возможность при случайной выборке». Верный! Есть флаг: 'remove_accidental_hits': bool. следует ли удалять «случайные удары», когда выбранный класс равен одному из целевых классов. Значение по умолчанию - True. ' – Alex
Кто-нибудь знает способ предоставления весов для отбора проб? –