BP神经网络

简介

  • BP(Back Proragation, BP)误差反向传播算法
  • 它是具有指导训练的前馈多层网络训练算法,是靠调节各层的权值,使网络学会由输入输出对组成的训练组。其核心思想是将输出误差以某种形式通过隐含层向输入层逐层反传,即: 信号正向传播;误差反向传播
  • 执行优化的方法是梯度下降法
  • 最常用的激活函数是Sigmoid函数 $f(x)=frac{1}{1+e^{-x} } $

适用范围

BP神经网络的最大优点是具有极强的非线性映射能力,它主要用于以下四个方面。
(1)函数逼近.用输入变量和相应的输出变量训练一个网络以逼近某个函数.
(2)模式识别.
(3)预测.
(4)数据压缩.减少输出向量维数以便传输或存储.

梯度法

结构


学习的过程

建议

(1)采用BP神经网络方法建模的首要和前提条件是有足够多典型性好和精度高的样本。而且,为监控训练(学习)过程使之不发生“过拟合”和评价建立的网络模型的性能和泛化能力,必须将收集到的数据随机分成训练样本、检验样本(10%以上)和测试样本(10%以上)3部分。

(2)尽量获取足够多的样本,它的多少直接关系到所建模型的可靠性。

(3)建模时尽量减少隐含层神经元的个数。由于隐含层神经元个数的确定是凭经验的,而个数的多少直接关系到网络的性能。个数太少,网络容易陷入局部极小值;太多,则网络的预测结果不稳定。为此隐含层神经元个数的确定利用“试错法”来实现,即先给定一个较小的值,根据训练的结果逐渐增加,这样可找到适合该模型隐含层神经元个数的最小值,从而提高了网络的稳定性。

(4)将神经网络与其它方法(如遗传算法)相结合。由于每种方法都有其各自的特点,多种方法的结合可改善单一方法所存在的缺陷。

前馈网络隐层节点数经验公式

原文地址:https://www.cnblogs.com/Acapplella/p/15068975.html