人工神经网络分析编程实现一、神经网络1
BP网络的特点1)网络实质上实现了一个从输入到输出的映射功能,而数学理论已证明它具有实现任何复杂非线性映射的功能
这使得它特别适合于求解内部机制复杂的问题
我们无需建立模型,或了解其内部过程,只需输入,获得输出
只要BPNN结构优秀,一般20个输入函数以下的问题都能在50000次的学习以内收敛到最低误差附近
而且理论上,一个三层的神经网络,能够以任意精度逼近给定的函数,这是非常诱人的期望;2)网络能通过学习带正确答案的实例集自动提取“合理的”求解规则,即具有自学习能力;3)网络具有一定的推广、概括能力
bp主要应用1)回归预测(可以进行拟合,数据处理分析,事物预测,控制等)2)分类识别(进行类型划分,模式识别等)3
BP注意问题1)BP算法的学习速度很慢,其原因主要有:a由于BP算法本质上为梯度下降法,而它所要优化的目标函数又非常复杂,因此,必然会出现“锯齿形现象”,这使得BP算法低效;b存在麻痹现象,由于优化的目标函数很复杂,它必然会在神经元输出接近0或1的情况下,出现一些平坦区,在这些区域内,权值误差改变很小,使训练过程几乎停顿;c为了使网络执行BP算法,不能用传统的一维搜索法求每次迭代的步长,而必须把步长的更新规则预先赋予网络,这种方法将引起算法低效
2)网络训练失败的可能性较大,其原因有:a从数学角度看,BP算法为一种局部搜索的优化方法,但它要解决的问题为求解复杂非线性函数的全局极值,因此,算法很有可能陷入局部极值,使训练失败;b网络的逼近、推广能力同学习样本的典型性密切相关,而从问题中选取典型样本实例组成训练集是一个很困难的问题
3)网络结构的选择:尚无一种统一而完整的理论指导,一般只能由经验选定
为此,有人称神经网络的结构选择为一种艺术
而网络的结构直接影响网络的逼近能力及推广性质
因此,应用中如何选择合适的网络结构是