《武汉工程大学学报》  2017年05期 496-502   出版日期:2017-12-19   ISSN:1674-2869   CN:42-1779/TQ
近红外光谱无损检测技术中数据的分析方法概述


近红外光谱检测技术的成本低,对于样本无损伤、无污染、方便在线分析[1]. 在食品无损检测中得到了广泛的应用. 近红外光谱技术是建立一个稳定可靠的定性或者定量模型来实现数据样本的校准,常用于定性分析[2]. 定性分析中常用的方法有主成分分析法(principal component analysis,PCA)、模式识别方法等;定量分析中常用的方法主要是各种多元校正技术,如偏最小二乘回归(partial least squares ,PLS)、支持向量机(support vector machine ,SVM)以及神经网络算法(back propagation,BP)等. 下面将对几种常用算法的原理和应用进行比较分析,以便找到最适合对小样本数据进行分类的算法. 1 近红外光谱技术 红外光谱又可以称为分子振动光谱或者转动光谱. 近红外光谱主要是通过投射光谱技术和反射光谱技术获得. 近红外光谱主要采集样品的含氢基团的伸缩振动的倍频和合频信息,其中包含了反映物质特性的化学成分、分子结构和状态信息[3]. 由于近红外光谱技术在检测样品的过程中,不会对样品造成损伤[1],因此近红外光谱分析技术可以被用于食品的无损检测中. 近红外光谱通过合适的化学计量法对于样本进行定性分析,可以将已知的样品划分为子集,用以提高校正模型的预测精度. 定量分析是依据实验中得到的数据,通过相应的算法建立数学模型,并且使用模型计算出分析对象各项指标以及其数值的一种方法. 与其他的检测方法相比,近红外光谱技术便于实现在线分析和典型的无损分析技术[3]. 2 各类算法原理及分析 2.1 偏最小二乘法 偏最小二乘法(partial least squares ,PLS)是一种新的多元校正方法,可以建立多元的回归模型,主要是基于因子分析. 偏最小二乘法的原理是首先将样本的光谱矩阵[X]和光谱浓度矩阵[Y]进行分解,同时把包含在样本中的信息引入进来,分解后提取出样本中的m个主因子,如公式(1)所示: [X=TPT+E=k=1mtkpTk+EY=UQT+F=k=1mukqTk+F] (1) 式(1)中:测量矩阵[X]和[Y]的得分矩阵分别是[T]和[U];[tk]和[uk]分别表示光谱矩阵[X]的第k个主成分因子和浓度矩阵的第k个主成分因子;[pk]和[qk]表示主成分因子的载荷,m为成分因子的个数. 对于[U]和[T]进行线性关联,如公式(2)所示: [U=TBB=(TTT)-1TTY] (2) 在进行回归预测时,首先求出未知样品光谱矩阵的得分[TX],再根据公式(3)得到组分浓度预测值,如公式(3)所示: [YX=TXBQ] (3) 在该算法的整个运算过程中,矩阵的分解和回归分析是同时进行的,计算新的主成分时,首先交换[T]和[U],使[X]的主成分和测量矩阵[Y]直接关联. 偏最小二乘PLS算法分析是通过建立光谱数据和品种分类之间的回归模型来实现的[4]. 使用PLS分析得到的结果中,不仅可以建立更优化的回归模型,还可以同时进行主成分分析来简化数据结构,观察变量之间的相互关系等研究内容,提供更多的建模信息[4]. 所有的独立变量都可以包含在最终建立的回归模型中,PLS可以有效解决变量多重性问题. 目前,在光谱分析中多数应用都使用的多元校正方法. Mauer等[5]使用近红外光谱和中红外光谱对婴儿奶粉中三聚氰胺的含量进行定量检测,使用偏最小二乘法(PLS)建模可以快速检测出三聚氰胺含量最低值. 2.2 主成分分析 主成分分析是一种线性投影方法,它主要被应用在多元统计分析中,在不损害样本的原始信息的前提下,对高维数据进行降维处理,将其映射到低维空间中. PCA的基本思路是通过最优化方法简化样本的数据矩阵,降低维数,从原本样本的指标中,得到几个主成分,用来揭示样本中包含的信息. 计算步骤首先是对原始数据矩阵[X]进行拆分,如公式(4)所示: [X=TLT] (4) 借助投影矩阵[LT]将[X]投影到多维子空间. [T]中的列向量和[L]中的列向量是相互正交的关系,如公式(5)所示: [LTiLj=0tTitj=0 (i≠j)] (5) 重建后的数据变量相互独立,各主成分按照方差顺序进行排列,第一主成分包含了数据方差的绝大部分,排名越靠前的主成分,其所包含的的数据信息量越大[6]. 经过计算所得到的新的横坐标是样本原来变量的线性组合. 第一主成分元素可以表示为如下形式: [t11=x11l11+x12l21+…+x1plp1t21=x21l11+x22l21+…+x2plp1??tn1=xn1l11+xn2l21+…+xnplp1] (6) 主成分分析的对象减少,从而可以有效地降低分析的工作量和误差. 分析过程中只使用独立变量,这样可以达到消除噪音的目的. 对数据进行降维处理可以帮助信息的提取和聚类分析. 在区分产于绍兴和嘉善的中国米酒的实验中,使用到近红外光谱技术,在区分的过程中,同时使用到主成分分析法和偏最小二乘法建立判别模型,准确率高达100%[7]. 2.3 BP神经网络算法 BP算法又称为误差反向传播算法,是人工神经网络中的一种基于误差反向传播的监督式学习算法[8]. 在理论上,BP神经网络算法可以逼近任意函数,基本的结构是由很多非线性变化的单元组成,具有实现输入和输出数据高度非线性映射能力. 人工神经网络是对人类大脑结构以及信息处理运作过程进行模拟之后,提出的信息处理系统. 因此具有自学习和自适应的能力[9]. BP神经网络的计算包括正向和反向两个子过程. 正向传播过程中,是从输入层逐层转向传出层. 如果输出和期望不同的时候,则进行反向传播,把误差沿着正向传播路径的原路径反向传播回去,经过各个神经元的修改,使得误差达到最小. BP神经网络法的缺点是学习速度慢;在解决全局问题时,很有可能陷入局部最优化,使得训练失败;由于学习能力和泛化能力之间的矛盾,过程中容易出现“过拟合”现象[25]. Mutlu等[10]在预测面粉的蛋白质和水分含量等相关参数时,使用到近红外光谱进行检测和人工神经网络进行数据处理,得到的相关系数分别为0.952,0.948,0.933,0.920,0.917和0.832,有效的证明了近红外光谱结合神经网络算法可以很好地解决此类问题. 2.4 支持向量机算法 支持向量机算法的优化原则是采用以结构化风险最小化取代我们常用的经验风险最小化;基本思想是利用核函数代替向高维空间的非线性映射,对于样本,若是非线性可再分,则构建一个或多个甚至无限多个高维的超平面,在经过变换后的高维空间,利用这个超平面来对样本点进行分类. 一个好的超平面要求离分类边界最近的训练样本点的与分类边界的距离越大越好,这个距离被称之为间隔(Margin),这些样本点被称之为支持向量. SVM的目标就是要找出使间隔最大的分类超平面[11]. 给定的样本集,步骤一般如下:首先要将样本集分为训练集和测试集,训练集是[(x1,y1)(x2y2)?(xiyi)],其中横坐标[xi∈Rn]为输入变量的值,[yi∈Rn]为相应的输出值. 通过对训练集进行机器学习,寻求最优化的模式M(x),要求这个模式不仅满足训练集输入和输出的对应关系,而且对于测试集的样本输入变量的值进行预测,同样能得到效果较好的输出. 在支持向量机算法中,使用不同的核函数会产生不同的算法[25],因为SVM具有优秀的泛化能力,所以是一种适合小样本的学习方法. 在SVM进行分类的时候,起到决定性作用的是支持向量. 计算的复杂性取决于支持向量的数目,在实验的过程中只需要抓住关键的样本. SVM在运算的过程中很少涉及到概率测度及大数定律等规律,而且支持向量法整体具有较好的“鲁棒”性[12]. 在数据挖掘的实际应用中,一般要解决多类的分类问题[13]. 如:将SVM与粗集理论结合,形成一种优势互补的多类问题的组合分类器[14]. 攀玉霞等[15]在研究猪肉肉糜样本,采用支持向量机回归方法建立相应参数的模型模型. 在这个研究中,实验者以鱼糜为研究对象,使用支持向量机(SVM)建立其水分和蛋白质的定量分析模型. 2.5 最小二乘支持向量机算法 最小二乘支持向量机(least square support vector machines,LS-SVM)是支持向量机的一种类型[16],是在经典SVM的基础上改进得来的. LS-SVM既可以进行线性,也可以进行非线性的多元建模,支持少量的训练样本中高维特征空间的学习,是解决多元建模的一种快速方法[17]. 最小二乘支持向量机具有建模速度快、优化参数少、泛化能力强等优点,因此被广泛应用于近红外光谱技术检测的定量分析中[17]. 最小二乘支持向量机同时具有很好的非线性处理能力,可以用于快速建立多元模型[18]. 罗微等[4]在对白菜种子不同品种的鉴别的实验中,建立最小二乘支持向量机(partial least squares discrimination analysis, PLS-DA)和偏最小二乘判别的模型. 2.6 K最近邻分类算法 在K最近邻分类算法(K-nearest neighbor,KNN)算法中每个样本都可以用它最接近的k个邻居来代表. KNN算法的核心思想是在特征空间中,如果以一个样本为中心,它周围最相邻的k个样本,它们大多数属于某一个类别,则这个样本也属于这个类别,并且具有这个类别上其他k个样本的特性. 如图1所示,有三类不同样本,分别以方框、空心圆点和实心圆点表示. 其中以“+”标记出的样本,需要分析出它所属的类别. 在此图中以该样本作为圆心,画出两个圆,如果以小圆为界线,只有2个实心圆点落在小圆的范围内,此时按照KNN原理应该将样本划分为实心圆点那一类. 如果以大圆为界线,共有10个点落在了大圆的范围内,其中有3个方框类,有8个实心圆点类,按照KNN理论,也应该被划为实心圆点这一类. 这说明K值的大小对判别的结果是有一定的影响的. 如果K>1,则这K个最近邻样本不一定都属于这一类. 如果K=1,很自然这一个最近邻样本属于哪类,那么未知样本就属于此类[19]. KNN分类算法的最大优点是其适合于属性较多或者数据量很大的问题. 在进行数据处理的过程中,不需要提前设计分类器对训练样本进行分类,而是可以直接进行分类,确定每个类的类标识号,不需要估计参数,无需训练;在解决多分类的问题上KNN比SVM表现要好. KNN在实际的应用中存在下面两个问题:当对估计参数没有相应的限制时,训练集的数目又比较大,这时寻找最近邻所花费的时间较长. 其次,对于观测集的增长速度有较高要求. K最近邻分类算法被广泛应用于模式识别、数据挖掘、后验概率统计、相似性分析、计算机视觉和生物信息学等各种人工智能领域[19]. 倪力军等在鉴别真奶和假奶样品中各成分的实验中,使用近红外光谱对所有的样品进行检测,并使用改进的K最邻近结点算法和支持向量机法分别建立判别各类掺假物质的模型[20]. 2.7 线性判别分析法 主要用来判断样品的类别,即可以对样品中的成分进行定性分析,线性判别分析法(linear discriminant analysis,LDA)在医学诊断、气象学、市场预测、经济学和地质勘探等领域中均已起着重要作用[20]. LDA算法的基本思想是通过特征向量将已经分组的数据向低维的方向投影,使得同一个组的数据关系更为紧密,不同组的之间尽可能的分开. LDA的目标是要根据样本中的n个指标变量[x=(x1,x2,?,xn)T]建立一个最优分类判别函数,判别函数的建立最终是寻找一个矢量[ω=(ω1,ω2,?ωn)T],那建立一个如下的判别模型,如公式(9)所示: [f(ω,x)=(ωT·x)+b] (8) 矢量[ω]是个常数,称作阀值权,相应的决策规则则可表示为,如公式(10)所示: [χnew∈β1,f(ω,xnew)>0χnew∈β2,f(ω,xnew)<0] (9) [f(ω,x)=0]是相应的决策面方程,如公式(11)所示: [ωTx+ω0=0] (10) [f(ω,x)]也就是该决策面到d维空间中任一点[ω]距离的代数度量,根据其到该面距离的正负号,该决策平面将样本分类,并且确定出相应的类别. [ω(ω0≠0)]表示的是决策面在特征空间中的位置,当其值为0时,表示这个决策面过原点. 线性判别分析算法是从训练集中训练出判别函数,当得到新的样品时,根据相关的判别准则对其与判别函数之间的相似程度进行比较. 由于线性判别分析算法在应用的时候需要样本标签,属于有监督学习降维. 2.8 连续投影算法 连续投影算法(successive projections algorithm, SPA)是在线性空间中,使共线性达到最小化的一种前向变量选择算法[21]. 设定标集中样品个数为n,包含波长数为m,组成一个光谱矩阵[Xn×m],SPA从任选一个波长作为起始波长点,循环进行搜索,搜索投影中没有被引入波长组合的部分,每次都将最大的投影方向不断地引入,直到循环w(w