多层前馈神经网络又名多层前馈全互连接网。多层的意思是除了输入层和输出层以外,还存在一个或者多个隐含层。前馈的意思是外界信号从输入层经由隐含层到达输出层,不存在信号的逆向传播。全互连接是指每层神经元与下层神经元全互连接,神经元之间不存在同层连接,也不存在跨层连接。

多层前馈网的结构图
其中输入层神经元接收外界输入,隐含层与输出层神经元对信号进行加工,最终结果由输出层神经元输出。也就是说,输入层神经元只是接受输入,不进行函数处理,隐含层和输出层才进行函数处理。
神经网络参数学习就是根据训练数据来调整神经元之间的连接权以及每个功能神经元的阈值。换言之,神经网络学到的东西都存放在连接权和阈值中。
多层前馈神经网络的学习
多层前馈神经网络的表达能力比单层感知机要强得多。要学习多层前馈神经网络,单层感知机的学习规则是远远不够的,需要更强大的学习算法。误差逆传播算法就是其中最杰出的代表,它是迄今最成功的神经网络学习算法。
现实任务中使用神经网络时,大多是在使用BP算法进行训练。需要指出的是,BP算法不仅可用于多层前馈神经网络,还可用于其他类型的神经网络,比如递归神经网络。但通常说BP网络的时候一般是指用BP算法训练的多层前馈神经网络。
BP算法
BP算法的基本过程
1)信号的前向传播阶段:在这个阶段,要求计算出隐含层和输出层中每一神经元的网络净输入和网络输出。
2)误差的逆向传播阶段:在这个阶段,要求计算出输出层和隐含层中每一神经元的误差。
3)权值和阈值的更新阶段:在这个阶段,要求更新所有连接权的权值和所有M-P神经元的阈值。