APP下载

基于博弈论准确性和差异性兼优的选择性集成建模方法及其应用

2021-01-18陈双叶高建琛符寒光

北京工业大学学报 2021年1期
关键词:博弈论子集结点

陈双叶,高建琛,符寒光,赵 荣

(1.北京工业大学信息学部,北京 100124; 2.北京工业大学材料学院,北京 100124)

工业过程对象受原料属性、产品质量和产量及环境气候等因素的影响而具有动态特性,这些动态变化通常包括传感器漂移和过程漂移,在机器学习领域将其统称为概念漂移[1].因此,为了应对概念漂移,许多应用于软测量模型的自适应方法被提出,比如递归模型(recursive model, RM)(包含递归主成分回归(recursive principle component regression, RPCR)[2]和递归最小二乘法(recursive partial least squares, RPLS)[3]等)、滑动窗模型(sliding window, SW)[4]和即时学习模型(just-in-time learning, JITL)[5].然而,这些方法是在单模型上实施的,这使得模型在应对概念漂移时性能不稳定.

研究表明,集成学习算法具有较好的概念漂移处理能力.集成学习是一种通过结合多个子模型以提高整体泛化性能的算法.通常情况,建立集成模型涉及2个步骤:构建集成子模型池和组合子模型得到预测输出.在构建集成子模型池方面,周志华[6]提出子模型的差异性越大、准确性越高,则集成的效果越好; 其中最具代表性的集成算法为Bagging[7].但是如果将所有子模型都组合到集成模型中,那其中性能较差子模型会影响到集成模型的预测准确性,而且其中相似的子模型对集成的运算效率也有较大影响,因此越来越多的选择性集成方法被提出用于克服上述问题.Lin等[8]将K-means聚类、动态选择和顺序搜索方法相结合来选择子模型;遗传算法或其他优化算法也常用于选择集成的最优子集[9-10],但优化算法自身的计算开销较大;文献[11]提出利用子模型的在线预测性能排序进行动态选择.另外,选择性集成算法大多应用于解决分类问题,对回归问题的研究较少.在子模型输出组合方面,均值输出是一种简单但有效的方法;为了让集成能更好地应对概念漂移,动态权重集成输出也被广泛应用[11].总的来说,集成模型的模型子集选择和子模型权重计算依然具有很大的挑战.

在线集成模型的子模型需要有快速的构建方法且性能稳定.误差逆传播神经网络(back propagation neural network, BPNN)和支持向量机(support vector machine, SVM)都是常用的软测量方法.但是BPNN容易过拟合而且训练时间也较长, SVM则在求最优解上花费较多的时间,两者都难以采用重新训练的方式来在线更新子模型.Huang等[12]基于单隐含层前馈神经网络提出的极限学习机(extreme learning machine, ELM),在回归、大规模数据集分类应用中优势显著.ELM算法简单易行、学习速度快、泛化性能高,非常适合作为集成子模型.为了适应在线学习环境,文献[13]提出了在线极限学习机(online sequential extreme learning machine, OSELM).但是直接使用工业生产过程的高维数据样本进行建模会降低OSELM的预测性能,需要对数据进行维数约简.

综上,本文提出基于OSELM和博弈论的选择性集成建模方法.该方法首先使用RPLS提取样本数据潜在特征用于后续的集成建模,然后采用OSELM作为子模型,同时考虑子模型之间的差异性和子模型本身的准确性,利用博弈论计算子模型的综合表现即权重系数,并依据权重系数选择最优的K个子模型构建子模型池.在完成预测之后,利用在线交叉验证算法[14]来评估子模型的准确性并以此为依据更新子模型权重系数,最后利用新样本对集成子模型和RPLS潜在特征提取模型进行在线更新.

1 在线极限学习机

极限学习机模型为单隐层前馈神经网络(single-hidden layer feedforward networks, SLFNs).假设有N个训练样本(xi,yi),其中xi=[xi1,xi2,…,xin]T,yi=[yi1,yi2,… ,yim]T.如果一个含有L个隐含层结点的SLFNs能够表示N个样本,那就意味着存在βi、wi和bi使得

(1)

成立.式中:wi和bi为隐层结点的参数;βi=(βi1,βi2,…,βim)T表示第i个隐层结点与输出结点的连接权重;G(wi,xj,bi)表示输入xj在第i个隐含层结点的输出函数,也称为激励函数.当使用G(wi,xj,bi)=g(wixj+bi) ,bi∈R作为隐含层结点的激励函数时,参数wi=(wi1,wi2,…,win)T表示是第i个隐层结点与输入结点的连接权重,bi是第i个隐层结点的偏置值.当使用径向基函数(radial basis function, RBF)作为隐含层结点的激励函数时,G(wi,xj,bi)=g(bi‖xj-wi‖),bi∈R+,参数wi和bi分别表示第i个RBF结点的中心和映射宽度.激励函数G(wi,xj,bi)也可以是“Sigmoid”或“Sine”等.式(1)可以写为

Hβ=Y

(2)

式中:

ELM不仅使训练误差最小,同时使输出权值系数的范数最小:

(3)

只要隐含层结点数足够多,SLFNs就能在输入权值随机赋值的情况下逼近任何连续函数.给出一个训练集(xi,yi),i=1,2,…,N,激活函数g(x)以及隐含层结点数L,则ELM算法步骤如下:

1) 随机产生输入权值向量wi和隐含层结点偏差bi,i=1,2,…,N;

2) 计算隐含层输出矩阵H;

3) 计算输出权值β=H†Y,其中,H†是隐含层输出矩阵H的Moore-Penrose广义逆,且H†=(HTH)-1HT.

然而,在实际应用中,数据可能是以数据块或单个数据的形式输入,为了应对这种情况,Liang等[13]提出了在线极限学习机的训练模式.在线极限学习机分为2个阶段.

1) 计算隐含层输出矩阵Hk+1.

(4)

2) 计算输出权重β(k+1).在k+1时刻的目标值为Yk+1=[yNk+1,yNk+2,…,yNK+1]T,由Liang等的推导,可以得出在线极限学习机的递推算法为

(5)

(6)

3) 迭代步数加1.k=k+1.重复第1)步.

2 基于OSELM和博弈论的选择性集成建模方法

基于OSELM和博弈论的选择性集成建模过程分为3个部分:离线建模、在线预测和模型在线更新.离线建模阶段的主要工作为建立子模型池并利用博弈论原理选择模型子集作为最终的预测模型.在线预测阶段,首先利用PLS算法在线提取输入数据的潜变量特征,然后计算子模型预测值的加权输出.模型在线更新阶段需要更新以下几个方面:一是集成子模型的权重更新;二是PLS提取潜变量模型参数更新;三是OSELM子模型迭代更新.

2.1 离线建模

离线建模可以分为2个阶段,如图1所示.

第1阶段为建立子模型池,第2阶段为从子模型池中选择模型子集构建预测模型.

2.1.1 子模型池构建

(7)

图1 离线建模策略Fig.1 Offline modeling strategy

然后采用Bootstrap算法基于提取的潜在特征矩阵产生的训练子集,即

(8)

最后采用训练子集构建基于OSELM算法的候选子模型.fj(·)表示在采用第j个训练子集构建的OSELM候选子模型.

2.1.2 子模型选择

在子模型选择阶段,首先需要对子模型的精度和多样性进行度量得出候选子模型的精度权重和多样性权重,然后利用博弈论策略综合精度权重和多样性权重得到最优权向量,最后根据权向量对子模型进行筛选.

(9)

式中MSE=[MSE1,MSE2,…,MSEJ].然后基于精度的候选子模型权重的计算式为

(10)

式中med(MSE)为所有模型的MSE的中值.

接下来计算模型多样性权重.Dij表示第i个候选子模型和第j个候选子模型之间的距离,由式(11)来计算;Dj·表示单个候选子模型j对所有候选子模型多样性的贡献,由式(12)来计算.最后由式(13)计算得出子模型多样性权重.

(11)

(12)

(13)

式中:D=[D1·,D2·,…,DJ·];med(D)为所有候选子模型的多样性度量的中值.

最后利用博弈论策略[15]综合上述2种权重,使得选择出的模型子集可以保证在精度和多样性方面都有所兼顾.综合权重由上述2种权重线性组合而成,即

(14)

式中:W为最终的权重;αk为需要确定的权重系数.

根据博弈论理论,当m个权重具有一致性时,将会得到最优均衡权重向量W*.权重的一致性由最优的权重系数αk组合得到.博弈论的优化目标是最小化综合权重W和wi之间的偏差,即

(15)

基于矩阵的微分性质,式(15)的最优一阶微分条件可以写为

(16)

展开得到

(17)

(18)

最后,可得出综合权重W*为

(19)

在对候选子模型进行选择时,只需要从候选子模型中按照综合权重W*从大到小选取合适数量的子模型即可构造成预测模型.

2.2 在线预测

在线预测是将PLS模型对当前时刻的样本数据提取的潜在特征作为集成模型的输入,然后再计算预测值.

利用基于建模样本建立的PLS模型提取新样本的潜在特征.为了方便表述,将离线阶段基于建模样本建立的PLS模型称为旧PLS模型,其表示为

(20)

基于新样本数据xk+1利用旧PLS模型提取潜在特征可表示为

(21)

新样本基于第j个旧集成子模型的预测输出为

(22)

(23)

2.3 模型在线更新

在线预测通常在获得k+1时刻真值后进行模型更新,包括PLS模型递推更新、OSELM模型更新和集成模型权重系数更新.

2.3.1 PLS模型递推更新与子模型更新

首先将新样本并入旧PLS模型,即

(24)

(25)

基于以上输入输出数据建立新PLS模型

{Xk+1,Yk+1}→PLS→{Tk+1,Wk+1,Pk+1,Bk+1,Qk+1}

(26)

基于xk+1提取的潜在特征可表示为

zk+1=xk+1Wk+1((Pk+1)TWk+1)-1

(27)

式中:zk+1为新样本的潜在特征;Pk+1为PLS模型的负荷矩阵;Wk+1为系数矩阵.

接着,利用潜在特征样本(zk+1,yk+1)对集成中的子模型进行在线更新.

2.3.2 集成子模型权系数更新

先采用在线交叉验证法[10]计算集成子模型的预测误差,计算过程为

(28)

(29)

然后根据子模型的在线交叉验证误差计算其权重系数

(30)

(31)

3 实验结果和讨论

针对本文所提的算法,首先采用公开数据集来验证算法的可行性,然后将算法用于某铝厂的热轧生产线的铝合金带材力学性能在线预测,结果表明本文所提算法具有更快的运行时间和更好的预测精度.

3.1 仿真实验

仿真部分采用4个数据集来验证算法的可行性,数据集的详细信息见表1.Friedman系列数据集[16]被设计用来模拟概念漂移.其中Friedman #1代表局部突然漂移,Friedman #2代表全局循环突然漂移,Friedman #3代表全局缓慢渐进漂移.为了更好地测试算法对概念漂移的处理能力,实验所有的对比算法采用Friedman系列数据集的前600组数据作为训练集,第601组到第900组为验证集,其余为测试集.

表1 数据集信息

数据集California Housing为静态数据,用于测试算法在无概念漂移特性的数据集中的预测性能,其中随机抽取5 000组数据作为训练集,再抽取1 000组作为验证集.对于不需要验证集的算法则将验证集合并到训练集.对所有数据集的输入输出进行标准化使其范围为[0,1].标准化的公式为

(32)

式中:s为数据矩阵;smin为被选择的样本属性最小值;smax为被选择的样本属性最大值.

表2给出了本文算法以及对比算法在不同数据集上的运行结果.实验结果以RMSE作为衡量性能的标准,每种算法都重复测试20次取平均值;然后统计20次RMSE的标准差来显示算法稳定性.本实验的目的是为了验证基于博弈论的子模型衡量方法以及动态加权的有效性,子模型的种类对最终的对比结果没有影响或者说影响很小,所以表2中的所有集成学习算法的子模型都设置为OSELM.表中Bagging算法为简单集成算法,即利用自助采样算法生成数据子集,然后根据子集训练OSELM子模型,最后将所有OSELM子模型的预测输出平均后作为集成模型的输出;DOER算法是一种可以动态调整子模型权重并且根据该权重进行子模型在线增减的动态集成算法,算法的详细说明见文献[11],DOER算法根据文献[11]说明设置更新系数和窗口大小参数分别为α=0.1,m=50;SEOSELM算法则是在利用Bagging算法原理获取子模型池后先采用本文介绍的基于博弈论的选择方法对子模型进行选择,然后再将选择后的模型子集用于预测,最后以子模型的平均预测值作为集成模型的输出;WSEOSELM为加权集成算法,即对被选择的子模型采用加权的方法组合子模型预测输出;PLS-WSEOSELM算法在WSEOSELM算法的基础上,先使用PLS模型递归提取潜在变量,然后以潜在变量作为模型输入进行建模并在线预测.所有集成算法子模型为OSELM算法,且OSELM子模型的激励函数都设置为Sigmod函数,而且隐含层神经元个数都设置为25个.

根据表2的统计数据,对比EOSELM算法和SEOSELM算法在各个数据集上预测结果的RMSE均值可以验证基于博弈论的集成子模型选择算法的有效性,经过选择的集成模型的预测RMSE小于未经选择的集成模型,尤其是在Friedman #2数据集上提升特别明显.DOER算法在动态增减子模型时只考虑子模型的准确性,从表2结果来看效果不如使用博弈论原理选择后的集成算法.通过对比SEOSELM算法和WSEOSELM算法可以看到,本文提出的基于在线交叉验证算法的加权集成对提高集成模型的精度有很大的帮助.利用PLS算法提取潜在变量,然后利用潜在变量建立集成模型进行预测对数据集Friedman#1和Friedman#3有提升模型预测精度的作用,但对其他数据集并不适用.对比Friedman系列数据集和California Housing数据集的运行结果可知,本文所提方法对于在静态数据上的预测精度提升有限,但对于具有概念漂移特性的数据集可以大幅提升预测精度.最后,选择性集成建模减少在线运行时集成中的子模型数量,这一特性会使集成模型的运行时间缩短,在较大规模数据集California Housing上测试集所需运行时间明显减少.

表2 不同算法的运行结果对比

3.2 热轧铝合金带材力学性能指标在线预测

本节将文中提出的PLS-WSEOSELM算法应用于某铝厂的热轧铝合金带材力学性能指标在线预测.铝合金带材力学性能指标在线预测对于提高产品质量和经济效益具有非常重要的意义.从实际生产过程采集样本,去除包含过失误差的样本后,获得120个生产过程数据样本.从这些样本中随机选取80个样本作为训练样本集合,对于选择集成模型还需要从训练集中选取20个样本作为验证样本集合,剩余40个作为测试样本集合.选取的关键工艺参数主要包括中间板厚度、精轧出口厚度、出炉温度、粗轧温度、终轧温度、卷取温度,以及Si、Fe、Cu、Mn、Mg、Zn等化学成分的质量分数,共19个输入参数.预测的力学性能指标为抗拉强度、屈服强度和伸长率3种.

为了测试本文所提出的PLS-WSEOSELM算法的有效性,在实验中将其与传统的Bagging算法、带剪枝的集成算法DOER和WSEOSELM方法进行比较.在执行预测模型之前,先使用式(32)对数据进行归一化,在预测结束后使用

y*=*(smax-smin)+smin

(33)

对预测值进行重新标定,然后再统计预测数据.

每种方法的所有参数均使用交叉验证法选择出最优参数,具体参数设置见表3.采用RMSE和平均绝对百分误差(mean absolute percentage error,MAPE)对所有算法的性能进行评估,每个建模方法均独立重复运行20次取平均值.各建模方法的测试结果如表3所示.

由表3可以看出,本文所提PLS-WSEOSELM算法在预测3个力学性能指标时综合表现最好.对比算法中,Bagging算法表现最差,DOER算法具有多种在线更新的手段,所以相对于Bagging算法有很大的提升;WSEOSELM算法的预测性能也非常好,但是在实际工业应用中,变量间通常具有共线性,加入PLS模型对数据进行提取潜在变量可以有效克服变量的共线性,从而提高模型的预测精度.

表3 铝合金板带力学性能指标在线预测结果

4 结论

1) 本文提出了基于OSELM和博弈论的选择性集成建模方法.利用博弈论原理对模型池中的子模型进行选择,经过博弈论选择的子模型集在模型精度和模型多样性方面都达到了最优,提高了集成模型的泛化性能,同时减少了在线运行的子模型的数量,缩减了计算时间.

2) 在子模型组合方面,使用在线交叉验证算法对子模型的预测性能进行在线评估,并依据评估值动态地改变子模型的权重,以此策略可以应对流数据中的概念漂移特性.

猜你喜欢

博弈论子集结点
拓扑空间中紧致子集的性质研究
基于八数码问题的搜索算法的研究
连通子集性质的推广与等价刻画
关于奇数阶二元子集的分离序列
无知之幕与博弈:从“黄灯规则”看博弈论的一种实践方案
樊畿不等式及其在博弈论中的应用
每一次爱情都只是爱情的子集
博弈论视角下的建筑工程外包道德风险
博弈论视角下医疗纠纷解决方式选择
基于Raspberry PI为结点的天气云测量网络实现