sigmoid function和softmax function
sigmoid函数(也叫逻辑斯谛函数):
引用wiki百科的定义:
A logistic function or logistic curve is a common “S” shape (sigmoid curve).
其实逻辑斯谛函数也就是经常说的sigmoid函数,它的几何形状也就是一条sigmoid曲线。
logistic曲线如下:
同样,我们贴一下wiki百科对softmax函数的定义:
softmax is a generalization of logistic function that “squashes”(maps) a K-dimensional vector z of arbitrary real values to a K-dimensional vector σ(z) of real values in the range (0, 1) that add up to 1.
这句话既表明了softmax函数与logistic函数的关系,也同时阐述了softmax函数的本质就是将一个K
维的任意实数向量压缩(映射)成另一个K
维的实数向量,其中向量中的每个元素取值都介于(0,1)之间。
softmax函数形式如下:
总结:sigmoid将一个real value映射到(0,1)的区间(当然也可以是(-1,1)),这样可以用来做二分类。
而softmax把一个k维的real value向量(a1,a2,a3,a4….)映射成一个(b1,b2,b3,b4….)其中bi是一个0-1的常数,然后可以根据bi的大小来进行多分类的任务,如取权重最大的一维。
PS.
softmax的输出每个值都是大于等于0,而且总和等于1,这样softmax可以认为是概率分布(类比游戏里的属性分布)
容易描述,可以认为输出的是分类等于每个可能分类等于每个可能分类标签的概率(如:P(a(x))=0.8 for MNIST)
如果输出层是sigmod层,不能默认输出总和为1,所以不能轻易描述为概率分布。