理论上讲任何一个连续的非多项式、常数函数都可以做为BP的激活函数,而且这都是已经在数学上证明过的问题。
这一点在做数值试验的时候很重要,因为权值的反向传播,要求激活函数的导数 。
多层就有多个导数,如果用一般的连续函数,这对计算机的存储和运算都是一个问题,此外还要考虑整个模型的收敛速度,我上面提到连续函数都可以做激活函数 。
但是相应的Sigmoidal型函数的收敛速度还是比较快的,(相同的结构前提下)
还有就是BP在做分类问题的时候,Sigmoidal函数能比较好的执行这一条件,关于连续函数可以做激活函数的证明,可以在IEEE trans. on neural networks 和NeuralNetworks以及Neural Computating 和Neural Computation上找到。
原文:http://www.cnblogs.com/Crysaty/p/6097205.html