基于核函数的加权极限学习机污水处理在线故障诊断方法

发布时间:2018-3-20 21:03:25

  申请日2016.01.28

  公开(公告)日2016.07.06

  IPC分类号G06F19/00; G06K9/62; G06N3/08

  摘要

  本发明公开了一种基于核函数的加权极限学习机污水处理在线故障诊断方法,包括步骤:1)剔除掉污水数据中属性不完整的数据,然后将数据归一化处理,确定历史数据集和更新测试集;2)选取核函数和加权方案,然后根据最优模型确定模型参数;3)根据所选取的加权方案对历史数据集的每个样本赋予权值;4)训练模型,根据核函数计算核矩阵;5)从更新测试集中添加新样本到模型中进行测试,并更新历史数据集;6)回到步骤3),重新训练模型,不断重复上述过程,直到在线测试数据完毕,从而实现对污水处理过程的在线运行状态的识别。本发明方法更新时间短,分类准确率高,对于实时诊断出运行故障,污水处理厂安全运行,提高污水处理厂的运行效率具有重要意义。

  权利要求书

  1.基于核函数的加权极限学习机污水处理在线故障诊断方法,其特征在于,包括以下步骤:

  1)剔除掉污水数据中属性不完整的数据,然后将数据归一化处理,确定历史数据集xold和更新测试集xnew;

  2)选取核函数和加权方案,根据最优模型确定模型参数;

  3)根据所选取的加权方案对历史数据集xold的每个样本赋予权值,求出加权矩阵W;

  4)训练模型,根据核函数计算核矩阵ΩELM;

  5)从更新测试集xnew中添加k个新样本到模型中进行测试,并保存分类测试结果,将其添加到历史数据集中,去掉历史数据集中前k个样本;

  6)回到步骤3),更新W和ΩELM,重新训练模型,不断重复上述过程,直到在线更新数据测试完毕,得到最终在线测试结果,从而实现对污水处理过程的在线运行状态的识别。

  2.根据权利要求1所述的基于核函数的加权极限学习机污水处理在线故障诊断方法,其特征在于,在步骤2)中,对加权方案和核函数的选取以及最优模型参数的确定如下:

  首先对于加权方案的选取,这里有两种加权方案,第一种加权方案为:

   W 1 : W i i = 1 C o u n t ( t i ) - - - ( 1 )

  其中,W1为第一种加权方案的加权矩阵,Count(ti)为训练样本中类别为ti对应的样本数量;

  另一种加权方案为:

  W2为第二种加权方案的加权矩阵;

  对于核函数的选取,有下面四种常用的核函数:

  ①径向基RBF核函数:

   K ( x , x ) = exp ( - | | x - x | | 2 2 σ 2 ) - - - ( 3 )

  ②线性核函数:

  K(x,x′)=x·x′(4)

  ③p阶多项式核函数:

  K(x,x′)=[(x·x′)+1]p,p=1,2,3...(5)

  ④Sigmoid核函数:

  K(x,x′)=tanh[a(x·x′)+b](6)

  考虑到p阶多项式核函数的参数为两个,要比RBF核函数更多,且当多项式的阶数比较高时,核矩阵的元素值将趋于无穷大或无穷小,会增加数值的计算困难;而Sigmoid核函数必须在某些特定条件下才满足对称、半正定的核函数条件,并且有两个参数要选取,其应用上受到一定的限制;

  所以,首先选取径向基核函数RBF,然后分别选取不同的加权方案进行离线测试并记录测试结果,然后选取第一种加权方案,分别选取径向基RBF核函数和线性核函数进行离线测试并记录测试结果,以测试分类准确率、各类准确率、所有类准确率的几何平均值以及训练时间作为性能指标,分析不同加权方案和核函数的选取对模型性能的影响,最终确定模型的加权方案和核函数:第一种加权方案W1和RBF核函数;

  关于最优模型参数的确定,对模型的参数正规化系数C和RBF核函数参数σ采用网格搜索法,选取根据权利要求1中的步骤得到的在线故障诊断最优测试结果所对应的参数为最优参数;

  在步骤3)中,根据所选取的加权方案对历史数据集xold的每个样本赋予权值,求出加权矩阵W的过程如下:

  根据步骤2)所确定的加权方案W1,采用公式(1)来计算每个污水训练样本的权值,最终可以用以下方式求得加权矩阵W:对于N个污水训练样本,T表示训练样本的类别,Count(classX)表示训练样本中类别X的样本个数,对每个样本根据其类别计算出该类别的总的样本个数,也就是Count(classX)),从而可以求得该样本的权值W(i,i)=1/Count(class1),i表示训练样本的第i个样本;

  在步骤4)中训练模型,根据核函数计算核矩阵ΩELM如下:

  给定N个污水数据集的训练样本{xi,ti},i=1,...,N,xi∈Rd,N为样本个数,d为样本属性维数,含有L个节点的标准极限学习机SLFN的数学模型表示如下:

   Σ i = 1 L β i G ( w i , b i , x ) = o j , j = 1 , ... , N - - - ( 7 )

  其中,βi表示第i个隐藏神经元与所连接输出神经元的输出权值,G为隐藏层神经元激活函数,wi表示输入层与第i个隐藏神经元的输入权值,bi表示第i个隐藏神经元的偏置,oj为第j个输出神经元的实际输出值,x为神经网络输入,tj为神经网络输入目标值;

  对于数量为N的样本{xi,ti},i=1,...,N,存在一个(wi,bi)和βi,有使得该SLFN的模型零误差逼近样本集{xi,ti},i=1,...,N,也就是说隐藏层前向神经网络能够无误差的对其进行拟合,即:

   Σ i = 1 L β i G ( w i , b i , x j ) = t j , j = 1 , ... , N - - - ( 8 )

  将上式表示为:

  Hβ=T(9)

  其中

   H = H ( w 1 , w 2 , ... , w L , b 1 , b 2 , ... , b L , x 1 , x 2 , ... , x N ) = G ( w 1 · x 1 + b 1 ) ... G ( w L · x 1 + b L ) . . . ... . . . G ( w 1 · x N + b 1 ) ... G ( w L · x N + b L ) N × L = h ( x 1 ) . . . h ( x N )

   β = β 1 T . . . β L T L × m , T = t 1 T . . . t N T N × m - - - ( 10 )

  其中,H为输出矩阵,β为输出权值矩阵,T为输出层输出矩阵;

  当激活函数G无限可微时,SLFN参数不需要全部进行调整,输入链接权重wi和隐藏层偏置bi在网络参数初始化的过程中随机选定,并且在训练过程中保持不变,那么训练SLFN就等价于求解线性系统Hβ=T的最小二乘解,从而获取β的值,也就可以转化为下面的优化问题:

  Minimize:||Hβ-T||2和||β||(11)

  该优化问题以数学的形式表示为:

  Minimize: 1 2 | | β | | 2 + 1 2 Σ i = 1 N | | ξ i | | 2

  Subjectto: h ( x i ) β = t i T - ξ i T , i = 1 , ... , N - - - ( 12 )

  其中,ξi=[ξi,1,...,ξi,m]T是训练样本xi在第m个输出节点的输出值与真实值之间的误差向量;由隐藏层神经元输出的Moore-Penrose广义逆矩阵H+可解得:

   β ^ = H + T - - - ( 13 )

  正交投影法KKT能够有效地对Moore-Penrose广义逆矩阵进行求取;当HTH或HHT为非奇异矩阵的情况时H+=(HTH)-1HT或H+=HT(HTH)-1;为了使所得到的模型获得更好的稳定性和泛化性能,在求解时对HTH或HHT对角线元素加上一个足够小的正值1/C:

   β = H T ( I C + HH T ) - 1 T - - - ( 14 )

  相应的输出函数为:

   f ( x ) = h ( x ) β = h ( x ) H T ( I C + HH T ) - 1 T - - - ( 15 )

  或者当:

   β = ( I C + HH T ) - 1 H T T - - - ( 16 )

  相应的ELM的最终的输出函数为:

   f ( x ) = h ( x ) β = h ( x ) ( I C + HH T ) - 1 H T T - - - ( 17 )

  在这种ELM算法的实现方式中,隐藏层神经元数量的选择区间可以很大,并且可以不根据训练样本数量N进行确定,即能够使L≤N,也能够使L≥N;在这一点上,这种方式与插值理论中所要求的L≤N所矛盾,但仍与广义逼近理论一致;

  同理,加权极限学习机WELM使用相对于奇异值分解法SVD更稳定的正交投影解法求解β,然后通过对个样本进行加权,使得属于不同类的样本获得不同的权值,进而得到更好的分类准确率,所以上述的优化问题的数学形式改写成:

  Minimize: 1 2 | | β | | 2 + 1 2 C W Σ i = 1 N | | ξ i | | 2

  Subjectto: h ( x i ) β = t i T - ξ i T , i = 1 , ... , N - - - ( 18 )

  其中,W是定义的一个N×N的对角矩阵,每一个主对角元素wii都对应着一个样本xi,不同类别的样本将会自动分配不同的权值;

  根据KKT最优化条件,定义Lagrange函数求解该二次规划问题,则等效为求解下面的公式:

  Minimize: L D E L M = 1 2 | | β | | 2 + 1 2 C W Σ i = 1 N ξ 2 - Σ i = 1 N α i ( h ( x i ) β - t i + ξ i ) - - - ( 19 )

  其中,αi为Lagrange乘数,切都是非负数;相应的KKT优化限制条件为:

   L D E L M β = 0 → β = Σ i = 1 N α i h ( x i ) T = H T α

   L D E L M ξ i = 0 → α i = CWξ i , i = 1 , ... , N

   L D E L M β = 0 → h ( x i ) β - t i + ξ i = 0 , i = 1 , ... , N - - - ( 20 )

  WELM算法求解隐藏层输出权重表示为:

   β ^ = H + T = H T ( I C + WHH T ) - 1 W T , N < L ( I C + H T W H ) - 1 H T W T , N &GreaterEqual; L - - - ( 21 )

  同样,基于核函数的极限学习机KELM算法是基于ELM提出的,当隐藏层特征映射h(x)为未知的情况下,将ELM的核矩阵定义如下:

  ΩELM=HHT:ΩELMi,j=h(xi)·h(xj)=K(xi,xj)(22)

  这里核函数需要满足Mercer条件,使用径向基RBF为核函数,即:

   K ( u , v ) = exp ( - | | u - v | | 2 2 σ 2 ) - - - ( 23 )

  而式ELM的输出表达式(9)写成:

   f ( x ) = h ( x ) β = h ( x ) H T ( I C + HH T ) - 1 T = K ( x , x 1 ) . . . K ( x , x N ) ( I C + HH T ) - 1 T - - - ( 24 )

  给定一个训练集{xi,ti},i=1,...,N和核函数K(u,v),KELM网络的输出方程为:

   f ( x ) = K ( x , x 1 ) . . . K ( x , x N ) ( I C + Ω E L M ) - 1 T - - - ( 25 )

  WELM通过引入加权矩阵来处理不平衡数据,而KELM算法在引入核函数后,综合两者的特性,就可以得出,给定一个训练集{xi,ti},i=1,...,N和核函数K(u,v),根据上面公式求得加权矩阵W和核函数矩阵ΩELM后,得到最终基于核函数的加权极限学习机的输出方程为:

   f ( x ) = K ( x , x 1 ) . . . K ( x , x N ) ( I C + E L M ) - 1 W T - - - ( 26 ) .

  说明书

  基于核函数的加权极限学习机污水处理在线故障诊断方法

  技术领域

  本发明涉及污水处理的技术领域,尤其是指一种基于核函数的加权极限学习机污水处理在线故障诊断方法。

  背景技术

  随着现代工业的迅猛发展和人口的增长,大量生活污水和工业废水排入水体,作为人类赖以生存的水资源遭到了极大的破坏,水污染已成为制约人类发展的主要因素之一。为了阻止水环境进一步恶化,许多国家都采取积极的措施,兴建了大量的污水处理厂。但污水生化处理工艺很复杂,影响因素非常多,污水处理厂在实际运行过程中难以保持长期稳定的运行,容易引起出水水质不达标、运行费用增高和环境二次污染等严重问题,所以必须对污水处理厂运行状态进行监控,及时诊断出污水处理过程故障并予以处理。

  污水处理运行状态的故障诊断本质上是一个模式分类问题,而在实际状态运行分类中,常常会遇到污水数据集的分布不均衡问题,传统的机器学习方法在用于不平衡数据分类时,模型分类正确率无法满足要求,给污水生化处理的故障诊断带来了极大的困难;同时在实际过程当中,故障诊断实际上是一个连续的学习过程,其突出的一个特点就是学习不是一次离线进行的,而是数据逐一加入的,不断进行优化的过程。在线学习方法要求在获得下一个数据之前必须完成训练,否则会影响下一步决策的完成,而且污水处理厂的运行出现的故障信息尤为重要,所以在线故障诊断系统更加注重的是快速性和准确性。

  发明内容

  本发明的目的在于克服现有技术的缺点和不足,提供一种基于核函数的加权极限学习机污水处理在线故障诊断方法,以保证污水处理过程的在线故障诊断的准率性和实时性。

  为实现上述目的,本发明所提供的技术方案为:基于核函数的加权极限学习机污水处理在线故障诊断方法,包括以下步骤:

  1)剔除掉污水数据中属性不完整的数据,然后将数据归一化处理,确定历史数据集xold和更新测试集xnew;

  2)选取核函数和加权方案,根据最优模型确定模型参数;

  3)根据所选取的加权方案对历史数据集xold的每个样本赋予权值,求出加权矩阵W;

  4)训练模型,根据核函数计算核矩阵ΩELM;

  5)从更新测试集xnew中添加k个新样本到模型中进行测试,并保存分类测试结果,将其添加到历史数据集中,去掉历史数据集中前k个样本;

  6)回到步骤3),更新W和ΩELM,重新训练模型,不断重复上述过程,直到在线更新数据测试完毕,得到最终在线测试结果,从而实现对污水处理过程的在线运行状态的识别。

  在步骤2)中,对加权方案和核函数的选取以及最优模型参数的确定如下:

  首先对于加权方案的选取,这里有两种加权方案,第一种加权方案为:

   W 1 : W i i = 1 C o u n t ( t i ) - - - ( 1 )

  其中,W1为第一种加权方案的加权矩阵,Count(ti)为训练样本中类别为ti对应的样本数量;

  另一种加权方案为:

  W2为第二种加权方案的加权矩阵;

  对于核函数的选取,有下面四种常用的核函数:

  ①径向基RBF核函数:

   K ( x , x ) = exp ( - | | x - x | | 2 2 σ 2 ) - - - ( 3 )

  ②线性核函数:

  K(x,x′)=x·x′(4)

  ③p阶多项式核函数:

  K(x,x′)=[(x·x′)+1]p,p=1,2,3…(5)

  ④Sigmoid核函数:

  K(x,x′)=tanh[a(x·x′)+b](6)

  考虑到p阶多项式核函数的参数为两个,要比RBF核函数更多,且当多项式的阶数比较高时,核矩阵的元素值将趋于无穷大或无穷小,会增加数值的计算困难;而Sigmoid核函数必须在某些特定条件下才满足对称、半正定的核函数条件,并且有两个参数要选取,其应用上受到一定的限制;

  所以,首先选取径向基核函数RBF,然后分别选取不同的加权方案进行离线测试并记录测试结果,然后选取第一种加权方案,分别选取径向基RBF核函数和线性核函数进行离线测试并记录测试结果,以测试分类准确率、各类准确率、所有类准确率的几何平均值以及训练时间作为性能指标,分析不同加权方案和核函数的选取对模型性能的影响,最终确定模型的加权方案和核函数:第一种加权方案W1和RBF核函数;

  关于最优模型参数的确定,对模型的参数正规化系数C和RBF核函数参数σ采用网格搜索法,选取根据权利要求1中的步骤得到的在线故障诊断最优测试结果所对应的参数为最优参数;

  在步骤3)中,根据所选取的加权方案对历史数据集xold的每个样本赋予权值,求出加权矩阵W的过程如下:

  根据步骤2)所确定的加权方案W1,采用公式(1)来计算每个污水训练样本的权值,最终可以用以下方式求得加权矩阵W:对于N个污水训练样本,T表示训练样本的类别,Count(classX)表示训练样本中类别X的样本个数,对每个样本根据其类别计算出该类别的总的样本个数,也就是Count(classX)),从而可以求得该样本的权值W(i,i)=1/Count(class1),i表示训练样本的第i个样本;

  在步骤4)中训练模型,根据核函数计算核矩阵ΩELM如下:

  给定N个污水数据集的训练样本{xi,ti},i=1,…,N,xi∈Rd,N为样本个数,d为样本属性维数,含有L个节点的标准极限学习机SLFN的数学模型表示如下:

   Σ i = 1 L β i G ( w i , b i , x ) = o j , j = 1 , ... , N - - - ( 7 )

  其中,βi表示第i个隐藏神经元与所连接输出神经元的输出权值,G为隐藏层神经元激活函数,wi表示输入层与第i个隐藏神经元的输入权值,bi表示第i个隐藏神经元的偏置,oj为第j个输出神经元的实际输出值,x为神经网络输入,tj为神经网络输入目标值;

  对于数量为N的样本{xi,ti},i=1,…,N,存在一个(wi,bi)和βi,有使得该SLFN的模型零误差逼近样本集{xi,ti},i=1,…,N,也就是说隐藏层前向神经网络能够无误差的对其进行拟合,即:

   Σ i = 1 L β i G ( w i , b i , x j ) = t j , j = 1 , ... , N - - - ( 8 )

  将上式表示为:

  Hβ=T(9)

  其中

   H = H ( w 1 , w 2 , ... , w L , b 1 , b 2 , ... , b L , x 1 , x 2 , ... , x N ) = G ( w 1 &CenterDot; x 1 + b 1 ) ... G ( w L &CenterDot; x 1 + b L ) . . . ... . . . G ( w 1 &CenterDot; x N + b 1 ) ... G ( w L &CenterDot; x N + b L ) N × L = h ( x 1 ) . . . h ( x N )

   β = β 1 T . . . β L T L × m , T = t 1 T . . . t N T N × m - - - ( 10 )

  其中,H为输出矩阵,β为输出权值矩阵,T为输出层输出矩阵;

  当激活函数G无限可微时,SLFN参数不需要全部进行调整,输入链接权重wi和隐藏层偏置bi在网络参数初始化的过程中随机选定,并且在训练过程中保持不变,那么训练SLFN就等价于求解线性系统Hβ=T的最小二乘解,从而获取β的值,也就可以转化为下面的优化问题:

  Minimize:‖Hβ-T‖2和‖β‖(11)

  该优化问题以数学的形式表示为:

  Minimize: 1 2 | | β | | 2 + 1 2 Σ i = 1 N | | ξ i | | 2

  Subjectto: h ( x i ) β = t i T - ξ i T , i = 1 , ... , N - - - ( 12 )

  其中,ξi=[ξi,1,…,ξi,m]T是训练样本xi在第m个输出节点的输出值与真实值之间的误差向量;由隐藏层神经元输出的Moore-Penrose广义逆矩阵H+可解得:

   β ^ = H + T - - - ( 13 )

  正交投影法KKT能够有效地对Moore-Penrose广义逆矩阵进行求取;当HTH或HHT为非奇异矩阵的情况时H+=(HTH)-1HT或H+=HT(HTH)-1;为了使所得到的模型获得更好的稳定性和泛化性能,在求解时对HTH或HHT对角线元素加上一个足够小的正值1/C:

   β = H T ( I C + HH T ) - 1 T - - - ( 14 )

  相应的输出函数为:

   f ( x ) = h ( x ) β = h ( x ) H T ( I C + HH T ) - 1 T - - - ( 15 )

  或者当:

   β = ( I C + HH T ) - 1 H T T - - - ( 16 )

  相应的ELM的最终的输出函数为:

   f ( x ) = h ( x ) β = h ( x ) ( I C + HH T ) - 1 H T T - - - ( 17 )

  在这种ELM算法的实现方式中,隐藏层神经元数量的选择区间可以很大,并且可以不根据训练样本数量N进行确定,即能够使L≤N,也能够使L≥N;在这一点上,这种方式与插值理论中所要求的L≤N所矛盾,但仍与广义逼近理论一致;

  同理,加权极限学习机WELM使用相对于奇异值分解法SVD更稳定的正交投影解法求解β,然后通过对个样本进行加权,使得属于不同类的样本获得不同的权值,进而得到更好的分类准确率,所以上述的优化问题的数学形式改写成:

  Minimize: 1 2 | | β | | 2 + 1 2 C W Σ i = 1 N | | ξ i | | 2

  Subjectto: h ( x i ) β = t i T - ξ i T , i = 1 , ... , N - - - ( 18 )

  其中,W是定义的一个N×N的对角矩阵,每一个主对角元素wii都对应着一个样本xi,不同类别的样本将会自动分配不同的权值;

  根据KKT最优化条件,定义Lagrange函数求解该二次规划问题,则等效为求解下面的公式:

  Minimize: L D E L M = 1 2 | | β | | 2 + 1 2 C W Σ i = 1 N ξ 2 - Σ i = 1 N α i ( h ( x i ) β - t i + ξ i ) - - - ( 19 )

  其中,αi为Lagrange乘数,切都是非负数;相应的KKT优化限制条件为:

   L D E L M β = 0 &RightArrow; β = Σ i = 1 N α i h ( x i ) T = H T α L D E L M ξ i = 0 &RightArrow; α i = CWξ i , i = 1 , ... , N L D E L M β = 0 &RightArrow; h ( x i ) β - t i + ξ i = 0 , i = 1 , ... , N - - - ( 20 )

  WELM算法求解隐藏层输出权重表示为:

   β ^ = H + T = H T ( I C + WHH T ) - 1 W T , N < L ( I C + H T W H ) - 1 H T W T , N &GreaterEqual; L - - - ( 21 )

  同样,基于核函数的极限学习机KELM算法是基于ELM提出的,当隐藏层特征映射h(x)为未知的情况下,将ELM的核矩阵定义如下:

  ΩELM=HHT:ΩELMi,j=h(xi)·h(xj)=K(xi,xj)(22)

  这里核函数需要满足Mercer条件,使用径向基RBF为核函数,即:

   K ( u , v ) = exp ( - | | u - v | | 2 2 σ 2 ) - - - ( 23 )

  而式ELM的输出表达式(9)写成:

   f ( x ) = h ( x ) β = h ( x ) H T ( I C + HH T ) - 1 T = K ( x , x 1 ) . . . K ( x , x N ) ( I C + HH T ) - 1 T - - - ( 24 )

  给定一个训练集{xi,ti},i=1,…,N和核函数K(u,v),KELM网络的输出方程为:

   f ( x ) = K ( x , x 1 ) . . . K ( x , x N ) ( I C + Ω E L M ) - 1 T - - - ( 25 )

  WELM通过引入加权矩阵来处理不平衡数据,而KELM算法在引入核函数后,综合两者的特性,就可以得出,给定一个训练集{xi,ti},i=1,…,N和核函数K(u,v),根据上面公式求得加权矩阵W和核函数矩阵ΩELM后,得到最终基于核函数的加权极限学习机的输出方程为:

   f ( x ) = K ( x , x 1 ) . . . K ( x , x N ) ( I C + E L M ) - 1 W T - - - ( 26 ) .

  本发明与现有技术相比,具有如下优点与有益效果:

  1、本发明建立了一种基于核函数的加权极限学习机污水处理的在线故障诊断模型。首先建立基于核函数的加权极限学习机的离线模型,然后根据工况添加数据进行实时诊断并更新模型,等待下一次故障诊断,从而建立了在线故障诊断模型。通过加权极限学习机算法并建立最优模型使得在线故障诊断方法更新时间短,分类准确率高,对于实时诊断出运行故障,为污水处理厂安全运行,提高污水处理厂的运行效率具有重要意义。

  2、本发明中所涉及到的极限学习机(ELM)算法无需反复调整隐层参数,直接将传统单隐层前馈神经网络参数训练问题转化为求解线性方程组,训练速度得到了极大地提高,泛化性能更好;加权极限学习机(WELM)继承了ELM的快速训练和较好的泛化能力,并且通过对不同数量的样本类进行加权恢复样本类间的平衡性,提高对少数类样本的辨识能力;核函数极限学习机(KELM)也是在ELM算法之上结合核函数所提出的改进算法,通过结合核函数,对线性不可分的模式进行非线性映射到高维特征空间从而实现线性可分,进一步提高了分类的准确率。所以,本发明采用的一种基于核函数的加权极限学习机的方法对污水处理过程进行在线故障诊断建模,能够保证污水处理过程的在线故障诊断的准率性和实时性。

相关推荐