В тензорном потоке есть методы под названием softmax_cross_entropy_with_logits и sampled_softmax_loss.
Я прочитал документ tensorflow и искал google для получения дополнительной информации, но я не могу найти разницы. Мне кажется, что оба вычисляют убытки, используя функцию softmax.
Использование sampled_softmax_loss для вычисления потерь
loss = tf.reduce_mean(tf.nn.sampled_softmax_loss(...))
Использование softmax_cross_entropy_with_logits для вычисления потерь
loss = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(P, Q))
Для меня вычисление потери softmax аналогично вычислению мягкой макс кросс-энтропии (например, cross_entropy (softmax (train_x)))
Может ли кто-нибудь сказать мне, почему существует два разных метода и какой метод я должен использовать в этом случае?
Спасибо.