令yk(n)为输入x(n)时神经元k在n时刻的实际输出,dk(n)表示相应的应有输出,则误差信号可写为:ek(n)=dk(n)-yk(n)(2.21)误差纠正学习的最终目的是使某一基于ek(n)的目标函数达到最小,以使网络中每一输出单元的实际输出在某种统计意义上最逼近于应有输出。一旦选定了目标函数的形式,误差纠正学习就成了一个典型的最优化问题,常用的目标函数是均方差判据,定义为:J=E12∑ke2k(n)(2.22)其中E为求期望算子。由于直接用J作为目标函数时,需要指导整个过程的统计特性,为解决这一困难通常用J在时刻n的瞬时值ε(n)代替J,即ε(n)=12∑ke2k(n)(2.23)利用最速梯度下降算法可得:Δwkj(n)=η(n)ek(n)xj(n)(2.24)其中η(n)>0为学习步长。
这种学习规则成功应用的神经网络模型非常广泛,如最简单的感知器学习算法,这也是神经网络的最原始的应用。而最经典的应用是反向传播学习算法,也称BP算法。
(2)Hebb学习
神经心理学家Hebb提出的学习规则可归结为“当某以突触(连接)两端的神经元的激活同步(同为激活或同为抑制)时,该连接的强度应增强,反之应减弱”。用数学模型可描述为Δwkj(n)=Fyk(n),xj(n)(225)式中yk(n),xj(n)分别为wkj两端神经元的状态,其中最常用的一种情况为Δwkj(n)=ηyk(n)xj(n)(226)由于Δw与yk(n),xj(n)的相关成比例,有时称之为相关学习规则。
(3)竞争(Competitive)学习
在竞争学习时网络各输出单元互相竞争,最后达到只有一个最强者激活。最常见的一种情况是输出神经元之间有侧向抑制性连接,这样众多输出单元中如有某一单元较强,则它将获胜并抑制其他单元,最后只有比较强者处于激活状态。最常用的竞争学习规则可写为Δwkj(n)=η(xj-wji),
0,若神经元j竞争获胜
若神经元j竞争失败(2.27)当学习系统所处环境平稳(统计特征不随时间变化),从理论上说通过监督学习可以学到环境的统计特征,这些统计特征可被神经网络作为经验记住。如果环境是非平稳的,通常的监督学习没有能力跟踪这种变化,为解决此问题需要网络有一定的自适应能力,对每一个不同的输入都作为一个新的例子对待,此时NN被当作一个预测器,基于前一时刻输出x(n-1)和模型在n-1时刻的参数,它估计出n时刻的输出(n),(n)与实际值x(n)比较,其差值e(n)称为“新息”,如新息e(n)为零则不修正模型参数,否则应修正模型参数以便跟踪环境的变化。
虽然人工神经网络在最近几十年来已经取得了长足的发展,特别是它在一些具体问题的应用,如TSP问题等,解决了以往经典学科的许多NP-hard问题。但是,就目前而言,神经网络这一学科的研究仍处在方兴未艾的进程中,越来越多的专业人士正投入其中,许多新型的神经网络模型正在建立,如Fir-NN等,而且这些模型的稳定性、抗扰性等也在进一步的讨论之中。也有越来越多的各行各业的学者正在给神经网络创造更多的应用方面,例如盲信号分离技术等。可以断言,几年乃至几十年后,神经网络的理论和应用必然会上一个新的台阶。
2.聚类分析法
在样本很多的情况下,对预测样本进行模式识别时,人们通常事先并不知道样品内在的分类。其中无监督模式识别方法在未知训练集样本的类别的情况下,同样可以对样本进行分类识别。聚类分析法便是无监督模式识别法的代表,其中的系统聚类法应用较为广泛,系统聚类是聚类分析中应用最为广泛的一种方法。
系统聚类分析又称谱系聚类法,在聚类分析中应用最为广泛。系统聚类法采用非迭代分级聚类策略,其基本思想是:先认为每个样本都自成一类,然后规定类与类之间的距离。开始,因为每个样本自成一类,类与类之间的距离是等价的,选择距离最小的一对合并成一个新的类,计算新类与其他类的距离,再将距离最小的两类合并成一类,这样每次减少一类,直至所有的样本都成为一类为止。根据样本的合并过程,能够得到系统聚类分析的谱系图(见图27),它能够详细展现从所有样本点自成一类到总体归为一类之间所有的中间情况,由粗到细地反映所有样本的分类情况,再根据一定的原则,如领域专家凭借经验或领域知识选取合适的分类阈值确定最终分类结果。
在系统聚类法中,类与类之间的距离定义有许多种,因此,也使系统聚类法按类间距离的定义分为多种不同类型的方法,有最短距离法、最长距离法、中间距离法、重心法、类平均法、可变类平均法、可变法和方差平方和法8种,下面简单介绍最常用的5种距离方法。
图2.7系统聚类分析最终得到的谱系图
(1)最短距离法:类与类之间的距离等于两类间最近两个样本之间的距离。
(2)最长距离法:类与类之间的距离等于两类间最远两个样本之间的距离。
(3)中间距离法:在中间距离法中,类与类之间的距离既不采用两类之间最近的距离,也不采用两类之间最远的距离。
(4)重心法:重心法是从物理意义出发,以类的重心代表此类,使用两类重心之间的距离来描述类间相似性。
(5)方差平方和法:有文献也称Ward方法,它采用不均匀的判断规则,从方差分析的观点出发,认为正确的分类应当使得类内方差尽量小,而类间方差尽量大。
采用不同的类间距离计算方法,其结果不完全一样,有时会得到截然相反的聚类结果。距离的选择是比较复杂的,尽管有一定的规律可循,一般来讲,最短距离法适用于长条状或S形的类,最长距离法、重心法和方差平方和法适用于椭球形的类。在初次进行聚类分析处理时,不妨多试探选择几个距离进行聚类,作对比分析,以确定合适的距离表达形式。
系统聚类分析的步骤可总结如下:
①聚类分析处理的开始是各样品自成一类(n个样品一共有n类),计算各样品之间的距离,并将距离最近的两个样品并成一类。
②选择并计算类与类之间的距离,然后将距离最近的两类合并,如果类的个数大于1,则继续并类,直到所有样品归为一类为止。
③最后绘制系统聚类谱系图。
系统聚类法能够得到完整的聚类谱系图,可以详细地说明从l类直到n类的所有聚类方案,是实践中应用最广的一种算法。但是系统聚类法的计算量大,而且共有8种类与类之间距离的选择方案,对于一些分析对象往往得到截然不同的聚类结果,很难说能够达到聚类分析试图反映样本点之间最本质的“抱团”性质的目标,并且让使用者也很难取舍。
3.支持向量机(SVM)法
支持向量机SVM(Support Vector Machines)是由Vanpik领导的AT&TBell实验室研究小组在1963年提出的一种新的非常有潜力的分类技术,SVM是一种基于统计学习理论的模式识别方法,主要应用于模式识别领域。由于当时这些研究尚不十分完善,在解决模式识别问题中往往趋于保守,且数学上比较艰涩,因此这些研究一直没有得到充分的重视。直到90年代,一个较完善的理论体系——统计学习理论(Statistical Learning Theory,简称SLT)的实现和由于神经网络等较新兴的机器学习方法的研究遇到一些重要的困难,比如如何确定网络结构的问题、过学习与欠学习问题、局部极小点问题等,使得SVM迅速发展和完善,在解决小样本、非线性及高维模式识别问题中表现出许多特有的优势,并能够推广应用到函数拟合等其他机器学习问题中,从此迅速地发展起来。
支撑向量机主要采用了分解算法思想,它将QP问题分解为一系列规模较小的子问题,希望通过对子问题的迭代求解,得到QP问题的全局最优解。这样解决了存储空间受限的问题,另一方面,要使算法可行,还必须解决诸如分解策略,迭代算法的收敛性,收敛条件,优化时间,以及如何利用解的稀疏性来优化加快速度等问题。
SVM的关键在于核函数,这也是最喜人的地方。低维空间向量集通常难于划分,解决的方法是将它们映射到高维空间。但这个办法带来的困难就是计算复杂度的增加,而核函数正好巧妙地解决了这个问题。也就是说,只要选用适当的核函数,我们就可以得到高维空间的分类函数。在SVM理论中,采用不同的核函数将导致不同的SVM算法。
支持向量机是以统计学理论为基础的,因而具有严格的理论和数学基础,可以不像神经网络的结构设计需要依赖于设计者的经验知识和先验知识。支持向量机与神经网络的学习方法相比,支持向量机具有以下特点:
(1)支持向量机是基于结构风险最小化(SRM,structural risk minimization)原则,保证学习机器具有良好的泛化能力;
(2)解决了算法复杂度与输入向量密切相关的问题;
(3)通过引用核函数,将输入空间中的非线性问题映射到高维特征空间中,在高维空间中构造线性函数判别;
(4)支持向量机是以统计学理论为基础的,与传统统计学习理论不同。它主要是针对小样本情况,且最优解是基于有限的样本信息,而不是样本数趋于无穷大时的最优解;
(5)算法可最终转化为凸优化问题,因而可保证算法的全局最优性,避免了神经网络无法解决的局部最小问题;
(6)支持向量机有严格的理论和数学基础,避免了神经网络实现中的经验成分。
支持向量机现在已经在许多领域,如:生物信息学,文本和手写识别等,都取得了成功的应用。
2.5近红外光谱仪
2.5.1近红外光谱的发展概述
20世纪50年代中期,近红外光谱仪器向商品化仪器发展。但这些仪器因噪声高,数据处理系统不完善,很难满足近红外分析的要求。到了60年代,为了克服上述缺点,Karl Norris研制开发了一种用近红外透射法测定谷物中水分的仪器。在测试水分的过程中,他发现谷物中的其他成分如脂肪、蛋白质和淀粉等对测定结果干扰严重,利用计算机相关技术,他选定了一套波长,通过样品对这些波长的吸收和反射值来测定谷物中水分。这样不仅能避免干扰,而且还能测定这些干扰成分的含量,从而真正开始了近红外光谱分析的应用,他选定的这套波长直到今天仍被大家所采用。