分类器神经网络的最后一层是不是同时使用 sigmoid 和 softmax?
Posted
技术标签:
【中文标题】分类器神经网络的最后一层是不是同时使用 sigmoid 和 softmax?【英文标题】:Does the last layer of a classifier neural network use both sigmoid and softmax?分类器神经网络的最后一层是否同时使用 sigmoid 和 softmax? 【发布时间】:2018-03-18 10:37:21 【问题描述】:分类器网络的隐藏层使用 sigmoid 或其他激活函数来引入非线性和规范化数据,但最后一层是否使用 sigmoid 和 softmax 结合?
我觉得这无关紧要,网络会以任何一种方式进行训练——但是否应该单独使用 softmax 层?还是应该先应用sigmoid函数?
【问题讨论】:
【参考方案1】:一般来说,在 softmax 输出层之前进行额外的 sigmoid 激活是没有意义的。由于 sigmoid 函数是a partial case of softmax,它只会将值连续两次压缩到[0, 1]
区间中,这将产生几乎均匀的输出分布。当然,你可以通过这个传播,但是效率会低很多。
顺便说一句,如果你选择不使用 ReLu,那么 tanh 绝对是 a better activation function 而不是 sigmoid。
【讨论】:
谢谢!你能引导我到一个资源,在那里我可以进一步了解分类器中的 tanh 与 sigmoid 吗?我之前曾看到它们被描述为极具可比性。 @EvanWeissburg 当然,强烈推荐这篇文章 - cs231n.github.io/neural-networks-1/#actfun以上是关于分类器神经网络的最后一层是不是同时使用 sigmoid 和 softmax?的主要内容,如果未能解决你的问题,请参考以下文章
对于分类问题的神经网络最后一层的函数:sigmoidsoftmax与损失函数