对于分类问题的神经网络最后一层的函数:sigmoidsoftmax与损失函数

Posted wzdly

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对于分类问题的神经网络最后一层的函数:sigmoidsoftmax与损失函数相关的知识,希望对你有一定的参考价值。

对于分类问题的神经网络最后一层的函数做如下知识点总结:

  1. sigmoid和softmax一般用作神经网络的最后一层做分类函数(备注:sigmoid也用作中间层做激活函数);
  2. 对于类别数量大于2的分类问题,如果每个类别之间互斥,则选用softmax函数(例如:类别为牡丹花、玫瑰花、菊花),如果每个类别之间有交叉则选用与类别数量相等的sigmoid函数(例如:类别为小孩、大人、男人、女人,此处应该选用4个sigmoid函数);
  3. 神经网络最后一层的分类函数直接面临作损失函数的选择;
  4. softmax函数的分类标签都为one-hot编码,目标为类别数量=softmax这层的节点数量。(备注:对于二分类问题,如果采用sigmoid函数,最后一层就放一个节点;如果采用softmax函数,最后一层放两个节点)

    sigmoid函数的定义:令p(y=1)=x,p(y=0)=1-x,f =ln( x/(1-x)),推导出x=ef/(1-ef),即输出的是y=1的概率,这一点与softmax函数不同.

常用损失函数介绍:

MSE:均方误差一遍用于回归问题的损失函数,当然它也是回归问题的一个度量函数,回归问题最后一层神经元一般采用线性激活函数;

交叉熵:

 

以上是关于对于分类问题的神经网络最后一层的函数:sigmoidsoftmax与损失函数的主要内容,如果未能解决你的问题,请参考以下文章

深度学习----算法岗面试题

分类器神经网络的最后一层是不是同时使用 sigmoid 和 softmax?

我应该使用浮点数还是类作为神经网络最后一层的输出?

用于训练考虑 keras 中最后一层的网络

是否可以使用 Keras 在卷积神经网络的最后一层特征上训练 SVM 或随机森林?

交叉熵损失函数