EDA驿站

去浮躁,求真知;重实干,勤与研

  博客园  :: 首页  :: 新随笔  ::  ::  :: 管理

当前电子鼻系统数据处理中常用的模式识别技术

当前电子鼻数据处理中所采用的模式识别算法主要包括k近邻法(k-Nearest Neighbor ,k-NN)、聚类分析(Cluster Analysis ,CA)、判别分析(Discriminant Analysis, DA)、主成分分析(Principal Component Analysis, PCA)、反向传播人工神经网络(Back-Propagation Artificial Neural Networks, BP-ANN)、概率神经网络(Probabilistic Neural Network, PNN)、学习向量量化(Learning Vector Quantization, LVQ)、自组织映射(Self-Organizing Map, SOM)等。其中PCABP-ANN应用最为广泛。上述模式识别算法按输入输出之间的关系可分为线性算法(k-NNCADAPCA)和非线性算法(BP-ANNPNNLVQSOM)两类。线性算法只能实现输入到输出的线性映射,它们都是基于统计理论而发展起来的。非线性算法,顾名思义,可实现输入到输出的非线性映射,与神经网络理论有关,由于这类算法能实现更复杂的映射关系,所以通常其识别效果要优于线性算法。模式识别算法还可以按其它方式进行分类,如按是否建立模型可分为基于模型的算法(如PCA)和非基于模型的算法(如SOMBP-ANN等),按训练过程中是否有教师样本可分为带监督学习的算法(如BP-ANNLVQ等)和无监督学习的算法(如k-NNSOM等)。

一、基于统计理论的模式识别算法

这类算法包括k-NNCADAPCA等,它们的共同特点是分类主要利用样本间的相似性(一般为距离)、假设输入信号与输出类别之间存在线性关系以及只能构造线性的分类边界等。

1.1 k-NN

近邻法(NN)是一种最简单的非参数模式识别方法,它主要依据样本间的多维空间距离来实现分类。令目标集Dn{x1,x2,…,xn},其中每一个样本xi所属的类别均已知(已标记)。对于测试样本x,在集合Dn中距离最近的样本标记为x′。那么NN就是把测试样本x归到x′所属类别。k-NN是近邻规则的一个推广,它将测试样本分类为与它最接近的k个(为避免二义性,通常取k为奇数)近邻中出现最多的那个类别。

显然,当k1时,k-NN就是前述的NN。常用的距离计算函数有欧氏(Euclidean)距离:

和马氏(Mahalanobis)距离:

其中

式中xixj是矢量集{x1,x2,…,xm}中的2个矢量。

由上述计算公式可知,样本间的距离计算是对其单位敏感的,比如将某一维的度量单位由米改为毫米,其计算结果可能会产生很大的变化。克服这一问题的常用方法是对数据进行归一化预处理。

1.2 CA

CA是基于整个数据集内部存在若干"分组""聚类"为出发点而产生的一种数据描述方法。CA是一种典型的无监督学习算法。由于每个子集中的点具有高度的内在相似性,凭借这些内在的相似性可以实现对样本空间的"自然分组"。相似性的度量是聚类算法成功的关键。最简单也是应用最多的相似性度量还是前面提到的欧氏距离和马氏距离。实际在电子鼻模式识别中采用的聚类分析仅为一种特殊的名为层次聚类(hierarchical clustering)的聚类方法,其思想是一个大类包含很多子类,子类又包括很多更小的子类,就如生物学中的门-纲-类-子类-目-科的分类方法一样,分类的结果以树图(dendrogram)的方式表示。虽然都是计算样本之间的距离,但聚类分析与近邻法不同,它需要在样本距离之间设置一个阈值,小于该阈值就可归为一类。阈值的设定是非常关键同时又是很困难的,太大所有样本会被归为一类,太小每个样本又会单成一类。目前很少用聚类分析单独分析数据,在电子鼻应用中,它通常扮演一个辅助的角色。

1.3 DA

判别分析又称为判别函数分析(discriminant function analysisDFA),是指由x的各个分量的线性组合而成的函数:

式中w为权向量,w0为阈值。对于两类问题,如果g(x)>0,则判定为w1类;如果g(x)<0,则判定为w2类;如果g(x)=0,则x可以归到任意一类,或者把这种情况按拒识处理。方程g(x)0定义了一个判别面,在多维空间中这个判别面称为超平面(hyper plane)。对于两类识别问题,该超平面将多维空间划分为两个区域,判别分析因此而得名。为提高识别率,可以在上式中引入二次或更高次项,此时g(x)转变成为广义判别函数,超平面也随之变换为超曲面。一般电子鼻传感器阵列中传感器的数量较多,这给求解上式带来了"维数灾难"问题。所以在判别分析中最常用的是一次线性判别函数,最多不超过二次判别。理论上求解权向量和阈值的方法很多,当在实际中常用的只有两种:基本梯度下降算法和最小均方算法(least-mean-squaredLMS)。LMS算法能大大缩短计算时间和减小存储空间。

1.4 PCA

PCA又称为主成分分析,是在电子鼻领域应用最多的两种算法之一。设有n个样本,m个变量,则原始测量数据的矩阵向量为

将原始数据标准化,得到标准化的测量值:

式中

jx为变量j测量值的样本平均值;sj为变量j测量值的样本标准差。将标准化的测量值组成对应的新矩阵向量,并求其协方差矩阵,然后求协方差矩阵的特征值,按大小顺序排列得λ1≥λ2≥…≥λm,对应特征向量为β1β2βm。所求特征向量按顺序分别称为第12m主成分。各主成分的贡献率按下式进行计算:

取前p个(p≤m)主成分,使得它们的累计贡献率大于80%,计算标准化后的测量值在前p个主成分方向上的得分Z

主元分析的实质就是寻找在最小均方意义下最能够代表原始数据的投影方法,如下图所示。主元分析方法易于理解,便于实现,通常取原始数据在前2个或前3个主成分上的投影进行绘图,为保证绘图的可靠性,要求前2个或前3个主成分的累计贡献率应在80%以上。

二、基于人工神经网络的模式识别算法

这类算法包括BP-ANNPNNLVQSOM等。人工神经网络算法是通过对生物神经元的数学模拟而发展起来的。从本质上看,人脑无论多么复杂,都可以看作是由大量神经元组成的巨大神经网络。人工神经网络通过从神经元的基本功能出发,逐步从简单到复杂组成各种网络,实现了输入、输出之间的非线性映射。就分类而言,人工神经网络可以产生复杂的类边界,这使得它具有比统计方法更强的分类能力。

2.1 BP-ANN

反向传播人工神经网络是在电子鼻领域应用最多另一种算法。该算法功能强大,易于理解,训练简单。BP-ANN在概念和算法上的简便性,以及它在众多的实际问题中的成功应用,使得它目前在电子鼻模式识别中占据了主流地位。

BP-ANN的结构如下图所示,其学习过程由信号的正向传播与误差的方向传播2个过程组成。正向传播时,样本从输入层传入,经各隐层逐层处理后(通常只有1个隐层,以避免提高计算复杂性),传向输出层。各层神经元之间依靠不同的权值相连接,某神经元的输入为上层所有神经元输出的加权和,通过一个激励函数的变换产生该神经元的输出。激励函数有阶跃函数、线性函数,应用最多的还是Sigmoid函数。若输出层的实际输出与期望的输出(教师信号)不符,则转入误差的反向传播。误差反传是将输出误差通过隐层向输入层逐层反传,并将误差分摊给各层神经元,从而获得各神经元的误差信号,然后按梯度下降的方向对各神经元的权值进行调整。这种信号正向传播与误差反向传播的各层权值调整过程周而复始地进行,直到网络输出误差减小到可接受的程度,或进行到预先设计的学习次数为止。训练好的网络即可用于预测计算,记录一个BP-ANN需要存储其网络结构、权值及激励函数等。

与前述基于统计理论的算法相比,BP-ANN最大的优点是它可以实现输入和输出数据之间的非线性映射。在电子鼻信号处理中,输入和输出之间往往是非线性的,这就使得BP-ANN应用广泛,且效果良好。BP-ANN在应用中的难点包括网络结构的设计、隐层神经元个数的选择、激励函数的选取、权值的初始化、网络误差的设定等。上述参数选择还没有统一的标准,通常根据研究人员的经验进行选择。有一些改进算法,如增加动量项、自适应调节学习率等可以在一定程度上改善BP-ANN算法。

2.2 PNN

PNN是一种非参数的概率密度估计方法。PNN网络通过下面的方式进行训练:首先将训练样本归一化。第一个归一化后的样本x1被置于输入层单元上,同时将连接输入单元和模式层单元的连接初始化为w1=x1,然后从模式层的第一单元到类别层中代表x1所属类别的那个单元之间建立一个连接。同样的过程对剩下的各个模式单元都重复进行,即wk=xk。这样操作后,可以得到一个输入层与模式层之间完全连通,而模式层到类别层之间稀疏连接的网络。

训练好的网络就可以用于分类:首先将归一化的测试样本x提供给输入节点,每一个模式层单元都计算一个净值,然后通过激励函数(通常为高斯函数)映射到类别层单元,每一个类别单元把与它相连的模式层单元的输出结果相加,得到每一类的条件概率密度,根据概率密度的大小进行分类。PNN最大的优点是学习速度很快,因为每个样本仅需提供一遍,但对存储空间要求比较高。PNN算法的另一个优点是新的训练样本很容易加入到训练好的分类器中,这一特点对于在线的应用特别有意义。

2.3 LVQ

LVQ属于一种混合型网络,它由竞争层和线性层两部分组成,采用监督学习方式对竞争层进行训练。学习向量量化的分类结果取决于输入向量之间的距离。LVQ网络与竞争网络十分相似,区别在于LVQ网络的竞争层不是直接输出分类信息,而是给出一个子类信息,一个类可以有几个不同的子类构成。LVQ网络利用线性层实现子类到类的组合,这样就克服了竞争网络只能产生凸的判定边界的局限,可以产生复杂的类边界。LVQ网络目前应用不多,但其分类能力十分强大。Shaffer等曾对比了DAPCANNBP-ANNPNNLVQ等多种算法在传感器阵列信号处理中的应用,结果表明LVQ具有最佳的分类效果。LVQ算法训练的时间比较长,这在一定程度上限制了它的应用。

2.4 SOM

SOM是一种基于竞争学习的特殊神经网络。网络的输出神经元之间相互竞争以求被激活,结果在每一时刻只有一个输出神经元能获得输出值,所以该算法又被称为"胜者为王"winner-takes-all)算法。在自组织映射中,神经元被放置在网格节点上,这个网格通常是一维或二维的。在竞争学习过程中,神经元依据不同的输入进行选择性地调整,从而实现由输入模式到输出模式之间的拓扑有序映射(topologically ordered map)。该算法的目标就是用低维目标空间的点去表示高维原始空间的点,使得这种表示尽可能地保留原始的距离或相关性。SOM算法的实现过程可以简述为:初始化-取样-相似性匹配-更新-重复上述过程直到无明显变化。自组织映射对存储容量要求不高。而且,如果从原始空间到目标空间存在非线性映射结构,该算法表现得非常出色。从对数据进行降维处理来看,SOM算法正好和前面提到的主元分析法形成互补,即线性输入-输出适合用PCA法进行降维,而非线性输入-输出则应采用SOM网络降维。

posted on 2008-10-22 23:01  易学  阅读(1461)  评论(0编辑  收藏  举报