连续投影算法(SPA)是一种能够很好地消除波长变量间共线性问题的变量选择方法,利用向量投影来优选出冗余度低、共线性小又能反映样本光谱关键信息的有效特征波段,通过减少建模输入变量的数目来提高建模速度并降低模型复杂程度,最大限度地避免光谱信息重叠。SPA以其简单、快速的优势被应用于选取多种样品波长,获得了较好的结果。为了提高分析模型的精度,本书尝试应用SPA进行谱区筛选和模型优化,其算法原理如下:校正集样本数目M和波点数K组成表面增强拉曼散射光谱的吸光度矩阵XM×K,令xk(0)为初始迭代向量,N(N>M-1)为需要提取的波段数目,SPA从一个波段出发进行前向循环选择,每次循环时计算该波段在其他波段上的投影,若某一波段上投影向量最大,则将其加入波段组合中,N次循环中每次循环选中的波段都与上次循环选中的波段有最小的线性关系,具体步骤如下:
1)初始化:n=1,在表面增强拉曼散射光谱吸光度矩阵中任选一个列向量xj进行第一次迭代,记为xk(0)(即k(0)=j);
2)集合S定义为:S={j,1≤j≤K,j∉{k(0),…k(n-1)}},即未被选入的列向量,计算xj在S上每一个列向量的投影:
Pxj=xj-(xj-xk(n-1))xk(n-1)(xTk(n-1)-xk(n-1))-1 (2-15)
3)记录最大投影的序号:
k(n)=arg(max‖Pxj‖,j∈S) (2-16)(www.xing528.com)
4)以最大投影作为下次循环的投影向量:
xj=Pxj,j∈S (2-17)
5)n=n+1,如果n>N回到2)继续投影。
循环结束得到M×K对波长组合,使用每对xk(0)和N组合建立定量模型,预测方均差最小时所对应的x∗k(0)和N∗为最优波长组合。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。