利用蚁群算法优化前向神经网络 内容摘要:蚁群算法是一种最新提出的新型的寻优策略,本文尝试将蚁群算法用于三层前向神经网络的训练过程,建立了相应的优化模型,进行了实际的编程计算,并与加动量项的 BP 算法、演化算法以及模拟退火算法进行比较,结果表明该方法具有更好的全局收敛性,以及对初值的不敏感性等特点。 关键词:期货经纪公司综合实力主成分分析聚类分析 人工神经网络是大脑及其活动的一个理论化的数学模型,由大量的处理单元互连而成的,是神经元联结形式的数学抽象,是一个大规模的非线性自适应模型。人工神经网络具有高速的运算能力,很强的自学习能力、自适应能力和非线性映射能力以及良好的容错性,因而它在模式识别、图像处理、信号及信息处理、系统优化和智能控制等许多领域得到了广泛的应用。 人工神经网络的学习算法可以分为:局部搜索算法,包括误差反传算法、牛顿法和共轭梯度法等;线性化算法;随机优化算法,包括遗传算法、演化算法、模拟退火算法等。 蚁群算法是一种基于模拟蚂蚁群行为的随机搜索优化算法。虽然单个蚂蚁的能力非常有限,但多个蚂蚁构成的群体具有找到蚁穴与食物之间最短路径的能力,这种能力是靠其在所经过的路径上留下的一种挥发性分泌物来实现的。蚂蚁个体间通过这种信息的沟通寻求通向食物的最短路径。已有相关计算实例表明该算法具有良好的收敛速度,且在得到的最优解更接近理论的最优解。 本文尝试将蚁群算法引入到前向神经网络的优化训练中来,建立了基于该算法的前向神经网络训练模型,编制了基于 C++语言的优化计算程序,并针对多个实例与多个算法进行了比较分析。 前向神经网络模型 前向人工神经网络具有数层相连的处理单元,连接可从一层中的每个神经元到下一层的所有神经元,且网络中不存在反馈环,是常用的一种人工神经网络模型。在本文中只考虑三层前向网络,且输出层为线性层,隐层神经元的非线性作用函数为双曲线正切函数: 其中输入层神经元把输入网络的数据不做任何处理直接作为该神经元的输出。设输入层神经元的输出为,隐层神经元的输入为,隐层神经元的输出为,输出层神经元的输出为,则网络的输入-输出为: 其中{wij}为输入层-隐层的连接权值,{wi0}隐层神经元的阈值,{vki}为隐层-输出层的连接权值,{vk0}为输出层神经元的阈值。网络的输入-输出映射也可简写为: 1≤k≤m 前向神经网络的训练样本集为 A={Xi,Tii=1,2,A,n)} ,设第 i 组训练数据的输入的实际...