text sparse_softmax_cross_entropy_with_logits和softmax_cross_entropy_with_logits
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了text sparse_softmax_cross_entropy_with_logits和softmax_cross_entropy_with_logits相关的知识,希望对你有一定的参考价值。
两者都是计算分类问题的softmax交叉熵损失,而两者使用的标签值labels的形式不同。
sparse_softmax_cross_entropy_with_logits: 使用的是实数来表示类别,数据类型为int16,int32,或者 int64,标签大小范围为[0,num_classes-1],标签的维度为[batch_size]大小。
softmax_cross_entropy_with_logits: 使用的是one-hot二进制码来表示类别,labels必须是one-hot形式的数据,数据类型为float16,float32,或者float64,维度为[batch_size, num_classes]。
实例
import tensorflow as tf
#batch_size = 2
labels = tf.constant([[0, 0, 0, 1],[0, 1, 0, 0]])
logits = tf.constant([[-3.4, 2.5, -1.2, 5.5],[-3.4, 2.5, -1.2, 5.5]]) #实际labels和logits可以是任意shape,可以是[batch_size,num_class]/[batch_size,num_steps,num_class]等,只要两者有相同的shape就可以
loss = tf.nn.softmax_cross_entropy_with_logits(labels=labels, logits=logits)
loss_s = tf.nn.sparse_softmax_cross_entropy_with_logits(labels=tf.argmax(labels,1), logits=logits)
with tf.Session() as sess:
print "softmax loss:", sess.run(loss)
print "sparse softmax loss:", sess.run(loss_s)
以上是关于text sparse_softmax_cross_entropy_with_logits和softmax_cross_entropy_with_logits的主要内容,如果未能解决你的问题,请参考以下文章
VB中 如何复制Text1.text的字体到剪贴板? 如何剪切?
VB 加减乘除
text-decoration:[ text-decoration-line ] || [ text-decoration-style ] || [ text-decoration-color ]
.text 和 .get_text() 之间的区别
javascript或css:如何隐藏标签内的文本中的任何数字,后跟点前缀“1.text”,“2.text”...“30.text”
Crystal报告如果这个或那个那么this2