首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >tensorflow softmax_cross_entropy_with_logits与sigmoid_cross_entropy_with_logits的实现差异

tensorflow softmax_cross_entropy_with_logits与sigmoid_cross_entropy_with_logits的实现差异
EN

Stack Overflow用户
提问于 2016-11-22 15:51:57
回答 3查看 1.8K关注 0票数 4

我最近遇到了tensorflow softmax_cross_entropy_with_logits,但我不知道它的实现与sigmoid_cross_entropy_with_logits有什么不同。

EN

回答 3

Stack Overflow用户

发布于 2018-03-28 00:20:09

我知道我回答得有点晚,但迟到总比不到好。所以我有完全相同的疑问,答案在tensorflow文档中。答案是我引述如下:

softmax_cross_entropy_with_logits:测量离散分类任务中的概率错误,在这些任务中,类是相互排斥的(每个条目恰好属于一个类)。sigmoid_cross_entropy_with_logits:测量离散分类任务中的概率误差,在这些任务中,每个类别都是独立的,并且不是相互排斥的

编辑:我想我应该补充说,虽然这些类是相互排斥的,但它们的概率不一定是。所需要的就是每一行标签都是一个有效的概率分布。这不是在sparse_softmax_cross_entropy_with_logits中的情况,其中label是仅包含真实类的索引的向量。

我还添加了文档的链接。希望这个答案是有帮助的。

票数 2
EN

Stack Overflow用户

发布于 2016-11-22 17:31:33

softmax_cross_entropy_with_logits首先计算softmax,然后计算交叉熵,而sigmoid_cross_entropy_with_logits首先计算sigmoid,然后计算交叉熵。

票数 1
EN

Stack Overflow用户

发布于 2017-01-16 02:13:32

sigmoid和softmax之间的主要区别是softmax函数返回的结果是概率形式的,这更符合ML哲学。softmax结果的所有输出总和为1。这会告诉您网络对答案的信心程度。

然而,sigmoid的输出是谨慎的。它要么正确,要么不正确。你必须自己编写代码来计算概率。

就网络的性能而言。Softmax通常比sigmoid提供更好的准确性。但是,它也高度依赖于其他超参数。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40736440

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档