摘要:为了提高BP神经网络模型运用效果,基于不同方法提出了很多的优化算法算法例如从经典梯度下降法,到复杂的BFGS,LM算法等,然而不同的算法在不同的应用场景有不同的效果,本文以matlab神经网络工具箱为基础,比较各种优化算法在预测分类问题中的应用效果,并分析各种算法优缺点,为神经网络优化算法的选择提供建议。
一、 神经网络基本原理简介
近年来全球性的神经网络研究热潮的再度兴起,不仅仅是因为神经科学本身取得了巨大的进展.更主要的原因在于发展新型计算机和人工智能新途径的迫切需要.迄今为止在需要人工智能解决的许多问题中,人脑远比计算机聪明的多,要开创具有智能的新一代计算机,就必须了解人脑,研究人脑神经网络系统信息处理的机制.另一方面,基于神经科学研究成果基础上发展出来的人工神经网络模型,反映了人脑功能的若干基本特性,开拓了神经网络用于计算机的新途径。它对传统的计算机结构和人工智能是一个有力的挑战,引起了各方面专家的极大关注。
目前,已发展了几十种神经网络[1,2],例如Hopficld模型,Feldmann等的连接型网络模型,Hinton等的玻尔茨曼机模型,以及Rumelhart等的多层感知机模型和Kohonen的自组织网络模型等等。在这众多神经网络模型中,应用最广泛的是多层感知机神经网络。
二、神经网络原理
2.1最速下降学习算法公式推导
基本BP算法包括两个方面:信号的前向传播和误差的反向传播。即计算实际输出时按从输入到输出的方向进行,而权值和阈值的修正从输出到输入的方向进行。
(2)误差的反向传播过程
误差的反向传播,即首先由输出层开始逐层计算各层神经元的输出误差,然后根据误差梯度下降法来调节各层的权值和阈值,使修改后的网络的最终输出能接近期望值。