孙 哲 金华强 顾江萍 黄跃进 王新雷 郑爱武 沈 希③
(*浙江工业大学机械工程学院 杭州310023)
(**浙江工业大学教育科学与技术学院 杭州310023)
(***伊利诺伊大学香槟校区农业与生物工程学院 厄巴纳IL61801)
(****加西贝拉压缩机有限公司 嘉兴314011)
我国北方推行“煤改电”政策以来,热泵系统的使用量逐年增加。相关研究表明,热泵系统能源消耗约占建筑能耗一半以上[1],而建筑能耗作为用能大户,在社会总能耗中占比超过40%[2]。热泵系统运行故障会导致其效率降低,造成大量能源浪费,及时、准确地诊断出相关故障可以最大限度地保证系统高效运行,达到节约能源的目的。
现阶段热泵系统故障诊断方法逐渐朝着智能化方向发展,众多研究提出了一系列基于数据驱动和深度学习的故障诊断模型,提高了诊断精度。文献[3]构建了深度模型用于空气源热泵渐变故障诊断,较好实现了早期渐变故障的预警与诊断。文献[4]基于离散化贝叶斯网络诊断制冷机组,并在ASHRAE RP-1043 数据集上验证,得到了较高的诊断精度。文献[5]利用循环神经网络构建诊断模型,实现空气源热泵热水器制冷剂泄漏亚健康的预警与诊断。文献[6]对近年来建筑能耗智能诊断方法做了相关综述,较为详细地描述了热泵系统智能故障诊断的研究现状。然而这些诊断方法都需要大量的、带有故障标记的训练数据实现模型训练。而在实际系统中,并没有那么多故障数据,这些数据也很难准确标记出故障类型,这一限制成为了智能诊断方法实际应用的瓶颈之一。要想实现高精度的故障诊断,必须具有充足的、均衡的训练数据集,即每种故障都具有足够的数据量。解决办法之一是利用有限的数据量进行数据扩充,生成更多的高度仿真的数据,从而解决数据量不足、数据集不均衡的问题。因此,如何生成高质量的仿真数据成为了解决故障诊断实际应用的关键。
近年来一种新型智能算法——生成对抗网络(generative adversarial networks,GAN),在图像生成等领域得到了极大的关注,该算法利用自我博弈的方式高效地学习训练数据样本的概率密度分布,并利用学习到的参数生成更多的仿真样本。这一技术迅速成为生成模型的主力军,在数据生成质量上远优于其他数据生成算法,如自回归网络、变分自编码等。利用生成对抗网络有望实现热泵系统故障数据集的扩充,进而解决智能故障诊断对数据量的依赖问题。
一些学者在相关领域的数据扩充方向应用GAN 取得了可喜的成果。文献[7]较早地在生物医学领域应用了GAN,实现人脑核磁共振图像的生成,解决了生物医学图像数据短缺的问题。文献[8]同样利用GAN 实现人脑核磁共振图像生成,以提高脑部肿瘤智能识别的精度。文献[9]将GAN 引入语音识别领域,利用条件GAN 生成更多的语音数据,解决带标记的语音数据量不足的问题。为提高生成数据质量,将语音数据转化到频域,以降低GAN 的训练难度。文献[10]利用GAN 实现图像数据集扩充,解决图像分类研究中因图像数据不足造成的模型表达能力差的问题。文献[11]将GAN 引入机械故障诊断领域,利用深度卷积GAN 实现机械运行数据集的扩充,解决机械故障诊断过程中因数据集不均衡导致诊断精度偏低的问题。
以上研究虽然证明GAN 在数据集扩充方面具有一定优势,但尚无学者将这一技术应用到热泵系统故障数据集扩充方向。热泵系统故障数据相比于其他数据有着自身的特点。具体而言,不同故障数据间差异非常小,如健康系统的冷凝温度可能为54.5 ℃,而冷凝器结垢系统的冷凝温度可能为55.5 ℃。这种不明显的差异给不同类别的数据生成带来了较大难度,其直接的结果是生成的各种类别数据可能相互混淆,无法达到提高诊断精度的目的。因此,本文针对热泵系统故障数据的这一特点,提出了利用热泵基准模型将运行数据转化为残差数据,并利用GAN 学习残差数据,从而增大数据间的差异性。并针对GAN 训练困难的问题,设计了具体可行的超参数方案和训练方法,实现了热泵系统故障数据集扩充。
生成对抗网络(GAN)于2014 年提出[12],随后的几年内得到了领域内极大的关注。GAN 通过对抗的过程训练生成模型,包括2 个神经网络,即判别网络和生成网络。训练的目标是使得生成网络G学习到真实数据的概率分布。
早期的GAN 使用的全连接神经网络构建生成模型和判别模型。定义一组噪音变量pz(z),并通过构建一个神经网络G(z;θg) 将噪音变量映射到数据空间。然后,再构建一个神经网络D(x;θd),其输出为单一的标量,表示x属于真实数据的概率。通过梯度下降的方式训练判别模型D,使其最大化正确判断数据真实与否的概率。同时,训练生成模型G,使其最小化log(1-D(G(z)))。以上的训练过程表示,生成模型G和判别模型D在进行二元极大极小博弈,该博弈过程可以表示为
其中,pdata是真实数据的分布,pz是隐空间的分布。
原始的GAN 存在许多问题,包括训练困难、容易发散等。为提高GAN 的使用性,后续研究逐渐提出了一系列新的版本,提高了训练稳定性,包括Wasserstein GAN[13](WGAN)以及它的改进版本WGAN-GP[14]。
WGAN 使用Wasserstein 距离作为损失函数来训练GAN,解决了当真实分布与生成分布不存在重叠时的梯度消失问题。Wasserstein 距离的定义如式(2)所示。
其中,∏(Pr,Pg) 是所有以Pr和Pg为边界的联合分布集合。但是这一定义中的infγ ~∏(Pr,Pg)没有办法直接求解,因此将式(2)变换成式(3)的形式。
这里函数f必须满足Lipschitz 连续条件,即‖f‖≤1。为了使其满足这一条件,WGAN 将判别网络D中的参数限制在[-c,c]之间。
后续的研究发现WGAN 有时同样会出现收敛失败的现象,导致这一现象的原因是强制限制了网络参数范围以满足Lipschitz 连续条件[14]。因此,该项研究提出一种利用梯度惩罚的策略来代替强制限制,并基于此策略提出了一种新型GAN 变体——WGAN-GP。这一新型结构训练稳定、易于收敛,得到了广泛的应用。
评价GAN 模型是一项非常具有挑战性的工作。对于复杂的生成数据,不仅需要评价其与真实数据概率分布间的差异,也需要评价数据自身的多样性。目前尚没有公认的权威评价方法。文献[15]对常见的GAN 评价方法做了详细的对比分析,得出核最大平均差异(kernel maximum mean discrepancy,MMD)和1-最近邻(1-nearest neighbor,1-NN)指标是2 个非常优秀的评价指标,不仅可以用来区分真实对象和生成样本,还可以识别模式丢弃(modedropping)和模式坍塌(modecollapsing),以及检测过拟合。
Kernel MMD 指标可以定义为
在一些固定的核函数K下,MMD 指标度量了真实分布Pr和生成分布Pg之间的差异,两分布差异越小,则MMD 值越小。文献[16]提出的parzen窗估计是MMD 的一种特殊形式。
1-NN 则用于成对的样本检验,用于评估两分布的相似性。给定两组样本,满足| Sr |=| Sg|,可以计算在两分布上训练的1-NN 分类器的LOO(leave-one-out)精度,其中Sr全部标记为正样本,Sg全部标记为负样本。与其他精度度量不同的是,当| Sr|=| Sg|非常大时,LOO 精度应服从约为50%的准确率,当两个分布相匹配时,即满足50%的准确率。当LOO 低于50%,则说明生成分布过拟合真实采样分布。而当LOO 远大于50%,甚至接近100%时,说明两分布差异很大。
本文将利用MMD 和1-NN 2 种评估指标对生成数据的质量进行评估,判断其与真实数据分布间的差异大小。
本文研究热泵系统故障数据集扩充方法,其目的是在标记数据不足的情况下提高诊断精度。因此,必须依靠一种诊断方法验证添加生成数据后诊断精度的变化。
本文选择前期提出的研究成果,一种基于深度学习的热泵系统故障诊断方法[3]。该方法首先建立热泵系统基准模型,用于计算健康系统的理论状态值,如冷凝温度、排气温度等。然后利用实测状态值减去理论值,得到残差数据。最后利用卷积神经网络构建诊断模型,利用残差数据训练模型,并利用训练完成的模型实现热泵系统故障诊断。
本文构建两类训练数据集,一类数据集只包含真实数据,另一类数据集则是由真实数据和生成数据组成的混合数据集,具体数据集内的数据量详见后文第3.5 节。
本文利用GAN 学习数据的分布特性,并生成更多的仿真数据,用于扩充诊断算法的训练数据集。如第1.3 节介绍,本文选用的诊断验证算法先要利用基准模型获得热泵系统的运行残差数据,后利用残差数据训练卷积神经网络,实现故障诊断。因此,数据集扩充方法既可以是扩充原始运行数据集,也可以扩充残差训练数据集。扩充原始数据集也需要利用基准模型将其转化为残差数据供卷积神经网络训练。
热泵系统运行数据和残差数据有着较大的差别。运行数据是热泵系统的热物理参数,如压缩机排气压力、排气温度、冷凝器入口温度等。随着热泵系统运行工况的调整,这些热物理参数变化较大,一定程度上覆盖了因系统故障造成的参数变化,这些是热泵系统故障诊断困难的原因之一。直接利用GAN 学习运行数据,就需要学习到不同故障数据间的差异,生成的数据也必须包含这些差异,否则无法达到提高诊断精度的目的。然而热泵系统结构复杂,具有强耦合、大滞后的特性,准确学习运行数据及故障间的差异具有较大难度。而残差数据则相对简单,所谓残差是指故障系统与健康系统在相同条件下各个参数的差值。在基准模型精度足够高的条件下,健康系统的残差数据应接近0,不同故障系统的不同参数残差各不相同,使得故障数据间的差异性明显。利用GAN 直接学习残差数据可以降低学习难度,提高数据生成质量。
但残差数据的生成需要依赖基准模型,使得生成残差的同时引入了基准模型自身的误差,模型精度越高,残差质量越好。本文选择文献[3]中的基准建模方法,这种基准模型融合卷积网络、编-解码器、循环网络,可以在热泵系统工况频繁迁移的条件下实现高精度建模,最大限度避免了残差计算过程中的误差引入。
因WGAN-GP 模型在训练稳定性方面的优势,本文以这一模型为基础,利用深度卷积网络搭建生成器和判别器,并根据数据集特性对模型以及参数设置进行优化改进,最终实现高质量的数据生成。
算法主要包括2 个部分:(1) 生成网络G,采用上采样深度卷积网络;(2) 判别网络D,采用下采样深度卷积网络。
生成网络G的作用是接收输入的噪音数据,利用网络前向传播算法生成数据样本,数据结构为二维矩阵结构。生成网络G的训练目的是学习从噪音隐空间到样本数据x的映射关系。生成网络G的损失函数表示为式(5),pg表示生成数据的分布。从损失函数可以看出,其计算值与判别器的诊断结果相关,这也是生成对抗两个过程不可分割的地方。
判别网络D的作用是接收真实数据样本和生成数据样本,利用网络前向传播算法最终给出数据是否属于真实数据的二元概率值,取概率较高的标签为最终判定值。判别网络D和生成网络G是在相互对抗的状态下完成训练的,判别网络G的损失函数表示为
其中,pr表示真实数据的分布,p^ω表示真假数据间的抽样数据的分布。生成网络和判别网络在对抗学习中共同提高,最终使生成网络G可以生成概率分布非常接近真实数据分布的样本数据。
生成网络的目的是生成接近真实数据分布的高质量数据,用来迷惑判别网络。而判别网络则不断优化使得可以准确区分生成数据和真实数据。在这样一种对抗训练过程中,两个网络共同优化,最终使得生成网络可以生成非常接近真实数据的样本。为提高生成数据的质量,每个GAN 模型只生成一种故障数据,多个GAN 模型共同实现故障数据集的扩充。具体的GAN 算法构架见图1,运行数据先由基准模型转化为残差数据,而生成网络则直接由噪音数据生成残差数据。两种残差数据混合在一起输入判别网络,作为训练数据优化判别网络,使其可以更好地区分真实数据和生成数据。生成网络的训练则需要结合判别网络,将判别网络的参数固定使其不能优化,生成网络不断生成新的数据并将其标记成真实数据,利用判别网络诊断并计算损失值,利用反向传播算法优化生成网络。如此往复实现持续的对抗优化,直到训练轮数结束。
图1 GAN 算法构架
GAN 模型训练困难,在现有模型基本结构的基础上需通过调节具体参数实现训练收敛,因此一些参数调整方面的优化对任务的实现具有重要作用。近年来,许多学者相继提出了一系列GAN的训练技巧,给GAN 的实际应用带来了帮助,如NIPS2016 以及ICCV2017 上SoumithChintala 总结的GAN 训练技巧。本文结合相关研究内容,根据自身研究特点,使用如下训练技巧。
(1) 除生成器第一层和判别器最后一层外,不使用全连接神经网络。
(2) 生成器激活函数选择方面,除最后一层外,均使用rule 函数。最后一层根据数据的归一情况,若范围为[-1,1]则使用tanh 函数,若为[0,1]则使用sigmoid 函数。
(3)判别器激活函数选择情况,除最后一层外,均使用leakyrelu 激活函数。最后一层根据数据真伪标记法决定,若为传统GAN 标记法,即fake 数据标记为1,valid 数据标记为0,则使用sigmoid 函数;若使用带有梯度惩罚(gradient penalty)的标记法,即fake 为1,valid 为-1,dummy 为0,则使用tanh 函数。
(4)数据真伪的标记使用软标签,即不要简单地使用1 或者-1 来表示,而是添加[0,0.1]的随机噪音,将标记改为[-1,-0.9]以及[0.9,1]之间的随机数。
(5)在生成每一层卷积层之后,添加一层batchnormalization(BN)层。
(6)若使用WAGN-GP 模型,在判别器中不要使用batchnormalization 层。
(7)无论是生成器还是判别器,卷积核的数据应比较多,本文实验中,使用的最大卷积核数量达到了256。
(8)无论是生成器还是判别器,均不使用池化层。
(9)判别器不使用太深的卷积网络,通常2~3层的深度最好,太深的判别器范围诊断效果不好。
(10)每训练一轮生成器,通常需要训练n次判别器,本文设置n=3。
本文所用GAN 模型的生成器和判别器均使用深度卷积网络,具体结构参数见表1 和表2。利用以上训练技巧和优化的参数,可以实现热泵系统残差数据的高质量生成。
表1 生成器网络结构
表2 判别器网络结构
本文实验数据来自项目组搭建的热泵系统故障诊断实验平台,平台可以分成3 个子系统,即热泵子系统、电气子系统和软件子系统,其结构原理见图2。
图2 实验平台结构图
热泵子系统的详细介绍见表3,冷媒选择R134A。电气子系统包括数据采集、机构控制和DA输出。数据采集系统采用研华数据采集系统。软件子系统采用LabVIEW2018 编程。每间隔30 s 进行一次运行数据采集,采集完毕的数据存储在MySQL数据库。
表3 热泵子系统介绍
实验平台可实现8 种系统状态模拟,包括健康状态、冷凝器结垢、蒸发器结垢、制冷剂泄漏、冷凝器蒸发器同时结垢、冷凝器结垢且制冷剂泄漏、蒸发器结垢且制冷剂泄漏和冷凝器蒸发器结垢且制冷剂泄漏。采集的数据参数见表4。
表4 采集数据变量
GAN 训练需要利用一定数量的真实数据,实验中对每类故障单独训练。每类故障选择500 组样本构成训练集,batchsize 设置为200,共训练10 万轮。每完成1000 轮,对生成模型进行保存,并利用生成模型生成一批数据,用于GAN 模型质量的评估。
本文提出利用GAN 直接学习残差数据代替学习原始运行数据,以此用来降低GAN 训练难度。为验证这一方法的有效性,在GAN 训练中分别让其学习残差数据和原始数据,并对生成的数据质量进行评估。
算法利用Python 3.6 编程,开发环境使用Pycharm 2017 版本。深度学习框架使用Keras 2.2.4,这是一种成熟的深度学习顶层封装框架,其底层使用TensorFlow 运算,最新版的TensorFlow 框架已经融合Keras。
硬件环境为一台图形工作站,CPU 为Intel Xeon E5-1650 v3,GPU 为NVIDIA Quadro K2200,工作站内存为16 GB,操作系统为Windows 7 X64,训练算法运行在GPU 上。
为验证GAN 生成数据的质量,本节利用MMD指标对生成数据与真实数据间分布差异进行评估。本文提出利用GAN 模型学习热泵系统残差数据代替原始数据,用于提高数据生成质量。因此,本节利用MMD 分别评估两种GAN 模型生成数据(原始生成数据和残差生成数据)的质量,用于验证利用残差数据训练GAN 的有效性。MMD 指标是考量两组数据分布差异的一种方法,MMD 值越小,两组分布差异越小,可以用来验证生成数据和真实数据的接近程度。
本节对实验不同训练轮数对应的生成数据进行MMD 分析,对比原始数据生成实验和残差数据生成实验在相同训练轮数时生成数据的质量,实验结果见图3。图中展示了两组GAN 训练实验中各类故障生成数据随训练轮数增加MMD 评分的变化。其中,health 表示健康系统数据、co 表示冷凝器结垢故障、ev 表示蒸发器结垢故障、re 表示制冷剂泄漏故障、c_e 表示蒸发器结垢冷凝器结垢故障、r_c表示冷凝器结垢制冷剂泄漏故障、r_e 表示蒸发器结垢制冷剂泄漏故障、r_c_e 表示蒸发器结垢冷凝器结垢制冷剂泄漏故障。
两组实验均进行10 万轮的对抗训练。由图3可知,随着训练轮数的增加,所有故障生成数据的MMD 值均呈现下降趋势,说明对抗生成训练持续优化,证明前文所描述的GAN 网络结构及其超参数设定是可行的。对比不同故障数据,原始数据生成实验中的健康生成数据的MMD 值相比于其他数据偏低,但仍然呈现下降趋势,在训练轮数接近10 万轮时,MMD 值约为0.32,属于可接受范围,其他故障生成数据的质量则更高。对比原始数据生成实验和残差数据生成实验,发现残差数据生成实验的MMD值普遍低于原始数据生成实验,数据质量更加接近真实数据,造成这一现象的主要原因在于数据自身的差异性。原始数据不同故障以及不同时刻下数据自身差异性较小,例如,冷凝器结垢亚健康和健康系统对比,冷凝温度变化幅度小于2 ℃,而冷凝温度的基数约为55 ℃,波动比例约为4%。而相对于残差数据,冷凝器结垢故障和健康系统对比,前者的冷凝温度残差约为-0.2 ℃,而后者的冷凝温度残差在[-0.01,0.01]之间,波动比例超过20 倍。这一现象说明不同时刻以及不同健康程度下,残差数据的差异性更加明显,使得GAN 生成数据更加容易。
从图3 可以得出结论,残差数据生成实验的数据相比于原始数据生成实验质量更优。接下来对10 万轮训练完毕的数据进行交叉验证,即分析不同故障数据间的MMD 值,用于验证生成数据对不同故障标签的区分程度。
图3 基于MMD 指标的评估结果对比图
对于真实数据而言,同一故障类别的数据分布相同,MMD 值较低;而不同故障类别的数据分布不同,MMD 值较高。系统生成数据也符合这一情况。表5 展示了原始数据生成实验的MMD 指标交叉验证数据。从表中可以看出,相同类别的生成数据与真实数据之间的MMD 值明显低于不同类别的MMD 值。证明生成的数据分布跟对应类别的真实数据分布接近,跟不同类别的真实数据分布差异较大。
表5 原始数据生成实验MMD 交叉验证表
同样地,表6 展示了残差数据生成实验的MMD交叉验证数据。与原始数据生成实验相同,残差数据生成实验中,相同类别的生成数据和真实数据MMD 值较低,不同类别的生成数据和真实数据MMD 值较高。且同一类别的MMD 值普遍比对应的原始数据生成实验的MMD 值低,再次证明了残差数据生成实验的优势。
表6 残差数据生成实验MMD 交叉验证表
通过利用MMD 指标对两组实验进行验证分析发现,无论是不同训练轮数下的MMD 值还是交叉验证的MMD 值,残差数据生成实验的生成质量均优于原始数据生成实验。因此,从MMD 评分的角度来看,利用残差数据生成是一种更优的方法。
GAN 模型质量评估尚处于开放研究状态,没有一种权威的指标可以全面评价生成数据的质量。为更加准确地评估实验结果,本文利用MMD 指标的同时使用1-NN 指标再次评估,并综合评估结果进行分析,以期得出更加真实的结论。1-NN 指标与MMD 不同,前者的理想值是0.5,在[0.5,1]之间时,值越低越好,但是低于0.5 则说明生成数据存在过拟合。
利用评估指标对不同训练轮数的GAN 生成数据质量进行评估,并将评估结果列于图4。从图中可以看出,原始数据生成实验的结果并不理想,随着训练轮数的增加,部分故障数据的1-NN 值存在上升情况,而其他故障数据也没有表现出良好的单调性。在训练2 万轮之后,数据的1-NN 值基本稳定,对抗训练不再能够继续优化。而残差数据训练实验中,虽然下降幅度也不太明显,但整体1-NN 值较原始数据生成实验的更低,更加接近0.5 的理想状态。说明残差数据生成实验能更好地拟合真实数据分布,数据质量更高。产生这一现象的原因是残差数据自身更加明显的差异性导致的,这一差异性降低了模型的学习难度。
图4 基于1-NN 指标的评估结果对比图
对10 万轮训练完毕的数据进行交叉验证,分析不同故障数据间的1-NN 值,验证不同故障标签生成数据的区分程度。表7 展示了原始数据生成实验的1-NN 指标交叉验证数据。从表中可以看出,相同类别的生成数据与真实数据之间的1-NN 值明显低于不同类别的1-NN 值。证明生成的数据分布跟对应类别的真实数据分布接近,而跟不同类别的真实数据分布差异较大。同时发现,同类别的数据的1-NN 值均大于0.75,证明生成数据质量不是很理想。
表7 原始数据生成实验1-NN 交叉验证表
表8 展示了残差数据生成实验的1-NN 指标交叉验证数据。从表中看出,同样是相同类别的生成数据的1-NN 值较低,不同类别的1-NN 值较高,证明GAN 模型可以针对不同类型数据进行区分生成。观察同类别的1-NN 值发现平均在[0.58,0.7]之间,优于原始数据生成实验,再次证明残差数据生成方式的优势。
表8 残差数据生成实验1-NN 交叉验证表
经过1-NN 指标的验证,可以得出同样的结论。利用残差数据生成方法实现数据集扩充,得到的数据质量更高,更加接近真实分布。
第3.3 节和第3.4 节中分别利用MMD 指标和1-NN 指标对生成数据与真实数据分布间的差异进行了评估,证明利用GAN 生成的数据与真实数据分布相近,且残差生成实验的质量更高。本文研究数据集扩充的目的是提高热泵系统故障诊断精度,因此有必要进一步利用诊断方法验证添加生成数据对最终诊断精度的影响。
本节共设计两组实验从两个维度验证生成数据添加对诊断精度的影响。每组实验中又分为利用原始数据生成实验数据和残差数据生成实验数据进行验证的两类。
实验1 中训练数据集包含8 类故障数据子集,每类故障数据子集均包含500 组真实数据样本,以及一定数量的生成数据样本。按每类生成数据样本的添加量不同,分别构成5 个混合训练数据集,包含的每类生成数据样本分别为0 组、500 组、1000 组、1500 组、2000 组。训练的参数设置及训练轮数参考文献[3]中设置。训练完成的模型利用未参与训练的测试数据集测试诊断精度,测试数据集包含8 类真实故障数据,每类2000 组样本,实验结果见图5。可以看出,随着生成数据数量的增加,整体诊断准确率呈现先增加后减少。在真实数据和生成数据比例为1 ∶1 时,整体诊断准确率最高。同时发现,在训练数据量较低时,即便全部是真实数据,诊断准确率也非常低。对比原始数据生成实验和残差数据生成实验发现,利用生成的残差数据扩充训练数据,其诊断准确率的提高效果远高于原始数据扩充的效果。随着生成数据的不断增加,整体准确率会出现少量下降,说明数据生成质量依然存在干扰,不断增加生成数据的同时引入了干扰项。
图5 固定真实数据量的诊断验证实验
实验2 的设计与实验1 类似,不同之处在于混合训练数据集中每类故障数据量固定为2000 组,其中真实数据与生成数据按4 ∶0、3 ∶1、1 ∶1、1 ∶3、0 ∶4 的5 种比例组合,构成5 个不同的训练数据集。同样利用每类2000 组未参与训练的真实数据进行验证,结果见图6。可以看出,原始数据生成实验中,随着真实数据比例的降低,整体诊断精度下降,说明利用生成数据代替真实数据会在一定程度上牺牲准确率。而残差数据生成实验中,随着真实数据比例的降低,整体诊断精度下降并不明显,仅在全部使用生成数据训练时存在明显的准确率下降。
图6 固定总体数据量的诊断验证实验
以上两组实验说明,利用GAN 进行数据集扩充是具有一定意义的。在数据量有限的情况下,利用生成数据增加训练数据量可以达到提高诊断精度的目的。而对比原始数据生成实验和残差数据生成实验发现,残差数据生成实验的效果明显优于原始数据生成实验,这一结论与第3.3 节和第3.4 节的结论是一致的。
随着近年来深度学习的迅速发展,越来越多的热泵故障诊断方法引入深度学习技术,得到了很好的效果。但基于深度学习的故障诊断依赖大量带有标记的故障数据,而实际上热泵系统的故障数据非常难获取,给深度学习的应用带来困难。本文提出利用新兴的智能算法——生成对抗网络(GAN),实现热泵系统故障数据集的扩充,解决训练数据不足、数据集不均衡等问题。文章的主要工作及贡献总结如下。
(1)针对热泵系统运行数据间差异较小且复杂度高的问题,提出利用热泵系统基准模型将运行数据转化成残差数据,增大数据间差异化,降低数据复杂度。利用GAN 学习残差数据的分布,将生成的残差数据用于故障分类器的训练,实现故障诊断精度的提高。
(2)针对GAN 模型训练困难、易出现模式坍塌等问题,提出一系列训练技巧来提高模型训练稳定性。并针对热泵数据自身特点,设计并优化的GAN模型中生成器和判别器的结构参数,真正实现稳定、高效的故障数据集扩充。
(3)为验证生成数据和真实数据间的分布差异,利用MMD 和1-NN 指标对生成数据进行验证。结果显示,随着GAN 训练轮数的增加,MMD 和1-NN指标均呈现下降趋势,证明训练过程处于持续优化。利用交叉验证,同类故障数据间的MMD 和1-NN 指标均远小于不同类别的指标值,证明GAN 可以准确区分故障类别。同时,利用残差数据训练的GAN 模型在两类指标上均优于原始数据训练的模型,证明利用残差数据训练GAN 是一种有效的优化方法。
(4)利用诊断方法对引入生成数据的诊断实验进行验证。在含有固定500 组真实样本的验证实验中,随着生成数据数量的增加,诊断精度先提高后轻微降低,在真实数据和生成数据量为1 ∶1 时,诊断精度最高。在固定2000 组样本总量的验证实验中,随着生成数据比例的增加,诊断精度轻微下降,但并不明显,仅在全部使用生成数据时精度明显下降。证明基于GAN 的数据扩充对诊断精度的提高具有积极意义。
综上所述,本文提出的热泵系统故障数据集扩充方法对数据不足情况下的故障诊断精度具有明显的优化效果,可一定程度上降低对标记数据的依赖,扩大智能诊断方法的应用范围,是一种应用前景广阔的方法。而作为数据生成质量的重要保证,生成模型评价方法至关重要,目前尚无成熟评价体系,因此可作为未来研究方向之一,尝试构建从距离分布、多样性以及热泵数据独有特性保留程度等多方面综合评价的体系,实现更为全面的生成模型质量评估。