首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >稀疏多标签最后激活/丢失函数

稀疏多标签最后激活/丢失函数
EN

Stack Overflow用户
提问于 2020-05-14 23:29:06
回答 1查看 87关注 0票数 2

我正在使用keras开发一个多标签分类模型。

如果我使用sigmoid作为binary cross-entropy loss的最后一个激活函数,我在我的第一个纪元中获得了98%的准确率,但它实际上没有学到任何东西。这是因为我有800个类别,平均有2-3个真阳性。

所以我改为在categorical cross-entropy loss中使用sigmoid,看起来效果更好,但我认为不推荐这样做?

我想要一些关于在这种情况下我应该使用什么激活和损失的指导。谢谢!

EN

回答 1

Stack Overflow用户

发布于 2020-05-15 01:56:20

我建议您使用softmax激活和categorical cross-entropy进行多分类。

要了解原因:

  • 使用softmax - softmax输出总和为1.0,这使我们能够将其解释为概率。当您想要选择一个可能的选项时-您希望将模型的结果解释为获得给定类的机会。在sigmoid的情况下-你没有这样的解释。但这只是冰山一角。在多分类的情况下-由于给定的接近1.0的概率自动使所有其他概率接近0.0,如果您的激活函数可以捕获这种依赖关系,这是可以的- softmax做到了。在sigmoid的情况下-这样的依赖关系不能直接建模-是什么使得所有的概率都接近0.0,例如,
  • 使用categorical loss而不是binary -想象一下以下情况。您有一个属于类2的示例(可能是0,1,2,...,100 )。如果你预测这个例子属于类1--你仍然有98%的准确率--因为你正确地预测了这不是一个03,...,100类。请记住,这就是使用sigmoid时会发生的情况-对于每个类,您都在预测给定的类是否属于这个类。
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61801289

复制
相关文章

相似问题

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