一种基于迁移学习的遥测数据异常检测方法

2021-05-24 07:32:00陈俊夫皮德常
宇航学报 2021年4期
关键词:遥测代价卷积

陈俊夫,皮德常,张 强

(1. 南京航空航天大学计算机科学与技术学院,南京 211106;2. 北京航天飞行控制中心,北京 100094)

0 引 言

卫星是人类探测宇宙的重要设备,也是通信工具的主要载体。卫星在恶劣的空间环境运行,一旦发生严重的故障是难以进行修复的。及时有效的异常检测和故障定位能够保障卫星安全可靠的运行[1]。因此,卫星遥测数据异常检测是卫星故障早期预警中最为关键的一部分。

目前工程领域异常检测的方法大体上可以分为两类:基于模型的异常检测方法和基于数据驱动的异常检测方法。基于模型的异常检测方法需要建立精准的物理模型来描述飞行器工作特征,从而达到识别异常数据的目的。例如Li等[2]采用非线性加权最小二乘估计技术对燃气轮机建立了性能模型,该模型能够有效预测燃气轮机性能的退化;胡宇等[3]采用三阶容积积分方法近似描述发动机的非线性统计特征,改良了传统的卡尔曼滤波异常检测方法。然而,基于模型的异常检测方法,需要具有丰富知识的领域专家来构建物理模型。对于空间飞行器而言,往往有多个分系统组成,每个系统都有大量的传感器,在飞行过程中会产生大量的、复杂的高维数据,将导致基于模型的异常检测方法在实际过程中操作难度很大。

基于数据驱动的异常检测不需要依赖相关领域知识,通过对飞行器历史数据建立有效的异常检测模型。近年来,一些基于机器学习的方法在飞行器异常检测领域中陆续出现。例如, Codetta-Raiteri等[4]提出了利用数据特征和基于概率图模型的动态贝叶斯网络,对欧洲航天局火星探测器供配电系统的遥测数据进行异常检测;康旭等[5]针对高维复杂卫星遥测分系统数据,利用共享近邻算法建立相关数据集空间,并利用角度偏离算法来对遥测数据进行异常检测。

随着计算能力和神经网络体系结构的进展,深度学习方法也开始用于高维时序数据的异常检测。Zhao等[6]提出了一种面向风力发电机组运行监控和数据采集的深度学习方法。该方法利用自编码器网络的输入和输出重构值,来计算重构误差,并将其定义为反映当前健康状况的状态检测指标。文献[7]提出了一种可以学习到相位相同的样本特征的代表性特征自编码器,用于检测周期性遥测数据的异常。但是,目前的大多数异常检测方法都忽视了遥测数据的不平衡性,即正常样本和异常样本之间的比例严重失衡,这对预测模型造成严重的影响。同时,忽略了这些深度学习模型的可迁移性。例如,利用已有训练好的某卫星分系统异常检测模型,去解决另一卫星或者另一分系统异常检测任务。当目标系统的异常标签样本非常少时,通过模型迁移可以构建一个性能优秀的异常检测模型。

针对上述问题和技术发展的需求,本文提出了一种无领域知识且代价敏感的一维卷积神经网络(cost-sensitiveone-dimensional CNN, cs-1dCNN)卫星分系统异常检测模型。它利用迁移学习实现对缺乏有标签数据的目标卫星分系统的异常检测。该模型的卷积池化层,能有效提取卫星遥测数据的局部序列视野,形成用于异常检测的中间层序列特征。针对卫星遥测数据样本的不平衡问题,引入代价敏感训练策略,在每个训练批次内动态修改交叉熵损失函数,考虑了整体的样本不平衡和局部小批量训练上的不平衡,利用微调预训练模型的迁移方法,对仅含少量有标签数据的目标卫星分系统进行异常检测。

1 异常检测模型1dCNN

本文提出一种基于1dCNN的异常检测模型。为了更好理解这种模型的工作原理,本文先介绍传统的二维卷积神经网络。

1.1 卷积神经网络

1989年LeCun等[8]提出卷积神经网络并在手写数字数据集上取得了不错的效果。随后,LeCun等[9]提出卷积层和池化层两个概念,并构建了LeNet-5这一多层卷积网络结构。

一般来讲,CNN主要包含卷积层、池化层、全连接层和激活函数构成。图1展示了典型的CNN处理图像分类任务的流程。图像输入CNN之后,需要通过若干次卷积池化操作,提取图像的局部特征图,再将特征图输入全连接层,对其进行分类。在CNN训练过程,采用梯度下降来最小化目标函数,通过多次迭代来调节网络权重。

图1 CNN处理图像分类任务Fig.1 CNN processes image classification task

1.1.1卷积层

CNN中的卷积层来自于数学中的卷积运算,式(1)阐述了数学卷积的定义。CNN中的二维卷积运算本质是对卷积核函数矩阵与图像矩阵进行离散卷积运算,卷积过程如式(2)所示。

(1)

(2)

式中:f(x)和g(x)是实数集上两个可积函数,c(x)表示这两函数的卷积结果;C(w,h)表示二维卷积结果,w和h分别表示图像上的宽度轴和高度轴,K表示核函数矩阵,s和t分别表示卷积核在图像宽度和高度轴上的坐标,I表示图像矩阵,k表示卷积核矩阵的尺寸。

由式(2)可知,卷积核的尺寸小于输入图像尺寸,这使得在典型的CNN模型中,输入图像与输出特征间具备稀疏连接的特性。将卷积核看作一个视觉窗口,在卷积层中通过设置多个卷积核,就可以得到更多图像局部特征。同一卷积核在CNN进行前向传播时共享同一组参数,使得卷积层具有平移不变性,并且减少了计算量。

1.1.2池化层

数据通过卷积层后,根据卷积核的数量产生对应的数据通道数。池化层不改变通道数目,在不同的通道上单独进行。池化层主要是用来下采样、降维、对特征进行压缩及减少计算量。与此同时,池化层能够对网络实现非线性化并扩大CNN的感知视野。本文采用的是CNN中常用的最大池化层,选取数据区域内最大值并作为该区域池化后的值,其机理可以描述为

(3)

式中:M表示通过最大池化层后得到的特征图像矩阵,F表示输入的特征图像矩阵,h表示该特征图像矩阵的尺寸,p表示池化区域的视野尺寸。

1.1.3全连接层

CNN在经过一系列卷积池化层后,需要经由若干全连接层进行处理。第一个全连接层起到将数据“压平”的作用,即将数据从多维度压缩成一维数组。然后,该一维数组在全连接层的每层都采用式(4)计算。在CNN分类问题下,最终输出值通过softmax激活函数进行处理,其机理如式(5)所示。

(4)

(5)

其中,O为在k分类的条件下输出的结果矩阵,Wi和bi分别代表第i个神经元对应的权重及偏置。本文面对的异常检测问题实际上是一个二分类问题,所以k取值为2。

1.2 1dCNN工作原理

与二维CNN类似,1dCNN同样具有平移不变性及稀疏连接等特点。不同之处在于应用场景,二维CNN常用于处理图像等二维数据,1dCNN常用于处理时序数据等一维数据。因此,1dCNN在卷积层池化层的数值计算上存在差异,这种差异可以体现在式(6)和式(7)中:

(6)

(7)

式中:C(w)表示一维卷积结果,w表示时序数列的宽度(长度),K表示核函数矩阵,s表示卷积核在宽度轴上的坐标,I表示时序数列数组,k表示卷积核数组的尺寸;M表示通过池化后得到的特征序列,p表示池化区域的视野尺寸,F表示输入的特征序列数组,h表示该特征序列数组的尺寸。

为便于理解1dCNN的工作原理,本文采用正弦型函数及一个卷积核函数构造了一组示例。该正弦型函数的振幅为1,角频率为0.01,初始相位为0。在此基础上对1500时刻附近的数据进行扰动,构建的时序数据如图2所示。

图2 正弦函数时序数据Fig.2 Time series data of sine function

选取核函数尺寸为1000,步幅为500,提取的特征序列如图3所示。

图3 卷积核提取特征序列Fig.3 Feature sequences extracted by convolution kernel

图3中,该卷积核获取到时间序列的7个局部视野,并且能够提取出异常时间序列片段的显著特征。相对于原始时间序列,特征序列更显得稀疏交互并且突出了关键信息。卷积核的尺寸应该由时间序列的长度以及异常行为时间尺度决定。一般来讲,当时间序列长度相对于异常行为时间比例较高时,应选择视野较宽的卷积核,这样可以避免提取大量无用稀疏特征。反之,在时间序列较短的情况下,要尽量选择视野较窄的卷积核,以免提取不到边缘特征。选择合适的卷积核步幅,对于1dCNN进行异常行为识别尤为重要。如果选取过长的卷积核步幅,对于具有异常特征的特征序列难以定位。另一方面,如果卷积核步幅过短,则提取出的特征序列则无法包含足够的前后序列,从而难以判别是正常行为特征还是异常行为特征。

2 代价敏感训练策略

数据不平衡是异常检测任务中的常见问题。地面站接收到的卫星遥测数据,绝大部分都是正常数据。系统将一个异常数据误判为正常与把一个正常数据误判为异常,所付出的代价是不同的。异常检测系统宁可误判正常数据为异常,也不能遗漏一个异常,显然准确地识别出异常数据更为重要。为了解决这一问题,将代价敏感应用到了1dCNN的训练过程中,提出了代价敏感一维卷积神经网络(cs-1dCNN)模型。

2.1 代价敏感分类

代价敏感分类器[10]的主要优点是区分处理多数样本和少数样本并考虑了误分类成本的不同。分类结果可以表示为表1中的混淆矩阵。

表1 混淆矩阵Table 1 Confusion matrix

(8)

(9)

根据最小期望代价准则,代价敏感分类器的期望风险可以采用如下描述:

(10)

式中:R(i|X)表示给定输入X分为i类的期望风险,P(j|X)表示给定输入X实际属于j类的后验概率,C(j,i)表示i类样本被分类为j类时产生的代价。

准确地计算后验概率一直是数学中的未解难题。因此,在神经网络中应用经验风险代替计算后验概率。经验风险的计算如下所示:

(11)

(12)

2.2 代价敏感损失函数

运用不平衡比率作为代价敏感误分类的惩罚,可以从整体上解决数据不平衡对分类任务造成模型偏向正常样本拟合的问题。但是,在神经网络训练过程中采用小批量训练方式,固定的代价矩阵不能很好地适应局部区域分布的不平衡。利用动态变化的误分类代价权重进行自适应更新,不仅能考虑到整体的样本不平衡,也能考虑到局部小批量训练上的不平衡。

本文提出的交叉熵损失函数表示如下:

l(θ)=λ×tn×(-ln(pn))+(1-tn)×

(-ln(1-pn))

(13)

式中:θ为分类器(1dCNN)的权重参数,λ是本文提出的动态误分类代价权重,tn和pn分别表示第n个期望输出和预测输出。

因此,训练阶段整体交叉熵损失函数包含正样本预测损失和负样本预测损失。整体损失函数,动态误分类代价权重和优化目标通过式(14)、式(15)和式(16)表示:

(14)

λn=

(15)

θ*=argminE(θ)

(16)

3 异常检测模型迁移

3.1 迁移学习的定义

定义1源域:源域包含大量有标签的数据,记作Ds。在卫星异常检测任务中,源域是拥有人工标签的某卫星遥测数据。

迁移学习通过映射函数将源域样本和目标域样本映射到相同的分布空间,通过这种方式,使得源域样本的知识能够用于解决目标域任务。本文进行的卫星异常检测模型迁移任务如图4所示。

图4 卫星异常检测模型迁移任务Fig.4 Transfer task of satellite anomaly detection model

3.2 1dCNN模型迁移

目前主流的迁移学习方法在图像领域得到广泛的运用[11],一些经典的CNN框架如VGG和RESNET等都公开了其预训练模型。在卫星遥测异常检测领域,乃至整个一维序列数据方面,目前还没有一个公认的经典网络架构。因此,为了让迁移的效果得到保证,采用1dCNN进行迁移学习。1dCNN和图像领域的CNN类似,它能够处理高维数据,提取和选择局部特征。

根据图4,在源域上利用卫星A数据训练1dCNN的特征提取和选择能力,然后将神经网络的部分网络层迁移到目标域卫星B中训练,并通过目标域的少量有标签数据进行微调,来保证目标域异常检测效果。本文提出的1dCNN和cs-1dCNN的网络结构和参数设置将在第4.2节介绍。

4 实 验

本文所有实验基于pytorch1.0和python3.7.1的编程环境。实验数据来自某两个卫星(分别简称为卫星A和卫星B)的同一分系统的部分遥测数据,卫星数据属性已被隐藏。本实验随机选取卫星A和卫星B各100000条数据记录。其中,异常数据皆占比4%,即4000条异常数据。不选取两卫星的全体数据而是抽取两卫星数量相同的部分数据的原因:一方面,选取同样数量数据方便模型从卫星A迁移到卫星B,以及从卫星B迁移到卫星A的对比;另一方面,仅部分采样卫星遥测数据造成采样数据的有偏分布,可以测试本文提出的迁移模型在映射源域到目标域上的模型性能的鲁棒性。

4.1 实验流程

利用本文提出的方法对卫星遥测数据异常检测任务迁移分为如下三个步骤:数据预处理、使用源域数据进行模型预训练和使用目标域数据进行模型微调。实施的过程如图5所示。

图5 基于cs-1dCNN的迁移学习异常检测模型框架Fig.5 Frame of transfer learning anomaly detection model based on cs-1dCNN

4.2 实验设置

4.2.1评价指标

由于卫星异常检测任务中样本类别的不均衡性,正常样本数目远远多于异常样本数目。如果简单地使用准确率作为评价指标,那些倾向于将未知样本分类为多数类的模型会被认为是分类能力较好的模型,因此本实验使用多个评价指标度量模型的优劣。这些评价指标为:准确率、精准率、召回率及F1,其值分别如式(17)、式(18)和式(19)所示:

(17)

(18)

(19)

4.2.2对比方法及网络结构

将提出的模型与一些用于异常检测或时序数据分类任务的迁移学习方法做了详细的比较。对比方法共包括两种非深度学习迁移和三种深度学习迁移方法。

SVM:支持向量机是经典的机器学习算法,广泛应用于诸多分类任务。参考Aytar[12]提出的基于SVM的迁移算法,将其运用于本实验的卫星异常检测任务上。

GFK:Gong等[13]提出一种基于核的方法,利用这种结构集成无穷多个子空间来模拟从源到目标域的几何和统计特性的变化,对域迁移进行建模。

TCN:Fawaz等[14]从一个预先训练的神经网络对模型进行微调,而不是从零开始训练,提升了时间序列分类任务。

1dCNN:1dCNN是本文提出的基于一维卷积网络的异常检测模型。其结构参数设置如表2和图6所示。

cs-1dCNN:cs-1dCNN是在1dCNN基础上引入一种代价敏感损失函数,旨在解决遥测数据极度不平衡对于检测结果的影响。

为了公平地对比实验,本文提及的三种深度学习迁移模型都采用adam优化器,学习率都为0.001,第一阶矩为0.9,第二阶矩为0.999。三种迁移模型都采用不冻结任何层的方式进行微调。对于cs-1dCNN,卫星A和卫星B数据集的Uover都为24。

4.3 最优模型的选择

在本文的迁移学习任务中,当源域和目标域分别为卫星A和卫星B。为了提升迁移学习的效果,将卫星A所有数据作训练集,以寻找最优的模型参数。在每一个训练周期开始时,先随机地将训练集切分成若干批次作为模型的输入。通过最小化损失函数对模型参数进行训练,每一个训练代数结束后,记录模型的参数和模型在训练集上的F1值,最终选取F1值最高的模型参数作为卫星B的预训练模型。若源域和目标域分别为卫星B和卫星A,则将卫星B所有数据作训练集,其余步骤类似。

图7展示了cs-1dCNN模型在卫星A遥测数据上的表现。横坐标为训练代数,纵坐标为F1,当epoch为46时,之后连续10个epoch的表现都没有提高。因此认为模型参数在这一代已经达到最优。

表2 网络1dCNN的参数Table 2 Parameters of 1dCNN

4.4 模型表现

表3展示了各种模型从源域卫星A迁移到目标域卫星B时,在异常检测任务上的表现。表4展示了从源域卫星B迁移到目标域A时,各模型的表现。其中,采用5%的目标域卫星数据来微调三种深度学习预训练模型。而对于SVM和GFK两种传统模型,将5%的目标域有标签数据与源域中有标签数据一起训练。剩余的95%数据作为测试集。针对样本的不平衡分布,为了避免随机性带来的负迁移,抽取的方式按正负样本比例1∶24抽取,随机抽取20次取平均表现结果。

图6 1dCNN网络结构Fig.6 Architecture of 1dCNN

图7 选择最优模型Fig.7 Choose the best model

表3 卫星A迁移到卫星B的异常检测结果表现Table 3 Performance of anomaly detection when transferring from satellite A to satellite B

表4 卫星B迁移到卫星A的异常检测结果表现Table 4 Performance of anomaly detection when transferring from satellite B to satellite A

通过比较表3和表4的结果不难发现,本文提出的cs-1dCNN模型在多个指标上优于其他算法,具有更好的可迁移性。

在所有的实验结果中,若仅看准确率指标,所有的模型均取得了不错的结果。这是由于卫星遥测数据样本极度不平衡导致的指标失效,准确率指标无法体现更注重的异常样本的分类结果。因此,在评价体系中添加了精准率、召回率和F1这三种指标来度量模型对异常样本的检测情况。

在所有的比较方法中,非深度学习方法,如迁移模型SVM和GFK的异常检测结果较差,其F1值未能达到60%。尤其是GFK模型,在进行迁移的过程中涉及到矩阵分解,在使用小样本(仅5%目标域数据)进行训练时,导致采样失衡,效果很不理想。

对于三种基于深度学习的迁移模型,无论在卫星A迁移到卫星B,还是卫星B迁移到卫星A,异常检测的效果都不错(F1高于70%),均远优于SVM和GFK模型。TCN和提出的1dCNN和cs-1dCNN模型,通过卷积核能够提取遥测数据的中间特征。这些特征如图3展示,往往能够辅助异常检测任务,并且易于在相似的任务之间实现模型的迁移。

对于提出的1dCNN模型,从卫星A迁移到卫星B的异常检测任务上,要比TCN模型的F1值高出3.7%,在卫星B迁移到卫星A任务上仅高出0.08%。TCN是当前时序数据分类中前沿的模型,所构建的1dCNN已经能与之性能相近,在本实验中略胜于它。总体来讲,设计的1dCNN网络结构更深层次地提取了遥测数据的中间特征,更适合异常检测任务。

尽管1dCNN和TCN模型已经取得了不错的分类效果,但它们的综合表现依然不及引入代价敏感训练策略的cs-1dCNN模型。对于卫星异常检测而言,更应该关注在准确率不受影响的前提下,对异常样本的识别。因此,进一步观察召回率和F1值这两个能反映模型识别卫星异常数据(不平衡类别中处于少量)的指标。在1dCNN引入代价敏感分类策略后,可明显观察到召回率的大幅提升。提出的代价敏感策略,通过动态调整异常样本训练时损失函数权重,能解决数据不平衡问题,并且能应用于迁移模型。

为了研究目标域的有标签数据量对模型异常检测效果的影响,在微调预训练模型时,依次增加目标域有标签数据的数量。以任务卫星A迁移到卫星B为例,图7展示了当目标域的有标签数据分别占比为5%,10%,15%,20%时,TCN,1dCNN和cs-1dCNN的表现结果。

由图7可知,随着目标域有标签样本数量增加,TCN,1dCNN和cs-1dCNN模型在召回率和F1两种指标上都有提升。虽然三种模型的F1综合指标逐渐接近,但是cs-1dCNN仍领先另外两种模型约5%。在样本量从5%提升到20%时,三种模型的召回率分别提升了3.29%,3.62%和2.31%。但是,前两种模型仍与cs-1dCNN有着约10%的差距。由此可见,采用代价损失训练策略可以很好地提升分类器对异常样本的分类效果,这对样本不平衡的遥测数据异常检测任务尤其关键。

图8 不同数量的有标签数据下异常检测结果Fig.8 Anomaly detection results in different quantities of labelled data

5 结 论

针对卫星遥测数据样本分布不平衡和缺乏有标签的问题,提出一种代价敏感的一维卷积网络模型,并对模型进行迁移,解决了有标签数据不足情况下的卫星遥测数据异常检测问题。采用一维卷积核获取卫星高维数据的局部序列视野,并且能够提取出异常序列数据片段的显著特征。引入代价敏感训练策略,在每个训练批次内动态修改交叉熵损失函数,这样不仅考虑了整体的样本不平衡,也考虑了局部小批量训练上的不平衡。实验证明提出的方法能够解决小样本不平衡卫星遥测数据的异常检测。

本文提出的卫星遥测数据异常检测模型目前仅在不同卫星同一分系统之间的迁移。在未来的工作中,考虑研究不同卫星不同分系统构成的源域和目标域之间的模型迁移。此外,如何衡量卫星分系统迁移的可行性,避免负迁移对异常检测效果造成影响,也是一个值得研究的内容。

猜你喜欢
遥测代价卷积
基于3D-Winograd的快速卷积算法设计及FPGA实现
自适应模糊PID控制的遥测方舱温度调节方法
电子制作(2019年11期)2019-07-04 00:34:40
从滤波器理解卷积
电子制作(2019年11期)2019-07-04 00:34:38
某小型无人机遥测软件设计
电子测试(2018年13期)2018-09-26 03:30:00
基于傅里叶域卷积表示的目标跟踪算法
爱的代价
海峡姐妹(2017年12期)2018-01-31 02:12:22
代价
浅谈如何提高遥测状态估计合格率
成熟的代价
中学生(2015年12期)2015-03-01 03:43:53
一种基于卷积神经网络的性别识别方法
电视技术(2014年19期)2014-03-11 15:38:20