基于加权极限学习机的SMOTE_Bagging集成污水处理故障诊断方法转让专利

申请号 : CN201711268459.X

文献号 : CN108228716B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 许玉格赖春伶罗飞

申请人 : 华南理工大学

摘要 :

本发明公开了一种基于加权极限学习机的SMOTE_Bagging集成污水处理故障诊断方法,包括步骤:1)用均值法补全污水数据中属性不完整的样本的缺陷项,将其归一化到[0,1]区间中;2)设置基分类器个数及其隐层节点数的最优参数;3)针对每个基分类器采用改进的SMOTE算法对其对应的训练样本集进行独立过采样,训练基分类器;4)用基于G‑mean的方法确定每个基分类器的输出权值;5)对所有基分类器训练结束后将其进行集成,得到最终的集成分类器。本发明在有效地降低了污水数据的不平衡性的同时提高了基分类器间的多样性,提高了对污水处理故障类的分类准确率,进而有效提高了污水处理过程中故障诊断的整体性能。

权利要求 :

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

1)用均值法补全污水数据中属性不完整的样本的缺陷值,并将其归一化到[0,1]区间;

2)为了增加过采样数据的多样性,提出新的SMOTE过采样方法,对初始训练数据进行SMOTE过采样处理,获得新的训练数据,用该采样步骤替代原始Bagging算法中有放回Booststrap步骤;然后采用加权极限学习机作为基分类器,建立第i个基分类器hi(x),hi(x)表示第i个基分类器;最后,定义新的基于不平衡分类性能指标G-mean值的基分类器输出权值计算公式,并计算该基分类器的输出权值αi;其包括以下步骤:

2.1)给定含N个污水样本集X={(x1,y1),(x2,y2),...,(xN,yN)},样本共有K个类别,其中xi表示X的第i个样本,yi为K维列向量,表示其对应的类别标签,若xi属第K类,则yi的第K个元素标为1,其余元素标为-1,第1类样本的类别标签写为{1,-1,...,-1};

2.2)将X中样本数小于N×0.2的类别视为少数类,对少数类每类分别采用改进的SMOTE方法进行过采样,过采样后用得到的新样本结合原始数据组成新的训练集Xnew,以Xnew来训练一个加权极限学习机hi(x);其中,改进的SMOTE过采样方法具体如下:

2.2.1)从X中得到第j类少数类样本,将所有第j类少数类样本组成子数据集XRj,nj为XRj所含的少数类样本数,对XRj的每个样本xri,计算其与XRj中其余所有样本的欧氏距离,设置m为(0,nj]范围内的随机数,得到关于xri含m个少数类样本的K最近邻(k-NearestNeighbor,KNN)子集Si;

2.2.2)根据该少数类样本数与训练集总样本数的比例确定过采样倍率aj,aj的求取公式为:即aj取 nj,10三个数的最小值;

2.2.3)对XRj的每个样本xri,在其对应的Si中随机采样一个近邻样本xrr,生成的新样本xnew的每个特征取值为在xrr与xri在该特征空间连线上随机的一点,即xnew=xri+rand(0,1)×(xri-xrr)

2.2.4)重复步骤2.2.3)直至生成aj·nj个新样本为止,最后去除重复的生成样本;

2.2.5)重复步骤2.2.1)到2.2.4),直至对每一类少数类的样本集XRj都进行了SMOTE过采样步骤;

2.3)用Xnew所有样本作为验证集,求加权极限学习机在验证集中分类得到的G-mean值GMi,根据G-mean值建立输出权值更新公式,计算其作为基分类器的输出权值αi,输出权值αi的求取公式为:αi=0.5×ln(1+GMi)

3)重复步骤2),直至训练出T个带有输出权值的基分类器,T是基分类器的个数,将T个并列的基分类器进行加权计算,建立集成分类器;

4)用网格法进行参数寻优,求得基分类器的隐层节点数L及最优正则化系数C的最优参数组合,以此组参数为基础,训练得到最优的集成分类器H(x);

5)用步骤1)相同的方法填补污水待测数据的缺失值,并将其归一化到[0,1]区间,将处理后的待测数据输入H(x),得到输出分类结果即为待测数据对应的故障诊断结果。

2.根据权利要求1所述的基于加权极限学习机的SMOTE_Bagging集成污水处理故障诊断方法,其特征在于,在步骤3)中,所述集成分类器表示为:

3.根据权利要求1所述的基于加权极限学习机的SMOTE_Bagging集成污水处理故障诊断方法,其特征在于,在步骤4)中,所述集成分类器的网格法参数寻优参数设置具体如下:设置集成分类器的基分类器个数T,T是(1,20]范围内的整数,然后寻找基分类器的隐含层节点数L、正则化系数C的参数组合以满足算法最优性能,L的寻优范围为{10,15,

20,…,500},步长为5,C的寻优范围为{20,21,…,218},步长为1。

说明书 :

基于加权极限学习机的SMOTE_Bagging集成污水处理故障诊

断方法

技术领域

[0001] 本发明涉及污水处理故障诊断领域,尤其是指一种基于加权极限学习机的SMOTE_Bagging集成污水处理故障诊断方法。

背景技术

[0002] 污水处理是一个复杂的,多变量的生化过程。污水处理厂发生故障容易引发一系列严重的污水污染问题。而污水处理过程的故障诊断是一个模式识别的分类问题。污水数据集由定期将污水厂采集到的数据及其当前工作状态组成。由于合格的污水处理厂发生故障的频率很低,污水数据集中故障状态下的数据远少于正常状态下的数据。这就导致污水数据集是分布高度不平衡集,即污水处理过程的故障诊断是一个数据不平衡的分类问题。
[0003] 由于传统学习算法往往基于总体准确率对参数进行优化,因此容易使分类结果更偏向多数类。但在现实应用场合更被看重的是少数类的分类准确率,即在污水处理故障诊断场合,更重要的是准确分类出作为少数类的故障类。及时诊断污水处理厂的运行故障并对故障及时进行处理可减少运行费用、稳定出水水质并减少污水对环境的污染。

发明内容

[0004] 本发明的目的是为了解决现有学习算法里对污水故障识别效果不佳的缺陷,提出了一种基于加权极限学习机的SMOTE_Bagging集成污水处理故障诊断方法,在有效地降低了污水数据的不平衡性的同时提高了基分类器间的多样性,提高了对污水处理故障类的分类准确率,进而有效提高了污水处理过程中故障诊断的整体性能。
[0005] 为实现上述目的,本发明所提供的技术方案为:基于加权极限学习机的SMOTE_Bagging集成污水处理故障诊断方法,包括以下步骤:
[0006] 1)用均值法补全污水数据中属性不完整的样本的缺陷值,并将其归一化到[0,1]区间;
[0007] 2)为了增加过采样数据的多样性,提出新的SMOTE过采样方法,对初始训练数据进行SMOTE过采样处理,获得新的训练数据,用该采样步骤替代原始Bagging算法中有放回Booststrap步骤;然后采用加权极限学习机作为基分类器,建立第i个基分类器hi(x),hi(x)表示第i个基分类器;最后,定义新的基于不平衡分类性能指标G-mean值的基分类器输出权值计算公式,并计算该基分类器的输出权值αi;其包括以下步骤:
[0008] 2.1)给定含N个污水样本集X={(x1,y1),(x2,y2),...,(xN,yN)},样本共有K个类别,其中xi表示X的第i个样本,yi为K维列向量,表示其对应的类别标签,若xi属第K类,则yi的第K个元素标为1,其余元素标为-1,第1类样本的类别标签写为{1,-1,...,-1};
[0009] 2.2)将X中样本数小于N×0.2的类别视为少数类,对少数类每类分别采用改进的SMOTE方法进行过采样,过采样后用得到的新样本结合原始数据组成新的训练集Xnew,以Xnew来训练一个加权极限学习机hi(x);其中,改进的SMOTE过采样方法具体如下:
[0010] 2.2.1)从X中得到第j类少数类样本,将所有第j类少数类样本组成子数据集XRj,nj为XRj所含的少数类样本数,对XRj的每个样本xri,计算其与XRj中其余所有样本的欧氏距离,设置m为(0,nj]范围内的随机数,得到关于xri含m个少数类样本的K最近邻(K-NearestNeighbor,KNN)子集Si;
[0011] 2.2.2)根据该少数类样本数与训练集总样本数的比例确定过采样倍率aj,aj的求取公式为:
[0012]
[0013] 即aj取 nj,10三个数的最小值;
[0014] 2.2.3)对XRj的每个样本xri,在其对应的Si中随机采样一个近邻样本xrr,生成的新样本xnew的每个特征取值为在xrr与xri在该特征空间连线上随机的一点,即[0015] xnew=xri+rand(0,1)×(xri-xrr)
[0016] 2.2.4)重复步骤2.2.3)直至生成aj·nj个新样本为止,最后去除重复的生成样本;
[0017] 2.2.5)重复步骤2.2.1)到2.2.4),直至对每一类少数类的样本集XRj都进行了SMOTE过采样步骤;
[0018] 2.3)用Xnew所有样本作为验证集,求加权极限学习机在验证集中分类得到的G-mean值GMi,根据G-mean值建立输出权值更新公式,计算其作为基分类器的输出权值αi,输出权值αi的求取公式为:
[0019] αi=0.5*ln(1+GMi)
[0020] 3)重复步骤2),直至训练出T个带有输出权值的基分类器,T是基分类器的个数,将T个并列的基分类器进行加权计算,建立集成分类器;
[0021] 4)用网格法进行参数寻优,求得基分类器的隐层节点数L及最优正则化系数C的最优参数组合,以此组参数为基础,训练得到最优的集成分类器H(x);
[0022] 5)用步骤1)相同的方法填补污水待测数据的缺失值,并将其归一化到[0,1]区间,将处理后的待测数据输入H(x),得到输出分类结果即为待测数据对应的故障诊断结果。
[0023] 在步骤3)中,所述集成分类器表示为:
[0024]
[0025] 在步骤4)中,所述集成分类器的网格法参数寻优参数设置具体如下:
[0026] 设置集成分类器的基分类器个数T,T是(1,20]范围内的整数,然后寻找基分类器的隐含层节点数L、正则化系数C的参数组合以满足算法最优性能,L的寻优范围为{10,15,0 1 18
20,…,500},步长为5,C的寻优范围为{2 ,2 ,…,2 },步长为1。
[0027] 本发明与现有技术相比,具有如下优点与有益效果:
[0028] 1、本发明方法采用SMOTE_Bagging算法作为整体算法框架,结合多个分类器以防止学习过程中的过拟合现象,并降低单分类器在分类不平衡数据时可能会出现的偏差,增强算法的稳定性。
[0029] 2、本发明方法用每次训练基分类器时通过SMOTE方法对少数类样本进行过采样的方法来取代原始Bagging集成方法用Bootstrap法构造每个基分类器的步骤。在避免原始Bagging集成方法用Bootstrap方法导致训练数据信息损失的同时保证了基分类器间的多样性。
[0030] 3、为了提高对于不平衡数据的分类性能,本发明以不平衡分类性能指标G-mean值为基础,定义了新的基分类器输出权值更新公式,提高了故障诊断类别的识别正确率。
[0031] 4、采用加权极限学习机作为本发明方法的基分类器,利用加权极限学习机的训练时间较短的优势加快集成分类器的学习速度,实现对污水处理状态实时准确的检测。
[0032] 5、通过SMOTE过采样和加权极限学习机引入样本加权矩阵的方法提高了污水故障诊断的整体G-mean值,尤其是故障类别的诊断正确率得到了大幅提高。

附图说明

[0033] 图1是本发明的基于加权极限学习机的SMOTE_Bagging污水处理故障诊断方法的算法训练流程图。
[0034] 图2是本发明的基于加权极限学习机的SMOTE_Bagging污水处理故障诊断方法的故障诊断流程图。

具体实施方式

[0035] 下面结合具体实施例对本发明作进一步说明。
[0036] 本实施例采用加州大学数据(UCI)中的污水处理厂数据做为实验仿真的数据。污水测量数据来自西班牙某城市的污水处理厂,该处理厂包括三级处理,一级处理为预处理,二级处理为活性污泥处理,最后进行氯化处理。污水处理厂历时两年通过传感器获取和生化处理之后系统的性能指标计算得到的527个样本。每个样本有38维属性,每个属性的含义如表1所示。将污水处理厂的运行状态分为13种,具体状态类别及其分布情况如表2所示。
[0037] 表1污水数据属性的名称和含义
[0038]
[0039]
[0040] 表2状态类别及其分布情况
[0041]
[0042] 由表2可见,正常状态下的样本数远大于其他状态的样本数。其中,第2、3、4、6、7、8、10、12、13类每类样本数最多只有4个。为降低故障诊断过程的复杂性,将样本重新分为4类,分类结果如表3所示。
[0043] 表3 527个样本在4分类下的分布情况
[0044] 类别 1 2 3 4原类别 1、11 5 9 2,3,4,6,7,8,10,12,13
样本数 332 116 65 14
[0045] 在新的分类中,第一类表示正常状态,包括原始数据的第1、11类;第二类为正常状态但某些性能指标超过了平均值,包括原始数据第5类;第三类为正常状态但是进水流量低,包括原始数据第9类;第四类为故障类情况,包括原始数据的第2,3,4,6,7,8,10,12,13类。其中将第一、二类样本视为多数类,而第三、四类为少数类。结合表3各类的样本数容易看出,污水数据属于典型的重度不平衡数据。
[0046] 由于各种现实原因,污水数据有时会出现不能完整的记录某个时刻所有属性的数据。所有属性数据都被完整地记录下来的样本只有380个,其中包括6个第四类样本。直接删去不完整数据样本会损失大量第四类样本的信息。因此对污水数据的缺失数据进行填补。
[0047] 目前存在成熟实用的数据填补方法,常用的数据填补方法有平均值填补法、特殊值填补法和最近邻距离填补法等。本发明采用近邻均值填补法对缺陷数据进行填补。具体做法是取缺陷数据近邻的5个数据的对应属性均值来作为缺陷数据的填补值。使用经过数据填补处理后的527个污水数据进行仿真实验。
[0048] 在进行仿真实验时,传统学习算法采用的总体准确率已无法再作为不平衡数据学习的评价指标。G-mean的中心思想是在使每类的分类准确率都尽可能大的同时,保持每个类别之间的平衡。进行不平衡数据学习时,G-mean值更适合评价分类器在不平衡数据学习场合的性能。本实施例采用G-mean值作为仿真实验结果的评价指标。
[0049] 本实施例是多分类问题。对含K个类别的多分类问题,G-mean的混淆矩阵如表4所示:
[0050] 表4 K类问题的混淆矩阵
[0051]   Predictive class 1 Predictive class 2 … Predictive class kActual class 1 n11 n12 … n1kActual class 2 n21 n22 … n2k
… … … … …
Actual class k nk1 nk2 … nkk
[0052] 其中,第i类样本正确预测为第i类的样本个数为nii,预测错误的样本个数为nij(i≠j)。Ri和Pi分别表示对第i类样本的召回率和准确度,其定义为:
[0053]
[0054]
[0055] G-mean定义为所有类的召回率的几何平均值,计算公式如下:
[0056]
[0057] 如图1和图2所示,SMOTE_Bagging_WELM在本实施例的具体实施过程如下:
[0058] 1)采用集成学习算法SMOTE_Bagging作为整体算法框架,设置基分类器数量为T,分别独立训练具有多样性的T个基分类器,生成集成分类器。在具体应用中步骤1)包括:
[0059] 1.1)对每个基分类器进行独立的重采样,生成每个基分类器对应的训练样本集Xi_new(i=,…,T)。与传统Bagging采用Bootstrap法对训练样本集进行有放回采样构造每个基分类器对应的训练集不同,SMOTE_Bagging对每个基分类器独立进行关于原始训练样本的重采样,在每个基分类器得到训练样本所有信息的同时保证了基分类器之间的多样性。
[0060] 本实施过程使用SMOTE算法对少数类数据进行过采样。不同于原始随机过采样仅对少数类样本进行简单的复制来产生新的过采样样本,SMOTE方法的中心思想是在少数类样本的特征空间中通过线性插值合成得到新的少数类样本,较传统的随机过采样可以更有效地避免过采样带来的数据冗余问题,且可以抑制分类器学习过程中过拟合的问题。同时,SMOTE过采样可使分类器对少数类样本进行学习时具有更大的泛化空间,在保证分类器总分类准确率的前提下提升少数类样本的分类准确率。
[0061] 对基分类器hi(x)有原始训练集Xi,从Xi中得到第j类少数类样本,组成子数据集XRj。nj为XRj所含的少数类样本数。其中j在本实施例中有(j=2,3,4)。第j类少数类样本集XRj进行SOMTE过采样的具体实现步骤如下:
[0062] 1.1.1)对XRj的每个样本xri(i=1,...,nj),计算其与XRj中其余所有样本的欧氏距离。设置m为(0,nj]范围内的随机数,得到其含m个少数类样本的KNN子集Si。
[0063] 1.1.2)根据该少数类样本数与训练集总样本数的比例确定过采样倍率aj。aj的确定公式为
[0064]
[0065] 1.1.3)对XRj的每个样本xri,在其对应的Si中随机采样一个近邻样本xrr。生成的新样本xnew的每个特征取值为在xrr与xri在该特征空间连线上随机的一点。即[0066] xnew=xri+rand(0,1)×(xri-xrr)    (9)
[0067] 其中rand(0,1)表示0到1之间的一个随机数。
[0068] 1.1.4)重复步骤3)直至生成aj·nj个新样本为止
[0069] 1.1.5)去除重复的生成样本。
[0070] 对每个少数类对应的样本集XRj进行上述SMOTE过采样,得到合成的少数类样本,将合成的少数类样本添加到原样本集中,组成新的训练样本集Xi_new。
[0071] 1.2)使用重采样得到的样本集Xi_new(i=,…,T),训练其对应的基分类器hi(x):
[0072] 本实施例采用加权极限学习机作为基分类器。设输入训练集为X={(x1,y1),(x2,y2),...,(xN,yN)}。训练集共有N个样本,样本含d个特征,被分为K类。其中yi为训练样本xi所对应的类别标签。yi为K维列向量。yi中只有{+1,-1}两种元素,有
[0073]
[0074] 可以说,加权极限学习机(WELM)采用单隐层前馈神经网络(single-hidden layer feedforward networks,SLFN)结构作为整体框架。设定隐含层节点个数为L,极限学习机的输出模型可表示为:
[0075]
[0076] 其中,βi表示第i个隐藏节点其对应输出节点的输出权值,δi表示输入层与第i个隐含节点的输入权值。θi为第i个隐含节点的偏置参数。oj为第j个训练样本下模型对应的输出。G(δi,θi,xj)为每个隐含层的激活函数,本实施例激活函数采用Sigmoid函数[0077] 在训练过程中期望WELM模型的输出无误差的对训练集X进行拟合,有[0078]
[0079] 即
[0080]
[0081] 有激发函数矩阵H写作
[0082]
[0083] 输出权值矩阵β写作
[0084]
[0085] (4)式可写作
[0086] Hβ=Y    (16)
[0087] 其中
[0088]
[0089] 加权极限学习机训练目的是求取隐层节点向输出节点输出时的输出权值。为了解决不平衡分类问题将极限学习机(Extreme Learning Machine,,ELM)和加权策略进行结合得到的改进算法。根据类别对每个训练样本xi赋予一个权值wi,有
[0090]
[0091] 其中#ci为训练集中类别正好为训练样本xi的类型ci的样本数。
[0092] 有权值矩阵W写作
[0093]
[0094] 当激活函数G(δi,θi,xj)无限可微时,参数δi,θi在训练开始时可随机选定,且在训练过程中不需要进行更改。其中δi在(-1,1)范围下随机生成,θi在(0,1)范围下随机生成。这时WELM的训练过程可转化为求解式(7)的最小二乘解,即转化为下列优化问题。
[0095]
[0096] 其中ξi为对样本xi分类器的训练误差。通过KKT最优化条件定义Lagrange函数来求解式(11)的二次优化问题。定义li为Lagrange乘数,将式(20)转化为
[0097]
[0098] 通过求解式(21)可得hi(x)的隐层输出权值矩阵βi的解为
[0099]
[0100]
[0101] 即
[0102]
[0103] 本步骤具体实施如下
[0104] 1.2.1)根据公式(18)、(19)初始化样本权值矩阵W
[0105] 1.2.2)随机设定参数δi,θi(i=1,…,L),按照公式(14)求激发函数矩阵H[0106] 1.2.3)根据公式(22)或(23)求取隐层输出权值矩阵βi
[0107] 1.2.4)根据公式(24)获得加权极限学习机的输出模型hi(x)
[0108] 1.2.5)根据下列公式获得hi(x)的输出权值αi
[0109] αi=0.5*ln(1+GMi)    (25)
[0110] 其中,GMi为hi(x)对应Xi_new的G-mean值
[0111] 1.3)将T个训练完毕的基分类器进行集成,所述集成分类器可表示为:
[0112]
[0113] 2)输入原始训练数据,设置集成算法的基分类器个数T,基分类器的隐含层节点L,对应的最优正则化系数C,进行网格法参数寻优,输出最优参数组。
[0114] 在此实施例中设置SMOTE_Bagging集成分类器的基分类器个数T=7,寻找基分类器的隐含层节点数L、正则化系数C的参数组合以满足算法最优性能。隐含层节点L的寻优范围为{10,15,20,…,500},步长为5;C的寻优范围为{20,21,…,218},其中,步长为1。
[0115] 本发明在此实现例中的最优参数为:
[0116] L=85;C=1024
[0117] 3)输入测试数据,设置集成算法的基分类器个数T,步骤2)寻优得到的基分类器的隐含层节点L和对应的最优正则化系数C以步骤1)训练得到H(x),待测数据输入H(x),得到输出分类结果即为待测数据对应的故障诊断结果。
[0118] 根据以上步骤,采用经过数据填补及归一化处理的污水样本集进行仿真实验。实验环境为Intel Core i7处理器、6GB内存、Windows 7平台下的Matlab2014a软件;采用5折交叉验证法,取支持向量机(Support Vector Machine,SVM)、C4.5、反向传播神经网络(Backpropagation Neural Networks,BPNN)、WELM、基于加权极限学习机的Bagging集成算法(Bagging_WELM)作对比算法。其中SVM使用径向基核,由Matlab自动寻优得到核函数的比例值,并对预测指标进行标准化。C4.5采用网格法对节点数进行寻优,寻优范围为[10,60],步长为2。BP采用网格法对节点数进行寻优,隐含层节点的寻优范围为{10,15,20,…,200},步长为5;学习率的寻优范围为{0.1,0.2,…,1},其中,步长为0.1。WELM与Bagging_WELM采用本发明相同的样本权值赋值法,用网格法寻优,寻找基分类器的隐含层节点数L、正则化系数C和隐含层节点L的寻优范围及其对应寻优步长与本发明寻优过程设置相同,隐含层节点L的寻优范围为{10,15,20,…,500},步长为5;C的寻优范围为{20,21,…,218},其中,步长为1。实验结果如表5所示
[0119] 表5仿真实验结果
[0120]
[0121] 表5给出了本实施例下进行的对比仿真实验结果,同时列出了本发明所用算法(SMOTE_Bagging_WELM)及其对比模型BPNN、SVM、C4.5、ELM、Bagging_WELM的实验结果。其中R1、R2、R3、R4分别表示污水数据四大类对应的每一类的分类准确率。从表中可知,虽然SMOTE_Bagging_WELM对于第一类样本(正常类)的分类准确率较其他对比算法略低,但是在其他三类的分类准确率中较其他算法取得较高的准确率。尤其在重要性最高的第四类(故障类)的分类准确率上,SMOTE_Bagging_WELM的分类准确率比其他对比算法要高。同时,SMOTE_Bagging_WELM在对比实验中取得了最高的整体G-mean值。由此可知,本发明所采用的算法比较适合应用于污水不平衡数据的分类诊断问题。
[0122] 综上所述,本发明针对污水处理厂的故障诊断问题,重点研究了基于加权极限学习机的SMOTE_Bagging污水处理故障诊断方法。该方法利用SMOTE_Bagging集成算法作为整体集成算法框架,结合SMOTE对原始样本进行过采样,采用加权极限学习机作为集成算法的基分类器。一方面提高了污水故障诊断过程中少数类的分类准确率,另一方面利用极限学习机学习过程中对调参的要求较低、算法训练时间等优势,可保证故障诊断的时效性。
[0123] 以上所述实施例只为本发明之较佳实施例,并非以此限制本发明的实施范围,故凡依本发明之形状、原理所作的变化,均应涵盖在本发明的保护范围内。