遗传算法和bp神经网络结合(神经网络权值学习)

      BP算法的误差减小,是反梯度方向进行的。因此,极易陷入局部极小点的困境。一旦训练学习样本数目多,输入输出关系比较复杂, 网络的收敛速度变得缓慢。表现为对网络结构的初值要求很高。初值的不合理, 会造成BP算法的收敛摆动, 以至不收敛。

      GA在随机点集中遗传优化出bp神经网络结构的初值,再利用bp神经网络进行自我学习。

      GA与其它优化算法不同, 它将“ 自然选择” 机理引入优化过程中, 对于优化问题的限制极少, 对约束及目标函数既不要求连续, 也不要求可微。因此, 其搜索过程始终遍及整个搜索空间,可得到全局最优解。

      G A 与A N N 结合的机制, 本文采用的是根据G A 解空间遍及整个搜索空间的特性, 从随机解集中, 遗传出在最优解-定范围内的优化解, 以此形成A N N 结构的初值, 再由A N N按负梯度方向进行快速搜索, 以达到全局最小点。这样做, 既可以保证收敛的全局最小点, 又能保证收敛的速度。

      GA反复优化神经网络的权值,直到平均值不再有意义地增加为止,此时解码得到的参数组合已经充分接近最佳参数组合,在此基础上再用BP算法对它们进行细调,这种方法的通用性较好。

具体步骤:

      1.将神经网络的各权值和阀值,顺序编码,形成染色体。染色体的初值(随机在0-1)

      2.性价函数:将权值和阀值输入到bp中后,结合训练集的输入输出,计算出误差平方和。

      3.遗传,交叉,变异等操作。

      4.进行一定的代数,查看效果(代数需要经验设定)

      5.将遗传算法的结构带入到bp神经网络中,进行训练。

      6.训练学习结束后,进行实际测试。


    原文作者:遗传算法
    原文地址: https://blog.csdn.net/u011001084/article/details/49331363
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞