基于深度卷积网络的多传感器信号故障诊断方法研究

2018-02-05 01:44,,,,2
计算机测量与控制 2018年1期
关键词:分类器故障诊断卷积

,, ,,2

(1.北京航天测控技术有限公司,北京 100041; 2.北京市高速交通工具智能诊断与健康管理重点实验室,北京 100041)

0 引言

航空、航天、航海和高铁等领域复杂的系统组成和精密的设备部件,以及各种复杂的运行环境和工况,使得系统的可靠运行和维修保障面临很大的挑战[1-2]。故障诊断技术就是通过传感器采集反映设备或部件相关信息的数据,进行分析后判断和预测设备及其内部组件的故障情况,从而决定其能否正常运行或需要进行维修和防护[3]。

采用多个传感器对复杂设备进行监测,能够扩展获取信息的物理属性、空间范围或时间范围,从而更全面的反映设备的状态。例如,对电机的监测可采用电流、电压、温度以及不同安装位置的振动传感器。与单传感器数据相比,多传感器数据增加了信息的多样性和完整性,理论上利用多传感器数据进行故障诊断可获得更高的准确度,但同时也需要更复杂的诊断模型。

近年来,利用多传感器数据进行故障诊断方面取得了大量的研究成果[4],根据数据融合层级的不同,这些方法可分为以下三种类型:(1)原始数据融合:对各路传感器采集的信号直接进行融合,一般用于同种物理量不同传感器信号之间的融合,使其从多维信号降为单信号再进行故障判别;(2)信号特征融合:对各传感器采集的信号进行时域或频域分析,提取特征量后再进行融合,从而在降低特征空间的维度;(3)诊断结果融合:对每路传感器信号进行单独的故障诊断,再对诊断结果采用某种策略进行融合,例如三取二判决等。

以上三种方法均存在一定的局限性:原始数据融合和信号特征量融合只能用于相同性质物理量的融合,无法处理不同性质物理量的测量信号,而且降维操作不可避免将造成信息损失;诊断结果融合方法将每路传感器信号单独处理,没有利用各路传感器之间的关联信息,实际上无论采用哪种策略进行判决都很难适应复杂多变的工况。从原理上说,只有完整利用各传感器采集的原始数据,才能够最大程度地挖掘数据的蕴含的故障特征,为故障诊断提供更全面的信息基础。

深度学习(Deep Learning)是机器学习领域的一种新兴方法,具备强大的自动特征提取能力,已经在图像、语音识别等领域已经取得了辉煌的成果[5]。深度置信网络(DBNs ,Deep Belief Networks)是深度学习的经典模型之一,已经成功应用于旋转机械的故障诊断中[6]。但DBNs因其原理所限仅适合于单传感器信号的故障诊断。虽然有研究将多传感器信号拼接或融合为单路信号用DBNs进行处理,但因未利用多传感器信号间的关联信息而非最佳方案。深度卷积网络(CNNs ,Convolutional Neural Networks)作为深度学习(Deep Learning)的另一种经典模型,同样具备强大原始数据特征提取能力,成功应用于多个应用领域,如人脸识别、图像导航、医学图像处理等[6]。CNNs还因其输入数据为点阵和卷积运算的特点更加适用于多传感器数据的分析处理。

本文研究了基于CNNs模型对多传感器数据开展故障诊断的一般过程,通过截取相同时段的多传感器采集数据形成测量数据帧,利用多个卷积层的若干卷积核在测量数据帧内部及相邻时域帧之间进行卷积运算,实现自动提取特征。该方法对原始数据直接处理,并通过卷积运算充分利用多路数据之间的关联信息,避免了以往数据降维操作带来的信息损失。采用本方法分别对机器人故障数据集REF和轴流风机数据集BI02进行了处理分析,结果表明该方法对大规模数据集和小规模数据集均能取得理想效果。

1 CNNs概述

CNNs模型的发现是受到了动物视觉系统结构原理的启发[7],通过十余年的发展已成为图像处理领域最重要的模型之一。

CNNs一般由卷积层、池化层、全连接层和分类器组成,如图1所示。其中卷积层和池化层组合在一起在前段使用,而全连接层和分类器组合在后端使用。卷积层、池化层、全连接层的自由组合连接,赋予CNNs极大的灵活性和适应性,在实际应用中可建立层数较多的深度网络以提取更高层次的特征信息。

图1 CNNs组成结构

1.1 卷积层

卷积层包含一定数量的滤波器,在设置权重和偏置矩阵后对输入数据进行卷积计算,抽取特征形成特征面(feature map)。每个滤波器中的神经元通过一组权值被连接到原始数据或上一层特征面的局部区域,即卷积层中的神经元与其输入层中的特征面进行局部连接。同一个滤波器中的所有神经元共享一组权重,从而大幅度减少计算量。

设卷积层的输入为矩阵X,M和N列是输入数据行数和列数,则卷积层的输出如式(1):

Ccn=f(X*Wcn+bcn)

(1)

其中:*为卷积操作符,Ccn是该卷积层第cn个特征面,cn是滤波器数量;Wcn是第cn个滤波器的权重矩阵,bcn是该滤波器的偏置量;f是激活函数。

在一般人工神经网络应用中一般使用饱和非线性函数如sigmoid函数,tanh函数等。但相比较于饱和非线性函数,不饱和非线性函数能够解决梯度爆炸、梯度消失等问题,同时其也能够加快收敛速度,因此成为深度网络的首选。

本文选用的激活函数为ReLU函数,其计算公式为:

fcov(x)=max(0,x)

(2)

CNNs的卷积层通过卷积操作提取输入的不同特征,第一层卷积层提取低级特征如边缘、线条、角落,更高层的卷积层提取更高级的特征,这也是深度卷积网络的意义所在。

1.2 池化层

池化层(pooling layer,也称为取样层)紧跟在卷积层之后,以卷积层输出的特征面作为输入,旨在通过降低特征面的分辨率来获得具有空间不变性的特征。卷积层的一个特征面与池化层中的相应特征面一一对应,起到二次提取特征的作用。

常用的池化函数有最大池化、均值池化和随机池化。文献[8]通过分析得出:最大池化特别适用于分离非常稀疏的特征,能够获得一个更好的分类性能。

本文采用如下所示的最大池化函数,其中S是池化块区域。

(3)

所有池化块的输出Pcn将组合在一起形成池化层的输出,经过池化操作以后数据的行列尺寸将减少MS和NS倍,其中MS和NS为池化块S的行列尺寸。

1.3 全连接层和分类器

在经过若干卷积层和池化层组合后,数据将进入全连接层和分类器进行最后的处理。CNNs中的全连接层和分类器与传统人工神经网络中的没有区别。本文采用全连接层加上softmax分类器作为CNNs的最后输出部分,假设任务为K类分类问题,按下式计算输出:

其中:Wj和bj为权重和偏置量,O为CNNs最终分类结果。

CNNs可选用其它分类算法,但因为训练算法也多采用BP算法,所以选取的分类器必须支持BP算法。同时,为了避免训练过拟合,常在全连接层中常采用dropout这种正则化方法,在训练过程中随机选取某些隐层节点失效,这些节点不参加某次前向和后向传播,从而使得CNNs的神经元学习过程更具更鲁棒性。

2 故障诊断应用流程

采用CNNs模型进行故障诊断分为两个阶段:模型训练和诊断应用,如图2所示。其中模型训练阶段利用样本数据对网络模型进行监督训练,诊断应用阶段即利用训练好的模型对采集数据进行分类。

图2 CNNs故障诊断步骤

2.1 模型训练

在模型训练阶段包括以下步骤:

1)测量数据帧设计。

CNNs模型的输入为二维矩阵,根据这一特点定义测量数据帧如图3所示。

图3 测量数据帧

其中:M是传感器/数据通道数量,N为截取采样点的数量。N的选取比较关键,如N取值过小不能包含缓变信号全周期,将无法全面反映信号内容;如N取值过大,会减少训练样本数量。因此,应综合样本信号的周期特性、采样数据总量来权衡决定N的取值。

2)样本归一化。

测量数据帧中各通道测量数据有不同的量纲及量程,为避免具有不同物理意义和量纲的输入变量不平等使用,防止净输入绝对值过大引起的神经元输出饱和现象,保证输出数据中数值小的不被吞食,必须将量纲的数值经过变换化为无量纲的纯量,即进行归一化处理。

3)网络参数设置与训练。

CNNs网络参数设置项包括:卷积层和池化层数量、卷积核维度和数量、全连接层数量、分类器类型、优化算法等。CNNs网络训练中主要采用BP算法,其实质是梯度下降算法。在实际应用中针对学习速率的设置产生了很多优化算法。选择合适的优化算法让网络用最快的训练次数达到理想的精度。常用算法包括SGD、Adam、Adagrad等,实际应用中可根据测量帧大小、样本的数量以及计算资源选择合适的优化算法。

在训练深度神经网络的时候经常会出现欠拟合和过拟合这两个问题,将导致训练精度过低或测试精度与训练精度差别过大,从而造成模型不可用。解决方法包括重新清洗数据、增大数据的训练量、采用正则化方法、采用dropout方法等,可在训练过程中根据模型收敛情况选用。

2.2 故障诊断

在模型训练完成之后可用于对采集数据的故障诊断分类,其步骤包括:按照格式要求截取采集的数据组成测量数据帧;将测量数据帧归一化计算;将归一化后的数据帧作为CNNs输入进行前向传播计算;根据分类结果后查找相应标签得到故障类型。

3 实验及分析

本文选用两个数据集:Robot Execution Failure(REF)数据集[9]和某型轴流风机故障数据集(BI02),分别作为典型的小样本数据和大样本数据案例进行试验。

3.1 机器人故障数据集

机器人故障数据集(REF,robot execution failure)是葡萄牙新里斯本大学公布的机器人故障监测数据,分别对某型号机器人不同部位安装力和力矩测量传感器采集共6路数据。REF共5 个子数据集,本文选取第一个子数据集LP-1 作为实验数据集,共88个样本,每个样本包含15条测量数据,每个样本均分别标记为normal、collision、fr_collision或obstruction这四个类型中的一种。

因LP-1提供的数据在采集时已经按照15×6维度进行分组,因此测量数据帧维度选定为M=15,N=6,其测量数据帧波形图如图4所示。

图4 LP-1样本测量数据帧

在数据集里随机选取80%作为训练样本,剩余20%作为测试样本。

CNNs网络采用两个卷积层(卷积核尺寸为5、个数分别为16和32)、两个池化层(尺寸为2的max-pooling)、两个全连接层和Softmax分类器,采用SGD优化算法。

因训练样本个数只有70个,在实验初期出现较严重的过拟合现象,所以采用随机加噪声数据对样本进行扩展,噪声类型为随机高斯白噪声,扩展后样本数量为560个。测试样本数量不变。

采用扩展后样本对网络进行预训练,其准确度曲线如图5。

图5 LP-1数据集训练准确度曲线

训练次数10 000次后准确度达到0.94,输入测试样本得到的测试准确度为0.91,高于文献[10]中列出的几种方法,取得较好的效果。

3.2 某型轴流风机故障数据集

此数据集为某型轴流风机(BI02)进行故障试验时采集的数据,工作状态分别为正常(N)、转子不平衡(F1)和轴承裂缝(F2),测量参数为电流、转速、振动频率、输入功率、空气流量、空气压力数据,采样频率为12 kHz,测量时间持续1 000 S,每种工作状态采集1 200万条数据记录,属于较大规模数据集。

此数据集中截取每200个采样点为一个测量数据帧,即测量数据帧维度M=200,N=5,其测量数据帧波形图如图6。

图6 BI02样本测量数据帧

在数据集里随机选取80%作为训练样本,剩余20%作为测试样本。

CNNs网络采用两个卷积层(卷积核尺寸为5、个数分别为32和64)、两个池化层(尺寸为2的 max-pooling)、两个全连接层和Softmax分类器。

此次训练样本个数较大,受实验计算机内存限制,每批次训练1 000个样本,采用Adam优化算法,其准确度曲线如图7。

图7 BI02数据集训练准确度曲线

经过1轮共126批次训练准确度达到0.99,测试准确度达到0.99,取得较好的分类效果。

4 结论

本文提出了一种基于CNNs网络用于故障诊断的方法,可直接和完整地利用多传感器采集的原始数据进行故障分类诊断,明确了模型训练和应用的流程步骤。通过对小规模故障数据集REF和大规模故障数据集BI02进行故障分类诊断试验,取得较好效果,验证了CNNs模型对不同规模数据集的适应性。

该方法在工程应用中还具有以下优势:(1)直接利用原始数据,故障特征由CNNs网络自动提取而无需人工设计算法处理,技术门槛大幅度降低;(2)同步处理多路传感器信号,具备效率优势;(3)模型具备普适性,可广泛应用到各种信号的故障检测当中,可建立领域通用的面向故障检测的CNNs模型训练和应用平台。

以CNNs为代表的深度学习方法可从各类型试验数据中挖掘高层次特征信息,后续将利用深度学习方法针对大型复杂系统在线故障实时诊断和预警进行应用研究,推广其在工程中的实际应用。

[1] 傅建中. 智能制造装备的发展现状与趋势[J].机电工程, 2014 , 31 ( 8) :959-962.

[2] 李 睿,郭迎清,吴文斐. 航空发动机传感器故障诊断设计与验证综合仿真平台[J]. 计算机测量与控制,2010, 18(3).

[3] 吴明强,史 慧,朱晓华,等. 故障诊断专家系统研究的现状与展望. 计算机测量与控制,2005,(13)12.

[4] 王国彪,何正嘉, 陈雪峰,等. 机械故障诊断基础研究何去何从 [J] . 机械工程学报, 2013, 49 ( 1): 63-72.

[5] Bengio, Yoshua, Hinton G E. Deep learning [J]. Nature, 2015,521(14539): 436-444.

[6] 葛强强. 基于深度置信网络的数据驱动故障诊断方法研究[D]. 哈尔滨工业大学, 2016.

[7] Hyeon-Joong Yoo. Deep convolution neural networks in computer vision: a review [C]. IEIE Transactions on Smart Processing and Computing,2015, 4(1):35-43.

[8] Y-Lan Boureau, Jean Ponce, Yann LeCun. A theoretical analysis of feature pooling in visual recognition [C]. International Conference on Machine Learning, 2010, 32(4):111-118.

[9] Robot Execution Failures (REF)[Z/OL]. https://archive.ics.uci.edu/ml/machine-learning-databases/robotfailure-mld/.

[10] 李正欣, 郭建胜等. 多元时间序列相似性度量方法[J]. 控制与决策,2017, 32 (2):368-372.

猜你喜欢
分类器故障诊断卷积
比亚迪秦EV充电系统故障诊断与排除
学贯中西(6):阐述ML分类器的工作流程
基于包络解调原理的低转速滚动轴承故障诊断
基于3D-Winograd的快速卷积算法设计及FPGA实现
基于朴素Bayes组合的简易集成分类器①
卷积神经网络的分析与设计
从滤波器理解卷积
一种自适应子融合集成多分类器方法
数控机床电气系统的故障诊断与维修
基于傅里叶域卷积表示的目标跟踪算法