多层感知机

维基百科,自由的百科全书
跳转至: 导航搜索

多层感知机(Multilayer Perceptron, 缩写MLP) 是一种前向结构的人工神经网络,映射一组输入向量到一组输出向量。MLP可以被看作是一个有向图,由多个的节点层所组成,每一层都全连接到下一层。除了输入节点,每个节点都是一个带有非线性激活函数的神经元(或称处理单元)。MLP是感知机的推广,克服了感知机不能对线性不可分数据进行识别的弱点。一种被称为反向传播算法监督学习方法常被用来训练MLP。

理论[编辑]

激活函数[编辑]

若每个神经元的激活函数都是线性函数,那么,任意层数的MLP都可被约简成一个等价的单层感知机[1]

实际上,MLP本身可以使用任何形式的激活函数,譬如阶梯函数或逻辑乙形函数(logistic sigmoid function),但为了使用反向传播算法进行有效学习,激活函数必须限制为可微函数。由于具有良好可微性,很多乙形函数,尤其是双曲正切函数(Hyperbolic tangent)及逻辑乙形函数,被采用为激活函数。

应用[编辑]

常被MLP用来进行学习的反向传播算法,在模式识别的领域中算是标准监督学习算法,并在计算神经学及并行分布式处理领域中,持续成为被研究的课题。MLP已被证明是一种通用的函数近似方法,可以被用来拟合复杂的函数,或解决分类问题。

MLP在80年代的时候曾是相当流行的机器学习方法,拥有广泛的应用场景,譬如语音识别、图像识别、机器翻译等等,但自90年代以来,MLP遇到来自更为简单的支持向量机的强劲竞争。近来,由于深层学习的成功,MLP又重新得到了关注。

文献[编辑]

  1. ^ Neural Networks for pattern recognition 第一版. Oxford University Press. 1995. ISBN 0198538642.