基于堆叠双向LSTM的雷达目标识别方法

2021-12-22 13:18曹展家师本慧
计算机测量与控制 2021年12期
关键词:卷积神经网络雷达

曹展家,师本慧

(中国电子科技集团公司 第五十四研究所,石家庄 050081)

0 引言

雷达作为一种预警探测手段,利用电磁波来获取目标的距离、方位、速度等信息,在战场侦察、航空管制、敌我目标识别等方面发挥着不可替代的作用[1-2]。现阶段主流的雷达目标检测技术多采用能量检测的方式,即统计杂波和回波噪声的能量来确定出一个门限值从而检测出雷达回波中的目标[3-6]。但在城市等复杂环境下,以无人机为例,这种低可观测性目标的回波通常会淹没在强噪声背景中,由于目标回波信噪比较低,即便采用恒虚警检测(CFAR, constant false alarm rate)技术依然会有较强的噪声干扰,从而影响对目标的检测率[7-8]。支持向量机[9](SVM, support vector machine)是一种经典的机器学习算法,近年来也被应用到雷达目标识别中,可以实现高纬度特征空间的分类,难点在于人工提取特征的复杂度以及对特征的选择难度。

深度学习是机器学习的一个分支领域,以神经网络为主要模型,通过构建一系列连续的表示层从训练数据中自动学习到特征表示,实现从输入到目标的映射[10-11]。鉴于目前深度学习在计算机视觉、机器翻译等方向获得了突出的成就,研究人员们也开始在雷达目标检测识别中尝试引入深度学习[12-15]。文献[12]利用卷积神经网络(CNN,convolutional neural network)设计了一种CNN检测器,以距离-多普勒图像切片作为网络的输入,确定频谱中是否包含目标回波或仅噪声,可以替代CFAR检测器。文献[13]采用一种多尺度卷积模块增加了卷积神经网络的深度,在SAR图像集上实现了高准确度的目标分类。文献[14]采用通过添加噪声等方式增强数据集后的样本来训练卷积神经网络,增强了网络模型的抗干扰性。文献[15]采用卷积神经网络对雷达一维序列信号进行处理说明CNN-LeNet网络对雷达杂波和噪声的一维序列数据进行分类的可行性。

上述的方法中所使用的卷积神经网络提取到的数据的特征表示具有平移不变性,可以提取出不同位置的目标的特征,但是卷积神经网络对时间步的顺序不敏感,忽略了数据之间的相关性,网络模型的输出仅与该时刻模型的输入有关[16]。考虑到雷达的回波数据是时间序列,具有时序相关性,为了处理时序数据,建立长时间的时序依赖关系,本文提出一种基于堆叠双向LSTM模型来进行雷达目标识别。

1 LSTM模型

1.1 循环神经网络

在深层前馈神经网络中,比如常见的卷积神经网络,只在相邻的层与层之间建立了连接,每一层神经元节点的输入只和上一层与该节点局部连接的神经元的输出有关,信息的传递只能是单向无循环的。卷积神经网络只能孤立的处理当前的数据,无法将上一时刻输入数据的信息传递给下一时刻,整个网络无反馈信息。另外,卷积神经网络只能处理固定长度的数据,即输入和输出的维度都是固定长度。

对于一些场景下的任务,比如给出一段文字描述,让神经网络对这段话去做定性的情感分类。因为一段文字是序列化的数据,从人类的角度分析,一段文字是从前往后的逐词阅读,并能记忆之前的词的信息,这样可以动态的理解上下文的含义。针对这样的任务,建立的模型需要能够接收过去的输入信息,使得网络下一个时刻的输出可以基于当前输入和上一时刻的输入做计算。可以看出,卷积神经网络很难应对序列化的数据,无法提取到输入数据之间的时序关联信息[17-18]。

循环神经网络(RNN)是一类具有保存过去的信息的能力的网络模型,可以处理序列数据[19]。RNN的隐藏层的状态ht增加了一个自反馈回路,其输出由当前的输入和上一时刻的隐藏层状态ht-1计算得出。RNN的基本结构如图1所示。

图1 RNN单元结构图

RNN在t时刻的隐藏层状态ht的计算公式为:

ht= tanh(b+Wht-1+Uxt)

(1)

其中:U为输入层到隐藏层的权重矩阵,W为上一时刻隐藏层的状态ht-1作为本次输入的权重矩阵,b为偏置向量,x为输入。Tanh为非线性激活函数,其定义为:

(2)

由式(1)可以看出,隐藏层的状态ht不仅与包含了输入x的信息,还包含了前一时刻的ht-1的信息,而ht-1又和ht-2有关,以此递推,每个时刻的隐藏层状态ht代表了输入序列中0~t时间步的输入信息。这是循环神经网络与静态的卷积神经网络的主要不同,通过具有循环连接的自反馈回路,使得循环神经网络能够利用其过去输入的信息来处理时间序列的数据,相比于卷积神经网络表示能力更强。

循环神经网络的参数迭代更新由随时间反向传播的链式法则来计算梯度,即通过偏导数递归自上而下的计算每层的误差。给定一个数据集(x,y),其中x=(x1,…,xN)为输入数据,长度为N,如文本序列。y=(y1,…,yN)为期望输出的真实标签,长度为N。在时间步t,定义神经网络的损失函数为:

Lt=L(yt,f(ht))

(3)

其中:f(ht)为t时刻网络的输出,f(·)为Sigmoid型非线性函数[20]。损失函数L是可微的。则遍历整个序列数据的损失函数之和对参数W的梯度为:

(4)

因为一般采用Sigmoid型非线性函数作为网络模型的激活函数来增强循环神经网络的表示能力,其导数值都小于1,因此如果输入序列比较长,长距离间隔的隐藏层状态hk的梯度会趋向于0,也称为长程依赖问题,参数更新实际上只依赖相邻的几个隐藏层状态hk,难以学习到长时间间隔状态的信息。

1.2 长短期记忆网络

长短期记忆网络是循环神经网络的一种改进模型,引入了门控机制,避免了当输入序列较长时,网络模型存在的梯度消失问题[21-22]。LSTM结构单元如图2所示,这些内部的门控单元是LSTM的重要组成部分。

图2 LSTM单元结构图

LSTM增加了一种新的内部状态st,携带着之前时间步的历史信息,可以跨越多个时间步将信息传送到后面的时刻,同时非线性的更新外部的隐藏层状态ht。

(5)

式中,xt为输入值,ht为隐藏层的值,bf、Uf和Wf分别为偏置向量、输入权值矩阵和遗忘门循环权值矩阵。

(6)

(7)

(8)

(9)

其中:bo、Uo和Wo分别为偏置向量、输入权值矩阵和输出门循环权值矩阵。

遗忘门决定内部状态将前一时刻的不相关信息丢弃,输入门决定当前时刻保存多少新输入的信息,输出门决定内部状态有多少信息传递给隐藏层状态。正因为门控机制的存在,LSTM能够学习到跨越多个时间步的信息。

1.3 堆叠双向LSTM

单层的神经网络提取数据特征的能力弱,表示能力不足。深度学习是指从连续的表示层中学习输入数据的高级特征表示,让输出数据更加接近预期的结果。本文设计了堆叠LSTM,前一层网络的输出作为本层网络的输入数据,增加了LSTM网络的深度,从而增强了神经网络模型的特征表示能力,使网络的预测更为准确。

循环神经网络按顺序处理输入数据的时间序列,单向的LSTM只输入了数据的正序,输出只取决于之前时刻的时序信息。然而,在某些场景下,当前时刻的输出不仅取决于之前时刻的信息,还和后续时刻的信息有关,比如一个词汇的意思需要根据其上下文的信息来判断。双向的LSTM包含两个LSTM网络层,分别按照时间顺序和逆序提取数据特征,然后将两个LSTM网络层的输出拼接起来,双向的LSTM能够提取到被单向LSTM忽略的特征。考虑到雷达回波的相邻数据具有一定的相关性,目标回波的特征包含了前后数据的信息,本文采用双向LSTM对数据进行建模,增强网络的能力,得到更加丰富的特征表示。

现有的深度学习框架可以搭建任意的神经网络模型,将上述的两种LSTM网络模型相结合,在第一层双向LSTM上堆叠搭建第二层双向LSTM,得到本文的堆叠双向LSTM网络模型,综合提高网络的表示能力。

1.4 序列到类别的学习模式

有一个长度为N的数据集x=(x1,…,xN)。将输入数据x按照时间顺序输入到LSTM网络中,可以得到N个时刻的隐藏层输出ht。对于多层堆叠的LSTM,要求中间层返回每个时间步的输出传递给下一层计算,最后一层LSTM只取最后一个时间步的输出hN作为最终整个序列的特征表示,因为ht包含之前所有时间步的信息。最后将hN输入给分类模型f(·)预测样本类别。

(10)

其中:f(·)在二分类问题常用Logistic回归。

本文的网络模型输入的数据为雷达目标回波序列,输出为无人机和噪声的二分类,即设计的LSTM的输入输出结构为N→1。

2 模型与方法

2.1 模型结构

本文搭建的模型为堆叠双向LSTM网络。模型结构如图3所示。网络使用Python编程,在TensorFlow框架下搭建模型。

图3 模型结构

在TensorFlow中使用Bidirectional层将一个双向LSTM实例化,创建了两个LSTM层实例,然后使用其中一个LSTM层按正向序列处理输入数据,另一个LSTM层按逆向序列处理输入数据。

网络共三层,包含两层LSTM层和一层Dense层,第一层的LSTM分为前向LSTM和后向LSTM,每个LSTM隐藏单元的个数为32,将输入的二维数据映射到32维的表示空间中,使神经网络能够提取到更为深层的特征,然后将每个时间步的前向和后向LSTM隐藏层输出拼接起来,得到长度为64的特征序列输入下一个LSTM层。第二层的LSTM隐藏单元的个数为16,接收前一个LSTM层每个时间步的输出,最后一层的Dense层只接收前一个LSTM层最后一个时间步的输出,即接收到的序列长度为32。Dense层,即全连接层,对应的运算为:

(11)

其中:wT为N维的权重向量,x为神经元的输入序列,b是偏置向量。

Dense层的激活函数选取非线性函数Logistic,最终得到一个[0,1]之间的概率输出。函数定义为:

(12)

目标分类的判断原则为:如果输出概率小于0.5,则认为当前样本为无人机;如果输出概率大于0.5,则认为当前样本为噪声。

2.2 损失函数与优化器

损失函数是度量网络模型输出的预测结果与样本类别标签的误差的一种映射,损失函数的值越小,说明网络模型对数据拟合度越好。训练神经网络过程中通过优化网络参数使损失函数尽可能最小化。对于本文中的二分类问题,选用交叉熵损失函数:

L=-[yilogfi(x)+(1-yi)log(1-fi(x))]

(13)

其中:yi表示样本的标签,无人机的样本标签为“0”,接收机噪声的样本标签为“1”。fi(x)表示模型对样本的预测值。

优化器是根据损失函数的值对网络参数进行梯度下降更新的具体方式,实现了反向传播算法。当使用梯度下降法时,所有权重参数的学习率是固定的。考虑到每个参数的损失函数偏导值都不相同,本文选用RMSprop优化器,每次迭代基于网络模型在该批量数据上的损失值自适应地更新每个网络参数的学习率,RMSprop算法设置了一个衰减率β来计算每次迭代梯度平方的指数移动平均。

Gt=βGt-1+(1-β)gt⊙gt

(14)

其中:gt为迭代梯度,β的值一般取0.9。

RMSprop算法的参数更新公式为:

(15)

其中:α为全局学习率,本文默认为0.001。ε为很小的正数,取值为10-6,用来保持计算公式的数值稳定。从上式可以看出,RMSprop算法中学习率与参数的偏导数累积量成反比,可以减缓梯度下降中的震荡,加快网络收敛速度。

2.3 参数初始化与网络正则化

神经网络的损失函数为非凸函数,并且模型的结构庞大,参数量多,导致深度神经网络在训练大批量的数据集时,较难收敛到一个全局最优解。

当使用梯度下降法更新神经网络各个节点的权重参数时,参数的初始化方案影响着网络的收敛速度。

训练神经网络时,为了避免过拟合问题,增强模型的泛化能力,本文采用随机丢弃每一层神经元的连接的方式来限制模型复杂度。对于LSTM网络而言,为了保证LSTM在时间序列上的记忆能力,只针对输入层的神经元连接进行丢弃,并且为了使输入变化波动不会太大,神经元连接的保留率设定为0.9。

3 实验结果与分析

本文搭建的网络模型训练所采用的数据集来自于线性调频连续波雷达的实测数据,典型的线性调频连续波雷达对目标回波和发射信号的差拍信号进行快速傅里叶变换(FFT),即可得到目标的距离信息。这里选择将雷达信号处理流程中的距离向加窗FFT后的距离维解调数据,以距离门为单个样本单元并标注信号类别标签构建数据集。本文采集了无人机和接收机噪声两种类型的数据共13 000个,两类样本各占6 500个,其中,无人机的样本标签记为“0”,接收机噪声的样本标签记为“1”。样本样例如图4、图5所示。

图4 无人机雷达回波样本样例

图5 接收机噪声样本样例

为了便于评估模型性能,将数据集划分为训练集、验证集和测试集,相互之间无重复。在训练集上调用模型进行训练,在验证集上评估模型的性能并优化超参数。一旦模型的参数调到最优,则用测试集数据测试一下模型的最终效果。留出一定比例的数据作为测试集是为了防止信息泄露,测试模型的泛化能力。划分后的样本数据量如表1所示。

表1 数据集划分

本文采集的样本数据来自雷达接收机的正交IQ信号,输入单个样本的尺寸为(290,2),特征为2维,样本总数为13 000。

神经网络的参数初始化权重一般较小,若输入数据不同维度的取值波动较大,不利于神经网络的迭代训练。首先需要对输入神经网络的样本数据的2个维度的特征分别做标准化,使其满足均值为0,方差为1,取值范围保持在(0,1)之间。这样可以让不同维度的特征分布接近,避免极端异常值干扰模型训练,提升模型的收敛速度和精度。计算公式如下:

(16)

调用模型在训练数据上进行迭代时,批量大小设定为64,即每次迭代是用64个样本计算批量损失对参数进行更新,增加训练的稳定性,加快收敛。训练样本总量为9 600个,每一轮训练进行150次梯度更新,将模型在训练数据上迭代50个轮次。

设置训练过程中模型性能的评价指标为精度,即样本识别的正确率。记录每次迭代之后训练集和验证集的损失函数值和精度。网络训练结果如图6和图7所示。

图6 训练精度和验证精度

图7 训练损失和验证损失

如图所示,训练精度和验证精度在50轮次训练后趋于稳定,达到收敛。该模型的性能几乎达到最优,同时在验证集也没有产生过拟合,泛化能力良好。

使用训练好的网络模型在测试集上评估模型性能。测试集共包括1 000个样本,无人机和噪声的样本各500个,使用混淆矩阵来展示预测准确率。其中横轴代表预测类别,纵轴表示真实类别,如图8所示。

图8 测试集结果的混淆矩阵

由图8可以看出,无人机样本全部被正确识别为无人机,98%的噪声样本被正确识别为噪声。

本文所搭建的堆叠双向LSTM网络与传统SVM分类方法和卷积神经网络识别方法的识别精度对比如表2所示。

表2 识别算法结果对比 %

通过对比可以得出,基于堆叠双向LSTM的雷达目标识别方法相比传统的SVM分类算法和基于卷积神经网络的目标识别方法,在识别精度上有所提升,说明本文构建的堆叠双向LSTM网络在节省了人工提取目标特征的同时,还充分利用了雷达回波时序数据的前后相关性,使得模型提高了识别精度。

4 结束语

传统的恒虚警检测算法和基于SVM的目标分类技术存在自适应能力差,人工量大的问题。本文提出的基于堆叠双向LSTM的雷达目标识别方法,采用了双向LSTM提取雷达回波数据的时序特征,同时通过堆叠多层LSTM增强了网络的表示能力。实验表明,对于无人机目标的识别分类,基于堆叠双向LSTM的雷达目标识别方法优于传统的SVM分类算法和基于卷积神经网络的目标识别方法。但该网络模型若要应用到实际场景中,需要采集更多的数据集来训练网络模型,并通过模型压缩等方式提高神经网络的实时性。另外,录取贴合实际应用需求的复杂场景下的雷达回波数据,通过后续的研究验证神经网络模型对动态变化的强杂波的处理的稳定性。

猜你喜欢
卷积神经网络雷达
基于全卷积神经网络的猪背膘厚快速准确测定
基于神经网络的船舶电力系统故障诊断方法
浅谈雷达导引系统
基于图像处理与卷积神经网络的零件识别
MIV-PSO-BP神经网络用户热负荷预测
基于改进Hopfield神经网络的对地攻击型无人机自主能力评价
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
隐形飞机哪里躲
三次样条和二次删除相辅助的WASD神经网络与日本人口预测