我是靠谱客的博主 沉默铃铛,最近开发中收集的这篇文章主要介绍softmax_cross_entropy,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

tf.nn.sparse_softmax_cross_entropy_with_logits(logits, labels, name=None)

计算logits 和 labels 之间的稀疏softmax 交叉熵

度量在离散分类任务中的错误率,这些类之间是相互排斥的(每个输入只能对应唯一确定的一个类)。举例来说,每个CIFAR-10 图片只能被标记为唯一的一个标签:一张图片可能是一只狗或一辆卡车,而不能两者都是。

注意:针对这个操作,给定某一个标签的概率被认为是排外的。也就是说,软分类是不允许的,并且labels 向量必须提供一个单一的指定的真实类别的索引,为logits 的每一行(每个 minibatch 的输入)。对于软 softmax 分类来说,对每一个输入有一个概率分布,参照 softmax_cross_entropy_with_logits.

警告:这个操作期望无尺度化的logits, 因为它在内部高效地对logits 进行 softmax 。请不要用softmax 的输出调用这个操作,否则会产生错误结果。

logits 必须具有shape [batch_size, num_classes] 并且 dtype (float32 or float64)

labels 必须具有shape [batch_size],并且 dtype int64

参数:

  • logits:  无尺度化的log 概率
  • labels:  每个条目 labels[i] 必须是[0, num_classes) 的索引或者-1. 如果是-1,则相应的损失为0,不用考虑 logits[i] 的值。
返回值:
batch_size 长度的1-D Tensor,type 类型和 logits 一样,值为softmax 交叉熵损失。

logits 和 labels 的shpae


logits


labels



cross_entropy = tf.nn.sparse_softmax_cross_entropy_with_logits(logits, labels, name='xentropy')
#print cross_entropy#



MNIST 单层网络 softmax 的交叉熵

cross_entropy = tf.reduce_mean(-tf.reduce_sum(y_ * tf.log(y), reduction_indices=[1]))
















最后

以上就是沉默铃铛为你收集整理的softmax_cross_entropy的全部内容,希望文章能够帮你解决softmax_cross_entropy所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(86)

评论列表共有 0 条评论

立即
投稿
返回
顶部