当前位置:首页 期刊杂志

近红外光谱定量模型的优选及在线应用*

时间:2024-05-04

陈 树 胡 斌

(江南大学物联网工程学院 无锡 214000)

1 引言

微生物发酵过程是利用微生物的新陈代谢活动来获取目标产物的过程,为了更好地控制发酵过程,需要利用实时分析工具对微生物发酵过程中的重要参数进行快速监测[1~2]。美国食品和药物管理局都认为生物传感器和光谱仪器结合过程分析技术(PAT)是生物发酵过程监测的有效工具,可以在整个发酵过程中实时监测生物和化学变量[2~3]。生物传感器作为发酵过程监测有着体积小巧和便于使用的优势,但是其应用范围不如光谱仪器[4~5],一些生物传感器更是造价不菲。利用光谱技术进行发酵过程监测的优势在于速度、灵敏度和安全性[6]。

近年来光谱技术结合化学计量学进行定量定性分析已经具有非常广泛的应用,主要的化学计量方法有多元线性回归(MLR)方法[7]、主成分分析(PCR)方法[8~9]和偏最小二乘法(PLS)方法[9~10]等等,其中采用PLS 作为近红外光谱分析的应用最多,由于光谱的高维度和强相关性,需要对光谱数据进行必要的预处理。近红外光谱模型的建立一般包括剔除奇异样本、划分样本集、选择区间并建立模型。很多学者利用光谱分析技术结合多种计量方法,对比优选出最佳的模型并应用到各个领域[11~15]。上述学者利用近红外光谱分析技术对相关领域做出了突出的贡献,本文借鉴前人的研究成果和经验教训,先对发酵过程中葡萄糖浓度参数定量分析模型进行优选,再从系统应用的角度出发,针对厂商配套的近红外光谱分析软件(如Antaris近红外光谱仪配套的TQAnalyst 光谱分析软件)的嵌入能力差、平台限制等问题,设计一种自由度更高,通用性更强的实时监测系统。

本文以发酵过程中葡萄糖浓度参数为研究对象,采用蒙特卡洛法剔除异常样本和SPXY 划分样本集,对比 TQAnalyst 软件算法以及 iPLS、BiPLS 和SiPLS 三种区间选择算法选择最佳区间,并建立偏最小二乘模型。然后利用RESULT 软件对外开放的光谱文件输出功能,采用JAVA 轮询方式监测实时光谱和websocket实时通信向用户推送预测结果。

2 系统总体结构

实验采用美国Thermo Nicolet公司Antaris近红外光谱仪,其配备了InGaAs 监测器、积分球漫反射采样系统、Result 操作软件以及TQAnalyst 光谱分析软件,服务器采用Tomcat8,监测平台采用微信小程序。系统的总体结构如图1所示。

图1 系统结构图

将Thermo 厂商配套的采集软件安装在服务器所在电脑上,设置完整的工作流即可完成发酵罐中发酵液的光谱采集,光谱采集软件将采集到的光谱信息以csv 格式文件布置到指定文件夹中,由后台程序以轮询方式监测光谱文件的产生,将新产生的光谱文件读取并解析出光谱数据,带入到模型中完成数据的预测,最后通过websocket 将预测数据广播出去,完整多终端远程在线实时监测,其工作流程如图2所示。

图2 实时监测工作流程

3 近红外光谱的采集与处理

3.1 光谱采集

采用Antaris 近红外分析仪的透射分析模块,扫描范围10000cm-1到40000cm-1,扫描次数为32,分辨率80cm-1,所有样本重复测定2次取均值,获取到葡萄糖样品溶液的光谱共269 个,原始光谱如图3所示,其中横坐标为波数,纵坐标为吸收度。

从整个FT-NIR 光谱图像来看,虽然有一定的漂移但是差别很小,需要依靠化学计量学以及不同的算法进行分析,光谱的主要吸收波段在4250cm-1~80000cm-1,4250cm-1~55000cm-1的吸收峰和吸收谷比较复杂,5500cm-1~7500cm-1波段有很清晰的吸收峰和吸收谷,分别处于59000cm-1和68000cm-1的位置,8000cm-1~100000 cm-1的吸收度较低。

图3 原始光谱

3.2 异常样本剔除算法

异常样本的剔除是建立稳健模型的基础,实验对比分析TQAnalyst软件方法、欧式距离法、马氏距离法,以及蒙特卡洛采样法并选择最佳方法。欧式距离法表达的是数据在特征维度空间的真实距离,而马氏距离法表达了数据的协方差距离,即标准化数据与中心化数据之差,以此来度量样本的相似程度。蒙特卡洛采样法则通过计算预测残差均值和方差来剔除异常样本。

原始样本共有269 个光谱数据,采用TQAnalyst软件方法,欧式距离法,马氏距离法和蒙特卡洛法各自剔除了15 个异常样本,为了更好地评价剔除异常样本三种算法的优劣,采用留一法交叉验证均方根误差和相关度来检验,其公式如下:

其中m 是样本个数,yp和yt预测值和真实值。留一法交叉验证是将m 个样本中依次留出1个作为验证集,其他m-1 个作为校正集,最后得到的所有的误差取均值。如表1 所示,剔除异常样本后的精度明显增加,而采用蒙特卡洛采样法来剔除异常样本,精度最高,相关度最大。

表1 剔除算法比较

4 近红外定量模型优选

4.1 划分样本集

有效地划分样品集可以提高模型的泛化性能,本实验采用Galvao 提出的SPXY 法来划分校正集,SPXY 计算距离考虑到了样本的特征距离dx 和化学值距离dy,公式如下,式中N 为样本的个数,M 为样本的维度,x为特征,y为化学值。

SPXY 将 dx(i,j)和 dy(i,j)分别除以各自的最大值,采用dxy(i,j)作为样本距离的检验标准,其优点在于能够改善模型的预测能力,公式如下:

按照近红外光谱分析校正集和验证集大约3∶1 的比例,使用 SPXY 法将 254 个样本中划分 190 个作为校正集,64个验证集。

4.2 区间选择算法

为了解决近红外光谱数据的强重叠性,本实验采用Nørgaard 等人提出的区间偏最小二乘(iPLS)、反向区间偏最小二乘(BiPLS)和联合区间偏最小二乘(SiPLS)来优选光谱区间。iPLS是将整个光谱区间划分为n 等份,对每一组子区间建立PLS 回归模型,采用交叉验证均方根误差作为验证标准,从而选择出整个光谱最优的区间;BiPLS 同样将光谱区间划分为n 等份,每一次都排除一个最差区间,在剩余区间内建模,直到最后一个区间为止,根据均方根误差来选择合适的区间范围;SiPLS 是将划分的n 个区间联合若干个子区间进行建模预测,以联合区间的RMSECV选择出最佳的联合区间。

4.3 模型评估参数

采用相关系数R,预测均方根误差RMSEP 和残留预测偏差RPD 对模型性能进行评估。相关系数表示了预测值与真实值之间的相关程度;RMSEP 表示预测值与真实值之间的标准差,越小代表了准确性越高;RPD 是标准差与均方根误差之比,越高则模型的分辨能力越强(据ICC 等国际分析组织设定RPD 大于3 则表明模型预测能力较好),单一的RMSEP 并不能表明模型的实用价值,因此根据上述评价指标,对模型进行综合评测,其公式如下:

其中n 是验证集样本个数yi和yi是第i 个预测样本的预测值和真实值,y是预测样本的平均值。

4.4 定量分析实验对比

将已经剔除异常样本的254 个样本根据SPXY算法划分为190个校正集和64个验证集,对校正集进行 RESULT 软件方法、iPLS、BiPLS 和 SiPLS 四种方法的区间选择并建模预测,进而对比出最佳优选的方案。

TQAnalyst 软件是Thermo 厂商配套的RESULT系列软件之一,用来对近红外光谱数据进行定量和定性分析,将划分好的校正集和验证集导入到TQAnalyst中,标定好化学值后开始分析数据。TQAnalyst 的算法给出的推荐区间的序号为134~262,如图4 为 TQAnalyst 预测结果,预测均方根误差为5.32,相关系数为0.9439。接下来对比分析光谱分析应用最为广泛的三种iPLS算法。

图4 TQAnalyst软件预测结果

区间偏最小二乘(iPLS)实验中,将全光谱划分为12~16 个子区间,分别对每一个子区间建立PLS回归模型,选择RMSECV 最小的作为回归模型,由表2 可知将光谱划分为16 个区间,选择第9 个区间,主成分数(PCs)设为10 的时候,iPLS 的验证均方根误差最小为1.9363,得到的模型最佳。

表2 iPLS实验

反向区间偏最小二乘(BiPLS)实验中,将全光谱划分为16~21 个子区间,每一次剔除其中1 个子区间,采用剩余联合子区间来建立模型,剔除到剩余1个子区间为止,选择适当的区间长度来建立PLS回归模型,由表3 可知当区间划分为20 个,区间长度选择 710 个,主成份数设为 13 的时候,BiPLS 的验证均方根误差最小为1.2128,得到的模型最佳。

表3 BiPLS实验

联合区间偏最小二乘(SiPLS)实验中,将区间划分为5~12个,每次联合其中2个作为区间来建立PLS回归模型,克服了iPLS单一区间的特征缺失问题。由表4可知,当光谱区间划分为5个子区间,选择第2和第4个子区间作为联合区间建立的PLS模型,区间长度为597个,主成份设置为13,其验证均方根误差最小为1.0526,相关度达到0.9978,残留预测偏差达到14.7888。

表4 SiPLS实验

4.5 模型优选

上述区间选择算法结合TQAnalyst软件和偏最小二乘法建模所得的模型如表5 所示,采用验证均方根误差、相关度和残留预测偏差对模型预测效果进行对比分析。

表5 各个区间建模的优选模型

对发酵过程中葡萄糖参数的预测分析,TQAnalyst软件所选取的区间明显较差,预测精度远远低于其他方法,选取出的最优iPLS 模型只选择单一模型会造成一定的信息缺失,其验证均方根误差明显高于 BiPLS 和 SiPLS,效果较差;而 BiPLS 通过一步步剔除最差子区间得到的模型,比iPLS 效果好很多;最终得到的最佳模型是区间长度为597 的SiPLS 模型,采用此区间结合TQAnalyst 算法和PLS算法对比显示,PLS的预测效果更好,结果如图5所示,其验证均方根误差为1.0526,分别比iPLS 和Bi-PLS 要低45.7%和13.2%,相关度达到0.9978,预测真实差值大部分维持在2g 以内,符合发酵过程中监控关键参数的容错范围内,并且该模型的RPD达到14.7888,根据ICC 等国际分析组织设定的RPD 大小,可以看出本实验采用的SiPLS 模型具有很好的实用意义。

图5 SiPLS模型预测结果

5 系统设计

将选择出的最优模型嵌入到实时监测系统中,预测出发酵过程中关键数据的实时变化,可以让发酵过程便于优化和控制。但是目前绝大多数研究者是依赖厂商配套软件完成预处理、建模和预测的过程,如Antaris 光谱仪器配套的RESULT 系列软件,会造成模型限制,拓展性不足和平台不便等缺点。本文所设计的基于微信小程序和websocket的实时监测软件,既有微信小程序多平台显示的效果,又有websocket实时监测的能力,同时可以拓展其他算法来预测不同的生物量。

5.1 软件流程

实时监测系统的后台程序流程如图6 所示,用户使用微信小程序开启websocket,后台开始运作,首先开启一个线程记录当前目录下的所有历史光谱文件,格式为*.csv,将其保存到缓存区,以轮询的方式监测新光谱数据的产生,一旦产生新光谱数据,解析出光谱数据和所选模型,将光谱数据代入模型预测出结果,最后采用websocket 将预测结果推送给当前websocket 在线用户,微信小程序显示出时间和数据并绘制出过程曲线。

图6 后台程序流程图

微信小程序以快速开发和无需安装等特性被用户认同,本系统的展示平台采用微信小程序设计,以两个页面来展示实时监测数据,分别为实时过程数据页面和实时过程变化曲线页面,在实时过程数据页面点击监测按钮开启监测,微信小程序中开启监测是以wx.connectSocket 来连接后台websocket服务,然后使用wx.onSocketMessage来监听后台推送的数据,后台将预测的实时数据保存为json格式并推送到所有websocket 连接用户,微信小程序的实时过程数据页面接收到此数据后以全局变量的形式保存下来,可以在实时过程曲线页面可以读取到实时过程数据并采用echarts绘制曲线,完成历史到当前的变化曲线显示。

5.2 测试系统

对实时在线监测系统进行测试,需要先配置服务器环境,微信小程序要求配置为https和wss协议以及相关证书,然后上传微信小程序的前端代码到微信官方审核,再将后台程序以war 包的形式打包到Tomcat8服务器,系统的运行环境配置完成。

开启Tomcat8 服务,手机打开微信小程序,开启监控状态开始实时监测光谱数据的变化以及预测结果。如图7所示是微信小程序端的测试结果。

图7 微信小程序实时监测测试

实时监测共两个页面,图7(a)是实时过程数据,开启在线监测就可以看到采集时间的预测值,最上方是最新时刻的数据,图7(b)是实时过程曲线,曲线记录了从开启监测到当前时间的历史变化曲线。测试表明该实时监测系统具有良好的实时效果,预测模型满足现场精度要求。

6 结语

论文采用近红外光谱分析技术对发酵过程中葡萄糖浓度参数建立定量分析模型,对比实验表明蒙特卡洛法剔除异常样本的效果最好,留一法交叉验证均方根误差(LOORMSECV)达到1.3105,与光谱分析软件 TQAnalyst 和 iPLS,BiPLS 方法相比,联合区间偏最小二乘法(SiPLS)优选区间最佳,区间为300~598 和897~1194,所建立的PLS 模型预测精度最好,均方根误差(RMSE)为1.0526。论文所设计在线系统采用JAVA 轮询的方式监测RESULT软件的光谱输出路径,解析光谱数据并将选择的最优模型嵌入其中进行在线预测,最后采用websocket方式建立JAVA 后台与微信小程序前端的全双工通信。测试表明,系统具有自由的模型嵌入能力,精准的预测效果以及良好的多终端多平台远程监测特点。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!