基于蝙蝠算法的半监督极限学习机在工业检测中的应用
文献发布时间:2023-06-19 09:24:30
技术领域
本发明涉及工业实时监测领域,更具体地说,它涉及基于蝙蝠算法的半监督极限学习机在工业检测中的应用。
背景技术
在复杂工业中为了获得较好的产品质量,通常需要对关键质量变量进行准确实时的监测,然而这些质量变量大多不易直接测量,如:脱丁烷塔塔底丁烷浓度、青霉素发酵过程产物浓度、水质中微生物浓度等。软测量技术根据易测量到的过程变量信息建立数学模型以实现关键质量变量的实时估计,从而解决上述问题。
由于工业过程中确定关键质量变量的值需要花费大量的时间和经济,收集到的大部分数据样本通常只含输入数据、仅有少量数据样本同时包含输入输出数据。一般地,将仅包含输入而缺失输出数据的样本称为未标记样本,将同时包含输入输出数据的样本称为标记样本。若仅采用少量有标记样本对模型进行训练,则软测量模型的预测精度和泛化能力将很难令人满意,并且丢弃大量的未标记样本造成了严重的数据浪费。
虽然半监督极限学习机能够在大量无标记样本的情况下有效提升模型精度,但较多的模型参数为优化带来了困难。除传统有监督极限学习机包含a,b,C外,半监督极限学习机又新增了相似度矩阵核宽参数σ和流形正则项的系数λ两个参数。参数对模型精度起关键作用,参数选择不当会造成模型学习性能下降,泛化能力差。为了确定模型参数,可以采用群智能优化算法对模型中的多个参数进行优化。
发明内容
针对现有技术存在的不足,本发明的目的在于提供一种基于蝙蝠算法的半监督极限学习机在工业检测中的应用,具有预测精度高的效果。
为实现上述技术目的,本发明提供了如下技术方案:一种基于蝙蝠算法的半监督极限学习机的训练步骤包括:
S1,根据收集到的训练样本,构建半监督极限学习机网络结构;
S2,初始化蝙蝠算法相关参数:蝙蝠个数n
S3,随机产生一组数据(a,b,σ,C
S4,判断迭代次数是否达到设定次数,若达到,得到蝙蝠的最佳位置x
S5,将优化得到的蝙蝠x
通过采用上述技术方案,通过半监督学习方法将少量有标记样本和大量无标记样本结合,并应用于极限学习机模型中;利用蝙蝠算法对模型中的参数(a,b,σ,C,λ)进行全局搜索寻优,得到最优参数的半监督极限学习机软测量模型。此模型不仅解决了极限学习机收敛性差的问题,同时也克服了随机选取参数导致精度不稳定的问题,提高了模型的预测精度。
作为优选,所述监督极限学习机网络结构包括如下步骤:
一.设定标记数据样本集为
二.在预测误触前各加不同的惩罚系数因子,假设训练样本中x
其中C为惩罚系数。由此将半监督极限学习机约束问题转换为无约束问题:
其中,Y′为根据实际输出样本扩展得到的,前s行为标记的输出样本,其余行均为0;
求解可得:
β=(I
通过采用上述技术方案,半监督极限学习机采用流形学习,通过样本间的几何关系让未标记样本辅以标记样本学习。在半监督极限学习机训练过程中,不同类的数据对训练效果的影响不同。模型倾向于训练所含样本个数较多的类,为了提高模型的预测精度,在预测误差前各加不同的惩罚系数因子,以此平衡各个类中数据对模型的影响程度。假设训练样本中x
作为优选,所述S2中的蝙蝠算法步骤为:
9初始化蝙蝠个数n
10定义适应度函数q(x);
通过采用上述技术方案,蝙蝠对自身发出超声波及接收到回声的时差建立周围环境的映像,利用回声定位原理感知食物的距离、大小及运动方向。蝙蝠算法是模仿蝙蝠搜寻食物的过程而演化出的一种优化算法,首先初始化每只蝙蝠的位置和速度,把蝙蝠的位置看成待寻优问题的解,在每次迭代后对每只蝙蝠相对应的适应度函数值进行排序,找出位置最佳的蝙蝠x
综上所述,本发明取得了以下效果:
1.通过半监督学习方法将少量有标记样本和大量无标记样本结合,并应用于极限学习机模型中;利用蝙蝠算法对模型中的参数(a,b,σ,C,λ)进行全局搜索寻优,得到最优参数的半监督极限学习机软测量模型;
2.此模型不仅解决了极限学习机收敛性差的问题,同时也克服了随机选取参数导致精度不稳定的问题,提高了模型的预测精度。。
附图说明
图1为本实施例中用于表现整体流程的示意图;
图2为本实施例中用于表现脱丁烷塔过程示意图;
图3为本实施例中用于表现ELM对丁烷(C4)浓度的预测结果的示意图;
图4为本实施例中用于表现SSELM对丁烷(C4)浓度的预测结果的示意图;
图5为本实施例中用于表现BA-SSELM对丁烷(C4)浓度的预测结果的示意图。
具体实施方式
以下结合附图对本发明作进一步详细说明。
本具体实施例仅仅是对本发明的解释,其并不是对本发明的限制,本领域技术人员在阅读完本说明书后可以根据需要对本实施例做出没有创造性贡献的修改,但只要在本发明的权利要求范围内都受到专利法的保护。
实施例:基于流形正则化的半监督极限学习机的性能受多个参数影响:激活函数中的速率参数a与位移参数b、核宽σ、惩罚系数C和权重λ。参数选择不当时,会大大影响模型的预测输出。为提高模型的预测精度,利用蝙蝠算法对基于流形正则化的半监督极限学习机进行参数寻优,每只蝙蝠的位置相当于待寻优的最优解组合(a,b,σ,C
图1为蝙蝠算法优化半监督极限学习机的流程。基于蝙蝠算法的半监督极限学习机的训练步骤为:
Step1:根据收集到的训练样本,构建半监督极限学习机网络结构;
Step2:初始化蝙蝠算法相关参数:蝙蝠个数n
Step3:随机产生一组数据(a,b,σ,C
Step4:判断迭代次数是否达到设定次数,若达到,得到蝙蝠的最佳位置x
Step5:将优化得到的蝙蝠x
其中,半监督极限学习机采用流形学习,通过样本间的几何关系让未标记样本辅以标记样本学习。利用流形正则化将几何关系与预测误差联系起来,提升模型的预测精度。
假设,标记数据样本集为,未标记样本
在半监督极限学习机训练过程中,不同类的数据对训练效果的影响不同。模型倾向于训练所含样本个数较多的类,为了提高模型的预测精度,在预测误差前各加不同的惩罚系数因子,以此平衡各个类中数据对模型的影响程度。假设训练样本中x
其中C为惩罚系数。由此将半监督极限学习机约束问题转换为无约束问题:
其中,Y′为根据实际输出样本扩展得到的,前s行为标记的输出样本,其余行均为0;
求解可得:
β=(I
蝙蝠对自身发出超声波及接收到回声的时差建立周围环境的映像,利用回声定位原理感知食物的距离、大小及运动方向。蝙蝠算法是模仿蝙蝠搜寻食物的过程而演化出的一种优化算法,首先初始化每只蝙蝠的位置和速度,把蝙蝠的位置看成待寻优问题的解,在每次迭代后对每只蝙蝠相对应的适应度函数值进行排序,找出位置最佳的蝙蝠x
其中,θ均匀分布在[0,1]中,f
在迭代时,对当次迭代的最优位置进行局部寻优,探索最优解的附近区域。在最优位置附近随机生成一个新的解:
x
其中,ε是[-1,1]中的随机数,A
在蝙蝠靠近食物时,会加快脉冲发射速率并减小响度,直至吃到食物。在蝙蝠算法的寻优过程中,没找到一个最优位置时,频度r和响度A均会进行相应的更新:
其中α∈(0,1),γ>0,通常取:α=0.9,γ=0.9。脉冲频度和响度的变化一定程度上反映着距离目标的远近程度。
综上所述以上分析,蝙蝠算法步骤为:
蝙蝠算法中的位置和速度更新方式类似于标准粒子群算法中的更新方式。不过,在蝙蝠算法中,通过调节频率f
仿真研究:如图2所示,脱丁烷塔过程是工业石油炼制中脱硫和石油脑分离的组成部分,塔底丁烷浓度对炼制出的石油品质影响很大且不易通过在线仪器直接测量。在工业生产中需要对其严格监测和控制,为此采用软测量技术对丁烷浓度进行预测。
具体仿真试验:选取脱丁烷塔过程中易测得的7个变量为辅导变量,作为软测量模型的输入,各辅助变量的说明如表1所示,相应的辅助变量测试仪器安装位置标注在图2圈出部分;主导变量为脱丁烷塔塔底丁烷浓度。
表1脱丁烷塔的输入变量及其描述
共收集到2000组过程数据,其中1000组作为训练样本,剩下1000组作为测试样本,接着对训练样本作归一化处理。基于以上数据集分别建立三种软测量模型:有监督ELM模型、半监督ELM模型和蝙蝠算法优化的半监督ELM模型,进行实验仿真并比较各模型效果。采用均方根误差RMSE和相关系数COR作为模型的性能指标:
其中n
表2所示为三种软测量模型的预测结果,分析可得:在有标记样本数量较少时,有监督的ELM并不能较好地预测丁烷浓度;为利用大量无标记样本,引入半监督学习后一定程度上能够提高模型的预测精度;由于半监督ELM模型中含5个参数:a,b,σ,C
表2三种建模方法的预测结果比较
如图3、图4和图5所示为三种模型的仿真结果,比较分析可得:BA-SSELM模型对脱丁烷塔塔底丁烷浓度的预测值与真实值较为接近,利用蝙蝠算法较好的全局寻优性能,能够快速找到适合模型的全局最优参数,使得模型的输出紧凑地跟随实际值的变化,说明BA-SSELM模型的预测结果较准确,对丁烷浓度的预测效果更佳。相比于有监督极限学习机,本文所提方法对丁烷浓度的拟合效果更好,预测精度也更高。
- 基于蝙蝠算法的半监督极限学习机在工业检测中的应用
- 基于半监督极限学习机的光伏阵列故障诊断方法