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

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

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

交叉熵:

猜你喜欢

转载自www.cnblogs.com/wzdLY/p/9712560.html