一种ADS-B报文异常监测方法及系统

文档序号:26711024发布日期:2021-09-22 19:12阅读:128来源:国知局
一种ADS-B报文异常监测方法及系统
一种ads

b报文异常监测方法及系统
技术领域
1.本发明涉及报文异常监测技术领域,尤其涉及基于lstm

vae深度学习网络的ads

b报文异常监测方法及系统。


背景技术:

2.广播式自动相关监视(automatic dependent surveillance

broadcast,ads

b),是新航行系统中重要的监视和通信技术,通过全球导航卫星系统(gnss)和其他机载设备获取相关飞行器参数,并向其他飞行器或者地面设备广播飞行器的速度、位置、航向、识别码等信息。但是,ads

b报文协议开放共享,其协议中缺少相关报文加密和信息认证,极易受虚假数据的欺骗干扰。因此,在ads

b数据报文送入自动化等设备之前,对数据进行异常监测,可预防或减少实际使用中的潜在危险。
3.lstm网络作为一种改善的循环神经网络(rnn)网络,可有效利用数据的时间依赖性关系,同时可降低模型的梯度消失问题;研究人员已经在相关异常监测领域使用lstm网络进行数据的异常监测,例如:无线电异常监测;脑电图信号异常监测等。vae网络是一种定向概率图形模型(dpgm),是自动编码器的演变,通过给定输入数据的分布,得到潜在数据的分布。但是,二者均未解决ads

b数据报文的异常监测技术问题。
4.因此,提供一种ads

b报文异常监测方法及系统,来解决上述技术问题,是本领域技术人员亟需解决的问题。


技术实现要素:

5.有鉴于此,本发明提供了一种ads

b报文异常监测方法及系统,具有较好的ads

b报文异常监测性能。
6.为了实现上述目的,本发明采用如下技术方案:
7.基于lstm

vae深度学习网络的ads

b报文异常监测方法,包括以下步骤:
8.数据获取步骤:获取ads

b数据,分为训练数据和测试数据;
9.数据预处理步骤:分别对训练数据和测试数据进行预处理;
10.lstm

vae模型建立步骤:将vae网络的编码器和解码器设置为包括若干lstm cell和激活函数,得到lstm

vae模型,初始化lstm

vae模型的编码器参数φ和解码器参数θ;
11.参数更新步骤:将预处理后的训练数据输入lstm

vae模型中,计算最小化损失函数,更新lstm

vae模型的编码器参数φ和解码器参数θ;
12.异常监测模型获取步骤:当训练达到最大次数后,结束训练,得到异常监测模型;
13.异常数据判断步骤:将数据预处理步骤中预处理后的测试数据输入异常监测模型获取步骤中的异常监测模型,计算测试数据的异常分数值f,并与预设阈值α进行比较,若异常分数值f>α,则数据为异常数据,否则,数据为正常数据。
14.优选的,数据获取步骤中的ads

b数据为ads

b地面站接收航空器广播的射频信号进行处理后输出的ads

b报文数据,定义为窗口长度为t的ads

b窗口序列x={x1,x2,

,
x
t
},其中,t表示窗口的长度;x
i
=[x1,x2,

,x
n
](1≤i≤t)是长度为n的向量,每一个向量对应一条ads

b报文信息。
[0015]
优选的,数据预处理步骤的具体内容为:对训练数据进行归一化处理,对测试数据依次进行加工处理、归一化处理。
[0016]
优选的,数据预处理步骤中,测试数据进行加工处理为对测试数据添加异常数据,具体方法为随机噪声干扰、报文替换、高度跳变和/或速度跳变的一种或多种。
[0017]
优选的,参数更新步骤中,最小化损失函数如下:
[0018][0019]
其中,q
φ
和p
θ
分别表示lstm

vae模型的编码器网络和解码器网络;φ和θ对应编码器和解码器网络的参数;公式(1)的第一部分为kl正则项,q
φ
(z
i
|x
i
)可以看成是根据x
i
推导出z
i
的一个后验概率,p(z
i
)为z
i
的先验概率;公式(1)的第二部分,可以看做是数据重构的损失函数。
[0020]
优选的,异常数据判断步骤中异常分数值的计算公式如下:
[0021][0022]
其中,q
φ
和p
θ
分别表示lstm

vae模型的编码器网络和解码器网络;φ和θ对应编码器和解码器网络的参数;和对应解码器网络重构测试数据的均值和方差。
[0023]
优选的,异常数据判断步骤中的预设阈值α设定为训练集97%的异常分数值小于该值。
[0024]
基于lstm

vae深度学习网络的ads

b报文异常监测系统,
[0025]
包括:数据获取模块、数据划分模块、第一数据处理模块、第二数据处理模块、lstm

vae模型训练模块、异常数据监测模块和数据判断模块;
[0026]
数据获取模块,与数据划分模块的输入端连接,用于获取ads

b数据,定义为窗口长度为t的ads

b窗口序列x={x1,x2,

,x
t
},其中,t表示窗口的长度;x
i
=[x1,x2,

,x
n
](1≤i≤t)是长度为n的向量,每一个向量对应一条ads

b报文信息;
[0027]
数据划分模块,用于将获取数据分为测试数据和训练数据,数据划分模块的第一输出端输出训练数据,数据划分模块的第二输出端输出测试数据;
[0028]
第一数据处理模块,与数据划分模块的第一输出端连接,接收训练数据,并对数据进行归一化处理;
[0029]
第二数据处理模块,与数据划分模块的第二输出端连接,接收测试数据,并对测试数据依次进行加工处理、归一化处理;
[0030]
lstm

vae模型训练模块,与第一数据处理模块的输出端连接,接收处理后的训练数据,对lstm

vae模型进行训练,得到异常数据检测模型;
[0031]
异常数据监测模块的第一输入端与lstm

vae模型训练模块的输出端连接,异常数据监测模块的第二输入端与第二数据处理模块的输出端连接,用于对测试数据进行异常监测;
[0032]
数据判断模块,与异常数据监测模块的输出端连接,用于计算测试数据的异常分数值f,并与预设阈值α进行比较,若异常分数值f>α,则数据为异常数据,否则,数据为正常数据。
[0033]
优选的,数据获取模块,用于将获取ads

b数据,定义为窗口长度为t的ads

b窗口序列x={x1,x2,

,x
t
},其中,t表示窗口的长度;x
i
=[x1,x2,

,x
n
](1≤i≤t)是长度为n的向量,每一个向量对应一条ads

b报文信息。
[0034]
优选的,数据判断模块中,预设阈值α设定为训练集97%的异常分数值小于该值。
[0035]
经由上述的技术方案可知,与现有技术相比,本发明提供了一种ads

b报文异常监测方法及系统:针对ads

b数据报文时间依赖性强的特点,提出了基于长短期记忆神经网络(lstm)和差分自编码器(vae)的ads

b异常报文检测模型;模型对ads

b数据分布进行重构,通过概率重构误差来检测数据异常情况,具有较好的ads

b报文异常监测性能。
附图说明
[0036]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0037]
图1为本发明基于lstm

vae深度学习网络的ads

b报文异常监测方法的流程图;
[0038]
图2为vae模型示意图;
[0039]
图3为展开的基于lstm

vae深度学习网络的ads

b异常数据监测模型;
[0040]
图4为本发明基于lstm

vae深度学习网络的ads

b报文异常监测系统的结构框图;
[0041]
图5为报文4种异常监测结果图,其中,(5.1)速度跳变异常数据序列监测结果、(5.2)噪声干扰异常数据序列监测结果、(5.3)高度跳变异常数据序列监测结果和(5.4)航路替换异常数据序列监测结果;
[0042]
图6为本发明lstm

vae网络与ae网络、vae网络和lstm

ae网络的roc曲线及roc曲线下面积(auc)比较图;
[0043]
图7为本发明lstm

vae模型与4中经典异常监测算法的roc曲线及auc值图;
具体实施方式
[0044]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0045]
参照图1所示,本实发明公开了基于lstm

vae深度学习网络的ads

b报文异常监测方法,具体包括以下步骤:
[0046]
数据获取步骤:获取ads

b数据,分为训练数据和测试数据;
[0047]
数据预处理步骤:分别对训练数据和测试数据进行预处理;
[0048]
lstm

vae模型建立步骤:将vae网络的编码器和解码器设置为包括若干lstm cell和激活函数,得到lstm

vae模型,初始化lstm

vae模型的编码器参数φ和解码器参数θ;
[0049]
参数更新步骤:将预处理后的训练数据输入lstm

vae模型中,计算最小化损失函数,更新lstm

vae模型的编码器参数φ和解码器参数θ;
[0050]
异常监测模型获取步骤:当训练达到最大次数后,结束训练,得到异常监测模型;
[0051]
异常数据判断步骤:将数据预处理步骤中预处理后的测试数据输入异常监测模型获取步骤中的异常监测模型,计算测试数据的异常分数值f,并与预设阈值α进行比较,若异常分数值f>α,则数据为异常数据,否则,数据为正常数据。
[0052]
在一个具体实施例中,数据获取步骤中的ads

b数据为ads

b地面站接收飞行器广播的射频信号处理后输出的ads

b报文数据,定义为窗口长度为t的ads

b窗口序列x={x1,x2,

,x
t
},其中,t表示窗口的长度;x
i
=[x1,x2,

,x
n
](1≤i≤t)是长度为n的向量,每一个向量对应一条ads

b报文信息。
[0053]
在一个具体实施例中,数据预处理步骤的具体内容为:对训练数据进行归一化处理,对测试数据依次进行加工处理、归一化处理。
[0054]
在一个具体实施例中,数据预处理步骤中,测试数据进行加工处理为对测试数据添加异常数据,具体方法为随机噪声干扰、报文替换、高度跳变和/或速度跳变的一种或多种。
[0055]
在一个具体实施例中,随机噪声干扰:将原始正常数据中部分时间段数据乘上[0,2]之间的随机浮点数,将此时间段的数据标签改为异常(abnormal);
[0056]
报文替换:将原始正常数据中部分时间段的数据替换为其他正确航班信息,替换后的时间段数据标签改为异常(abnormal);
[0057]
高度跳变:以500ft为步长,改变原始正常数据中部分时间段的高度信息,即将第1个向量中的高度信息增加500ft,第2个向量中的高度信息增加1000ft,以此类推,将此时间段的数据标签改为异常(abnormal);
[0058]
速度跳变:以6kt为步长,改变原始正常数据中部分时间段的速度信息,即将第1个向量中的速度信息增加6kt,第2个向量中的速度信息增加12kt,以此类推,将此时间段的数据标签改为异常(abnormal)。
[0059]
在一个具体实施例中,vae网络是基于贝叶斯推理的ae网络变体,是一种有向概率图形化模型(dpgm)。vae模型如图2所示。图中编码器(encoder)的参数为φ,解码器(decoder)的参数为θ,φ表征编码网络从x
i
到z
i
的映射,而θ表征解码器从z
i
到x
i
的重构,重构数据表示为编码器表示为q
φ
(z
i
|x
i
),解码器表示为p
θ
(x
i
|z
i
)。
[0060]
在一个具体实施例中,参数更新步骤中,最小化损失函数如下:
[0061][0062]
其中,q
φ
和p
θ
分别表示lstm

vae模型的编码器网络和解码器网络;φ和θ对应编码器和解码器网络的参数;公式(1)的第一部分为kl正则项,q
φ
(z
i
|x
i
)可以看成是根据x
i
推导出z
i
的一个后验概率,p(z
i
)为z
i
的先验概率;公式(1)的第二部分,可以看做是数据重构的损失函数。
[0063]
在一个具体实施例中,异常数据判断步骤中异常分数值的计算公式如下:
[0064][0065]
其中,q
φ
和p
θ
分别表示lstm

vae模型的编码器网络和解码器网络;φ和θ对应编码器和解码器网络的参数;和对应解码器网络重构测试数据的均值和方差。
[0066]
在一个具体实施例中,异常数据判断步骤中的预设阈值α设定为训练集97%的异
常分数值小于该值。
[0067]
在一个具体实施例中,ads

b报文为csv文件,包括时间戳(timestamp)、utc时间、呼号(callsign)、经纬度(position)、高度(altitude,单位feet),速度(speed,单位knots)、飞行方向(direction),主要使用经纬度、高度、速度和飞行方向作为ads

b数据特征进行模型的训练和测试。
[0068]
在一个具体实施例中,在vae网络中利用ads

b数据序列的时间依赖特性,模型将lstm网络和vae网络进行融合,通过将vae的编码器和解码器替换为lstm细胞(lstm cell)网络实现。参照图3给出了展开的lstm

vae深度学习网络。数据异常监测任务在半监督框架下进行,仅使用正常的ads

b时间序列数据对lstm

vae模型进行训练。编码器和译码器分别在潜在变量空间和原始输入变量空间拟合一个各向同性的正态分布。对于来自编码器的每个时间序列,解码器输出平均值和方差参数,利用这些参数,计算由这些分布产生原始时间数据的重构概率。用这些概率的平均值作为异常分数f。
[0069]
参照图4,本发明公开了基于lstm

vae深度学习网络的ads

b报文异常监测系统,
[0070]
包括:数据获取模块、数据划分模块、第一数据处理模块、第二数据处理模块、lstm

vae模型训练模块、异常数据监测模块和数据判断模块;
[0071]
数据获取模块,与数据划分模块的输入端连接,用于获取ads

b数据,定义为窗口长度为t的ads

b窗口序列x={x1,x2,

,x
t
},其中,t表示窗口的长度;x
i
=[x1,x2,

,x
n
](1≤i≤t)是长度为n的向量,每一个向量对应一条ads

b报文信息;
[0072]
数据划分模块,用于将获取数据分为测试数据和训练数据,数据划分模块的第一输出端输出训练数据,数据划分模块的第二输出端输出测试数据;
[0073]
第一数据处理模块,与数据划分模块的第一输出端连接,接收训练数据,并对数据进行归一化处理;
[0074]
第二数据处理模块,与数据划分模块的第二输出端连接,接收测试数据,并对测试数据依次进行加工处理、归一化处理;
[0075]
lstm

vae模型训练模块,与第一数据处理模块的输出端连接,接收处理后的训练数据,对lstm

vae模型进行训练,得到异常数据检测模型;
[0076]
异常数据监测模块的第一输入端与lstm

vae模型训练模块的输出端连接,异常数据监测模块的第二输入端与第二数据处理模块的输出端连接,用于对测试数据进行异常监测;
[0077]
数据判断模块,与异常数据监测模块的输出端连接,用于计算测试数据的异常分数值f,并与预设阈值α进行比较,若异常分数值f>α,则数据为异常数据,否则,数据为正常数据。
[0078]
在一个具体实施例中,数据获取模块,用于将获取ads

b数据,定义为窗口长度为t的ads

b窗口序列x={x1,x2,

,x
t
},其中,t表示窗口的长度;x
i
=[x1,x2,

,x
n
](1≤i≤t)是长度为n的向量,每一个向量对应一条ads

b报文信息。
[0079]
在一个具体实施例中,数据判断模块中,预设阈值α设定为训练集97%的异常分数值小于该值。
[0080]
在另一个具体实施例中,随机选取50个航班的500趟飞行航线的整个飞行阶段的完整正常数据为训练数据,另选取5个航班的50趟飞行航线的整个飞行阶段的完整数据为
测试数据。模型的最大训练次数设定为i=5000,批数量(batch_size)设为128,序列窗的大小t=16,学习速率(learning_rate)设定为0.01,潜在空间维度k=64。模型中每个编码网络包含3个lstm cell网络,解码网络包含3个lstm cell网络。本文采用roc(receiver operating characteristic curve)曲线及roc曲线下面积(auc)来测试模型对ads

b异常报文检测性能的优劣。roc曲线可以直观的表征异常监测的性能优略。对于异常监测性能优秀的模型,roc具有较大的曲线下面积,对应具有较高的auc值。实验中,触发数据异常的条件采用最苛刻要素,即每个ads

b窗口序列内包含异常数据点的数量大于等于1,即判定此窗口内的数据序列为异常数据。
[0081]
图5给出了某航班某一完整航线的异常测试结果图(此完整航线数据经过异常处理)。其中纵坐标表示异常分数,横坐标表示ads

b报文序列号,异常序列号段为200~300,虚横线为异常阈值,即α的值。图(5.1)到图(5.4)分别表示速度跳变、噪声干扰、高度跳变和航路替换四种异常数据序列检测结果。由图5可知,模型具有较好的异常数据检测结果。其中,图(5.1)和图(5.4)中,在异常序列段前期,数据跳变幅度较小,因此模型异常监测结果不理想。
[0082]
为了验证vae网络和lstm网络融合后,可有效利用ads

b报文数据的时间依赖性,图6给出了本文提出的基于lstm

vae网络异常监测模型与ae网络异常监测模型、vae网络异常监测模型、lstm

ae网络异常监测模型的roc曲线图及对应的auc值。为保证实验的有效性,ae模型、vae模型和latm

ae模型的学习率、批数量和最大训练次数等于本文模型的相应参数的设定值。lstm

ae模型数据窗的大小等于本文模型中数据窗的设定,lstm细胞数等于本文模型的设定值。ae网络和lstm

ae网络采用全连接网络,优化函数采用均方误差(mean square error,mse)。vae网络的优化函数采用本文的优化函数。由图6可知,将vae网络与lstm网络融合后,模型的auc值取得了进一步的提高,报文异常监测性能得到了一定的改善,反应模型有效利用了ads

b报文序列的时间依赖特性。
[0083]
同时,本技术文还与4种经典的异常数据检测方法进行了比较。这4中方法分别为基于线性模型方法的主成分分析法(pca)和单类支持向量机方法(one

class

svm,ocsvm),基于集群方法的孤立森林算法(isolation forest,if)和基于密度的局部因子算法(local outlier factor,lof)。实验分别采sklearn模块的pca、oneclasssvm、isolationforest和localoutlierfactor函数进行性能对比。其中pca压缩空间设定为特征向量维度的一半,oneclasssvm核函数选取径向核函数(rdf),isolationforest函数中树的颗数(n_estimators)设定为100,localoutlierfactor函数中参数n_neighbors设定为6。4中算法的其他参数按照函数自动设定值设定。图7给出了模型与4中经典算法的异常监测性能的roc曲线及曲线下面积(auc)。由图7可知。本文的lstm

vae模型取得了较高的auc值,即模型具有较好的数据异常监测性能。
[0084]
对所公开的实施例的上述说明,按照递进的方式进行,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1