发明内容
基于以上各类问题,本发明提供一种精确度更高的在强干扰下采用神经网络的机载雷达生命探测方法,包括以下步骤:
1)在距离地表一定距离处,通过机载生命探测雷达探测到地表下生命信号,地表以及其他干扰信号的回波;
2)对雷达接收的回波信号进行预处理;
3)对预处理过的信号进行傅里叶变换并构建神经网络数据集;
4)对构建的神经网络数据集进行预处理;
5)搭建神经网络并训练测试神经网络模型,有效的区分雷达接收信号是否含有生命信号,以此判断地表下是否有生命迹象。最后得到系统在强干扰情况下的探测性能。
优选的,在步骤(1)中,发射机通过振荡器产生信号
A为幅度大小,f
c为载波频率。
因此,相应的雷达回波信号主要分为两类:不含生命信息雷达回波信号H1(t)和含生命信息雷达回波信号H2(t)的如下表达式:
H1(t)=a(t)+c(t)+n(t)
H2(t)=a(t)+b(t)+c(t)+n(t)
其中,
是非金属介质所产生的强回波信号,A
a是强回波信号的幅度,f
c为载波频率,τ
a是强回波信号产生的时延;
是生命信号,A
b是生命信号的幅度,f
d是目标造成的多普勒频移,τ
b是生命信号产生的时延;
是周围环境或者目标自身造成的强干扰信号,A
i是强干扰信号产生的幅度,f
i是周围环境或者目标自身造成的多普勒频移,τ
i是周围环境或者目标自身造成的时延,m是不同强干扰信号的数量;n(t)是产生的噪声信号。我们用均值为0,方差为ξ的高斯白噪声模拟;t为时间。
优选的,在步骤(2)中,对雷达接收信号进行预处理,即低噪声放大,混频解调,滤波等处理,最终得到如下的信号表达式:
R1(t)=a′(t)+c′(t)+n′(t)
R2(t)=a′(t)+b′(t)+c′(t)+n′(t)
其中,
是非金属介质所产生的强回波信号经过预处理后得到的信号,A′
a是强回波信号经过预处理后得到的信号的幅度;
是生命信号经过预处理后得到的信号,A′
b是生命信号经过预处理后得到的信号的幅度;
是周围环境或者目标自身造成的强干扰信号经过预处理后得到的信号,A′
i是强干扰信号经过预处理后得到的信号产生的幅度;n′(t)是噪声信号经过预处理后得到的信号。
优选的,在步骤(3)中,对预处理过的信号进行快速傅里叶变换(FFT),快速傅里叶变换公式如下:
其中,x(n)是要进行快速傅里叶变换的信号的离散采样值,N是我们需要进行多少点的快速傅里叶变换。所以需要对R1(t)和R2(t)先进行离散采样,再进行快速傅里叶变换。
对雷达预处理过后的信号先进行采样得到不含生命信息的采样信号R1(n)和含生命信息的采样信号R2(n),具体公式如下:
R1(n)=a′(n)+c′(n)+n′(n)
R2(n)=a′(n)+b′(n)+c′(n)+n′(n)
其中,n=0,1,…,N-1,N是采样的总点数,
是非金属介质所产生的强回波信号经过预处理后得到的采样信号,A′
a是强回波信号经过预处理后得到的信号的幅度,f
c为载波频率,τ
a是强回波信号产生的时延;
是生命信号经过预处理后得到的采样信号,A′
b是生命信号经过预处理后得到的信号的幅度,f
d是目标造成的多普勒频移,τ
b是生命信号产生的时延;
是周围环境或者目标自身造成的强干扰信号经过预处理后得到的采样信号,A′
i是强干扰信号经过预处理后得到的信号产生的幅度;n′(n)=n′(t
1+n*Δt)是噪声信号经过预处理后得到的采样信号。t
1为采样初始值,Δt为采样时间间隔。
傅里叶变换后,可以得到不含生命信息的频域信号和含生命信息的频域信号具体公式如下:
R1(k)=a′(k)+c′(k)+n′(k)
R2(k)=a′(k)+b′(k)+c′(k)+n′(k)
其中,k=0,1,…,N-1,N是离散傅里叶变换的总点数,
是经过预处理和采样后强回波信号的傅里叶变换后的频域信号;
是经过预处理和采样后的生命信号的傅里叶变换后的频域信号;
是经过预处理和采样后的周围环境或者目标自身造成的强干扰信号的傅里叶变换后的频域信号;
是经过预处理和采样后噪声信号的傅里叶变换后的频域信号。a(n)′为非金属介质所产生的强回波信号经过预处理和采样后得到的信号;b(n)′为生命信号经过预处理和采样后得到的信号;c′(n)是周围环境或者目标自身造成的强干扰信号经过预处理和采样后得到的信号;n′(n)是噪声信号经过预处理和采样后得到的信号。
优选的,在步骤(4)中,可以用R1(k)=a′(k)+c′(k)+n′(k)不含生命信息的频域信号和R2(k)=a′(k)+b′(k)+c′(k)+n′(k)含生命信息的频域信号构建神经网络的数据集。也可以结合R1(n)=a′(n)+c′(n)+n′(n)不含生命信息的时域信号和R2(n)=a′(n)+b′(n)+c′(n)+n′(n)含生命信息的时域信号共同构建神经网络数据集。其中,k=0,1,…,N-1,N是离散傅里叶变换的总点数;a′(k)是经过预处理和采样后强回波信号的傅里叶变换后的频域信号;b′(k)是经过预处理和采样后的生命信号的傅里叶变换后的频域信号;c′(k)是经过预处理和采样后的周围环境或者目标自身造成的强干扰信号的傅里叶变换后的频域信号;n′(k)是经过预处理和采样后噪声信号的傅里叶变换后的频域信号;n=0,1,…,N-1,N是采样的总点数;a′(n)是非金属介质所产生的强回波信号经过预处理和采样后得到的信号;b′(n)是生命信号经过预处理和采样后信号;c′(n)是周围环境或者目标自身造成的强干扰信号经过预处理和采样后得到的信号;n′(n)是噪声信号经过预处理和采样后得到信号。将有无生命信号数据集作为一个二分类问题处理。
在真实世界中,数据通常是不完整的(缺少某些需要的属性值),不一致的(包含代码或者名称的差异)、极易受到噪声(错误或异常值)的侵扰的。因为数据库太大,而且数据集经常来自多个异种数据源,低质量的数据将导致低质量的挖掘结果。因此,在构建完数据集后,要进行数据集预处理。
神经网络数据集预处理通常有零均值,归一化,主成分分析PCA和白化四种常见的方法。本发明采用零均值和归一化两种方法。零均值是通过用数据中每一维度的数据值减去所在维度的数据均值。在归一化中,一种是将零均值后的数据的每一维度除以每一维的标准差;另一种就是把数据中的每一维度归一化到区间[a,b]。第二种只适用于每一维度数据的权重一样时。
优选的,在步骤(5)中,数据集进行预处理后,开始搭建神经网络。主要搭建了全连接神经网络和卷积神经网络。全连接神经网络是最朴素的神经网络,它的网络参数最多,计算量最大。全连接神经网络结构不固定,一般由输入层,隐藏层,和输出层构成。输入层和输出层为一层,隐藏层不固定。每一层神经网络有若干神经元,层与层之间神经元相互连接,层内神经元互不连接,而且下一层神经元连接上一层所有的神经元。本发明网络结构是输入层,隐藏层,输出层均为一层。本发明采用的全连接神经网络主要涉及以下几种神经网络技术:
1.反向传播算法(BP):
反向传播算法是目前用来训练人工神经网(ANN)的最常用且最有效的算法。其主要思想是:
(1)将训练集数据输入到ANN的输入层,经过隐藏层,最后达到输出层并输出结果,这是ANN的前向传播过程;
(2)由于ANN的输出结果与实际结果有误差,则计算估计值与实际值之间的误差,并将该误差从输出层向隐藏层反向传播,直至传播到输入层;
(3)在反向传播的过程中,根据误差采用梯度下降算法调整各种参数的值;不断迭代上述过程,直至收敛。
2.梯度下降法
梯度下降法(Gradient Descent)是一种最优化算法,通常也称为最速下降法。要使用梯度下降法找到一个函数局部极小值或全局最小值,必须向函数上当前点对应梯度(或者是近似梯度)的反方向的规定步长距离点进行迭代搜索。如果相反地向梯度正方向迭代进行搜索,则会接近函数的局部极大值点或全局最大值。
3.DropOut
DropOut是深度学习中常用的方法,主要是为了克服过拟合的现象。全连接网络极高的VC维,使得它的记忆能力非常强,甚至把一些无关紧要的细枝末节都记住,一来使得网络的参数过多过大,二来这样训练出来的模型容易过拟合。
DropOut:是指在在一轮训练阶段临时关闭一部分网络节点。让这些关闭的节点相当于去掉,原则上去掉的神经元是随机的。
另一种神经网络是卷积神经网络(CNN):卷积神经网络网络结构主要由这几类层构成:输入层、卷积层,ReLU层、池化(Pooling)层和全连接层(全连接层和常规神经网络中的一样)。通过将这些层叠加起来,就可以构建一个完整的卷积神经网络。在实际应用中往往将卷积层与ReLU层共同称之为卷积层,所以卷积层经过卷积操作也是要经过激活函数的。具体说来,卷积层和全连接层(CONV/FC)对输入执行变换操作的时候,不仅会用到激活函数,还会用到神经元的权值w和偏差b;而ReLU层和池化层则是进行一个固定不变的函数操作。卷积层和全连接层中的参数会随着梯度下降被训练,这样卷积神经网络计算出的分类评分就能和训练集中的每个图像的标签吻合。
卷积神经网络除了以上全连接神经网络所采用的技术外,还包含以下三个特点。
1.局部区域连接
1962年,Hubel和Wiesel研究生物神经学里面的视觉分层结构而提出感受野的概念,大脑皮层的视觉神经元就是基于局部区域刺激来感知信息的。局部区域连接的思想就是受启发于视觉神经元的结构。
在传统的神经网络结构中,神经元之间的连接是全连接的,即n-1层的神经元与n层的所有神经元全部连接。但是在卷积神经网络中,n-1层与n层的部分神经元连接。会使得相应的参数减少。
2.权值共享
权值共享就是整张图片在使用同一个卷积核内的参数。在卷积神经网络中,卷积层中的卷积核(或称之为滤波器)类似于一个滑动窗口,在整个输入图像中以特定的步长来回滑动,经过卷积运算之后,得到输入图像的特征图,这个特征图就是卷积层提取出来的局部特征,而这个卷积核是共享参数的。在整个网络的训练过程中,包含权值的卷积核也会随之更新,直到训练完成。
采用权值共享包含两个主要好处。一是,权值共享的卷积操作保证了每一个像素都有一个权系数,只是这些系数被整数据集共享,因此大大减少了卷积核中参数量,降低了网络的复杂度。二是,传统的神经网络和机器学习方法需要对数据集进行复杂的预处理提取特征,将得到特征再输入到神经网络中。而加入卷积操作可以利用数据集上的局部相关性,自动的提取特征。
通常情况下,卷积层会采用多个卷积核,主要是因为权值共享意味着每一个卷积核只能提取到一种特征,为了增加CNN的表达能力,需要设置多个卷积核。但是,每个卷积层中卷积核的个数是一个超参数。
3.降采样
降采样是卷积神经网络的另一重要概念,通常也称之为池化(Pooling)。最常见的方式有最大值池化、平均值池化。池化的好处是降低了图像的分辨率,整个网络也不容易过拟合。最大值池化是计算每个池或块的最大值,具有平移不变性,在模型中实现平移不变性将极大地提高其预测能力。而平均池化是计算每个池或块的平均值而不是最大值,平均池化与最大池化的不同之处在于,它保留了有关块或池中“次重要”元素的大量信息。尽管“最大池化”只是通过选择最大值来丢弃它们,但“平均池化”将它们混合在一起。这在各种情况下有用,其中此类信息很有用。
根据搭建好的神经网络模型开始训练和测试,最后获得在不同信噪比性能下的准确度和损失。
有益效果
上述在强干扰下基于神经网络的生命探测技术,通过对雷达接收信号进行预处理后,再进行快速傅里叶变换得到频域信息,再进行数据集的有效构建,数据集的预处理,有效的抓住了强干扰下有无生命信号的特征。最终探测出生命信号的有和无。
此外,对于分类问题,随着数据量的增长,分类问题的复杂度上升,神经网络的深度也可以随之增加,所以神经网络的鲁棒性很强。
具体实施方式
如图1所示,一种强干扰下基于神经网络的机载雷达生命探测方法,具体流程如下:
1)首先,收集信号资料信息,在距离地表一定距离处,通过机载生命探测雷达接收到雷达回波信号,其中包括生命信号,地表强回波以及其他干扰信号。进行分析分类整理,进入步骤(2)
2)然后,对雷达接收信号进行预处理,采用弱信号放大;低噪声滤波,滤除高频噪声,提高信噪比;混频解调等手段获得预处理后的信号R1(t)和R2(t)。
R1(t)=a′(t)+c′(t)+n′(t)
R2(t)=a′(t)+b′(t)+c′(t)+n′(t)
其中,
是非金属介质所产生的强回波信号经过预处理后得到的信号,A′
a是强回波信号经过预处理后得到的信号的幅度;f
c为载波频率,τ
a是强回波信号产生的时延;
是生命信号经过预处理后得到的信号,A′
b是生命信号经过预处理后得到的信号的幅度,f
d是目标造成的多普勒频移,τ
b是生命信号产生的时延;
是周围环境或者目标自身造成的强干扰信号经过预处理后得到的信号,A′
i是强干扰信号经过预处理后得到的信号产生的幅度,f
i是周围环境或者目标自身造成的多普勒频移,τ
i是周围环境或者目标自身造成的时延,m是不同强干扰信号的数量;n′(t)是噪声信号经过预处理后得到的信号。
3)对预处理过的信号进行快速傅里叶变换(FFT),快速傅里叶变换公式如下:
其中,x(n)是要进行快速傅里叶变换的信号的离散采样值,N是我们需要进行多少点的快速傅里叶变换。所以需要对R1(t)和R2(t)先进行离散采样,再进行快速傅里叶变换。
接下来,通过对雷达预处理过后的信号先进行采样得到不含生命信息的采样信号R1(n)和含生命信息的采样信号R2(n),具体公式如下:
R1(n)=a′(n)+c′(n)+n′(n)
R2(n)=a′(n)+b′(n)+c′(n)+n′(n)
其中,n=0,1,…,N-1,N是采样的总点数,
是非金属介质所产生的强回波信号经过预处理后得到的采样信号,A′
a是强回波信号经过预处理后得到的信号的幅度,f
c为载波频率,τ
a是强回波信号产生的时延;
是生命信号经过预处理后得到的采样信号,A′
b是生命信号经过预处理后得到的信号的幅度,f
d是目标造成的多普勒频移,τ
b是生命信号产生的时延;
是周围环境或者目标自身造成的强干扰信号经过预处理后得到的采样信号,A′
i是强干扰信号经过预处理后得到的信号产生的幅度;n′(n)=n′(t
1+n*Δt)是噪声信号经过预处理后得到的采样信号。t
1为采样初始值,Δt为采样时间间隔。
傅里叶变换后,可以得到不含生命信息的频域信号和含生命信息的频域信号具体公式如下:
R1(k)=a′(k)+c′(k)+n′(k)
R2(k)=a′(k)+b′(k)+c′(k)+n′(k)
其中,k=0,1,…,N-1,N是离散傅里叶变换的总点数,
是经过预处理和采样后强回波信号的傅里叶变换后的频域信号;
是经过预处理和采样后的生命信号的傅里叶变换后的频域信号;
是经过预处理和采样后的周围环境或者目标自身造成的强干扰信号的傅里叶变换后的频域信号;
是经过预处理和采样后噪声信号的傅里叶变换后的频域信号。a(n)′为非金属介质所产生的强回波信号经过预处理和采样后得到的信号;b(n)′为生命信号经过预处理和采样后得到的信号;c′(n)是周围环境或者目标自身造成的强干扰信号经过预处理和采样后得到的信号;n′(n)是噪声信号经过预处理和采样后得到的信号。
4)对得到的频域信号R1(k)=a′(k)+c′(k)+n′(k)和R2(k)=a′(k)+b′(k)+c′(k)+n′(k)直接进行分类处理,将有生命信息的频域信号R2(k)=a′(k)+b′(k)+c′(k)+n′(k)作为一类,不含生命信息的频域信号R1(k)=a′(k)+c′(k)+n′(k)作为一类来构建一维数据集。其中,k=0,1,…,N-1,N是离散傅里叶变换的总点数,a′(k)是经过预处理和采样后强回波信号的傅里叶变换后的频域信号;b′(k)是经过预处理和采样后的生命信号的傅里叶变换后的频域信号;c′(k)是经过预处理和采样后的周围环境或者目标自身造成的强干扰信号的傅里叶变换后的频域信号;n′(k)是经过预处理和采样后噪声信号的傅里叶变换后的频域信号。有无生命频域信号特征维度为256,即采样点数为256。数据集总样本数是10000个,数据集包括训练集和测试集,所占比为7:3。训练集用于模型的训练,测试集往往是实际中所遇到的数据,用于评估实际使用时的泛化能力。分为含有生命信息信号和不含有生命信息信号两类,有生命信号的标签为[1,0],无生命信号标签为[0,1]。
5)对构建的一维数据集进行预处理,先采用零均值,零均值是通过用数据中每一维度的数据值减去所在维度的数据均值。然后再进行归一化,归一化中,采用的时将零均值后的数据的每一维度除以每一维的标准差。致使在反向传播时加快网络中每一层权重参数收敛。
6)接下来进行全连接神经网络和卷积神经网络的搭建。
下面对几个主要部分的内容加以具体描述:
在步骤(6)中,搭建了全连接神经网络和卷积神经网络,如图2所示,包括如下步骤:
6.1)先根据数据集构建全连接层的调用函数,方便用于接下来构建输入层,隐藏层以及输出层。在构建的输入层和隐藏层中,激活函数采用的是双曲正切激活函数(tanh函数)。
6.2)全连接神经网络模型的输出层采用Softmax函数。Softmax函数将向量等比例压缩到[0,1]之间,且保证所有元素之和为1。具体公式如下所示。其中,C是要预测的类别数,模型可以是全连接网络的输出a,其输出个数是C,即输出是a1,a2,a3,…,aC。ki是属于类别i的概率。
6.3)构建损失函数,本发明采用交叉熵损失函数,交叉熵刻画的是实际输出(概率)与期望输出(概率)的距离,也就是交叉熵的值越小,两个概率分布就越接近。具体表达式如下:
其中,P是样本的期望疏输出,T为实际输出,C为分类种类。
6.4)构建完损失函数后,进行反向传播。主要在于选择的优化器。所谓的优化器,就是梯度下降的策略,用于更新神经网络中数以百万的参数。本发明选择的优化器是GradientDescentOptimizer,步长为0.1。
GradientDescentOptimizer是最基础的梯度下降算法,就是用学习率乘每个参数所对应的梯度
更新网络参数。这里倒三角代表梯度,θ代表参数,θ
t代表本次迭代参数,θ
t+1代表下一次迭代参数,f代表损失函数,v
(t)代表本次迭代计算得到的参数的更新大小,
代表经过损失函数的梯度,ε的取值范围是0到1,具体表达式如下:
6.5)最后进行主函数调用,进行训练和测试。最终测得在不同信噪比下探测有无生命信号的准确性。全连接神经网络模型各层具体情况如表1所示。
表1:全连接网络模型各层具体内容
层 |
维度 |
激活函数 |
输入层 |
(None,256,128) |
Tanh函数 |
隐藏层 |
(None,128,16) |
Tanh函数 |
输出层 |
(None,16,2) |
Softmax函数 |
相对于全连接神经网络而言,卷积神经网络如图3所示,先构建数据集,数据集的构建如全连接神经网络一样。接下来构建卷积核和偏置,以及一维卷积调用函数和一维池化层调用函数。由于是调用函数,卷积核和偏置的维度为自定义形式,即一维卷积层和一维池化层可以自定义设置。接下来构建各层具体形式,卷积和ReLU函数共同搭建卷积层1,接着搭建池化层1,卷积层2,池化层2,全连接层和输出层。
具体内容是:
1)卷积层1需要输入数据,卷积核,步长和边缘填充。
卷积层1的输入数据是样本输入,其维度是(None,256,1),其中的None表示一次性训练或者测试的样本数量,256表示单个样本特征采样,即快速傅里叶变换的值。1表示样本深度为1,由于是一维数据数据集,所以样本深度为1。
卷积层1的卷积核的维度是(8,1,4),其中,8是卷积核的宽度,由于是一维卷积核,所以只需要宽度即可。1表示输入数据的深度,所以为1。4表示卷积层输出的深度。
卷积层1的步长是1,边缘填充采取VALID方法。
2)池化层1是一维平均池化,需要输入数据,池化窗口,步长和边缘填充。
池化层1的输入数据是卷积层1的输出,维度是(None,249,4)。它的池化窗口的维度是(2),步长是1,边缘填充采取VALID方法。
3)卷积层2需要输入数据,卷积核,步长和边缘填充。
卷积层1的输入数据是池化层1的输出数据,其维度是(None,248,4)。
卷积层1的卷积核的维度是(8,4,8),其中,8是卷积核的宽度。4表示输入数据的深度,所以为4。8表示卷积层输出的深度。其步长是1,边缘填充采取VALID方法。
4)池化层2是一维平均池化,需要输入数据,池化窗口,步长和边缘填充。
池化层2的输入数据是卷积层2的输出,维度是(None,241,8)。它的池化窗口的维度是(2),步长是1,边缘填充采取VALID方法。
5)全连接层需要输入数据,权重和偏置
全连接的输入数据是将池化层2的输出数据进行转化维度。池化层2的输出数据维度是(None,240,8),将其转化为(None,240*8)后作为全连接层的输入。权重的维度是(240*8,240),偏置的维度是(240)。
6)输出层需要输入数据,权重和偏置
把全连接层的输出数据进行Dropout后作为输出层的输入数据,其维度是(None,240),权重的维度是(240,2),偏置的维度是(2)。
接下来构建损失函数,损失函数仍然采用交叉熵损失函数。最后进行反向传播,进行训练集和数据集的训练和测试,最后测试在不同信噪比下的有无生命准确率。
以上仿真的结果如下图4,图5,图6所示,无论从精确度角度还是从损失误差来看,都达到了有效的收敛。从图6可以看出,在强干扰情况下基于神经网络的生命探测技术能够有效探测出有无生命信息。
以上所述实施仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此理解为对本发明专利范围的限制。应当指出的是,凡在本发明的精神和原则之内,做出若干变形和改进等,均属于本发明的保护范围之内。