基于生成对抗网络的航天异常事件检测方法

2019-07-31 09:35张克明蔡远文任元
北京航空航天大学学报 2019年7期
关键词:音频航天样本

张克明,蔡远文,任元

(1.航天工程大学 研究生院,北京101416; 2.航天工程大学 宇航科学与技术系,北京101416)

随着中国航天事业的发展,航天任务趋于繁重,系统安全可靠性要求越来越高。航天作为复杂巨系统,加之日趋恶劣的太空环境,其安全及技术难度不断加大。1986年1月28日,美国“挑战者”号航天飞机发射73 s时发生爆炸,7名航天员和1名教师丧生,耗资12亿美元的发射活动以失败告终。中国近期发生的几起航天发射事故,除事故直接巨大损失外,对中国航天事业发展造成了难以弥补的影响和损失。为实现故障事前预警、隐患尽早排除,而不是事后总结经验教训,除加强科学管理外,还要在传统故障诊断检测方法基础上,引进人工智能大数据等高新技术,对样本稀少或者难以获取的航天异常事件开展有针对性的精准检测,实现常态化航天事故预防。

异常事件检测(Anomaly Events Detection,AED)是近年来人工智能领域的研究热点,在铁路轨道异常检测、石油燃气管道异常检测、桥梁异常检测、地震波声学检测、装备故障监控异常报警及智能家居、公共安全监控、无人驾驶等领域都有很好的应用前景。异常事件检测在国内外都得到了广泛研究应用[1-2]。

异常事件检测传统方法主要包括信号分析[3-4]、信息熵[5]、统计分析和聚类[6]等。信号分析主要用于音频信号异常检测,优点是算法成熟,不足是检测精度低。信息熵用于衡量信息、事件的无序程度,多用于对网络流量、信号进行异常检测,优点是无监督,不需要标记样本,不足是需要严谨的信息论方法,难以发现未知异常事件。统计分析方法基于数据的经验分布进行异常检测,优点是可以对任意分布数据进行异常检测,问题在于现实中数据不一定符合某种分布,检测结果不确定。聚类方法假设稀疏样本或远离正常样本的数据为异常样本,优点是简单、快速,处理大数据集高效,缺点是参数选取难,数据不平衡或存在孤立点、离群点,难以处理[7-11]。

随着深度神经网络技术的发展,国际上开始采用自动编码器、卷积网络、生成对抗网络(Generative Adversarial Nets,GAN)等方法开展异常事件检测研究。An和Cho[12]于2015年提出基于变分自动编码器(Variational Autoencoder,VAE)使用重构概率进行异常检测,但存在部分关键性能不佳问题。Lim等[13]于2017年提出使用一维卷积循环网络进行稀有音频事件检测,主要用于对音频事件进行检测。

由于航天领域具有环境复杂、技术难、风险高、投入大和高度重视安全等特点,航天异常故障具有不确定性、发展性和分散性等典型特性[14]。美国国家航空航天局(NASA)从20世纪70年代便开始研究航天诊断技术,建立航天器故障诊断平台,保证了航天器的可靠运行,延长了航天器使用寿命,提高了发射成功率,降低了运行风险。中国自20世纪70年代成功发射第一颗卫星以来,一直非常重视故障诊断和维护保障工作,并于2014年成立了航天器在轨故障诊断与维修实验室[15]。常用航天故障及异常分析方法主要有信号分析、概率统计、专家诊断、知识推理等。这些方法存在重视诊断维护,缺少事前异常预警;侧重专家知识推理,欠缺数据精准检测;主要针对已有案例故障,难以检测未知、无样本、没出现过的异常事件等不足[16]。随着人工智能技术的发展成熟,在航天领域研究应用深度学习、神经网络和大数据等技术成为必然。国内,苏振华等[17]基于BP神经网络的卫星故障诊断法,以及燕飞和秦世引[18]基于RBF神经网络和M距离的卫星故障诊断等研究都是良好的开端,但还存在早期神经网络学习效率低、收敛速度慢、需要大量标记数据等问题。本文应用国际最新深度神经网络学习技术,提出了基于生成对抗网络的航天异常事件检测方法,不需进行数据标注,在没有异常事件样本的条件下,全部采用正常数据进行学习训练,对没有出现过的未知航天异常事件进行精准检测预警[19]。

1 生成对抗网络

2014年,生成对抗网络自Goodfellow等[20]提出以来,迅速用于语音识别、图像处理、数据增强和事件检测等方面。Schlegl等[21]开展基于生成对抗网络的无监督异常监测引导标记发现研究,用于诊断医学图像异常病变。Michelsanti和Tan[22]开展基于条件生成对抗网络的语音增强和噪声鲁棒性说话人识别研究。在相关专业领域都取得了很好的试验结果。

1.1 结构原理

生成对抗网络的原理受博弈论中的二人零和博弈启发,即二人的利益之和为零,一方的所得正是另一方的所失。生成对抗网络主要由生成器G和判决器D组成,如图1所示。生成器G输入随机变量Z,输出由G生成的尽量服从真实数据分布的生成数据G(Z)。判决器D输入真实数据X或生成器生成的数据G(Z),输出数据来源概率。生成器G的目的是尽量学习真实的数据分布,而判决器D的目的是尽量正确判别输入数据是来自真实数据还是来自生成器生成的数据[23]。

图1 生成对抗网络结构示意图Fig.1Schematic diagram of structure of generative adversarial nets

1.2 训练算法

如何训练生成对抗网络呢?首先,优化判决器D,在给定生成器G的情况下,D(X)相当于输入真实数据时的输出,期望结果最大,预测结果越接近1越好。D(G(Z))相当于输入生成数据时的输出,期望结果越小越好,即D(G(Z))越小越好,预测结果越接近0越好。但是D(X)越大与D(G(Z))越小在同一个目标函数中优化时矛盾,因而把D(G(Z))改为求1-D(G(Z))越大越好,即求式(1)越大越好[24]。

其次,优化G,此时输入随机变量,输出生成样本。期望生成样本的预测结果D(G(Z))越大越好,1-D(G(Z))越小越好,如下:

合并式(1)和式(2),得最大最小化目标函数为

2 航天异常事件检测

航天器无论是在试验还是在实际发射、运行中,异常事件都非常少,异常事件的典型样本缺乏,难以覆盖异常事件分布,本文提出了一种新的不需要使用异常事件进行训练,只利用大量正常事件样本训练,实现对航天异常事件的检测。航天正常事件原始数据主要来源于系统的音频、视频传感器,各分系统和关键模块及环境等的监控、监测和遥测、遥控等数据。

2.1 组成结构

图2 航天异常事件检测结构组成Fig.2 Structure constitution of space anomaly events detection

基于生成对抗网络的航天异常事件检测主要由正反2个生成对抗网络和检测器组成,结构如图2所示。正生成对抗网络由正生成器和判决器组成,先训练判决器判别事件是来自输入事件X还是来自正生成器生成正常事件Gn(Z)的判决能力,随后训练正生成器生成模拟正常事件Gn(Z)的能力,系统不断迭代,循环训练,持续提高正生成器的正常事件模拟生成能力和判决器的判决能力[25]。

反生成对抗网络由反生成器和判决器组成。反生成器最大可能生成非正常事件,即努力模拟异常事件。先训练判决器判别事件是来自输入事件X还是来自反生成器生成的模拟异常事件Ga(Z)的判决能力,随后训练反生成器生成模拟异常事件Ga(Z)的能力,系统不断迭代,循环训练,持续提高反生成器的模拟异常事件生成能力和判决器的判决能力。

检测时,主要通过检测器,计算输入事件X与正生成器生成的模拟事件Gn(Z)的欧氏距离差,以及与反生成器生成的模拟事件Ga(Z)的欧氏距离差,计算异常事件分值,设置合理的阈值,将分值高的事件作为异常事件检出。

2.2 原 理

生成模型在人工智能领域占有重要地位,生成方法和判别方法是机器学习中的2个分支。生成模型是生成方法学习得到的模型,涉及对数据的分布假设和分布参数的学习,能够根据学习来的模型生成新的数据样本。生成模型主要有自动编码器(autoencoder)、自回归模型(autoregressive models)和生成对抗网络等。

正生成对抗网络输入大量正常数据训练收敛后,正生成器捕捉正常事件分布。检测时输入未知样本输入X,正生成器生成随机变量Z的映射gn(Z,Θ),如果X为正常事件,具有相似事件分布,则gn(Z,Θ)约等于X,具有较小的样本距离。如果X为异常事件,事件分布不一致,则gn(Z,Θ)不约等于X,具有较大的样本距离。

反生成对抗网络输入大量正常数据训练收敛后,反生成器捕捉异常事件分布。检测时输入未知样本X,反生成器生成随机变量Z 的映射ga(Z,Θ),如果X为正常事件,事件分布不一致,则ga(Z,Θ)不约等于X,具有较大的样本距离。如果X为异常事件,具有相似事件分布,则ga(Z,Θ)约等于X,具有较小的样本距离。

如果生成器成功地学习到训练数据分布的良好近似,检测时根据输入事件与生成事件的样本距离大小,实现对异常事件的精确检测。

2.3 检测算法

生成对抗网络使用大量正常事件进行训练后,正生成对抗网络学习到了大量正常事件的特征,反生成对抗网络学习到了大量异常事件的特征,检测时检测器通过计算输入与生成模拟事件样本空间距离的欧几里得范数,计算异常分A(X,Θ)。异常分A(X,Θ)由输入向量X与模拟正常事件误差An(X,Θ)及输入向量X与模拟异常事件误差Aa(X,Θ)决定。

为更好地检出异常事件,需要异常分A(X,Θ)尽量大,通过使An(X,Θ)尽可能大,同时使Aa(X,Θ)尽可能小实现。

通过计算异常分A(X,Θ),根据具体实践,采用合适阈值φ,如果异常分小于等于门限阈值φ,判为正常事件,否则将异常分A(X,Θ)大于阈值的事件判为异常事件检出[26-27]。具体算法如下。Θd为判决器中的参数,η为变量系数,Θg为生成器中的参数。

算法1 异常事件检测算法

1:训练正生成对抗网络。

For变量1 in range(训练迭代数):

For变量2 in range(输入事件总批数):

输入正常事件样本X{x(1),…,x(N)}

输入随机变量样本Z{z(1),…,z(N)}

更新参数使判决器随机梯度上升:

更新参数使正生成器随机梯度下降:

End for

End for

2:训练反生成对抗网络。

For变量1 in range(训练代数):

For变量2 in range(总共数据批数):

输入正常事件样本X{x(1),…,x(N)}

输入随机变量样本Z{z(1),…,z(N)}

更新参数使判决器随机梯度上升:

更新参数使反生成器随机梯度下降:

End for

End for

3:航天异常事件检测。

For变量1 in range(总共数据批数):输入检测事件样本X{x(1),…,x(N)}输入随机变量样本Z{z(1),…,z(N)}计算输入向量与模拟正常事件误差An(X,Θ):

计算输入向量与模拟异常事件误差Aa(X,Θ):

计算异常分A(X,Θ):

异常分大于门限阈值 φ,则将结果判为异常事件检出。

End for

在理论算法上,针对航天异常事件样本稀少的特点,改进生成对抗网络,提出反生成对抗网络,全部采用正常事件样本进行训练,从而实现对航天异常事件的有效检测。

3 试验验证

为了验证本文方法的可行性,并评估其性能指标,用Python语言编写了试验验证程序,并使用人工智能常用的美国国家标准与技术研究所数据库MNIST数据集和真实环境下采集的模拟航天环境音频数据,进行了科学严谨的试验。

3.1 性能指标

航天异常事件检测主要性能指标有精确率、准确率、召回率、精确率和召回率综合评价指标(F1)、虚警率(False Alarm,FA)、漏警率、接收器工作特性曲线下面积(AUC)及精确率和召回率曲线下面积(PRC)等。

1)精确率P。即预测正确的正例数占预测为正例数的比例,P=TP/(TP+FP),TP为预测正确的正例数,FP为预测错误的正例数。

2)召回率R。即预测为正例的数据占实际正例数的比例,R=TP/(TP+FN),FN为被错误预测为负例的数量。

3)F1。由于在实际应用中精确率与召回率这2个指标是相互制约的,通常会根据任务需要选择一个合适的平衡点,取最理想的召回率和精确率值。精确率和召回率综合评价指标F1定义为:F1=2PR/(P+R)。

4)FA。FA=FP/(TP+FP)。反映被判为正例样本中,有多少个是负例,即被误判为异常事件的概率。

5)AUC。是以假正率(False Positive Rate,FPR)为横坐标,召回率为纵坐标绘制的曲线下的面积,FPR=FP/(FP+TN),是反映接收器工作特征的综合指标,面积越大,性能越好,其中TN为预测正确的负例数。

6)PRC。是以召回率为横轴,精确率为纵轴的曲线下的面积。面积越大,性能越好。

3.2 MNIST数据集试验

3.2.1 数据准备

MNIST数据集是人工智能训练测试,尤其是异常事件检测常用的手写数字图片识别数据集。数据集来自美国国家标准与技术研究所,由训练集和测试集组成,数据来自250个不同人手写的数字。

从MNIST数据集中生成10个(0~9)不同数字的数据集,将其中一个数字作为异常事件,其余9个数字作为正常事件。训练集使用80%的正常事件,测试集使用剩余20%的正常事件和所有异常事件进行检测验证。

3.2.2 试验结果

表1为在MNIST数据集上进行测试的部分性能结果。测试中阈值的取值,以取得综合最优,即F1分最高为标准。从表1中可以看出,当异常数字为1、7和9时总体性能较差。这与其他异常检测方法使用MNIST数据集测试结果一致,可能是由于1、7和9这3个数字区分度小,识别容易混淆。

表2显示了在相同的MNIST数据集上,本文方法的F1和PRC测试指标与基于VAE异常检测部分指标相比,有明显的性能提升。其中最好的F1值提升了273%,最差的提升了31%,最好的PRC 性能提升了770%,最差的也提升了11%。VAE数据来自文献[12]。

表1 基于MNIST数据集异常检测性能Table 1 Anomaly detection performance on MNIST

表2 本文方法与VAE方法异常检测性能对比Table 2 Anomaly detection perfor mance comparison between proposed method and VAE method

MNIST数据集为手写数字图片,与航天异常图像数据有近似一致性,在该数据集的测试性能证明了本文方法对图像类数据异常特征的学习和识别能力。试验结果表明,基于生成对抗网络的航天异常事件检测方法在MNIST数据集上,全部采用正常事件进行训练后,能成功识别训练时从未使用过的未知异常。

3.3 真实数据试验

3.3.1 数据准备

为了进一步对本文方法进行实证检验,使用实际环境采集的数据来验证。鉴于航天数据的保密性和敏感性,采集真实环境音频数据模拟航天音频数据。正常事件采集自正常工作的电风扇声音,异常事件采集电风扇中掉入纸条时发出的异常声音。正常和异常事件以48 kHz采样率分别采集了4 h和20 min的音频数据。使用2 h正常音频数据进行训练,用另外2 h正常数据和20 min异常数据进行性能测试。通过将音频文件预加重,每40 ms一帧,20 ms帧移,加汉明窗,快速傅里叶变换后通过128个梅尔滤波器得到40个梅尔频谱,每批输入50个400帧长数据进行训练测试。

3.3.2 试验结果

全部使用在真实环境下采集的设备正常工作音频数据进行训练,使用设备正常、异常比为6∶1的音频数据进行测试。

测试结果如表3所示。可以看出,本文方法对真实环境下采集的完全使用正常数据训练,能精准检测未知的异常事件,这对异常样本稀少或者难以获取的航天等领域有很好的适用性。如表3所示,当训练数据迭代2次时,检测性能明显提升,但迭代3次及以上时,检测能力随迭代次数增加变化不大。试验异常事件检测性能很好,几乎全部检出了未知的异常事件,能很好地区分正常和异常事件,当然这可能与采集数据的设备工作环境简单、外界干扰少有关。在以后的具体应用中还要采集实际工作环境各种复杂条件下的数据进行更加深入细致的试验研究。

表3 真实环境数据检测性能Table 3 Data detection performance in real environment

4 结 论

本文提出基于生成对抗网络的航天异常事件检测方法,全部使用正常事件进行训练,采用合理算法计算输入与生成模拟事件样本的欧氏距离差,实现异常事件的有效检测。在MNIST数据集上的性能测试结果表明,能够有效检出未知异常事件,F1和PRC等关键技术指标比VAE方法有明显提升。利用真实环境下采集的音频数据进行试验,取得了非常好的异常事件检出效果。由于理论推导和具体试验全部采用正常数据进行训练,这对异常事件样本稀少或者难以获取的航天领域有很好的适用性和针对性。本文方法可拓展用于网络、医学等异常事件未知或不确定领域,未来会努力提高训练检测稳定性、提升综合性能指标,实现真正工程应用。

猜你喜欢
音频航天样本
Egdon Heath (Extract from The Return of the Native)
我的航天梦
航天梦,我的梦
用样本估计总体复习点拨
柏韵音频举办Pureaudio 2021新产品发布会
开盘录音带音频资料的数字化
逐梦航天日
规划·样本
“我心中的航天梦”画作展
随机微分方程的样本Lyapunov二次型估计