基于深度残差网络的重力数据去噪重构

2021-12-06 03:13黄子炎王庆宾赵东明冯进凯谭勖立
中国惯性技术学报 2021年4期
关键词:残差重力滤波

黄子炎,王庆宾,赵东明,冯进凯,谭勖立

(信息工程大学,郑州 450001)

重力数据是地球重力场研究的基础,同时也是大地测量学、地球物理学和空间科学等学科与领域开展相关研究所必须的基础资料,但在陆地、海洋和航空的重力测量过程中,容易受外界观测环境和测量系统本身的影响,导致实测的重力数据中通常混杂着各种噪声误差,因此如何对含噪声数据进行有效处理是一个重要问题[1,2]。国内外学者针对该问题进行了广泛研究。IIR(Infinite Impulse Response)和FIR(Finite Impulse Response)数字低通滤波器方法可以简单有效地对重力数据进行滤波[3,4],但是无法分离同一频段的信号和噪声。小波具有较好的时频局部化特性,可对信号进行多尺度分解滤波,刘万国和孙中苗等将其应用到重力测量数据处理中,并取得了较好的去噪效果[5,6],然而其本质上是频域的带通滤波,无法对频段外的叠加噪声进行很好地滤除。Kalman滤波是一种基于模型的时域方法,能够有效地进行系统内部状态估计和重力数据信号降噪[7-9],但有时建立准确的状态方程和设置合理的系统参数较困难。在小波强制阈值滤波之后级联一个低阶FIR滤波器的级联滤波方法可以有效去除噪声的影响[10],可是需要先调整参数,将重力信号分解滤波到合适层数。基于分形维数的滤波方法能有效地检测到信号的动态变化,抑制噪声对重力仪测量信号的影响[11],然而短时分形维数的函数需要根据信号的特点进行具体设计。尽管这些方法都取得了较好的实际应用效果,但每种方法都受到某种假设或条件限制,去噪性能在不同区域数据上的差别较大,去噪重构能力和泛化性都有待进一步提高。

深度学习[12]是机器学习的一个分支,并在图像处理、语音处理等领域取得了显著成果[13,14]。深度神经网络是深度学习的核心技术,其特点是能够充分学习不同层面的数据特性,而且随着网络深度的增加,模型的学习性能也会显著提升[15],著名的LeNet、AlexNet、Google-Net和VGGNet等都具有较深的网络结构,网络层的堆叠通常能够提升整体模型的学习效果,但是训练非常深的网络往往十分困难。这是由于在网络加深的情况下,经典卷积结构运算存在缺陷,网络的收敛性被破坏,在优化神经网络过程中会出现梯度消失和爆炸问题[16]。残差网络(Residual Network,ResNet)[17]的出现有效解决了上述问题,Zhang[18]等又将ResNet应用于图像去噪领域。由于存在诸多优点,基于深度学习理论的深度残差网络,目前也已经被应用到地震数据噪声压制、重力反演、遥感影像识别等领域,并取得了不错的效果[19-21]。在重力数据去噪上,王逸宸[22]等构建了卷积自编码器,实现了从含噪声的重力图像中重建重力观测图像。

基于此,本文提出将深度学习技术应用到重力数据处理中,构建一种基于深度残差网络的含噪声重力数据到去噪重构重力数据的非线性映射网络模型,本文称为GraResNet(Gravity Residual Network)神经网络。通过模型数据和实测数据进行试验,结果表明:相较于IIR滤波方法、FIR滤波方法和小波滤波方法,本文所提方法通过学习到的重力数据特征,能够有效地分辨重力信号和噪声信号,从而进行更加精准和彻底的噪声去除,同时在一定程度上避免了对有用重力数据信息的错误滤除,重构的重力数据局部细节更加丰富,数据分辨率更高;并且该方法还具有较好的泛化性和鲁棒性,对于不同噪声水平下的重力数据均可以表现出优异的去噪重构能力。

1 方法原理

1.1 深度残差网络

深度残差网络的基本思想是残差学习,假设神经网络要学习的目标映射为H(x),但是该映射较为复杂,学习难度较大,可以让网络学习映射:

同时原始的映射变为:

则原始的映射学习分解为一个线性的直接映射:x→x和非线性残差映射F(x),深度残差网络的基本结构如图1所示,跳跃式连接(Skip Connection)将输入信息恒等映射到输出端,使残差结构学习目标与输入的差值,保证了信息流动的完整性,降低了训练难度。考虑到输入和输出数据具有相似性和实际的地球物理特性,本文采用的基本残差结构去除了批规范层(Batch normalization, BN),避免BN层将网络学习的数据特征进行强制归一化,破坏数据的地球物理特性,并给端到端的学习造成困难。

图1 基本残差结构Fig.1 Basic residual structure

针对重力数据去噪问题,学习训练采用的是端到端的网络结构,深层残差网络的多层卷积运算可以提取重力数据的物理特征,然后采用优化算法调整网络结构参数,需要强调的是,卷积核大小和个数、激活函数、模型优化算法和损失函数的选择和设置是搭建去噪重构神经网络的关键和难点,影响着网络模型的性能。

1.2 GraResNet网络组成

基于深度残差网络的GraResNet神经网络结构如图2所示,结构中包含了4个残差块,共有11个卷积层(Convolution, Conv),5个修正线性单元层(Rectified Linear Unit, Relu),其中Relu函数的作用是完成不同网络层之间的非线性映射,使得神经元具有稀疏激活性,提高收敛速度,更有利于重力数据特征的学习。第三个残差块跳跃连接线上的卷积层设置为1×1卷积核,其余卷积层的卷积核设置为3×3大小,步长都设置为1,并且在每次卷积后都采取补0策略,这样保证了特征图尺寸在卷积后不会发生改变,减少因为卷积而丢失重力数据特征和数据边界而引入的误差。各卷积层的卷积核个数已经在结构图中标注,其中最后一个卷积层设置为1个卷积核,目的是将特征图的深度降为1,保证输入和输出数据大小一致。

图2 GraResNet网络结构Fig.2 Network structure of GraResNet

GraResNet神经网络训练的实质就是利用优化算法,不断最小化损失函数的过程,通过正向传播的输出结果与样本标签值之间的误差,反向传播来修正优化神经元权值及其他参量。本文采用均方误差损失函数(MSE),它的定义如下:

其中y为样本标签值,即不含噪声的原始重力异常数据,为经过神经网络前向传播运算得到的去噪后的数据,N为数据量。

Adam(Adaptive Moment Estimation)算法是在RMSProp(Root Mean Square Prop)算法[23]的基础上改进的学习率自适应的优化算法,该算法将具有经典动量思想的RMSProp算法与2L范数相结合,适合大数据量超参数的优化问题,并且具有计算高效和收敛速度快的优势,因此本文采用Adam算法来优化目标,最小化损失函数。

1.3 GraResNet去噪重构策略

如果重力数据中包含噪声影响,则重力数据可以表示为:

式中,x为添加噪声后的数据,y为原始重力异常数据,n为噪声数据。则基于深度残差网络的重力数据去噪重构模型可以表示为:

式中,GraResNet为神经网络结构,θ= {w,b}为神经网络参数,w为权重,b为偏置项。

使用GraResNet神经网络对重力数据进行去噪重构,分为训练和预测两个阶段。在训练阶段,使用带标签的样本数据集进行学习训练,利用多层卷积提取重力数据特征,然后使用深度学习优化算法调整网络参数,建立复杂的神经网络去噪模型 GraResNet(θ);在预测阶段,将含噪声的重力数据输入到已经训练好的GraResNet神经网络模型中,得到预测的去噪重构数据,图3是使用GraResNet去噪重构策略的完整流程。

图3 GraResNet去噪重构策略Fig.3 The process of denoising and reconstruction strategy

2 数值试验

2.1 实验平台与去噪重构精度评价

GraResNet神经网络模型在Tensorflow-GPU 2.4.0深度学习框架下编译完成。配套编译环境包括:python3.7编程语言,NVIDIA并行计算架构CUDA 11.0,NVIDIA深度神经网络GPU加速库cuDNN 8.0,Windows 10操作系统。硬件环境包括:NVIDIA RTX3070 Laptop GPU (4G),AMD R9 CPU,32G内存。

为衡量重力数据去噪重构性能,选取标准差Std,信噪比SNR、噪声衰减因子β和耗时T作为评价指标,具体定义如下:

其中y为原始重力异常数据,x为添加噪声后的数据,为去噪后的数据,N为数据量,var表示计算数据的方差,v为重构数据中的噪声。

2.2 数据预处理与模型数据训练

本文使用数据分块的方式进行训练和测试,即将区域重力数据按照经纬度划分为若干块30×30数据量的重力数据块,这样分割可以缩减单个训练样本的大小,避免大范围数据同时输入神经网络,造成瞬时计算资源不足的现象。同时分块的方式增加了用于训练的数据块数量,更加有利于卷积过程的特征提取和训练出更优的神经网络参数。需要注意的是,本文是将深度残差网络对图像数据去噪的方法思路迁移学习到重力数据去噪重构问题中,而在使用深度残差网络处理灰度图像数据时,图像的像素值在0~255范围内,而重力异常数据具有实际的物理意义,其值域一般大于这个范围,将其直接用于神经网络,容易产生梯度更新过大而导致神经网络难以收敛的梯度爆炸现象,因此在重力数据用于神经网络训练和预测前,需要将重力数据进行映射处理,首先对数据集进行归一化,然后强制统一到0~255的值域之间,具体处理如式(10)所示。

xi为第i个重力数据,xmax和xmin分别为数据最大值和最小值,为xi经过映射处理后的重力数据。

本文用于训练的原始重力数据来源于卫星测高重力异常模型DTU17[24],区域范围为40 °×40 °,数据分辨率为1′×1′,如图4(a)所示,在数据中加入其60%标准差幅度的蒙特卡洛随机误差生成含噪声重力数据,如图4(b)所示,按照30×30的标准将图4中的两类数据进行分块,构成6400对含噪声重力数据作为样本输入,原始重力数据作为标签的训练数据集,数据统计信息见表1。

图4 训练集重力数据Fig.4 Gravity data of training set

在训练阶段,将训练集6400对数据块输入神经网络进行训练,共训练30轮次,每轮训练的批数据个数为50,由图5可以看出,训练误差在训练前期就迅速降低,随着训练轮次的增加,出现小幅度震荡现象,最后经过30轮迭代训练,训练误差变化趋于稳定,网络训练得到收敛,收敛时的网络误差为8.42×10-6mGal,训练消耗时间为79.8225 s。

图5 训练误差变化曲线Fig.5 The curve of training error

2.3 模型数据测试

为了验证GraResNet网络对重力数据的去噪重构性能,从DTU17模型中选取10°×10°区域大小的模型数据用于测试,如图6(a)所示,数据的分辨率为1'×1',图6(b)是在数据中加入其60%标准差幅度的蒙特卡洛随机噪声生成含噪声重力数据。表2展示了数据的各类统计特性值。同时本文将GraResNet网络去噪重构结果与IIR滤波方法、FIR滤波方法和小波滤波方法进行对比。

图6 模型测试数据Fig.6 Test data extracted from gravity model

表2 模型测试数据的统计特性Tab.2 Statistical characteristics of the test data extracted from gravity model

图7和图8分别是各方法的去噪重构结果和去除的噪声,表3是根据各方法的去噪重构结果计算的评价指标值。可以发现IIR滤波和FIR滤波去噪效果一般,噪声衰减因子仅为0.4522和0.4479,去噪重构数据中仍然存在明显的噪声数据,滤波去噪后的噪声标准差仍达到了2.3601 mGal和2.3696 mGal,并且由图8(b)和图8(c)可以很明显地看出,IIR滤波和FIR滤波方法在去除噪声的同时,部分非噪声信号也被滤除,这是因为它们都是基于频率的低通滤波方法,容易将频段内的噪声信号和有用信号同时滤除,而在频段外的叠加噪声又无法进行很好的分离滤除;小波滤波去噪效果较IIR滤波和FIR滤波方法有所提高,由图8(d)可以发现其去除的噪声中没有明显的有用信号,这是因为小波滤波在分解的若干信号频段内进行滤波去噪,滤波去噪后的噪声衰减因子可以达到0.6176,但是在图7(d)的去噪重构结果中仍有明显的噪声数据,说明滤除的噪声不够彻底;由图7(a)可以发现,相对前面三种方法,本文方法的去噪重构效果最好,去噪后的噪声标准差降低了75.2%,滤除了大部分的噪声,信噪比也较IIR滤波和FIR滤波方法提高近一倍,并且噪声衰减因子达到了0.9387,说明本文方法去除噪声较为彻底,而且重构数据的局部细节更加清晰,同时由表3中的各方法消耗时间可以发现,虽然训练神经网络耗时较长,但是使用训练完的网络模型进行去噪重构的效率与传统方法相近。

表3 各方法的去噪重构效果评价Tab.3 Evaluation of denoising and reconstruction effect of each method

图7 去噪重构结果Fig.7 The result of denoising and reconstruction

图8 各方法去除的噪声Fig.8 Noise removed by various methods

为进一步测试本文方法的泛化性能,在原始模型数据中,分别加入其80%和100%标准差幅度的蒙特卡洛随机噪声生成含噪声重力数据,如图9所示,表4是数据的统计特性。

图9 两种噪声幅度的重力数据Fig.9 Gravity data with two kinds of noise amplitude

表4 含噪声模型测试数据的统计特性(单位:mGal)Tab.4 Statistical characteristics of noise-containing test data extracted from gravity model(Unit: mGal)

图10是利用GraResNet方法对两种更高的噪声幅度数据进行去噪重构的结果,图11是中心纬度的原始重力数据和去噪重构结果的对比,表5是根据两种噪声幅度数据的去噪重构结果计算的评价指标值。GraResNet网络的训练阶段,使用的是加入了60%标准差幅度噪声的重力数据进行训练,而在泛化性测试阶段,噪声水平增大到了80%和100%标准差幅度,但是由实验结果可以发现,本文方法依然可以保持良好的性能。在图10的去噪重构结果中,噪声信号产生的模糊影响消失,重力数据局部特征清晰,无明显噪声残留。同时由图11可以发现,中心纬度上的两类含噪声数据去噪重构数据曲线与原始重力数据曲线的符合度极高,数据中的大部分噪声信号能够被有效去除,重力数据信号得到充分保留,由表5的去噪重构效果评价指标值可知,加入了80%和100%标准差幅度噪声的重力数据,去噪重构后的噪声标准差降低了78.3%和78.4%,噪声衰减因子仍可达到0.9531和0.9534,这些都进一步说明GraResNet网络具有较好的泛化性,使用训练好的网络,可以对不同噪声水平的重力数据进行去噪重构。

图10 80%Std和100%Std噪声幅度重力数据的去噪重构结果Fig.10 The denoising and reconstruction results of gravity data with 80% STD and 100% STD noise amplitude

表5 两种噪声幅度重力数据的去噪重构效果评价Tab.5 Evaluation of denoising and reconstruction effect of gravity data with two kinds of noise amplitude

图11 中心纬度的原始重力数据和去噪重构数据对比Fig.11 Comparison of original gravity data and denoising results of central latitude

2.4 实测数据测试

为进一步验证本文所提方法对实测数据的有效性和模型的泛化性,采用南非比勒陀利亚地区4°×4°的实测重力异常数据进行测试,并将数据格网化到1'×1'分辨率,如图12(a)所示,可以发现该区域重力异常数据变化剧烈,并且数据中没有明显的噪声,为了方便对比各方法的性能,向实测数据中加入其80%标准差幅度的蒙特卡罗随机误差,如图12(b)所示,表6是两类数据的统计特性,可以看出原始实测数据被加入的噪声干扰严重,仅能分辨部分低频信号。使用训练得到的GraResNet网络模型对加入噪声的实测数据进行去噪重构,并与IIR滤波方法、FIR滤波方法和小波滤波方法的去噪重构结果进行对比。图13是四种方法对加入噪声的实测数据进行去噪重构的结果,表7是去噪重构结果相对原始实测数据偏差的统计信息,由图13(b)和图13(c)可以发现IIR滤波方法和FIR滤波方法对实测数据的去噪重构效果较差,结果中仍然存在较多的噪声信号;在小波滤波方法的结果图13(d)中,重力信号细节相对更加清晰,但结果中仍然存在明显的噪声信号;本文方法去除噪声较为彻底,结果中无明显的噪声信号残留,去噪重构结果偏差的标准差相对IIR滤波方法、FIR滤波方法和小波滤波方法分别降低了37.1%、32.7%和13.4%,并且重力信号重构效果较好,结果中含有更丰富的局部细节。

图12 实测数据及含噪声实测数据Fig.12 Measured data and measured data with noise

表6 实测数据及含噪声实测数据的统计特性(单位:mGal)Tab.6 The statistical characteristics of the measured data and the measured data with noise(Unit: mGal)

表7 去噪重构结果偏差的统计特性(单位:mGal)Tab.7 Statistical characteristics of the deviation of denoising reconstruction results(Unit: mGal)

图13 含噪声实测数据的去噪重构结果Fig.13 The denoising and reconstruction results of measured data with noise

3 结 论

本文将深度残差网络应用到重力数据去噪重构问题中,提出了GraResNet神经网络模型,利用大量的训练样本数据进行学习训练,通过深层网络的多层卷积运算提取重力数据的特征,然后采用深度学习的优化算法调整深层网络结构参数,从而建立一个复杂的重力数据去噪重构网络模型,并在模型数据和实测数据上与传统的IIR滤波方法、FIR滤波方法和小波滤波进行了对比分析,主要结论如下:

(1) GraResNet神经网络通过学习到的重力数据的特征,能够更加有效地区分重力信号和噪声信号,其去噪结果的噪声标准差降低了75.2%,信噪比也较IIR滤波和FIR滤波方法提高近一倍,并且噪声衰减因子达到了0.9387,同时很大程度避免了对有用重力数据信息的错误滤除,重构的重力数据局部细节更加丰富与清晰;

(2) GraResNet对加入了80%和100%标准差幅度噪声的模型重力数据进行去噪重构,噪声标准差降低了78.3%和78.4%,噪声衰减因子仍可达到0.9531和0.9534,对加入了80%标准差幅度噪声的实测重力数据进行去噪重构,去噪重构结果偏差的标准差相对IIR滤波方法、FIR滤波方法和小波滤波方法分别降低了37.1%、32.7%和13.4%,GraResNet方法仍然可以表现出优异的去噪重构能力和泛化性能;

(3) GraResNet在模型重力异常数据和陆地实测重力异常数据的去噪问题上取得了较好的效果,其“端到端”的网络结构可以应用到海洋和航空的实测重力异常和重力梯度测量数据的去噪处理中,提高多源测量数据的精度。

猜你喜欢
残差重力滤波
疯狂过山车——重力是什么
基于双向GRU与残差拟合的车辆跟驰建模
重力性喂养方式在脑卒中吞咽困难患者中的应用
基于残差学习的自适应无人机目标跟踪算法
基于递归残差网络的图像超分辨率重建
一张纸的承重力有多大?
基于自适应Kalman滤波的改进PSO算法
RTS平滑滤波在事后姿态确定中的应用
基于线性正则变换的 LMS 自适应滤波
平稳自相关过程的残差累积和控制图