红外与近红外光谱常用数据处理算法
一、 数据预解决(1) 中心化变换(2) 归一化解决(3) 正规化解决(4) 标准正态变量校正(标准化解决)(Standard Normal Variate,SNV)(5) 数字平滑与滤波(Smooth)(6) 导数解决(Derivative)(7) 多元散射校正(Multiplicative Scatter Correction,MSC)(8) 正交信号校正(OSC)二、 特性的提取与压缩(1) 主成分分析(PCA)(2) 马氏距离三、 模式辨认(定性分类)(1) 基于fisher意义下的线性判别分析(LDA)(2) K-最邻近法(KNN)(3) 模型分类方法(SIMCA)(4) 支持向量机(SVM)(5) 自适应boosting方法(Adaboost)四、 回归分析(定量分析)(1) 主成分回归(PCR)(2) 偏最小二乘法回归(PLS)(3) 支持向量机回归(SVR)一、 数据预解决(1) 中心化变换中心化变换的目的是在于改变数据相对于坐标轴的位置。一般都是希望数据集的均值与坐标轴的原点重合。若xik表达第i个样本的第k个测量数据,很明显这个数据处在数据矩阵中的第i行第k列。中心化变换就是从数据矩阵中的每一个元素中减去该元素所在元素所在列的均值的运算: ,其中是n个样本的均值。 (2) 归一化解决 归一化解决的目的是是数据集中各数据向量具有相同的长度,一般为单位长度。其公式为:归一化解决能有效去除由于测量值大小不同所导致的数据集的方差,但是也也许会丢失重要的方差。(3)正规化解决正规化解决是数据点充满数据空间,常用的正规化解决为区间正规化解决。其解决方法是以原始数据集中的各元素减去所在列的最小值,再除以该列的极差。该方法可以将量纲不同,范围不同的各种变量表达为值均在01范围内的数据。但这种方法对界外值很敏感,若存在界外值,则解决后的所有数据近乎相等。(4) 标准化解决(SNV)也称标准正态变量校正该解决能去除由单位不同所引起的不引人注意的权重,但这种方法对界外点不像区间正规化那样的敏感。标准化解决也称方差归一化。它是将原始数据集各个元素减去该元素所在列的元素的均值再除以该列元素的标准差。(5) 数字平滑与滤波数字平滑与滤波的目的在于消除随机误差与仪器的噪声,它是一种最简朴的滤波方法。平滑的实质是略去数据中较小的偏离,而保存具有较大偏离的部分。设滤波值为,原始信号值为,两者间的关系如下:式中,k为原始数据点的序号,2m+1表达窗口(滤波带宽)的大小,m为调节滤波带宽的参数。随着窗口的移动,即得到通过滤波后的7一系列信号值。滤波使数据的噪声减小,但在实际应用过程中应慎重选择滤波带宽,否则会扭曲数据结构。(6) 导数解决(7) 多元散射校正(msc)由于样品的不均匀性(粒度分布)常导致所测的样品光谱具有很大的差异性,不同批号的同同样品所测的光谱从表面看,也也许有很大的差异。在许多情况下,散射引起的光谱变化也许要大于样品成分引起光谱的变化。散射的限度与光的波长、颗粒度和样品的折射指数等有关,因此在整个光谱范围内,散射的强度是不同的,通常表现为基线的平移、旋转、二次和高次曲线。MSC是由Geladi等人提出的,目的是校正每个光谱的散射并获得较抱负的光谱。MSC法假定与波长有关的散射对光谱的奉献和成分的奉献是不同的,理论上,通过光谱上许多点的数据分析,可以把这两部分分开。MSC方法认为每一条光谱都应当与“抱负”光谱成线性关系,而真正的“抱负”光谱无法得到,可以用校正集的平均光谱来近似。因此每个样品的任意波长点下反射吸光度值与其平均光谱的相应吸光度的光谱是近似线性关系,直线的截距和斜率可由光谱集线性回归获得,并用以校正每条光谱,截距(即附加效应)大小反映样品独特反射作用,而斜率大小则反映样品的均匀性。二、特性的提取与压缩(1)主成分分析(PCA)又称抽象因子分析,主成分分析是把本来多个变量划为少数几个综合指标的一种记录分析方法,从数学角度来看,这是一种降维解决技术。思想:运用降维的思想,把多指标转化为少数几个综合指标。在研究多变量问题时,变量太多会增大计算量和增长分析问题的复杂性,人们自然希望在进行定量分析的过程中涉及的变量较少,而得到的信息量又较多。主成分分析是解决这一问题的抱负工具。(重要分析众多变量之间的相关性)1.1主成分分析计算环节 计算相关系数矩阵 (1)在(3.5.3)式中,rij(i,j=1,2,p)为原变量的xi与xj之间的相关系数,其计算公式为 (2)由于R是实对称矩阵(即rij=rji),所以只需计算上三角元素或下三角元素即可。 计算特性值与特性向量一方面解特性方程,通常用雅可比法(Jacobi)求出特性值,并使其按大小顺序排列,即;然后分别求出相应于特性值的特性向量。这里规定=1,即,其中表达向量的第j个分量。 计算主成分奉献率及累计奉献率主成分的奉献率为累计奉献率为一般取累计奉献率达8595%的特性值所相应的第一、第二,第m(mp)个主成分。 计算主成分载荷其计算公式为 (3)得到各主成分的载荷以后,还可以按照(3.5.2)式进一步计算,得到各主成分的得分 (4)1.2 matlab中主成分分析的函数:百思博客6hl Y#i m*D1.princomp.kd#irs9g0 功能:主成分分析百思博客 U4tGc Vy 格式:PC=princomp(X)百思博客"YOvgaw0v y(e5n PC,SCORE,latent,tsquare=princomp(X)百思博客xpVSEg 说明:PC,SCORE,latent,tsquare=princomp(X)对数据矩阵X进行主成分分析,给出各主成分(PC)、所谓的Z-得分 (SCORE)、X的方差矩阵的特性值(latent)和每个数据点的HotellingT2记录量(tsquare)。 2.pcacov 功能:运用协方差矩阵进行主成分分析 格式:PC=pcacov(X) PC,latent,explained=pcacov(X) 说明:PC,latent,explained=pcacov(X)通过协方差矩阵X进行主成分分析,返回主成分(PC)、协方差矩阵X的特性值(latent)和每个特性向量表征在观测量总方差中所占的百分数(explained)。 3.pcares 功能:主成分分析的残差 格式:residuals=pcares(X,ndim) 说明:pcares(X,ndim)返回保存X的ndim个主成分所获的残差。注意,ndim是一个标量,必须小于X的列数。并且,X是数据矩阵,而不是协方差矩阵。 4.barttest 功能:主成分的巴特力特检查 格式:ndim=barttest(X,alpha) ndim,prob,chisquare=barttest(X,alpha) 说明:巴特力特检查是一种等方差性检查。ndim=barttest(X,alpha)是在显著性水平alpha下,给出满足数据矩阵X的非随机变量的n维模型,ndim即模型维数,它由一系列假设检查所拟定,ndim=1表白数据X相应于每个主成分的方差是相同的;ndim=2表白数据X相应于第二成分及其余成分的方差是相同的。(2) 马氏距离主成分分析(PCA)的目的就是将数据降维,以消除众多信息共存中互相重叠的信息部分PCA方法得到光谱的主成分和得分,得分为压缩后的光谱数据使用得分数据代替原始光谱数据计算马氏距离,不仅能反映全谱数据信息,并且也能压缩参与计算马氏距离的变量数,并能保证肼矩阵不存在共线问题具体方法如下:在MATLAB中有函数mahal可以调用求解马氏距离。三、 模式辨认(定性分类)(1) 基于fisher意义下的线性判别分析(LDA)一、 相关知识已知个维样本数据集合其中,个属于类,个属于类。Fisher线性判别的基本原理是:把维空间的样本投影到一条直线上,形成一维空间。找到某个最佳的、最易于分类的投影方向,使在这个方向的直线上,样本的投影能分开得最佳。这就是Fisher法所要解决的基本问题。对的分量作线性组合 (F2.1)从几何意义上看,若,则每个就是相相应的到方向为的直线上的投影。的方向不同,将使样本投影后的可分离限度不同,从而直接影响辨认效果。寻找最佳投影方向,Fisher准则函数为 (F2.2)式中,为样本类间离散度矩阵,为样本总类内离散度矩阵。使取极大值时的即为维空间到一维空间的最佳投影方向: (F2.3)式中,为在维空间的两类样本的均值向量。运用先验知识选定分界阈值点,例如选择 (F2.4) (F2.5) (F2.6)式中,为投影到一维空间的两类样本的均值,为两类样本的先验概率。对于任意未知类别的样本,计算它的投影点: (F2.7)决策规则为,MATLAB中有函数fisheriris、classify可以调用(2) K-最邻近法(KNN)MATLAB里面的函数knnclassify可以调用(3) 模型分类方法(Soft independent modelling of class analogy ,SIMCA)(4) 支持向量机(SVM)一、 相关知识已知数据其中,表达个维样本集,或标记两类样本。对于一个新的数据,判别属于哪一类,即判断中的是还是。支撑向量机可表达为如下的二次规划问题: (F6.1)而相应的判别函数式为 (F6.2)其中:,。不同的核函数表现为不同的支撑向量机算法,常用的内积函数有以下几类:(1) 阶非齐次多项式核函数和阶齐次多项式核函数 与 (F6.3)(2) 高斯径向基核函数 (F6.4)(3) S型核函数 (F6.5)(4) 指数型径向基核函数 (F6.6)(5) 线性核函数 (F6.7)线性核函数是