关键词:故障诊断;深度学习;堆栈稀疏自编码器;分类器
1.堆栈稀疏自编码器与 Softmax 分类器原理
深度学习开启了在学术界和工业界的一个新纪元。该模型是一个分层结构,由输入层、输出层和多个隐层组成,每一层可以看作是逻辑回归模型。深度学习中常见的模型结构包括卷积神经网络、深度信念网络和自编码器等。稀疏自编码器是自编码器的变形结构之一,通过堆叠多个稀疏自编码器(Sparse Autoencoder,SAE)可以形成堆栈稀疏自编码(Stacked Sparse Autoencoder,SSAE) ,SSAE 一方面能够学习数据集的特征,另一方面能够减少数据特征的维度。对于深度神经网络的训练,采用 Hinton 基于深度信念网络( DeepBeliefNets,DBN)所提出的逐层贪婪预训练算法。SSAE使用第一个隐层输出作为第二个稀疏自编码器的输入,依此类推,从而形成具有多个隐层的深度神经网络。
2.堆栈稀疏自编码器原理
自编码器(Autoencoder,AE)基本单元是对称无监督三层神经网络。网络由编码层和解码层组成,编码过程将高维空间的输入数据转换至低维特征空间,如式(1)所示
y = f(Wx + b) (1)
式中:W 和 b 分别表示从输入层到隐层的权值矩阵和偏向。f(·)表示非线性激活函数。本文选择 sigmoid 函数,如式(2)所示
解码过程从特征空间重构输入数据,实质是编码逆过程,如式(3)所示
z = f(W T y + b') (3)
式中:W Τ 和 b'分别表示隐层到重构层的权值矩阵和偏向矩阵。AE 的期望输出与其输入数据相近,使重构误差达到最小,以获得较好的隐层表达。自编码器的重构误差较小的时候,原始输入数据的大部分信息将被保留,但这不足以让自编码器学习到所需要的特征。因此需要加入一定的限制条件,通过把稀疏性限制加入到隐层单元中,隐层中神经元的激活量受到控制,此时自编码器称为稀疏自编码器。对于 S 型激活函数,当神经元输出近似为 1 时,则认为神经元被“激活”,当输出接近于 0 时,则认为神经元是被“抑制”的。设第 i 个样本在第 j 个神经元上的输出值为 a j (x i ),若有 m 个训练样本,则它们在这个神经元上的输出的平均值设为 ρ j ,如式(4)所示
为了让神经元对大多数样本产生稀疏性,需要 ρ j 接近于某个较小的正数 ρ。若 ρ j 不靠近 ρ,说明 ρ j 对该神经元大多数样本不具有抑制作用,并不稀疏,因此,通常将额外的惩罚项加入到损失函数中,来约束 ρ j 不能偏离 ρ,ρ 即为稀疏参数,并且在此选 Kullback - Leibler(KL)散度来达到惩罚目的。KL 散度的表示如式(5)所示
式中:j 代表隐层的第 j 个节点,s 2 表示总的节点数。惩罚性是根据 KL 散度的性质确定的:如果 ρ j = ρ,那么 KL(ρ j ‖ρ) =0,否则 KL 散度值会随着 ρ j 偏离 ρ 而逐渐增大。对自编码器而言,损失函数如式(6)所示
式中:m 表示训练样本的数量,x (i)表示输入,^x (i) 即为 AE 的输出,λ 权重衰减系数,n l 网络层数,s l 代表第 l 层神经元数量;W (l)ji为第 l 层与第 l + 1 层神经元之间连接的权值参数。当加入稀疏项后,总代价函数如式(7)所示
式中:β 为稀疏惩罚项的权重。在整个编码过程中,需要优化的参数是权重 W 和偏向 b,而稀疏代价函数 J sparse 是以 W和 b 为参数的函数,因此,通过最小化稀疏代价函数得到最优的权重和偏向。它的实现通过反向传播算法来完成 [19] ,利用梯度下降法在迭代过程中对权值进行更新。更新方程如下:
式中:η 为学习率,通过这种方式更新得到最优的 W 和 b,使得稀疏自编码隐层学到较好稀疏表达。
3.基于 SSAE -Softmax 的电机故障诊断方法的实现
堆栈稀疏自编码器实现分类任务,需要在输出层与 Soft-max 分类器连接。SSAE - Softmax 的特征提取主要包括三部分:SSAE 的预训练、网络全局微调和特征提取,然后对电机进行故障诊断,故障诊断流程,如图 2 所示,具体步骤如下。
收集电机的正常信号与故障信号,预处理后按照一定比例划分数据为训练集与测试集,作为神经网络的输入。
设置网络的结构和超参数。如网络层数,每层神经元个数,迭代次数等。
预训练。从步骤 1)中预处理的频域数据作为神经网络的输入,以此训练网络的第一个稀疏自编码器,第一个隐层的输出当下一个稀疏自编码器的输入。以此训练多个稀疏自编码器网络。
图 2 故障诊断流程图
训练 Softmax 分类器模型。步骤 3)中稀疏自编码器最后一层的输出用作 Softmax 分类器的输入,其中 Softmax 分类器的网络参数利用原始数据标签进行训练。
全局微调。通过反向传播算法调整所有层的参数,对SSAE - Softmax 网络进行微调,以完成整个神经网络的训练。
构建深度神经网络模型,开始测试。根据最终结果看是否符合初始精度要求,如果达到要求,则结束,否则返回步骤 2)继续调整网络各项参数,直至达到预期的准确率。
4 实验验证与性能分析
为了验证本文所应用方法在电机故障诊断中的可行性,采用 Case Western Reserve University 轴承实验中心网站的数据,选择实验数据为电机频率为 1492Hz,转速为 1797 转/分,采样频率为 12kHz,负载为 0 马力条件下的轴承振动数据。本文采用的故障是在内圈、滚珠和外圈 6 点钟方向处引入直径为 0. 1778mm 的故障。振动数据由位于电机壳体的驱动端和风扇端的 12 点位置加速度计收集,连接到具有磁性底座的壳体。使用 16 通道的 DAT 记录仪收集振动信号,选用电机牵引端 12 点位置1200 次/秒采样数据。本文选取正常状态下 240000 个采样点样本数据,三种故障状态下 120000 个采样点样本数据。变换正常状态下数据为(400* 600),故障状态下数据为(400* 300)。
结束语
本文利用堆栈稀疏自编码器对轴承故障进行特征提取,然后与 Softmax 分类器搭建故障诊断模型,对电机轴承故障进行分类。通过对比仿真发现如下结论。堆栈稀疏自编码器能够在无标签的情况下自动提取故障数据特征,具有无监督特征学习能力,可以实现复杂函数的逼近和防止过拟合,并且通过逐层贪婪预训练来克服长期以来传统机器学习所面临的易陷入局部极小值等问题。与传统的支持向量机分类结果做对比发现,所提出的方法有较高的分类准确率,而且有效的避免了支持向量机核函数和参数选择的难题。因此,验证了深度学习在电机故障诊断方法的可行性。
参考文献:
[1] 沈标正. 电机故障诊断技术[M]. 北京:机械工业出版社,2001:18 -19.
[2] 桂卫华,刘晓颖. 基于人工智能方法的复杂过程故障诊断技术[J]. 控制工程,2002,(4): 1 -6.
[3] 边莉,边晨源. 电网故障诊断的智能方法综述[J]. 电力系统保护与控制,2014,42(3): 146 -153.
论文作者:王闯
论文发表刊物:当代电力文化》2019年第19期
论文发表时间:2020/4/23
标签:稀疏论文; 编码器论文; 神经网络论文; 神经元论文; 数据论文; 故障诊断论文; 电机论文; 当代电力文化》2019年第19期论文;