首先概括性的介绍一下为什么要引入激活函数:给模型引入非线性因素。
比如,最简单的二分类感知机,其没有线性函数,完全是线性叠加,所以只能线性分类,例如在二维平面找一条直线y=kx+b进行分类,感知机只能训练出来k和b,可知其效果一般。
为了在模型中引入非线性因素:可使训练更好的拟合数据,我们可以引入激活函数。直白解释一下,如果二维平面上点分布成这样
对第一幅图进行分类就要一些弯弯绕绕的分类线刚好将不同类别的元素分开,弯弯绕绕就是引入非线性因素的意思,第二幅图线性分类如感知机就可以比较好地完成分类任务。
下面介绍三个常用的激活函数:
-
sign
用于感知机最后的输出。 -
sigmoid
f(x)=1/(1+e−x)
也是用于二分类 -
softmax
用于多分类,可以近似理解为sigmoid二分类的高维形式。softmax输出向量每个元素为对应类别的概率,所以该向量每个元素加起来和为1.