论文部分内容阅读
前馈式神经网络是最具有代表性、应用最广的神经网络模型。误差反向传播算法(Backpropagation,BP)是其经典的训练算法。但由于BP算法是基于固定学习率的梯度算法,所以不可避免地面临着收敛速度缓慢等缺陷。为了加快前馈式神经网络的收敛速度,出现了很多改进算法。它们都在一定程度上提高了网络的收敛速度。然而它们大都存在着诸如仍以梯度为基础,需要大量的存储空间,泛化能力不够等不足。
本文在研究和分析已有的改进算法基础上,首先基于优化理论中的Hooke-Jeeves模式搜索方法提出了一种新的快速训练算法(Hooke-JeevesPatternSearch,简称HJPS算法)。该方法由探测搜索和模式移动两个步骤组成,二者交替进行,使网络参数得到优化。由于神经网络的结构特点,即调整某个参数时,只影响与其相关的变量,所以可以只针对误差函数的变化部分计算。对于三层网络的四类参数,分别给出其简化的误差函数表达式,从而将原问题转化成一维搜索问题。使得训练过程被简化,从而保证快速收敛。该算法最大的优点是无需计算误差函数的梯度。并且一旦网络结构被确定,则不再需要人为地调节任何参数。
逐层算法(Layer-by-Layer,简称LBL算法)是一种非常有效的神经网络训练算法,本文将其与HJPS算法的思想结合,提出一种逐参数算法(Parameter-by-Parameter,简称PBP算法)。该算法在训练过程中考虑输出层和隐层的输入误差,在每一次迭代中,通过最小二乘法对权值和阈值依次直接求解,从而大大地提高了网络的收敛速度。在PBP算法中,对隐层期望输出,需要求解一个线性方程组,当网络的输出层与隐层之间的权向量线性相关时,方程组系数行列式为0,此时就会像LBL算法一样出现“stalling”问题。本文提出应用Moore-Penrose逆方法来解决这一问题。
为了避免在PBP算法中出现“stalling”问题,以及在对求出的隐层期望输出中超出sigmoid函数范围的部分进行截断时产生的截断误差,本文提出用目标规划的方法来求解隐层的期望输出。首先将求解隐层期望输出的问题转化成一个多目标线性规划问题,建立其目标规划模型,然后通过求解该目标规划模型来得到问题的解。通过这种方法,无论网络输出层与隐层之间的权向量是否线性相关,都可以根据目标规划模型给出一组满意解。而且,由于在模型中为相应的约束条件赋予较高的优先级,可以有效地避免截断误差-Ⅰ-的产生。基于目标规划方法提出的训练算法(Parameter-by-ParameterbasedonGoalProgramming,简称PBPGP算法),在两个实际应用问题中取得了令人满意的效果。
为了考察我们所提出的算法的实用性,我们将其应用到掌纹识别的研究中。
掌纹识别作为一种新兴的人体生物识别技术,近年来已受到越来越多的关注。本文提出基于平移不变Zernike矩(TranslationInvariantZernikeMoments,TIZMs)与模块化神经网络(ModularNeuralNetwork,MNN)的掌纹识别方法TIZMs&MNN。Zernike矩特征由于具有良好的旋转不变性,在图像处理和模式识别中已经得到了广泛的应用,本文采用平移不变的Zernike矩作为掌纹的特征,以此弥补定位方法的不足。由于掌纹识别是一个大规模的多分类系统,单个的前馈式神经网络很难胜任。我们采用模块化神经网络的思想,将一个多分类问题转化为多个简单的二类问题。每个二类问题由一个三层前馈式神经网络来解决,并采用本文提出的HJPS和PBP算法的融合HJ-PBP算法来训练。另外,在辨识过程中采用“跳跃式”的辨识方案,加快了识别的速度,减少了辨识时间。实验结果表明TIZMs&MNN是一种掌纹识别的有效方法。