上一篇文章讲述了如何对预测的结果进行合理化修正,本文主要讲述的是对神经网络本身的学习算法进行优化。
一般优化神经网络有三种模式,一种为优化神经网络的连接结构,一种为优化神经网络的学习算法,一种为既优化连接结构,又优化学习算法。由于笔者的知识水平有限,所以采用第二种方法——优化神经网络的学习算法作为本实例的优化模型。
神经网络的学习算法有很多种,包括传统的爬山法亦或是拟牛顿法,而目前智能优化算法的兴起使得其对神经网络的学习算法进行替换有了可能。智能优化算法有很多种,每一种都有着其特性,可以根据实际问题来决定使用哪种算法。本实例中主要采用的是粒子群算法(PSO)作为神经网络的学习算法。粒子群算法为群智能算法的一种,为目前比较新兴的智能优化算法,所以相关的文献较少,但是其收敛速度快,不易收敛于局部极值点和并行搜索的特性使得其目前成为了较为热门的研究方向。本文采用标准粒子群算法(带惯性权重)作为神经网络的学习算法,算法本身在这里不再介绍,这里主要讲述粒子群算法如何作为神经网络的学习算法。
粒子群算法与其他的智能算法一样,都需要一定数量的种群。对于粒子群算法来说,粒子种群数量的大小对算法本身的性能来说影响有限,所以可以根据个人使用的机器性能不同,据实际情况来规定种群规模。