论文部分内容阅读
分类是通过训练数据集找出类别的概念描述,根据概念描述建立分类模型,从而使用该模型来分类同种数据。目前常见的分类方法有神经网络方法、贝叶斯网络、粗糙集、模糊集和支持向量机等。神经网络方法在分类问题中有着广泛的应用,但是如何为具体问题选择合适的网络结构和设定好的网络参数一直是神经网络悬而未决的问题。近年来,遗传算法结合神经网络的研究越来越多。人们希望通过结合遗传算法和神经网络能够充分地利用两者优点,寻找出一种有效解决问题的方法。现在用于分类问题的遗传进化神经网络算法一般都是将进化结构和进化网络权值分开处理或者只进化网络权值,而同时进化结构和网络权值的少之又少。扩张拓扑的神经进化算法(NEAT)是一种同时进化结构和进化网络权值的遗传进化神经网络算法,它能够有效的解决未监督问题,却不适用于分类问题。本文首先对NEAT算法进行初步改进,并引入BP学习算法,让它进化三层前向网络,通过实验验证它的有效性。然后,进一步引入自适应的特性和选择改进的BP算法-Levenberg-Marquardt BP算法(LMBP算法)作为学习算法,提出了用于分类问题的能够同时进化结构和进化网络权值的遗传进化神经网络算法-自适应LMBP-NEAT算法(ALMBP-NEAT),通过实验验证了它的有效性,并与一般的混合遗传进化神经网络算法进行比较,并验证了它具有进化出用于分类的神经网络的能力。最后,本文将它应用于处理手写数字识别和语音识别上,在手写数字识别实验中,ALMBP-NEAT算法进化出具有比较好的识别能力的神经网络,而在语音识别上,本算法的效果就不尽如人意。通过这两个实验,虽然ALMBP-NEAT算法具有一定的有效性,但是也存在诸多需要改进的地方,为笔者将来进一步改进算法提供了许多可能性的出路。