1. 引言
工业设备的正常运行对于保障生产的连续性和效率至关重要。如果设备出现故障,极易造成安全事故以及经济损失等严重后果。而且,随着工业自动化程度的提高和规模的扩大,工业过程面临的安全隐患也变得更加复杂和严峻。一旦发生事故,可能造成的损失不仅是经济损失或产品质量下降,还可能威胁到人民群众的生命安全,甚至导致严重的环境污染和社会影响。因此,为了确保工业过程能够安全、稳定、高效地进行生产,对工业过程实施有效的故障诊断具有重要意义。首先,工业过程故障诊断可以实时监测生产设备和生产过程中的各种参数和状态,及时发现异常情况和潜在故障,并进行诊断和处理,从而确保生产过程的安全和稳定运行。同时,通过对生产过程进行实时故障诊断,可以及时发现生产过程中的问题和障碍,并加以解决,从而提高生产效率和产品质量。另外,及时发现和处理生产过程中的异常情况和故障,可以减少不必要的停机时间和生产损失,降低生产成本,同时也可以减少资源的浪费和消耗。因此,对工业设备进行及时、准确的故障诊断具有重要意义,能够有效降低操作失误或发生故障所带来的不良后果。
随着工业现代化的发展,工厂投入更多的监控装置来监测设备运行时的不同状态,这为改进故障诊断策略提供了可靠的数据基础。在故障诊断领域,通过将深度学习相关的先进技术引入故障诊断系统,监控设备所获取的信息,可以作为改进故障诊断策略的基石 [1] [2] [3] [4] 。卷积神经网络(Convolutional neural network, CNN) [5] 作为一种具有较强学习能力和非线性特征提取性能的代表性深度学习算法,在故障诊断领域同样得到了广泛的应用 [6] [7] 。现在,随着深度学习的快速发展,利用深度神经网络设计故障诊断模型有了卓越的成果。然而,尽管深度学习模型在工业过程故障诊断领域取得了一定进展,但仍然面临诸多困难和挑战。
深度学习方法达到理想的效果需要足够的优质数据来支撑,即需要大量的高质量故障与正常状态的样本,但实际情况却与需求背道而驰。首先,在实际工业运转中,由于设备发生故障所隐藏的安全隐患与经济损失等问题,设备多数时间都处于正常运行状态,只有极少数时间会出现故障。因此,通过监控设备所获得现实工程场景中样本情况是正常状态下的样本数量要远远多于故障状态下的样本。其次,通过在实验室进行故障仿真实验来获取故障数据不仅需要大量的人力、物力、财力的投入,而且通过仿真获取的故障数据常常会缺乏现实情况中的复杂工作环境信息,这对后期进行数据的处理与应用是一种缺陷。另外,有些工业过程的设备及其规模十分庞大,难以在实验室进行高还原度的模拟仿真。
这种现象所导致的正常样本与故障样本数量的不平衡问题也是现在基于数据的工业过程故障诊断的主要挑战之一。正常状态下的样本数量与故障状态下的样本数量不平衡,如果直接将有限的故障数据用于智能诊断模型的训练,容易导致诊断模型将注意力放在样本数量多的正常样本上,进而忽视少数但重要的故障样本,训练好的故障诊断模型极易将故障样本误判为正常样本,造成训练出的模型可能会出现偏倚。由于故障样本数量较少,模型可能无法充分学习故障状态的特征,从而导致模型在故障诊断中的性能下降。如果无法有效识别出工业设备在运行时出现的故障,这一结果毫无作用,甚至会造成更严重的后果。当模型将故障样本误判为正常状态时,可能导致误报率增加,使得维护人员可能会忽视真正的故障,并且不断地进行不必要的检查和维修,增加了生产系统的维护成本和停机时间。由于缺乏故障样本,在工程场景下难以建立有效的智能诊断模型,实现准确的故障识别。因此,寻找解决不平衡问题的有效方法是非常重要且具有积极意义的事情。
长期以来,如何解决工业过程中数据不平衡问题一直是学者们的研究热点 [8] [9] 。例如,一些研究者通过将数据量不足的故障图像样本进行简单的图像几何变换,譬如随机裁剪、翻转、旋转、遮盖、变形、缩放进行数据增强 [10] 。另外,也有一些研究者对数据集中的样本应用重采样技术,旨在通过增加或减少某些类别的样本数量,从而使得不同类别的样本数量更加平衡,提高模型在不平衡数据集上的性能。SMOTE (Synthetic Minority Over-sampling Technique)技术便是常见的一种过采样方法 [11] 。SMOTE的基本思想是对较少类别的样本进行插值,生成一些新的合成样本,从而增加数据集中该类别的样本数量,经常用于分类问题中,解决较少类别样本数量少的不平衡数据集问题。文献 [12] 提出了范围控制SMOTE (Range Control SMOTE)来生成具有精确计算的安全范围的合成样本,其中范围是根据输入数据的特征计算的,以避免过拟合问题。Arora等人 [13] 提出了一种MCBC-SMOTE (Majority Clustering for balanced Classification-SMOTE)模型,通过对少数类进行过采样作为聚类多数类的平均值,以生成对称的类分布以此来解决数据不平衡问题。此外,也有一些模型通过调整每个类别在训练中的权重来平衡不平衡的数据集。通过调整每个类别的权重,使得模型在训练中更关注那些不平衡的、更难分类的类别,从而达到期望效果 [14] 。Frumosu等人 [15] 改进成本敏感分类策略,解决制造工程中的数据不平衡问题。虽然这些方法取得了一些成就,但代价敏感学习的性能非常依赖于代价的定义。如果代价定义不明确,可能会导致模型性能不佳,甚至产生不稳定的结果。
深度学习当中生成模型的快速发展,为解决数据不平衡问题提供了另外一种有效的解决方法 [16] [17] 。变分自编码器(Variational Autoencoder, VAE)作为其中的一种 [18] ,受到了广泛的应用。VAE属于自编码器(Autoencoder, AE)的一种,同样是由编码器和解码器组成。输入数据通过编码器被映射到潜在空间中,并生成潜在变量的均值和方差。然后,从潜在分布中采样一个点,使得生成的点能够代表潜在空间的一些变化。最终,采样的点通过解码器被映射回数据空间,生成最终的重构输出。这样,就可以获得具有与原始样本具备相近概率分布的增强样本。而且VAE能够在潜在空间中生成具有多样性的样本,这有助于增强数据的多样性,从而提高模型的泛化能力。文献 [19] 提出了一种基于VAE的时间序列增强方法,通过训练VAE模型生成与原始样本具有相似分布的生成数据,一定程度上解决了因为数据量不足而导致的无法精确建立模型的问题。文献 [20] 提出了一种具有可理解概念嵌入的VAE,名为Cloud-VAE,它通过解开潜在变量并基于云模型考虑其不确定性来构造可解释的潜在空间,通过实验证明该模型良好的聚类和重构性能能够生成高质量的生成样本。但是,若想达到理想的生成效果,选择合适的潜在空间维度和模型超参数是一个挑战,不当的选择可能导致生成的样本不如预期。
因此,本文提出了一种基于VAE进行数据增强的工业过程故障诊断策略,利用VAE模型的生成能力对不平衡数据进行数据增强,并使用多元高斯分布来建模潜在空间中的潜在变量,提高生成样本在数据空间中的多样性,以此提高诊断模型的分类性能。
2. 相关理论
2.1. 变分自编码器
在深度学习领域,生成模型的发展一直备受关注。其中,VAE作为一种强大的生成模型,吸引了广泛的研究和应用。VAE不仅能够学习数据的潜在表示,还可以生成具有多样性的新数据,因此在图像生成、数据增强等任务中具有重要的应用价值。
VAE的核心思想是将生成模型的训练过程转化为对潜在空间中的概率分布的学习。其模型结构如图1所示。为了从模型生成样本,VAE首先从编码分布中采样z。然后使样本通过可微生成器网络
。最后,从分布
中采样x。在训练期间,编码器
用于获得z,而
则被视为解码器网络。变分自编码器背后的关键思想是,它们可以通过最大化与数据点x相关联的变分下界
来训练:
其中,
可视为潜变量的近似后验下可见和隐藏变量的联合对数似然性。
视为近似后验的熵。当q被选择为高斯分布,其中噪声被添加到预测平均值时,最大化该熵项促使该噪声标准偏差的增加。
为在其他自编码器中出现的重构对数似然。
试图使近似后验分布
和模型先验
彼此接近。
2.2. 多变量高斯分布
多元高斯分布(Multivariate Gaussian Distribution)是高斯分布的扩展,用于描述多维随机变量的分布。在一维情况下,高斯分布可以由均值和方差描述。而在多元高斯分布中,考虑到多个维度,分布由均值向量(Mean Vector)和协方差矩阵(Covariance Matrix)来描述。多元高斯分布的概率密度函数(Probability Density Function, PDF)为:
其中,
均为列向量:
工业过程通常具有多个参数和变量,这些参数和变量之间可能存在复杂的关联关系。通过使用多元高斯分布来建模潜在空间,可以更好地捕捉数据的多维特征和复杂的相关性。这有助于将潜在空间中的结构与实际工业过程的特征相对应,从而更好地理解数据背后的物理机制。同时,多元高斯分布具有明确的参数表示,包括均值向量和协方差矩阵。这使得模型的潜在空间具有较好的可解释性,有助于理解模型学到的潜在表示,并根据需要进行调整和改进相关工业过程。
3. 模型构建
本文从数据层面解决工业过程中不平衡数据故障诊断问题,提出了一种基于VAE进行数据增强的故障诊断模型。该故障诊断模型框架如图2所示。在故障诊断模型中,首先利用有限的样本对VAE进行训练,使得编码器能够将输入的故障数据映射到潜在空间,并使得解码器能够从潜在空间中生成与原始故障样本尽可能接近的重构故障数据。然后利用训练好的VAE解码器生成增强样本,这些样本是从潜在空间中采样并由解码器生成的,可以提供额外的故障状态样本以增加数据集的多样性和数量。通过混合原始样本和生成样本,平衡数据集中正常状态和故障状态的样本数量,从而使得模型在训练过程中能够充分学习到故障状态的特征,避免故障诊断模型过度关注正常状态样本而忽略故障状态样本。之后,利用平衡数据集训练VGG-16网络,使其能够有效地学习到数据的特征并进行故障诊断。通过将待诊断的数据输入经过训练的VGG-16网络,可以得到对故障状态的准确识别。
Figure 2. Fault diagnosis model framework
图2. 故障诊断模型框架
3.1. VAE数据增强网络
VAE作为一种常用的数据增强技术,旨在通过模型训练生成更多、更丰富的训练样本,从而提高深度学习模型的泛化能力和性能。在许多工业过程故障数据集中,不同故障类别的样本数量与正常类别的样本数量存在明显的不平衡现象,这可能会导致故障诊断模型对于不通故障类别的特征学习不足。通过VAE技术进行数据增强,可以生成更多的不同故障类别样本,从而平衡数据集中各个类别的样本数量,提高故障诊断模型在不同故障类别上的性能表现。
VAE主要由编码网络和解码网络构成。其网络结构图如图3所示。其中编码网络由3个全连接层构成,负责将输入的真实故障图像映射到潜在变量的分布参数,即潜在变量的均值和对数方差。这两个参数用于参数化潜在变量的概率分布,在本文中,潜在变量采用的是多元高斯分布。通过特征提取和映射,输入的故障图像被编码成一个低维潜在表示,包含了故障样本的关键特征信息,之后用于后续的解码和重构。解码网络主要由2个全连接层和3个反卷积层组成。全连接层的输入为潜在空间的编码向量,并将其映射到一个隐藏层的特征空间中。进而将隐藏层的特征空间映射回到特征张量的形状,以准备进行反卷积操作。然后通过3个反卷积层,逐步将隐藏特征张量解码成最终目标尺寸的输出图像。3个反卷积层中的采用的激活函数为Relu函数,前2个反卷积层采用了批标准化。
Figure 3. VAE network structure diagram
图3. VAE网络结构图
3.2. VGG故障诊断网络
VGG网络是一个深度卷积神经网络,具有多个卷积层和池化层,可以有效提取输入的故障图像的特征。在故障诊断中,这些深度特征可以捕获到输入数据中的关键信息,有助于识别和区分不同的故障类别。VGG网络在许多大规模图像分类任务中表现出色,具有较高的准确性和泛化能力,因此本文选择VGG网络作为故障诊断模型。同时,由于VGG网络结构简单且参数较少,相对于一些更复杂的网络结构,它的训练速度更快,可以在较小的数据集上进行有效训练。基于种种优点,VGG网络作为一个经典的卷积神经网络结构,它已经被广泛应用于各种图像分类和识别任务中,因此在基于图像的故障诊断领域应用VGG模型同样具备可行性。在本文中,选择VGG-16网络作为故障诊断模型。
4. 实验与分析
4.1. 数据描述
为了验证所提出的方法,本文在公开数据集PRONTO异构基准数据集的视频数据上进行了训练与验证 [21] 。PRONTO基准数据集来自克兰菲尔德大学工艺系统工程实验室的工业规模、全自动化、高压、多相流设施。该设施的主要研究由水、空气和油组成的多相流。视频部分为该设施的一段透明管道的监控视频,通过观察管道内的流动状态,可以判断设备的运行情况,图4(a)为透明管道的示例图像,分别为normal、air leakage、diverted flow三种状态下的流动状态。在本文中,分别选取了100个正常样本和50和30个不同类别的故障样本作为原始训练集,模拟现实情况下数据不平衡的情况,测试集每类包含50个样本。具体样本信息见表1。
Table 1. Number of samples in the experimental data set
表1. 实验数据集样本数量
为了降低图像中管道以外的信息对后续网络模型的特征学习及提取造成影响,首先对数据集进行预处理。首先,通过截取图像中的管道部分过滤无关信息,同时,将所有图像裁剪为统一尺寸,方便后续网络进行处理,图4(b)为经过裁剪后的样本示例。其次,为了消除拍摄时光线、色温的差异,统一将数据集进行归一化处理,提高模型的泛化能力。
Figure 4. Transparent pipeline images in different operating states and cropped sample examples (a) Example diagram of transparent pipelines in different operating states; (b) Sample image after cropping
图4. 不同运行状态透明管道图像及裁剪后的样本示例(a) 不同运行状态透明管道示例图;(b) 裁剪后示例图
4.2. VAE模型训练
在训练VAE模型时,为不同故障类别训练单独的VAE模型。输入数据为经过预处理的故障图像,图像尺寸为256*256*3。多元高斯分布的维度设置为50。训练时每个批量的样本个数为32个。模型训练时选择Adam作为优化器,模型的超参数设置如表2所示。
Table 2. Hyperparameter settings during model training
表2. 模型训练时的超参数设置
VAE模型训练时的损失由重构损失和KL散度损失两部分组成:
其中重构损失衡量了模型生成样本的质量,即模型输出与原始输入之间的差异。KL散度损失用于测量潜在空间分布与标准正态分布之间的差异。通过最小化重构损失和KL散度损失,模型被迫学习到尽可能准确地重构输入的故障样本,以提高生成样本的质量,以及将输入故障样本映射到潜在空间的编码分布尽可能接近标准正态分布,从而提高模型在潜在空间中的可解释性和生成样本的多样性。模型训练时的损失值如图5所示。从损失图可以看出,模型的损失随着训练次数的增加逐渐降低,在最终阶段达到最小且保持收敛。这表明该模型得到了良好的训练,可以用于样本生成。图6为VAE模型生成图像的示例。可以看到,生成的图像具备了原始图像的相关特征,证明VAE模型经过训练,学习到了原始数据的主要特征,并且能够通过解码网络采样生成相关故障样本。
Figure 5. VAE model training process loss chart
图5. VAE模型训练过程损失图
Figure 6. Example of image sample generated by generative model
图6. 生成模型生成图像样本示例
4.3. 故障诊断
为了验证VAE模型生成的样本在不平衡故障诊断中的效果,将生成的故障样本加入到不平衡数据集中进行增强,使故障类样本数量与正常样本数量达到一致。并用不同方法对增强前后的数据集进行训练分类,对比不同的实验结果,分析模型生成新样本在增强后所发挥的作用。模型的故障诊断正确率如图7所示。从图中可以看出,采用不同的数据增强方法对故障诊断的正确率均有所提升。其中传统数据增强是指对原始数据集随机选取水平或垂直翻转、旋转图像一定角度、平移图像或者随机剪裁图像的一部分等方法来增加训练集的规模和多样性。生成对抗网络(Generative Adversarial Network, GAN)作为一种广泛使用的数据生成技术也可以为本文提供参考。最终可以看出,原始数据集通过VAE技术进行数据增强之后,VGG-16网络的故障诊断性能大幅度提高。
Figure 7. Fault diagnosis accuracy rate of different enhancement methods
图7. 不同增强方法故障诊断正确率
为了更加直观的描述诊断结果,图8展示了VGG-16神经网络对故障数据分类的混淆矩阵图。从图中可以看出,在数据处于不平衡时,分类器会将少数类样本分入错误类别,但经过数据增强之后,分类器对故障样本的分类效果明显提升。表明随着少数类样本数量的增加,诊断模型可以提取更多有用的故障信息,用于区分少数类样本和多数类样本。尤其是经过VAE模型增强之后的数据集,仅仅将一个故障样本错分,故障诊断的精准率高达99.3%。
Figure 8. VGG-16 network original data and VAE model enhanced data fault diagnosis confusion matrix
图8. VGG-16网络原始数据与VAE模型增强数据故障诊断混淆矩阵
此外,为了更全面地展示故障诊断的效果,表3列出了应用不同数据增强方法进行增强后分类网络的各项指标。表中可以看到,原始数据集经过不同方法进行数据增强之后,各项指标均有所提升。经过VAE模型数据增强之后的各项指标与其他方法相比,都表现出了理想的效果,召回率和特异性分别为99.3%与99.7%。因此,可以看出,本文提出的基于VAE的工业过程不平衡数据故障诊断策略在解决实际问题时能够发挥出优秀的效果,有利于解决实际工业过程中的故障诊断问题。
Table 3. Different performance indicators of different data augmentation methods
表3. 不同数据增强方法的不同性能指标表现
5. 结论
本文提出了一种用于工业过程中不平衡故障图像诊断策略。采用基于VAE的数据增强技术提高故障诊断分类器的性能。利用VAE模型在潜在空间中进行插值操作,生成新的故障样本,同时保持生成的故障样本与原始样本的一致性和相似性,提高故障诊断模型的性能。通过将提出的方法应用在工业数据集上,验证了该数据增强方法适用于工业过程中存在的故障数据不平衡问题。对比不同方法进行数据增强之后的故障诊断实验表明,提出的基于VAE的数据增强方法能够有效地提高分类模型的故障诊断效果。表明VAE数据增强技术适用于处理不平衡数据集,通过增强数据,故障诊断模型可以学习到更多的故障模式和特征,从而提高故障诊断的准确性和鲁棒性。但是,VAE生成的合成样本质量取决于原始数据的质量,如果原始数据中存在噪声或异常值,生成的合成样本可能会受到影响,从而影响模型的性能。而且对于某些复杂的故障类型或者少见的故障模式,VAE可能无法完全捕获其特征,从而限制了模型在这些情况下的适用性。由此可见,在不同场景下应用VAE模型还有很多需要改进之处。
基金项目
本工作受国家自然科学基金(61903251)资助。
NOTES
*通讯作者。