本发明涉及红外光谱定量分析模型技术领域,更具体而言,涉及一种基于迁移学习的跨组分红外光谱模型移植方法。
背景技术
随着化学计量学的飞速发展,红外光谱技术以其无损、快速、无污染和成本低等特点,在农业、工业等诸多领域得到了广泛的应用和推广。然而,在实际的应用过程中,由于使用的红外光谱仪生产厂家不同、型号不同,致使已建立的定量分析模型无法适用,而若为每台仪器建立一个定制化的定量分析模型,则需要投入大量的人力、财力和物力,显然该思路并不可取。现有模型移植方法如斜率截距法、直接校正法、分段直接校正法、shenk’s法等,讨论的均是定量分析模型在不同仪器之间的移植,即事先准备好若干标准样本,分别在主仪器和目标仪器上对这些样本进行光谱扫描,接着利用数学方法确定两者间的映射关系。对于新的待测样本,在目标仪器上扫描光谱后,利用映射函数对其进行转换,再使用主仪器上建立的原模型进行预测。
但是,现有模型移植方法仅能够针对同一组分,且需要制备标准样本,无法实现不同组分间的定量分析模型移植。因此,研究更具普遍意义的跨组分模型移植方法,使得在某台红外光谱仪上已经建立好的某一组分定量分析模型能够快速移植到另一组分的定量分析模型上,具有重要的研究意义和应用价值。
技术实现要素:
为了克服现有技术中所存在的不足,本发明提供一种基于迁移学习的跨组分红外光谱模型移植方法,解决现有的红外光谱定量分析模型移植方法仅针对同一组分在不同仪器间的移植,无法解决不同组分间的模型移植问题。
为了解决上述技术问题,本发明所采用的技术方案为:
一种基于迁移学习的跨组分红外光谱模型移植方法,包括以下步骤:
s1、将源组分样品数据集
其中
一般情况下m>>n,即目标组分数据集仅包含少量样品,若直接用该数据集建立红外光谱定量分析模型,则模型的泛化性能通常较差;
s2、考虑到扫描获得的红外光谱的波长点数(即输入的变量数)较多,为了降低模型的复杂度和减少计算量,对新的样品数据集中输入矩阵{xk}(k=1,2,…,m+n)进行主成分分析(pca),并根据累计贡献率确定选取的主成分个数l;
s3、进行参数初始化
s4、迭代训练多个弱定量分析模型,当达到最大迭代次数时,输出强定量分析模型。
所述s3中参数初始化具体包括:源组分样品初始权重
所述s4中迭代训练弱定量分析模型,模型的输入为主成分分析计算出的得分矩阵s的前l列sl;当迭代初始次数k≤最大迭代次数n时,模型的输出为yk(k=1,2,…,m+n),训练得到弱定量分析模型fk(sl;θ)。
所述训练得到的弱定量分析模型fk(sl;θ)满足如下的约束条件:
其中θ为定量分析模型的参数;w为源域和目标域中每个样本的权重大小。
即,所构建的弱定量分析模型fk(sl;θ),要能够使得对于合并后的新样品数据集{xk,yk}(k=1,2,…,m+n)而言,预测值与真实值之间的加权误差平方和最小。
所述定量分析模型包括线性模型,如多元回归、偏最小二乘等;非线性模型,如人工神经网络、支持向量机、极限学习机等。
所述s4在每次迭代过程中,动态调整源组分和目标组分的样本权重大小。
所述源组分和目标组分的样本权重大小调整过程如下:
真实值为yk,假设预测值为tk(k=1,2,…,m+n),则预测值与真实值之间的误差为:
弱定量分析模型的权重更新为
更新循环变量:k=k+1。
所述s4中强定量分析模型输出过程如下:
对于目标组分的一个新样品x,首先利用主成分分析方法提取其前l个主成分,记为xl,将xl送入每个弱定量分析模型fk(·),并通过加权平均的方法进行集成汇总,集成后得到强定量分析模型预测结果
其中,βk为弱定量分析模型的权重。
与现有技术相比,本发明所具有的有益效果为:
本发明提供一种基于迁移学习的跨组分红外光谱模型移植方法结合主成分分析、adaboost集成学习、迁移学习等理论,提出一种新型的更具普遍意义的跨组分模型移植方法,利用包含较多样品的源组分数据集,以提升目标组分定量分析模型的性能,可以解决不同组分间的模型移植问题。与现有的同一组分不同仪器间模型移植相比,该方法更具普遍意义和通用性。
附图说明
图1为本发明提供的一种基于迁移学习的跨组分红外光谱模型移植方法流程图;
图2为不同仪器下玉米红外光谱图;
图3为源组分和目标组分数据集主成分分析结果;
图4为源组分与目标组分数据集样品权重变化趋势图;
图5为目标组分测试集预测结果。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,一种基于迁移学习的跨组分红外光谱模型移植方法,包括以下步骤:
s1、将源组分样品数据集
其中
s2、对新的样品数据集中输入矩阵{xk}(k=1,2,…,m+n)进行主成分分析(pca),并根据累计贡献率确定选取的主成分个数l;
s3、将相关参数进行初始化:源组分样品初始权重
s4、迭代训练多个弱定量分析模型,模型的输入为主成分分析计算出的得分矩阵s的前l列sl;当迭代初始次数k≤最大迭代次数n时,模型的输出为yk(k=1,2,…,m+n),训练得到弱定量分析模型fk(sl;θ);
其中训练得到的弱定量分析模型fk(sl;θ)满足如下的约束条件:
其中θ为定量分析模型的参数;w为源域和目标域中每个样本的权重大小;
每次迭代过程中,动态调整源组分和目标组分的样本权重大小,调整过程如下:
真实值为yk,假设预测值为tk(k=1,2,…,m+n),则预测值与真实值之间的误差为:
弱定量分析模型的权重更新为
更新循环变量:k=k+1;
当达到最大迭代次数时,输出强定量分析模型;
其中强定量分析模型输出过程如下:对于目标组分的一个新样品x,首先利用主成分分析方法提取其前l个主成分,记为xl,将xl送入每个弱定量分析模型fk(·),并通过加权平均的方法进行集成汇总,集成后得到强定量分析模型预测结果
所述定量分析模型包括线性模型,如多元回归、偏最小二乘等;非线性模型,如人工神经网络、支持向量机、极限学习机等。
实施例1:
数据来源为80个玉米样本的近红外光谱数据集,其光谱扫描范围为1100-2498nm,扫描间隔为2nm,每个样本包含700个波长点。分别用2台近红外光谱仪对所有玉米样本进行扫描,为了表述方便,2台仪器的名称分别命名为:m5和mp5,如图2所示。在该数据集中,共有四种组分:水分、玉米油、蛋白质和脂肪酸。
在本实施例中,随机从整个数据集中挑选50个样品,对应的蛋白质组分和仪器m5扫描得到的光谱构成源组分训练集
若采用传统的定量分析模型建立方法,则意味着训练集仅有20个样本,因此模型的泛化性能难以得到保证。采用本发明提出的方法,则可以充分利用源组分训练集中的50个样本信息,尽管源组分为玉米中所含的蛋白质含量,与目标组分玉米油不同,但是仍然可以辅助提升模型的泛化性能。
首先,由于原始光谱包含700个波长点(变量),为了降低模型的复杂度和减少计算量,将源组分(蛋白质)训练集的50个样品和目标组分(玉米油)训练集的20个样品合并得到新的样品数据集{xk,yk}(k=1,2,…,m+n),进行主成分分析(pca)并根据累计贡献率选择前若干个主成分。主成分分析的结果如图3所示,从图中可以直观地看出,源组分(蛋白质)数据集和目标组分(玉米油)数据集在第一主成分和第二主成分构成的二维平面空间中存在显著差异,这也阐明了定量分析模型跨组分移植的本质。通过累计贡献率,可以发现当选取前5个主成分时,累计贡献率超过了95%,因此本实施例中选取的主成分个数为5。
其次,参数初始化。在本实施例中,由于源组分和目标组分训练集中分别包含了50个和20个样品,因此,
接着,当未达到最大迭代次数时,循环迭代训练100个弱定量分析模型,在某次迭代过程中,若所构建的定量分析模型无法准确预测源组分训练集中的样本,则认为该样本对目标组分定量分析模型的贡献较小,可以减少对应样本的权重;反之,若无法准确预测目标组分训练集中的样本,则增加对应样本的权重,以便后续迭代建立的定量分析模型强化学习。某次运行后得到的各个样本的权重变化趋势如图4所示,可以看出,源组分训练集的所有样本权重越来越小且趋近于零,表明贡献越来越小;目标组分训练集的所有样本权重变化不一,但越来越趋近于一个稳定值。
最终,当达到最大迭代次数时,模型集成输出一个强定量分析模型。对于目标组分(玉米油)的10个测试样本而言,逐个送入每个弱定量分析模型,并通过加权平均的方法进行集成汇总,得到一个最终的预测结果。某次运行的结果如图5所示,从中可以看出,与没有采用模型移植的方法(即仅用20个样本训练模型)相比,利用本发明提出的模型移植方法,得到的预测误差更小,泛化性能更优。
上面仅对本发明的较佳实施例作了详细说明,但是本发明并不限于上述实施例,在本领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化,各种变化均应包含在本发明的保护范围之内。