Ich versuche, die Udacity Tutorial auf tensorflow zu folgen, wo ich über die folgenden zwei Zeilen für Wort Einbettung Modelle kam:Tensorflow negativer Sampling
# 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))
Jetzt ich, dass die zweite Aussage verstehe zum Abtasten negative Etikett ist. Aber die Frage ist, woher weiß es, was die negativen Etiketten sind? Alles, was ich die zweite Funktion zur Verfügung stelle, ist die aktuelle Eingabe und ihre entsprechenden Etiketten zusammen mit der Anzahl der Etiketten, von denen ich (negativ) abtasten möchte. Besteht nicht die Gefahr, dass die Eingabe an sich selbst erfolgt?
Dies ist die vollständige Beispiel: https://github.com/tensorflow/tensorflow/blob/master/tensorflow/examples/udacity/5_word2vec.ipynb
"Ich denke, dass TensorFlow diese Möglichkeit bei der zufälligen Stichprobenentnahme komplett beseitigt." Richtig! Da ist die Flagge: 'remove_accidental_hits': A bool. ob "zufällige Treffer" entfernt werden sollen, wobei eine ausgewählte Klasse einer der Zielklassen entspricht. Der Standardwert ist "True". – Alex
Kennt jemand eine Möglichkeit, Stichprobengewichte bereitzustellen? –